Upload
others
View
7
Download
0
Embed Size (px)
Citation preview
¿Qué ofrece Autentia?
Somos su empresa de Somos su empresa de Somos su empresa de Somos su empresa de
Soporte a Desarrollo InformáticoSoporte a Desarrollo InformáticoSoporte a Desarrollo InformáticoSoporte a Desarrollo Informático Ese apoyo que siempre quiso tener ….Ese apoyo que siempre quiso tener ….Ese apoyo que siempre quiso tener ….Ese apoyo que siempre quiso tener ….
• Desarrollo de componentes y proyectos a medida.
• Auditoría de código y recomendaciones de mejora.
• Arranque de proyectos basados en nuevas tecnologías.
• Curso de Formación
Dirección de Proyectos Informáticos.
Gestión eficaz del Tiempo.
Arquitecturas de desarrollo Web: Web, J2EE, SOA, WebServices, BPM, etc.
Java/ J2EE a todos los niveles: JSPs, Servlets, EJBs, JMS, JNI, etc.
Análisis y diseño orientado a objeto.
UML y patrones de diseño.
Buenas prácticas en el desarrollo de aplicaciones
Técnicas avanzadas: Lucene, Hibernate, Spring, JSF, Struts, etc.
Nuestra mejor referencia son los conocimientos que Nuestra mejor referencia son los conocimientos que Nuestra mejor referencia son los conocimientos que Nuestra mejor referencia son los conocimientos que
compartimos en nuestro webcompartimos en nuestro webcompartimos en nuestro webcompartimos en nuestro web
www.adictosaltrabajo.comwww.adictosaltrabajo.comwww.adictosaltrabajo.comwww.adictosaltrabajo.com
Decenas de entidades cuentan ya con nosotrosDecenas de entidades cuentan ya con nosotrosDecenas de entidades cuentan ya con nosotrosDecenas de entidades cuentan ya con nosotros
Para más información visítenos en www.autentia.com Para más información visítenos en www.autentia.com Para más información visítenos en www.autentia.com Para más información visítenos en www.autentia.com
Tel. 91 675 33 06 Tel. 91 675 33 06 Tel. 91 675 33 06 Tel. 91 675 33 06 ---- [email protected] [email protected] [email protected] [email protected]
www.autentia.com
1– 1Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Autentia Real Business Solutions
Introducción a la tecnología Introducción a la tecnología Talend Open Studio (TOS)Talend Open Studio (TOS)
v1.0
www.autentia.com
1– 2Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Índice
• Introducción• Instalación Talend Open Studio• Diseño de un modelo de negocio• Diseño de un trabajo• Gestión de metadatos• Componentes más utilizados• Casos prácticos• Preguntas
www.autentia.com
1– 3Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
IntroducciónIntroducción
PROCESO ETL
www.autentia.com
1– 4Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Conceptos ETL
• ¿Qué es ETL?Es el acrónimo de Extract , Transform y Load.
Definición : “Proceso que permite obtener información de múltiples fuentes , procesarla y utilizarla en otras fuentes de información (Ficheros ,Bases de datos, DataMart o Data Warehouse)”
Forma parte de la Inteligencia Empresarial (Business Intelligence o BI)
• DATOS → INFORMACIÓN → CONOCIMIENTO
www.autentia.com
1– 5Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Conceptos ETL
• Procesos ETL :– Extracción
• Proceso que consiste en extraer la información desde las fuentes de datos de origen.
• En la mayoría de los casos esta fuentes de datos son heterogéneas– Requiere un proceso de unión / fusión
• Convierte los datos a un “formato” de trabajo• Tiene que causar el impacto mínimo sobre las fuentes de origen
– Uso de un planificador• Tipos de fuentes de datos
– Base de datos– Ficheros en diferentes formatos– Otras aplicaciones
www.autentia.com
1– 6Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Conceptos ETL
– Transformación• Proceso de modificación de la información obtenida en el proceso de
extracción (modificación del dato). • Fuente de datos origen → Fuente de datos final• Requiere el uso de funcionalidades específicas o reglas de negocio• Aspectos :
– Limpieza (Eliminación de errores e inconsistencias)– Conversión a un formato estándar, integración con el resto de datos de
diferentes fuentes– Modificaciones necesarias a nivel de esquema para introducir en el
almacén de datos final
www.autentia.com
1– 7Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Conceptos ETL
– Carga• Proceso de carga de la fuente de datos final con los datos generados
en el proceso de transformación . • Este proceso puede tener asociada una gran variedad de acciones
diferentes :– Sobrescritura de los datos– Generación de copias de seguridad– Generación de otro formato de ficheros– Etc,
• Esto incluye la automatización de la actualización del almacén de datos con una determinada frecuencia :semanal , diaria,...
www.autentia.com
1– 8Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
¿Qué hace una herramienta ETL?
• Características :Conectividad y capacidad
de adaptación
Entrega de datos
Transformación de datos
Metadatos y modelado dedato
Gestión de datos
Adaptación HW
Adaptación SW
Arquitectura e integración
Diseño y entorno dedesarrollo Capacidades SOA
Herramienta ETL
www.autentia.com
1– 9Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
¿Qué hace una herramienta ETL?
• La mejor herramienta NO existe • Duelo clásico : Propietarias vs Open Source
– Propietarias• Oracle Warehouse Builder• IBM DB2 Warehouse Manager• Microsoft Integration Services• Data Integrator & Data Services (SAP)• SAS Data Integration Studio
– Open source• Talend • Pentaho Data Integration (Kettle)• Clover ETL• Enhydra Octopus
www.autentia.com
1– 10Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
¿Por qué usar una herramienta ETL?
En cualquier proyecto que se tiene que realizar una integración / migración de datos la decisión más difícil es determinar si usar :
Codificación específica (Java, procedimiento SQL, etc)
Codificación específica (Java, procedimiento SQL, etc)
Herramienta ETL
www.autentia.com
1– 11Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
¿Por qué usar una herramienta ETL?
• Ahorran tiempo y dinero al reducir / suprimir la necesidad de codificación “Hand-Coding”.
• No “requiere” grandes conocimientos informáticos • Hoy por hoy la codificación manual sigue siendo la forma
más común de integrar datos.• Facilitan la integración de bases de datos de diferentes
suministradores• El proceso ETL :
– Es el proceso más subestimado en el desarrollo de DW– Es el proceso que más tiempo consume en el desarrollo de DW
• Estimacion → 80% del tiempo de desarrollo
www.autentia.com
1– 12Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Análisis de datos
• Calidad de los datos :– Los datos casi nunca tienen una calidad decente– Recordar : La información es poder– Los datos deberían de cumplir :
Precisos Completos ConsistentesÚnicos Temporales (actualizados)
• Limpieza de los datos :– Proceso que garantiza datos correctos y exactos– Los datos por regla general suelen tener incoherencias– Propiedades : Sin duplicados / Sin inconsistencias / Sin errores– Problemas de incoherencia :
• Datos incompletos• Datos inconsistentes• Datos con ruido
www.autentia.com
1– 13Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Análisis de datos
• Tipos de limpieza :
• Sin datos de calidad no hay decisiones de calidad
Tipo Descripción
Conversión Proceso que permite cambiar de tipo
Parseo Proceso que realiza un análisis de sintaxis
Normalización Proceso de ajuste estructura a un esquema determinado
Ortografía Proceso de revisión ortográfica
Eliminar duplicados Proceso que elimina los elementos repetidos
Aproximaciones Procesos de reajuste de los datos
.............
www.autentia.com
1– 14Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Instalación Talend Open Studio (TOS)Instalación Talend Open Studio (TOS)
• Conceptos básicos :– Repositorio : Lugar utilizado para almacenar todos los
elementos generados en los modelos de negocio y en los diseños de trabajos.
– Workspace : Directorio donde se almacenan todos los directorios de los proyectos.
– Proyecto : Colección estructurada de los elementos técnicos y de la meta-información asociada
– Elemento (Item) : Unidad técnica básica en un proyecto– Trabajo(Job) : Gráfico compuesto por componentes con una
funcionalidad– Componente : Conector con una funcionalidad definida que
se utiliza para realizar un conjunto de operaciones de integración sobre los datos indicados
www.autentia.com
1– 15Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Instalación Talend Open Studio (TOS)
• Ayuda para la instalación :http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=TOS4.0
• Tipos de licencias : – Página de comparación :
http://www.talend.com/products-data-integration/matrix.php
www.autentia.com
1– 16Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Interfaz
Repositorio
Menu Superior
Area Diseño
Paleta
Pestañas infoLínea de SalidaY
Código
www.autentia.com
1– 17Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Interfaz
• Menus :– Barra de acceso rápido
• Muestra las opciones más comunes (guardar , crear ,...)
• Difiere entre diseño de trabajos y modelos de negocio
– Menu• Muestra las opciones :
Archivo , Edición , View , Windows y Help
www.autentia.com
1– 18Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Interfaz
• Repositorio :– Vista de árbol– Incluye todos los
elementos técnicos– Opciones :
• Business Models• Job Designs• Context• Código• SQL Templates• Metadata• Documentation• Recycle bin
www.autentia.com
1– 19Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Interfaz
• Área de diseño :– Zona de implementación– Habilita la paleta de
componentes
www.autentia.com
1– 20Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Interfaz
• Paleta :– Difiere entre el modelo de
negocio y el diseño de trabajos
– Personalización• Layout• Presentación• Esconder familias• Crear” Favorita”• .......
– Búsqueda• Componentes• Job que usan componente
www.autentia.com
1– 21Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Interfaz
• Línea de salida y código:
– Permite mostrar de forma rápida los elementos que componente el job
– Muestra el código generado en base a :
• Java• Perl
www.autentia.com
1– 22Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Diseño de un modelo de negocioDiseño de un modelo de negocio
• Representación del flujo de trabajo evitando los conceptos técnicos que dificulten su comprensión.– Representación gráfica de los datos de interés para el negocio
• Ayudan a entender las necesidades y favorecen su traducción en procesos técnicos.
• Su diseño permite detectar / resolver de forma rápida los cuellos de botella y puntos críticos.
• A la hora de la verdad se suelen usar “poco”
www.autentia.com
1– 23Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Gestión de un modelo de negocio
• Elementos del modelo de negocio
• Conectar componentes
www.autentia.com
1– 24Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Modelo de negocio
• Ejemplo:
www.autentia.com
1– 25Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Diseño de un trabajoDiseño de un trabajo
• ¿Qué es un trabajo?– Es la implementación del modelo de negocio.
• Representación gráfica y funcional de un proceso técnico– El gráfico que representa la funcionalidad implementada tiene la
capacidad de ser ejecutado
– Representa : rutinas, programas y código• Necesidades del negocio
– Un trabajo puede componerse de uno o más subtrabajos.• Piezas Puzzle
– Uno o más componentes interconectados implementan un trabajo.
www.autentia.com
1– 26Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Diseño de un trabajo
• Ejemplo de trabajo
www.autentia.com
1– 27Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Conexión de Componentes.
• Determina el orden de ejecución de los trabajos– Secuencialidad
• Propiedades de las conexiones:– Definen los datos a procesar (Input).– Definen los datos de salida (Output).– Definen la secuencia lógica del trabajo (Orden).
www.autentia.com
1– 28Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Tipos de Conexión de Componentes
• Fila (Row): maneja los datos actuales.– Main: flujo de datos de un componente a otro.– Lookup: sub-flujo para flujo principal.– Filter: conecta un componente específico tFilterRow con otro de salida.– Reject: conecta un componente de procesamiento a un componente de
salida.– Output: conecta un componente tMap a uno o varios componentes de
salida.– Uniques/Duplicates: conectan componentes tUniqRow a componentes de
salida.
• Iterativa: recorre un conjunto de datos (ficheros de un directorio, entradas de una base de datos, etc.)– Permite concurrencia.
www.autentia.com
1– 29Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Tipos de Conexión de Componentes
• Trigger: define la secuencia del procesamiento.Similar al Trigger en base de datos.
– Trigger de SubTrabajo• On SubJob Ok• On SubJob Error
– Trigger de Componente• On Component Ok• On Component Error• Run if
• Link: solo se puede utilizada con componentes ELT.Este tipo de conexión transfiere la información sobre el esquema.
www.autentia.com
1– 30Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Pre-Trabajo y Post-Trabajo
• Pre-Trabajo (tPrejob): conjunto de acciones que “preparan” el entorno para su ejecución.(Opcional)– Ejemplo:
• Abrir una conexión a la base de datos antes de leer los registros.
• Post-Trabajo (tPostjob): conjunto de acciones que “liberan” el entorno tras su ejecución. (Opcional)– Ejemplo:
• Cerrar una conexión a la base de datos tras leer los registros.
• No pueden pertenecer a tareas multiproceso. ( Varios hilos ejecutándose a la vez )
• Organizadores.
www.autentia.com
1– 31Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Ejecución de un trabajo
• Definición del entorno – Desarrollo– Pruebas– Producción– ..... (Entornos propios)
• Ejecución de un trabajo– Normal– Debug
• Generación de resultado y estadísticas• Versionado• Exportación : Autónomo , Servicio web, etc
www.autentia.com
1– 32Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Rutinas
• Es una función Java / Perl• Permite refactorizar el código
– Similar a Metadatos• Funciones :
– Procesamiento – Conversión– Generación de datos de prueba
• Hay dos tipos de rutinas:– Rutinas del sistema: Se facilitan una serie de rutinas.
• Clasificación :numéricas , manejo de cadenas, datos, etc. – Rutinas propias : Definidas por el usuario.
www.autentia.com
1– 33Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Rutinas
• Ejemplo de rutinas propias :
www.autentia.com
1– 34Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Contexto
• Es un conjunto de circunstancias que determinan el ámbito de ejecución
• Suelen determinar la configuración de dicho entorno• Tipos : Propio / Usuario• Por regla general se suele disponer de varios entorno
de ejecución– Desarrollo– Producción– Pruebas
www.autentia.com
1– 35Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Contexto
• Ejemplo de contexto definido por el usuario
www.autentia.com
1– 36Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Contexto
• Ejemplo de contexto propio
www.autentia.com
1– 37Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Contexto
• Uso del contexto :– Cargar el contexto en el propio componente que vayamos a
utilizar• Para usar el contexto dentro del componente : CTRL + ESPACIO
– Solicitar un elemento del contexto a través del PROMPT con F5 dentro del contexto
– Cargar el contexto antes de realizar la ejecución
www.autentia.com
1– 38Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Gestión de MetadatosGestión de Metadatos
• Metadata: “Información sobre la información”– Estructurados– Almacenables
“Datos estructurados y codificados que describen características de instancias conteniendo informaciones para ayudar a identificar, descubrir, valorar y administrar las instancias descritas”
• Esquema: guarda la descripción de los datos siguiendo una estructura definida.
www.autentia.com
1– 39Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Metadata en el Repositorio
• En el nodo Metadata del repositorio tenemos el soporte que nos permite configurar conexiones a ficheros, bases de datos y/o sistemas a los que necesitemos conectarnos.– Plantillas de acceso común.– CTRL y ALT (Entrada y salida)
• Reutilización de las plantillas creadas.• Configuración en el contexto (opcional)• Asistente de creación
www.autentia.com
1– 40Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Mapeos
• Proceso que relaciona “entidades” en base a unas condiciones establecidas.
Ej.: unificación en único campo.
• Tarea menospreciada.– Su mal uso provoca errores con una alta repercusión.– Pérdida de información → perdida de dinero.
• Definición correcta de los esquemas.– Facilitan:
• Mantenimiento• Comprensión• Integridad
www.autentia.com
1– 41Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Componente tMap
• Componente preferente para manipular múltiples flujos de entrada y salida.
• Tipos de operaciones soportadas:– Multiplexación/Demultiplexación de datos– Transformación de cualquier tipo de campos– Concatenación e intercambio de campos– Filtrado de campos– Descarte de campos
• No puede ser el componente inicial/final de un trabajo.
www.autentia.com
1– 42Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Componente tMap
• Ejemplo
www.autentia.com
1– 43Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Componentes de Log y ErrorComponentes de Log y Error
www.autentia.com
1– 44Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Componentes: gestión de ficherosComponentes: gestión de ficheros
www.autentia.com
1– 45Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Componentes de sistemaComponentes de sistema
www.autentia.com
1– 46Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Componentes personalizadosComponentes personalizados
www.autentia.com
1– 47Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Componentes organizativosComponentes organizativos
www.autentia.com
1– 48Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Ejemplos prácticos
www.autentia.com
1– 49Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5.
Preguntas