Flujo de trabajo en Informatica: Crear, Tarea, Parámetro, Reutilizable, Administrador
¿Qué es el flujo de trabajo?
El flujo de trabajo es un grupo de instrucciones/comandos para el servicio de integraciones en Informatica. El servicio de integración es una entidad que lee información del flujo de trabajo del repositorio, recupera datos de las fuentes y, después de realizar la transformación, los carga en el destino.
Flujo de trabajo: define cómo ejecutar tareas como tarea de sesión, tarea de comando, tarea de correo electrónico, etc.
Para crear un flujo de trabajo
- Primero necesitas crear tareas.
- Y luego agregue esas tareas al flujo de trabajo.
Un flujo de trabajo es como un contenedor vacío, que tiene la capacidad de almacenar un objeto que desea ejecutar. Agregue tareas al flujo de trabajo que desea ejecutar. En este tutorial, haremos lo siguiente en el flujo de trabajo.
La ejecución del flujo de trabajo se puede realizar de dos maneras.
- Secuencia : Las tareas se ejecutan en el orden en que están definidas.
- Basado en eventos: Las tareas se ejecutan según las condiciones del evento.
Cómo abrir el Administrador de flujo de trabajo
Paso 1) En Informatica Designer, haga clic en el icono del administrador de flujo de trabajo.
Paso 2) Esto abrirá una ventana del Administrador de flujo de trabajo. Luego, en el Administrador de flujo de trabajo.
- Nos conectaremos al repositorio “guru99”, así que haga doble clic en la carpeta para conectarnos.
- Ingrese el nombre de usuario y la contraseña y luego seleccione "Botón Conectar".
Paso 3) En el administrador de flujo de trabajo.
- Haga clic derecho en la carpeta
- En el menú emergente, seleccione la opción abrir
Esto abrirá el espacio de trabajo del Administrador de flujo de trabajo.
Cómo crear conexiones para Workflow Manager
Para ejecutar cualquier tarea en el administrador de flujo de trabajo, debe crear personales. Al utilizar estas conexiones, el Servicio de integración se conecta a diferentes objetos.
Por ejemplo, en su cartografía Si tiene una tabla de origen en una base de datos Oracle, necesitará una conexión Oracle para que el servicio de integración pueda conectarse a la base de datos Oracle para obtener los datos de origen.
Se pueden crear los siguientes tipos de conexiones en el administrador de flujo de trabajo.
- Conexión relacional
- Conexión ftp
- Cola
- Solicitud
La elección de la conexión que creará dependerá del tipo de sistemas de origen y de destino que desee conectar. Más a menudo, estarías usando conexiones relacionales.
Para crear una conexión relacional
Paso 1) En el Administrador de flujo de trabajo
- Haga clic en el menú Conexión
- Seleccione la opción relacional
Paso 2) En la ventana emergente
- Seleccionar Oracle en tipo
- Haga clic en el botón nuevo
Paso 3) En la nueva ventana de definición del objeto de conexión.
- Ingrese el nombre de la conexión (Nuevo nombre-guru99)
- Introduzca su nombre de usuario
- Introducir la contraseña
- Introduzca la cadena de conexión
- Deje otras configuraciones como predeterminadas y seleccione el botón Aceptar
Paso 4) Volverás a la ventana anterior. Haga clic en el botón cerrar.
Ahora ya está configurado con la conexión relacional en el administrador de flujo de trabajo.
Componentes del administrador de flujo de trabajo
Hay tres herramientas componentes del administrador de flujo de trabajo que ayudan a crear varios objetos en el administrador de flujo de trabajo. Estas herramientas son
- Desarrollador de tareas
- Diseñador de Worklet
- Diseñador de flujo de trabajo
Desarrollador de tareas – El desarrollador de tareas es una herramienta con la que se pueden crear objetos reutilizables. Los objetos reutilizables en el gestor de flujos de trabajo son objetos que se pueden reutilizar en varios flujos de trabajo. Por ejemplo, si ha creado una tarea de comando en el desarrollador de tareas, puede reutilizarla en cualquier cantidad de flujos de trabajo.
La función del diseñador de flujo de trabajo es ejecutar las tareas que se agregan en él. Puede agregar cualquier número de tareas en un flujo de trabajo.
Puede crear tres tipos de tareas reutilizables en el desarrollador de tareas.
- tarea de comando
- Tarea de sesión
- tarea de correo electrónico
Tarea de comando – Una tarea de comando se utiliza para ejecutar diferentes comandos de Windows/Unix durante la ejecución del flujo de trabajo. Puede crear una tarea de comando para ejecutar varias tareas basadas en comandos. Con la ayuda de esta tarea, puede ejecutar comandos crear archivos/carpetas, eliminar archivos/carpetas, hacer ftp de archivos etc.
Tarea de sesión – Se requiere una tarea de sesión en Informatica para ejecutar una asignación.
- Sin una tarea de sesión, no puede ejecutar ni ejecutar un mapeo
- Una tarea de sesión solo puede ejecutar una única asignación. Entonces, existe una relación uno a uno entre un mapeo y una sesión.
- Una tarea de sesión es un objeto con la ayuda del cual ordenador llega a saber cómo y dónde ejecutar un mapeo y en qué momento
- Las sesiones no se pueden ejecutar de forma independiente, se debe agregar una sesión a un flujo de trabajo
- In objeto de sesión Se pueden configurar las propiedades de la caché y también la configuración avanzada de optimización del rendimiento.
Tarea de correo electrónico – Con la ayuda de la tarea de correo electrónico, puede enviar correos electrónicos a destinatarios definidos cuando el Servicio de integración ejecuta un flujo de trabajo. Por ejemplo, si desea supervisar cuánto tiempo tarda en completarse una sesión, puede configurar la sesión para que envíe un correo electrónico que contenga los detalles de la hora de inicio y finalización de la sesión. O bien, si desea que el Servicio de integración le notifique cuando se complete o falle un flujo de trabajo, puede configurar la tarea de correo electrónico para ello.
Cómo crear una tarea de comando
Paso 1) Para crear una tarea de comando, vamos a utilizar el desarrollador de tareas. En Workflow Manager, abra el desarrollador de tareas haciendo clic en la pestaña “desarrollador de tareas” del menú.
Paso 2) Una vez abierto el desarrollador de tareas, siga estos pasos
- Seleccione el menú Tareas
- Seleccione la opción Crear
Paso 3) En la ventana de creación de tarea
- Seleccionar comando como tipo de tarea a crear
- Introduzca el nombre de la tarea
- Seleccione el botón crear
Esto creará una carpeta de tareas de comando. Ahora tienes que configurar la tarea para agregarle un comando, que veremos en el siguiente paso.
Paso 4) Para configurar la tarea, haga doble clic en el icono de comando de tarea y se abrirá una “ventana de edición de tarea”. En la nueva ventana de edición de tarea
- Seleccione el menú de comandos
- Haga clic en el icono de agregar nuevo comando
- Introduzca el nombre del comando
- Haga clic en el icono de comando para agregar texto de comando
Esto abrirá un cuadro de editor de comandos.
Paso 5) En el cuadro del editor de comandos, ingrese el comando “mkdir C:\guru99” (este es el comando de Windows para crear una carpeta llamada “guru99”) y seleccione Aceptar.
Después de este paso, volverá a la ventana de edición de tareas y podrá ver el comando que agregó en el cuadro de texto de comando.
Paso 6) Haga clic en Aceptar en la ventana de edición de tarea,
La tarea de comando se creará en el desarrollador de tareas en el repositorio “Guru99”.
Nota use el acceso directo Ctrl+s para guardar los cambios en el repositorio
Cómo crear un flujo de trabajo para ejecutar la tarea de comando
Para ejecutar tareas de comando, debe activar el diseñador de flujo de trabajo. Un diseñador de flujo de trabajo es un objeto principal o contenedor en el que puede agregar varias tareas y, cuando se ejecuta el flujo de trabajo, se ejecutarán todas las tareas agregadas. Para crear un flujo de trabajo
Paso 1) Abra el diseñador de flujo de trabajo haciendo clic en el menú del diseñador de flujo de trabajo
Paso 2) En diseñador de flujo de trabajo
- Seleccionar menú de flujos de trabajo
- Seleccione la opción de crear
Paso 3) En la ventana de creación de flujo de trabajo
- Introduzca el nombre del flujo de trabajo
- Seleccione el botón Aceptar (deje otras opciones como predeterminadas)
Esto creará el flujo de trabajo.
Convenio de denominación - Los nombres de los flujos de trabajo tienen el prefijo "wkf_', si tienes una sesión llamada 's_m_employee_detail'entonces el flujo de trabajo para el mismo puede denominarse como'wkf_s_m_employee_detail'.
Cuando crea un flujo de trabajo, no consta de ninguna tarea. Entonces, para ejecutar cualquier tarea en un flujo de trabajo, debe agregar una tarea en él.
Paso 4) Para agregar la tarea de comando que hemos creado en el desarrollador de tareas al diseñador de flujo de trabajo
- En el árbol del navegador, expanda la carpeta de tareas.
- Arrastre y suelte la tarea de comando en el diseñador de flujo de trabajo
Paso 5) Seleccione la opción “vincular tarea” en la caja de herramientas del menú superior. (La opción vincular tarea vincula varias tareas de un flujo de trabajo a la tarea de inicio, de modo que se pueda definir el orden de ejecución de las tareas).
Paso 6) Una vez que seleccione el ícono de vincular tarea, le permitirá arrastrar el vínculo entre la tarea de inicio y la tarea de comando. Ahora seleccione la tarea de inicio y arrastre un enlace a la tarea de comando.
Ahora está listo con el flujo de trabajo que tiene una tarea de comando para ejecutar.
Cómo ejecutar el flujo de trabajo
Paso 1) Para ejecutar el flujo de trabajo
- Seleccione la opción de flujos de trabajo del menú
- Seleccione la opción Iniciar flujo de trabajo
Esto se abrirá monitor de flujo de trabajo ventana y ejecuta el flujo de trabajo
Una vez que se ejecuta el flujo de trabajo, ejecutará la tarea de comando para crear una carpeta (carpeta guru99) en el directorio definido.
Tarea de sesión
Se requiere una tarea de sesión en Informatica para ejecutar una asignación.
Sin una tarea de sesión, no puede ejecutar ni ejecutar una asignación y una tarea de sesión solo puede ejecutar una única asignación. Entonces, existe una relación uno a uno entre un mapeo y una sesión. Una tarea de sesión es un objeto con la ayuda del cual Informatica sabe cómo y dónde ejecutar un mapeo y en qué momento. Las sesiones no se pueden ejecutar de forma independiente; se debe agregar una sesión a un flujo de trabajo. En la sesión se pueden configurar las propiedades de la caché de objetos y también la configuración avanzada de optimización del rendimiento.
Cómo crear una tarea de sesión
En este ejercicio, creará una tarea de sesión para el mapeo "m_emp_emp_target" que creó en el artículo anterior.
Paso 1) Administrador de flujo de trabajo abierto y desarrollador de tareas abierto
Paso 2) Ahora, una vez que se abre el desarrollador de tareas, en el administrador de flujo de trabajo, vaya al menú principal.
- Haga clic en el menú de tareas
- Seleccione la opción de crear
Esto abrirá una nueva ventana "Crear tarea"
Paso 3) En la ventana de creación de tarea
- Seleccione la tarea de la sesión como tipo de tarea.
- Introduzca el nombre de la tarea.
- Haga clic en el botón crear
Paso 4) Aparecerá una ventana para seleccionar el mapeo. Seleccione la asignación que desea asociar con esta sesión; para este ejemplo, seleccione la asignación “m_emp_emp_target” y haga clic en el botón Aceptar.
Paso 5) Después de eso, haga clic en el botón "Listo"
El objeto de sesión aparecerá en el desarrollador de tareas.
Paso 6) En este paso, creará un flujo de trabajo para la tarea de la sesión. Haga clic en el icono del diseñador de flujo de trabajo.
Paso 7) En la herramienta de diseño de flujo de trabajo
- Haga clic en el menú de flujo de trabajo
- Seleccione la opción de crear
Paso 8) En la ventana de creación de flujo de trabajo
- Introduzca el nombre del flujo de trabajo
- Seleccione Aceptar. (deje otras propiedades por defecto, no es necesario cambiar ninguna propiedad)
En el administrador de flujo de trabajo aparecerá una tarea de inicio, es un punto de partida de la ejecución del flujo de trabajo.
Paso 9) En el administrador de flujo de trabajo
- Expanda la carpeta de sesiones en el árbol de navegación.
- Arrastre y suelte la sesión que creó en el espacio de trabajo del administrador de flujo de trabajo.
Paso 10) Haga clic en la opción de tarea de enlace en el cuadro de herramientas.
Paso 11) Vincule la tarea de inicio y la tarea de sesión mediante el enlace.
Paso 12) Double Haga clic en el objeto de sesión en wokflow manager. Se abrirá una ventana de tareas para modificar las propiedades de la tarea.
Paso 13) En la ventana de edición de tareas
- Seleccionar pestaña de mapeo
- Seleccionar propiedad de conexión
- Asigne la conexión al origen y al destino, la conexión que creamos en los primeros pasos.
- Seleccione el botón Aceptar
Ahora su configuración del flujo de trabajo está completa y puede ejecutar el flujo de trabajo.
Cómo agregar varias tareas a una tarea inicial
La tarea inicial es un punto de partida para la ejecución del flujo de trabajo. Hay dos formas de vincular varias tareas a una tarea inicial.
- Paralelo
- Serial
En la vinculación paralela, las tareas se vinculan directamente a la tarea inicial y todas las tareas comienzan a ejecutarse en paralelo al mismo tiempo.
Cómo agregar tareas en paralelo
Paso 1)En el administrador de flujo de trabajo, abra el flujo de trabajo "wkf_run_command"
Paso 2)En el flujo de trabajo, agregue la tarea de sesión "s_m_emp_emp_target". (seleccionando sesión y luego arrastrando y soltando)
Paso 3)Seleccione la opción de tarea de enlace de la caja de herramientas
Paso 4) vincule la tarea de la sesión a la tarea de inicio (haciendo clic en iniciar tareas, manteniendo presionado el clic y conectándose a la tarea de la sesión)
Después de vincular la tarea de la sesión, el flujo de trabajo tendrá este aspecto.
Paso 5)Inicie el flujo de trabajo y supervise en el monitor de flujo de trabajo.
Cómo agregar tareas en modo serie
Pero antes de agregar tareas en modo serie, debemos eliminar la tarea que agregamos para demostrar la ejecución paralela de la tarea. Para eso
Paso 1)Abra el flujo de trabajo "w.kf_run_command"
- Seleccione el enlace a la tarea de la sesión.
- Seleccione la opción editar en el menú
- Seleccione la opción de eliminar
Paso 2)Aparecerá un cuadro de diálogo de confirmación en una ventana, seleccione la opción Sí
Se eliminará el vínculo entre la tarea de inicio y la tarea de sesión.
Paso 3)Ahora, vuelva al menú superior y seleccione la opción Vincular tarea de la caja de herramientas.
Paso 4)vincular la tarea de sesión a la tarea de comando
Después de vincular el flujo de trabajo se verá así
Paso 5) Para hacer más clara la apariencia visual del flujo de trabajo
- Haga clic derecho en el espacio de trabajo del flujo de trabajo.
- Seleccione organizar menú
- Seleccione la opción Horizontal
Si inicia el flujo de trabajo, la tarea de comando se ejecutará primero y, después de su ejecución, se iniciará la tarea de sesión.
Variable de flujo de trabajo
Las variables de flujo de trabajo permiten que diferentes tareas en un flujo de trabajo intercambien información entre sí y también permiten que las tareas accedan a ciertas propiedades de otras tareas en un flujo de trabajo. Por ejemplo, para obtener la fecha actual puede utilizar la variable incorporada "sysdate".
El escenario más común es cuando tienes varias tareas en un flujo de trabajo y en una tarea accedes a la variable de otra tarea. Por ejemplo, si tiene dos tareas en un flujo de trabajo y el requisito es ejecutar la segunda tarea solo cuando la primera se ejecute correctamente. Puede implementar dicho escenario utilizando variables predefinidas en el flujo de trabajo.
Implementando el escenario
Teníamos un flujo de trabajo "wkf_run_command" al que se agregaban tareas en modo serie. Ahora agregaremos una condición al vínculo entre la tarea de sesión y la tarea de comando, de modo que, solo después del éxito de la tarea de comando, se ejecutará la tarea de sesión.
Paso 1) Abra el flujo de trabajo "wkf_run_command"
Paso 2) Double haga clic en el enlace entre sesión y tarea de comando
Aparecerá una ventana de expresión.
Paso 3)Double Haga clic en la variable de estado en el menú "cmd_create_folder". Aparecerá una variable "$cmd_create_folder.status" en la ventana del editor en el lado derecho.
Paso 4) Ahora estableceremos la condición de la variable “$cmd_create_folder.status” en estado exitoso. lo que significa que cuando se ejecutan las tareas anteriores y la ejecución fue exitosa, solo se ejecuta la siguiente tarea de la sesión.
- Cambie la variable al valor “$cmd_create_folder.status=SUCCEEDED”.
- Haga clic en el botón Aceptar
El flujo de trabajo se verá así
Cuando ejecuta este flujo de trabajo, la tarea de comando se ejecuta primero y solo cuando tiene éxito, solo se ejecutará la tarea de sesión.
Parámetro de flujo de trabajo
Los parámetros del flujo de trabajo son aquellos valores que permanecen constantes durante toda la ejecución. una vez asignado su valor, sigue siendo el mismo. Los parámetros se pueden utilizar en las propiedades del flujo de trabajo y sus valores se pueden definir en archivos de parámetros. Por ejemplo, en lugar de utilizar un valor de conexión codificado, puede utilizar un parámetro/variable en el nombre de la conexión y el valor se puede definir en el archivo de parámetros.
Los archivos de parámetros son los archivos en los que definimos los valores de las variables o parámetros de mapeo/flujo de trabajo. Estos archivos tienen la extensión “.par”. Como estándar general, se crea un archivo de parámetros para un flujo de trabajo.
Ventajas del archivo de parámetros
- Ayuda en la migración de código de un entorno a otro.
- Permite una fácil depuración y prueba.
- Los valores se pueden modificar con facilidad sin cambiar el código.
Estructura del archivo de parámetros
La estructura del archivo de parámetros.
- [nombre_carpeta.WF:nombre_flujo de trabajo]
- $Parameter_name=Parámetro_valor
Nombre_carpeta es el nombre de la carpeta del repositorio, nombre del flujo de trabajo es el nombre del flujo de trabajo para el que está creando el archivo de parámetros.
Crearemos un archivo de parámetros para la conexión de la base de datos "guru99" que asignamos en nuestras primeras sesiones para fuentes y destinos.
Cómo crear un archivo de parámetros
Paso 1)Cree un nuevo archivo vacío (archivo de bloc de notas)
Paso 2)En el archivo ingrese el texto como se muestra en la figura.
Paso 3) Guarde el archivo en una carpeta guru99 en la ubicación “C:\guru99” como “wkf_run_command.par”
En el archivo hemos creado un parámetro “$DBConnection_SRC”, lo asignaremos a una conexión en nuestro flujo de trabajo.
Paso 4)Abra el flujo de trabajo "wkf_run_command"
- Seleccionar menú de flujos de trabajo
- Seleccione la opción de edición
Paso 5)Esto abrirá la ventana de edición del flujo de trabajo, en esta ventana
- Ir al menú de la pestaña de propiedades
- Ingrese el nombre del archivo de parámetros como “c:\guru99\wkf_run_command.par”
- Seleccione el botón Aceptar
Ahora hemos terminado de definir el contenido del archivo de parámetros y apuntarlo a un flujo de trabajo.
El siguiente paso es utilizar el parámetro en la sesión.
Paso 6) En el flujo de trabajo, haga doble clic en la sesión “s_m_emp_emp_target” y luego
- Seleccionar menú de pestaña de asignaciones
- Seleccione la propiedad de conexión en el panel izquierdo
- Haga clic en la conexión de destino, que ahora está codificada como "guru99".
Paso 7)Aparecerá una ventana del navegador de conexión, en esa ventana
- Seleccione la opción para usar la variable de conexión
- Ingrese el nombre de la variable de conexión como "$DBConnection_SRC"
- Seleccione el botón Aceptar
Paso 8) En la ventana de edición de tareas, aparecerá la variable de conexión para el destino. Seleccione el botón Aceptar en la ventana de edición de tareas.
Ahora hemos terminado de crear parámetros para una conexión y asignar su valor al archivo de parámetros.
Cuando ejecutamos el flujo de trabajo, el flujo de trabajo selecciona el archivo de parámetros, busca el valor de sus parámetros/variables en el archivo de parámetros y toma esos valores.