Guía del servicio de aplicación > Arquitectura del Servicio de integración de datos > Componentes de servicio
  

Componentes de servicio

Los componentes de servicio del Servicio de integración de datos incluyen módulos que administran las solicitudes de las herramientas cliente. También incluyen administradores que gestionan la implementación de aplicaciones, las memorias caché y la optimización de tareas.
El componentes de servicio se ejecutan dentro del proceso del Servicio de integración de datos. El proceso del Servicio de integración de datos debe ejecutarse en un nodo con la función de servicio. Un nodo con la función de servicio puede ejecutar servicios de aplicación.

Módulo del servicio de asignación

El módulo del servicio de asignación administra las solicitudes para obtener una vista previa de los datos y para ejecutar asignaciones.
En la tabla siguiente se enumeran las solicitudes que el módulo del servicio de asignación administra de las diferentes herramientas cliente:
Solicitud
Herramientas cliente
Obtener una vista previa de datos de origen o de transformación en función de la lógica de asignación.
Developer tool
Herramienta del analista
Ejecutar una asignación.
Developer tool
Ejecutar una asignación en una aplicación implementada.
Línea de comandos
Obtener una vista previa de un servicio de datos SQL.
Developer tool
Obtener una vista previa de una asignación de operación de servicio web.
Developer tool
Las herramientas cliente de terceros incluyen, por ejemplo, el cliente SQL SQuirreL, DBClient y el cliente MySQL ODBC.
Cuando visualice una vista previa o ejecute una asignación, la herramienta cliente enviará la solicitud y la asignación al Servicio de integración de datos. El módulo del servicio de asignación envía la asignación al LDTM para su optimización y compilación. El LDTM pasa la asignación compilada a una instancia del DTM, que genera los datos de vista previa o ejecuta la asignación.
Si obtiene una vista previa de los datos contenidos en un servicio de datos SQL en Developer tool, Developer tool envía la solicitud al Servicio de integración de datos. El módulo del servicio de asignación envía la instrucción SQL al LDTM para su optimización y compilación. El LDTM pasa la instrucción SQL compilada a una instancia del DTM, que ejecuta la instrucción SQL y genera los datos de vista previa.
Si abre una vista previa de una asignación de operación de servicio web en Developer tool, Developer tool envía la solicitud al Servicio de integración de datos. El módulo del servicio de asignación envía la asignación de operación al LDTM para su optimización y compilación. El LDTM pasa la asignación de operación compilada a una instancia del DTM, que ejecuta la asignación de operación y genera los datos de vista previa.

Módulo del servicio de creación de perfiles

El Módulo del servicio de creación de perfiles administra las solicitudes para ejecutar perfiles y generar cuadros de mando.
Si ejecuta un perfil en la Herramienta del analista o en Developer tool, la aplicación envía la solicitud al Servicio de integración de datos. El Módulo del servicio de creación de perfiles convierte el perfil en una o más asignaciones. El Módulo del servicio de creación de perfiles envía las asignaciones al LDTM para su optimización y compilación. El LDTM pasa las asignaciones compiladas a instancias de DTM que obtienen las reglas de creación de perfiles y ejecutan el perfil.
Si ejecuta un cuadro de mando en la Herramienta del analista o en Developer tool, la aplicación envía la solicitud al Servicio de integración de datos. El Módulo del servicio de creación de perfiles convierte el cuadro de mando en una o más asignaciones. El Módulo del servicio de creación de perfiles envía las asignaciones al LDTM para su optimización y compilación. El LDTM pasa las asignaciones compiladas a instancias de DTM que generan un cuadro de mando para el perfil.
Para crear y ejecutar perfiles y cuadros de mando, debe asociar el Servicio de integración de datos con un almacén de creación de perfiles. El módulo del servicio de creación de perfiles almacena datos y metadatos de la creación de perfiles en el almacén de creación de perfiles.

Módulo del servicio de SQL

