Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Collahuasi CEDW DocBuenasP
Collahuasi CEDW DocBuenasP
Datawarehouse
CEDW - Buenas Prácticas
Documento de Buenas Prácticas ODI
Versión: 1.0
Documento de Buenas Prácticas ODI : CEDW - Buenas Prácticas
1. Tabla de Contenidos
1. Tabla de Contenidos............................................................................................................4
2. Propósito del documento.....................................................................................................5
3. Alcance...............................................................................................................................5
4. Audiencia............................................................................................................................5
5. ¿Qué es Integración de Datos?............................................................................................5
6. ¿Qué es el Oracle Data Integrator (ODI)?.............................................................................5
7. ¿Quién Necesita ODI?..........................................................................................................6
8. Arquitectura De Oracle Data Integrator................................................................................6
9. Interfaces Gráficas..............................................................................................................7
10. Repositorio.........................................................................................................................8
11. Scheduler Agent..................................................................................................................9
12. ODI y un Proyecto de Data Warehouse...............................................................................10
12.1. Organización de los Equipos........................................................................................10
12.2. Programación y Funcionamiento Escenarios (Scheduler)...............................................11
12.3. Definición de la Topología...........................................................................................11
12.4. Servidores de Datos...................................................................................................12
13. Algunas Definiciones de Esquemas de Trabajo para el Área de Staging.................................14
14. Definición del Dataserver...................................................................................................14
15. Esquemas Físicos..............................................................................................................17
16. Contextos.........................................................................................................................18
17. Esquemas Lógicos.............................................................................................................19
18. Agentes Físicos y Lógicos...................................................................................................20
19. Definición de Modelos........................................................................................................20
20. Contenido del Modelo........................................................................................................21
21. Contenidos de Proyectos ODI.............................................................................................22
22. Diferentes Tipos de Módulos de Conocimiento.....................................................................23
23. Consideraciones en ODI.....................................................................................................23
1.
3. Alcance
Este documento aplica al desarrollo y aplicaciones de integración de ODI, para el CEDW.
Lo definido en este documento debiera ser el ideal a considerar, para el buen desarrollo
de aplicaciones de integración de sus datos y lograr finalmente un Data Warehousing que
responda con las expectativas del negocio, de la empresa y la toma de decisiones.
4. Audiencia
Este documento se encuentra dirigido a programadores, analistas, jefes de proyecto y
especialistas técnicos del departamento de Reporting Corporativo, que tengan entre sus tareas
realizar el diseño de las aplicaciones, ejecución de los procesos y carga de la metadata.
Oracle Data Integrator es una plataforma de integración completa que cubre los
requisitos de integración de datos. Maneja alto volumen, provee lotes de alto desempeño a
procesos dirigidos a eventos, a servicios de integración basados en una arquitectura orientada
a servicios y con la capacidad de procesar eventos en tiempo real.
Ejemplo de Repositorio
9. Interfaces Gráficas
Las Interfaces gráficas de ODI son interfaces basadas en Java. Se pueden instalar en
cualquier plataforma que soporte una Máquina Virtual Java 1.4 (Windows, Linux, HP-UX,
Solaris, pSeries, etc.)
10. Repositorio
Los Repositorios de ODI generalmente se componen de un Master Repository,
principal y varios Work Repository. Los objetos desarrollados o configurados en ODI a
través de las GUI, se almacenan en lo Work Repository.
Cuando el equipo de Desarrollo finaliza una versión del proyecto, este es exportado en
una única versión al Master Repository. El equipo de Test importa esta versión para pruebas a
un Work Repository, lo cual le permite al equipo de desarrollo continuar con el trabajo en una
nueva versión. Cuando las pruebas de validación realizadas por el equipo de Test son exitosas,
el equipo de Producción importa los ejecutables de esta versión, más bien llamados
escenarios, al repositorio final Execution Repository.
Sistemas de programación externos también pueden llamar al agente para que ejecute los
escenarios desarrollados.
Gracias a la arquitectura E-LT de Oracle Data Integrator, el Scheduler Agent rara vez
realiza transformaciones. Por lo general, simplemente recupera el código desde el Execution
Repository, y pide que los servidores de bases de datos o sistemas operativos lo ejecuten.
Después de la ejecución, el agente actualiza los registros en el repositorio, reportando
mensajes de error y las estadísticas de ejecución del proceso.
En estricto rigor los roles en una empresa no son tan definidos ni exclusivos, como se
muestran en el cuadro anterior.
12.3.Definición de la Topología
La topología describe la arquitectura física y lógica del Sistema. Se le da una forma muy
flexible a la gestión de los diferentes servidores, entornos y agentes. Toda la información de la
topología se almacena en ODI en el Master Repository y por lo tanto es centralizado para una
administración optimizada. Todos los objetos manipulados dentro de los Repositorios de trabajo
se refieren a la topología. Es por eso que es el punto de partida más importante en la definición
y la planificación de su arquitectura.
evidente que hay una diferencia entre la vista lógica dell sistema de información y su
implementación física como se describe en la figura a continuación.
La vista lógica describe esquemas lógicos que representan los esquemas físicos de las
aplicaciones existentes, independientemente de su implementación física. Estos esquemas
lógicos son entonces vinculados a los recursos físicos a través de contextos.
12.4.Servidores de Datos
Los Servidores de datos describen las conexiones a los servidores de aplicaciones reales
físicos y bases de datos. Ellos se pueden representar, por ejemplo:
• Sistema de Teradata
• Instancia Oracle
ODI utiliza controladores JDBC para conectarse a las fuentes de datos siguientes:
• Bases de datos relacionales, tales como servidores Teradata, Oracle, IBM DB2,
Microsoft SQL Server, Sybase, Informix, MySQL, PostgreSQL, etc
• Bases de datos de escritorio como Microsoft Access, Hypersonic SQL, Dbase, FoxPro,
Microsoft Excel, etc
• Los archivos binarios ASCII o cuando se utiliza el controlador JDBC DE ODI para
archivos. Este requiere que el archivo sea cargado por un Agente ODI. Este controlador
no se utiliza cuando el agente llama a cargadores de bases de datos nativas como
FastLoad, multicarga, SQL * Loader, BCP, etc
• Los archivos XML, utilizando ODI JDBC Driver para XML. Cualquier estructura de
archivos XML es convertido por este controlador en una estructura de base de datos
relacional (ya sea en la memoria o persistentemente en cualquier otra base de datos)
• Directorios LDAP, utilizando ODI abierto Conector para LDAP.
• Las bases de datos no relacionales, tales como IMS, ADABASE, DATACOM, VSAM, etc,
mediante el uso de adaptadores de otras marcas (iWay, Attunity, Software Hit son
ejemplos de proveedores de soluciones)
Definición de cuentas de usuario o inicios de sesión de ODI para acceder a los servidores
de datos.
En los servidores de datos de destino, se debe crear un esquema dedicado a esta área.
Con el fin de una mejor administración de esta área y evitar la contaminación a los esquemas
fuentes o de destino. Aquí se almacenará:
• Tablas temporales y vistas creadas durante la fase de carga si la fuente de datos no
están en el mismo servidor que el objetivo (C $ tabla)
• Tablas temporales creadas durante la fase de integración en determinados Módulos de
Conocimiento Integración (I $ tabla)
• Tablas de errores permanentes creadas durante la fase de control de calidad de los
datos usada por el KM de Check (E $ tabla)
• Carga de tablas temporales creadas por los Módulos de Conocimiento de carga -LKM
(generalmente precedido por C $)
• Tablas de Integración temporales creados por los módulos de integración de
conocimientos - IKM (por lo general prefijado por I $)
• Tablas de errores permanente al utilizar datos de los módulos de conocimiento de
calidad – CKM (por lo general prefijado por E $)
16. Contextos
Los contextos se utilizan para agrupar los recursos físicos que pertenecen al mismo
entorno. Una vez creado en topología, se debe evitar el borrado o la modificación del código de
un contexto, ya que puede ser referenciado en uno o más repositorios de trabajo. Un proyecto
típico tendrá muy pocos contextos (menos de 10). Estos pueden ser, por ejemplo:
A partir de este ejemplo, podemos ver que el servidor SRV_DEV tiene que ser definido en
dos ocasiones en la arquitectura física para que coincida con el entorno físico real en producción.
Por lo tanto los servidores de datos definidos SRV_DEV_CRM y SRV_DEV_SFA ambos referencian al
mismo servidor de datos SRV_DEV. De esta manera, el servidor de datos SRV_DEV se maneja
como 2 servidores independientes en la generación de código en el contexto del Desarrollo. Así
este código será válido cuando se ejecute en los servidores de producción.
Un agente físico puede ejecutar varias sesiones en paralelo (multi-threaded). Para fines
de optimización, se recomienda que ajuste el número máximo de sesiones simultáneas que se
permite para ejecutar. Cuando este número máximo es alcanzado, cualquier nueva sesión
entrante se pondrá en cola por el agente y ejecutado más tarde cuando otras sesiones han
terminado.
Los agentes físicos son parte de la arquitectura física. Por lo tanto, se puede optar por
tener diferentes agentes de acuerdo con su entorno y contextos. Para ello, definir un agente
lógico y vincularlo a varios agentes físicos de acuerdo con el contexto. Al iniciar una sesión,
basta con indicar que el agente lógico y el contexto y ODI se traducirán a la dirección física del
agente.
ODI no distingue entre los modelos de origen y destino. Los modelos se guardan en el
Repositorio de trabajo y son la base para la creación de reglas de negocio. Ellos centralizan los
metadatos del núcleo de sus sistemas.
Esta abstracción permite ODI para conectar teóricamente a cualquier fuente de datos.
Modelos referencia a una base de datos relacional se pueden rellenar automáticamente de
las tablas y vistas de definición del RDBMS a través de la API JDBC. Para otros modelos,
deberán definir los metadatos de forma manual o escribir una reverseengineering específica KM
que pueble el repositorio de trabajo ODI desde una metadatos provista.
• Carpetas: Las carpetas se utilizan para organizar los objetos desarrollados dentro de
un proyecto. Tenga cuidado al hacer referencia a los objetos a través de las carpetas,
ya que puede conducir a importar temas / exportación. Por ejemplo, trate de evitar la
referencia a las interfaces de otra carpeta dentro de un paquete de su carpeta actual
tanto como sea posible. Dentro de las carpetas tenemos:
o Interfaces: Los principales objetos donde el diseño de su transformación
como reglas de negocio. Interfaces asignan varios almacenes de datos
heterogéneos a una fuente almacén de datos de destino.
o Procedimientos: Compuesto por un conjunto de pasos que le permiten
ejecutar su propia código específico. Este código puede ser SQL de base de
datos específica (por ejemplo, PL / SQL o Transact SQL), los comandos del
sistema operativo, Java, Jython, o ODI comandos integrados (API ODI). Pasos
dentro de un procedimiento pueden mezclar llamadas a cualquiera de estos
idiomas programáticas. Un mecanismo de control de transacción es También
disponible para los comandos de base de datos específica.
o Packages: Los paquetes se utilizan para implementar un flujo de trabajo
técnico integrado de varios pasos unidos entre sí. Ellos definen la secuencia de
ejecución de puestos de trabajo que va a liberar en la producción.
• Módulos de Conocimiento, KM: La piedra angular para las interfaces de
construcción para rellenar objetivo almacenes de datos de fuentes heterogéneas
• Variables: Las variables definidas en un proyecto pueden ser utilizados en cualquier
lugar dentro de la alcance de ese proyecto. Ellos se pueden actualizar o consultar en
tiempo de ejecución. Paquetes puede evaluar o cambiar su valor actual para
implementar estructuras de control. Las variables se pueden fijar como persistente que
se mantiene en tiempo de ejecución múltiple sesiones.
• Secuencias: Secuencias son objetos que pueden ser utilizados por el agente como un
ODI contrarrestar. Se pueden utilizar, por ejemplo, para asignar una calculada
automáticamente número de serie a un campo de un almacén de datos. Sin embargo,
como los valores de secuencias son gestionados por el agente, usando los obliga una
carga de trabajo a procesar fila por fila en lugar de a granel, lo que puede dar lugar a
problemas de rendimiento. Por lo tanto, tenga cuidado al considerar el uso de
secuencias. Cuando las bases de datos tienen instalaciones para la asignación de un
contador automático para una columna (por ejemplo, secuencias o las columnas de
identidad), ODI recomienda el uso de estos mecanismos, como lo harán siempre ser
más eficiente que Secuencias ODI'Ss.
• Funciones de usuario: El uso de las funciones de usuario se recomienda cuando el
mismo patrón de transformación tiene que ser asignado a diferentes almacenes de
datos en diferentes interfaces.
Nota:
Proyectos en la terminología ODI no necesariamente coinciden con la definición de empresa de un
proyecto. Se puede tener varios proyectos definidos en ODI, todos ellos pertenecientes al mismo
Proyecto "Almacenamiento de datos", por ejemplo, se puede tener un proyecto por áreas de
negocio en lugar de un gran proyecto que contiene todo. Incluso se recomienda dividir su
desarrollo en varios proyectos pequeños que contengan menos de 300 objetos. De esta forma
mejorará la eficiencia de sus operaciones de control de versiones de importación / exportación.
Oracle Data Integrator provee una plataforma de integración con capacidad de alto
desempeño y productividad el cual provee un alto grado de flexibilidad y modularidad. El Oracle
Data Integrator cumple con todas aquellas necesidades asociadas a la integración de datos
incluyendo data Warehouse e inteligencia de negocios, integración de procesos, migraciones y
todas aquellas iniciativas donde se requieran los datos correctos, en el lugar correcto en el
momento correcto