El módulo del servicio de SQL administra las consultas SQL enviadas a un Servicio de datos SQL desde una herramienta cliente de terceros.
Cuando el Servicio de integración de datos recibe una consulta SQL de una herramienta cliente de terceros, el Módulo del servicio de SQL envía la instrucción SQL al LDTM para su optimización y compilación. El LDTM pasa la instrucción SQL compilada a una instancia del DTM para ejecutar la consulta SQL en las tablas virtuales del servicio de datos SQL.
Si no almacena los datos en la memoria caché en el momento de implementar un servicio de datos SQL, se inicia una instancia de DTM para ejecutar el servicio de datos SQL. Cada vez que una herramienta cliente de terceros envía una consulta SQL a la base de datos virtual, la instancia de DTM lee los datos de las tablas de origen en lugar de las tablas de la memoria caché.

Módulo de servicios web

El Módulo de servicios web administra las solicitudes de operación de servicio web enviadas a un servicio web desde un cliente del servicio web.
Cuando el Servicio de integración de datos recibe solicitudes de un cliente del servicio web, el Módulo de servicios web envía la asignación de operación de servicio web al LDTM para su optimización y compilación. El LDTM pasa la asignación compilada a una instancia del DTM que ejecuta la asignación de operación. El Módulo de servicios web envía la respuesta de la asignación de la operación al cliente del servicio web.

Módulo del servicio de orquestación del flujo de trabajo

El módulo del servicio de orquestación del flujo de trabajo administra las solicitudes para ejecutar flujos de trabajo.
Cuando se inicia una instancia de flujo de trabajo en una aplicación implementada, el Servicio de integración de datos recibe la solicitud. El módulo del servicio de orquestación del flujo de trabajo ejecuta y administra la instancia de flujo de trabajo. El módulo del servicio de orquestación del flujo de trabajo ejecuta los objetos de flujo de trabajo en el orden en que están conectados. El módulo del servicio de orquestación del flujo de trabajo evalúa las expresiones de flujos de secuencias condicionales para determinar si ejecuta la siguiente tarea. Si la expresión da como resultado TRUE o si el flujo de secuencias no incluye una condición, el módulo del servicio de orquestación del flujo de trabajo se inicia y pasa datos de entrada a la tarea conectada. La tarea utiliza los datos de entrada para completar una única unidad de trabajo.
Cuando una tarea de asignación ejecuta una asignación, envía la asignación al LDTM para optimizarla y compilarla. El LDTM pasa la asignación compilada a una instancia del DTM que ejecuta la asignación.
Cuando una tarea finaliza el procesamiento de una unidad de trabajo, la tarea pasa datos de salida de vuelta al módulo del servicio de orquestación del flujo de trabajo. El módulo del servicio de orquestación del flujo de trabajo usa estos datos para evaluar expresiones en flujos de secuencias condicionales o utiliza estos datos como entrada para las tareas restantes del flujo de trabajo.

Administrador de memoria caché de objetos de datos

El Administrador de memoria caché de objetos de datos almacena en caché los datos de una aplicación.
Cuando se habilita la memoria caché de objetos de datos, el administrador de memoria caché de objetos de datos puede almacenar en caché los objetos de datos lógicos y tablas virtuales en una base de datos. El administrador de memoria caché de objetos de datos almacenará inicialmente los datos en caché cuando habilite la aplicación. El rendimiento óptimo de la memoria caché depende de la velocidad y del rendimiento de la base de datos.
De forma predeterminada, el administrador de la memoria caché de objetos de datos administra la memoria caché de objetos de datos en la base de datos de la memoria caché de objetos de datos. El administrador de la memoria caché de objetos de datos crea las tablas de la memoria caché y actualiza la memoria caché. Crea una tabla para cada objeto de datos lógicos o tabla virtual en una aplicación. Los objetos de una aplicación comparten las tablas de la memoria caché, pero los objetos en diferentes aplicaciones no lo hacen. Si utiliza un objeto de datos en varias aplicaciones, el administrador de memoria caché de objetos de datos crea una tabla de la memoria caché independiente para cada instancia del objeto de datos.

Administrador de caché de conjunto de resultados

El Administrador de caché de conjunto de resultados administra los resultados en memoria caché de las consultas a servicios de datos SQL y las solicitudes de servicio web. Una memoria caché de conjunto de resultados es el resultado de una instancia de DTM que ejecuta una consulta SQL en un servicio de datos SQL o una solicitud de servicio web en una operación de servicio web.
Cuando se habilita el almacenamiento en caché de conjunto de resultados, el Administrador de caché de conjunto de resultados crea grupos de memoria caché para almacenar temporalmente los resultados de una instancia de DTM. Si el Administrador de caché de conjunto de resultados necesita más espacio que el asignado, almacena los datos en archivos caché. El Administrador de caché de conjunto de resultados almacena provisionalmente los resultados durante un período especificado. Cuando un cliente externo realiza la misma solicitud antes de que finalice el período de almacenamiento provisional, el Administrador de caché de conjunto de resultados devuelve los resultados almacenados temporalmente. Si no existe un almacenamiento provisional o ha caducado, el Servicio de integración de datos inicia una instancia DTM para procesar la solicitud y, a continuación, almacena los resultados en memoria caché.
Cuando el Administrador de caché de conjunto de resultados almacena los resultados por usuario, el Servicio de integración de datos sólo devuelve los resultados del usuario que ejecutó la consulta SQL o que envió la solicitud de servicio web. El Administrador de caché de conjunto de resultados almacena la memoria caché de conjunto de resultados para los servicios de datos SQL por usuario. El Administrador de caché de conjunto de resultados almacena la memoria caché de conjunto de resultados para los servicios web por usuario cuando el servicio web utiliza WS-Security. El Administrador de caché de conjunto de resultados almacena la memoria caché por el nombre de usuario proporcionado en el token username de la solicitud de servicio web.

Administrador de implementación

El Administrador de implementación es el componente del Servicio de integración de datos que administra las aplicaciones. Cuando se implementa una aplicación, el Administrador de implementación administra la interacción entre el Servicio de integración de datos y el Servicio de repositorio de modelos.
El Administrador de implementación inicia y detiene una aplicación. El Administrador de implementación valida las asignaciones, flujos de trabajo, servicios web y servicios de datos SQL en la aplicación y sus objetos dependientes cuando se implementa la aplicación.
Después de la validación, el Administrador de implementación almacena los metadatos en tiempo de ejecución de la aplicación en el repositorio de modelos. Los metadatos en tiempo de ejecución incluyen información para ejecutar las asignaciones, flujos de trabajo, servicios web y servicios de datos SQL en la aplicación.
El Administrador de implementación crea un conjunto independiente de metadatos en tiempo de ejecución en el repositorio de modelos para cada aplicación. Cuando el Servicio de integración de datos ejecuta los objetos de aplicación, el Administrador de implementación recupera los metadatos en tiempo de ejecución y hace que estén disponibles para el DTM.

Administrador de Data Transformation lógico

El Administrador de Data Transformation lógico (LDTM) optimiza y compila las tareas.
El LDTM puede realizar las siguientes optimizaciones:
Filtrar los datos para reducir el número de filas para procesar.
El LDTM aplica métodos de optimización para filtrar los datos y reducir el número de filas para procesar. Por ejemplo, el LDTM puede utilizar la optimización de primera selección para mover un filtro más cerca del origen. Puede utilizar la optimización de inserciones para insertar la lógica de transformación en una base de datos. Puede utilizar el método de optimización basado en el coste para cambiar el orden de procesamiento de combinación. Cuando desarrolle una asignación, puede elegir un nivel de optimizador que determine qué métodos de optimización puede aplicar el LDTM a la asignación.
Determinar la estrategia de particiones para maximizar el procesamiento en paralelo.
Si tiene la opción de utilizar particiones, el Servicio de integración de datos puede maximizar el paralelismo para asignaciones y perfiles. El LDTM determina dinámicamente el número óptimo de particiones para cada fase de canal y la mejor manera de redistribuir los datos entre cada punto de partición.
Determinar el modo de movimiento de datos para optimizar el procesamiento de caracteres ASCII.
El LDTM determina si se utiliza el modo de movimiento de datos ASCII o Unicode para las asignaciones que leen desde un archivo sin formato o un origen relacional. El LDTM determina el modo de movimiento de datos en función de los conjuntos de caracteres que procesa la asignación. Cuando una asignación procesa datos exclusivamente ASCII, el LDTM selecciona el modo ASCII. En el modo ASCII, el Servicio de integración de datos utiliza un byte para almacenar cada carácter, lo que puede optimizar el rendimiento de la asignación. En el modo Unicode, el servicio utiliza dos bytes por cada carácter.
Después de optimizar una asignación, el LDTM compila la asignación optimizada y hace que esté disponible para que la ejecute el Administrador de Data Transformation (DTM) de ejecución.