comenzamos a las - hpclab.ucentral.edu.co

36
Maestría en Analítica de datos Big Data Clase N°04 | Procesos ETL Requerimientos de información Extracción y Transformación (detalles de implementación) Requerimientos de herramientas ETL Comenzamos a las: Bogotá, 27 de Agosto de 2021.

Upload: others

Post on 02-Apr-2022

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Comenzamos a las - hpclab.ucentral.edu.co

Maestría en Analítica de datosBig Data

Clase N°04 | Procesos ETLRequerimientos de información

Extracción y Transformación (detalles de implementación)

Requerimientos de herramientas ETL

Comenzamos a las:

Bogotá, 27 de Agosto de 2021.

Page 2: Comenzamos a las - hpclab.ucentral.edu.co

Anteriormente en: Big Data• Qué es Big Data.

• Definición parcial.

• Programación para el análisis de datos• Repaso Python (bibliotecas y paradigmas de programación).

• POO (Programación orientada a objetos) .

• Propósito de la analítica de Big Data.

• Proveer la arquitectura adecuada para el manejo de grandes volúmenes de datos.

• Manipulación.

• Procesamiento.

• Análisis.

• Tipos de análisis.

• Pasado: Qué ocurrió?

• Descriptivo (Revelar relaciones).

• Diagnóstico (Revelar patrones).

• Futuro: Qué ocurrirá?, Qué es mejor?, Qué acción tomar?

• Predictiva (revelar tendencia/perspectiva).

• Prescriptiva (Revelar dirección/principios).

• ETL (Extract,Transform,Load).

• Etapas

• Extraer.

• Transformar.

• Cargar.

• Herramientas

• Tipos de datos.

• Datos estructurados.

• No estructurados.

• Bases NoSQL.

• Definión.

• Aplicación.

• Tipos de bases NoSQL• Clave – Valor

• Documentales

• Procesamiento de datos• Map - Reduce.

• Arquitectura MapReduce.

• Computo distribuido.

• Computo paralelo.

• Arquitecturas y marcos de trabajo para cómputo distribuido y/o paralelo.

• Herramientas y tecnologías actuales en Big Data.• Investigación y presentación.

Page 3: Comenzamos a las - hpclab.ucentral.edu.co

Contenido

• ETL• Requerimientos de información en función de los procesos de analítica

• Estandarización de flujos de trabajo• CRISP-DM

• ASUM

• TDSM

• Integración de datos

• Consideraciones de Implementación I• Extracción

• Transformación

• Requerimientos para la elección de herramientas ETL en el mercado

Page 4: Comenzamos a las - hpclab.ucentral.edu.co

Requerimientos de información en función del tipo de analítica

Page 5: Comenzamos a las - hpclab.ucentral.edu.co

Análisis de datos | Big Data

Máquina a Máquina: M2M

Internet de las cosas: IoT

Además: • Veracidad (validez de los datos y los resultados de la analítica)• Valor (aporte de los resultados a la comprensión del entorno y la

toma de decisiones)

Page 6: Comenzamos a las - hpclab.ucentral.edu.co

Tipos de análisis de datos (complejidad)

https://www.altexsoft.com/blog/analytics-maturity-model/

Page 7: Comenzamos a las - hpclab.ucentral.edu.co

Tipos de análisis de datos: madurez vs. valor

Page 8: Comenzamos a las - hpclab.ucentral.edu.co

Ámbitos de ejercicio vs aplicaciones (analítica)

Page 9: Comenzamos a las - hpclab.ucentral.edu.co

Estandarización de flujos de trabajoAnalítica de Datos y Big Data

Page 10: Comenzamos a las - hpclab.ucentral.edu.co

CRISP-DM (1999)

• Resultante del programa marco europeo ESPRIT (Investigación en Tecnologías de la Información)• Se publicó en marzo de 1999

• Modelo flexible en términos de procesos y herramientas

• Adaptable a las necesidades de información de la organización

• Articulación con procesos futuros

• Orientado a Data Mining. Su equipo de soporte descontinuó la documentación

Page 11: Comenzamos a las - hpclab.ucentral.edu.co

ASUM (IBM, 2015)

1. Evaluation of the organization's readiness and conditions for the analytical process.

2. Understanding of the organization's information needs (business model; questions and problems that guide the analytics process).

3. Understanding the data (validation of the data quality -format and content-, descriptive statistics)

4. Preparation of complete data (profiling, mapping of source systems to destination systems, ETL processes).

5. Modeling o Exploration, selection and implementation of methods for the identification of patterns, trends, categories, etc.

6. Evaluation of the process.

7. Deployment in the support information system.

8. Feedback (based on the effectiveness of the models in production).

Page 12: Comenzamos a las - hpclab.ucentral.edu.co

Microsoft TDSM (Ciencia de Datos)

• “Team Data Science Process”• Metodología Ágil e Interactiva• Orientada a Ciencia de Datos

de tipo predictivo

• Componentes clave• Definición del ciclo de vida de

ciencia de datos (izquierda)• Estructura estandarizada de

proyectos de DS• Infraestructura y recursos

recomendados• Herramientas y utilidades

recomendadas para ejecuciónde proyectos

Page 13: Comenzamos a las - hpclab.ucentral.edu.co

Microsoft TDSM proyecto

Roles y tareas Estructura del proyecto

Page 14: Comenzamos a las - hpclab.ucentral.edu.co

Integración de Datos

* https://www.superbcrew.com/astera-software-simplifies-and-automates-data-integration-initiatives-for-enterprise-ecosystems/

Page 15: Comenzamos a las - hpclab.ucentral.edu.co

Consideraciones de implementación IExtracción y Transformación

Page 16: Comenzamos a las - hpclab.ucentral.edu.co

Extraction, Transformation and Loading (ETL)

Page 17: Comenzamos a las - hpclab.ucentral.edu.co

Requerimientos*

* Microsoft

Page 18: Comenzamos a las - hpclab.ucentral.edu.co

Repaso: Requisitos de las pruebas en procesos ETL• Las pruebas deben identificar los datos incompatibles de diferentes fuentes, así

como los datos duplicados que deben eliminarse.

• Las pruebas deben identificar cualquier pérdida de datos incurrida durante elproceso ETL.

• Las personas responsables de las pruebas ETL deben tener privilegios paraejecutar trabajos ETL.

• Las pruebas deben verificar que el proceso pueda manejar el volumen de datosque se transferirán, así como la complejidad de esos datos.

• Las pruebas deben identificar cualquier problema dentro de los procesos yprocedimientos comerciales que provoquen una producción inadecuada dedatos, la duplicación de datos o la falta de datos críticos.

• Las personas que realizan las pruebas deben poder crear o adquirir suficientesdatos de prueba para que el procedimiento de prueba sea completo y preciso,además de ser indicativo de cómo progresará el procedimiento ETL con los datoscomerciales reales.

Page 19: Comenzamos a las - hpclab.ucentral.edu.co

Repaso: Validaciones en procesos ETL

• ¿La transferencia de datos desde lafuente a su destino se realizó segúnlo planeado?

• ¿Llegaron los datos que esperaba?

• ¿Están cargados todos los camposde la base de datos?

• ¿Hubo algún truncamiento de losdatos?

• ¿Los datos de la suma decomprobación para el recuento deregistros coinciden entre el origen yel destino?

• ¿Se registró correctamente algúndato rechazado?

• ¿Los registros contienen detallesadecuados sobre los problemas?

• ¿Se han verificado todos loscampos de valor NULO?

• ¿Se han cargado conjuntos dedatos duplicados?

• ¿Puede verificar la integridad de losdatos transferidos?

Page 20: Comenzamos a las - hpclab.ucentral.edu.co

Repaso: ejemplo de gestión de excepciones

Page 21: Comenzamos a las - hpclab.ucentral.edu.co

Repaso: Lógica de reinicioProceso principal Subproceso

Page 22: Comenzamos a las - hpclab.ucentral.edu.co

Consideraciones de implementación sobre la Extracción

Page 23: Comenzamos a las - hpclab.ucentral.edu.co

ETL: Extracción

Extracción

Detectar cambios en la fuente original

Adquirir desde la fuente (acceder-descargar-filtrar)

Staging

• ¿Ha habido algún cambio en los datos relevantes desde la última ejecución?• Decidir la estrategia para procesar registros nuevos o

actualizados.

• Las actualizaciones de datos son notificadas por la fuente o deben ser consultadas.• Estrategias de extracción frente a recepción• Las estrategias de publicación-suscripción podrían

reducir la complejidad del proceso y mejorar su estabilidad

• Almacenamiento o no• Los archivos de texto sin formato son simples, más

fáciles de explorar y procesar en contraste con los archivos binarios

Page 24: Comenzamos a las - hpclab.ucentral.edu.co

Formatos de datos más comunes

• Genéricos: archivos en texto plano (CSV, TSV), XML, JSON

• Orientados a drivers para gestores de bases de datos: ODBC, JDBC

• Orientados a almacenamiento distribuido: Hadoop Distributed File System (HDFS), Hive/HCatalog

• Propietarios: Oracle, IBM DB2, SQL Server, Sybase, GreenplumMainframe (IBM z/OS),

• Orientados a frameworks: IBM Websphere MQ, Salesforce.com, SAP/R3, Teradata, Vertica, Netezza

Page 25: Comenzamos a las - hpclab.ucentral.edu.co

Consideraciones de implementación sobre la Transformación

Page 26: Comenzamos a las - hpclab.ucentral.edu.co

Transformación

• ¿Cómo se ensamblarán los registros?• Los datos generalmente provienen de diferentes fuentes,

en diferentes formatos y en diferentes intervalos de tiempo (actualizaciones).

• ¿Cuáles son las reglas de deduplicación?• Mecanismos consistentes para reducir la complejidad y

mejorar la estabilidad del sistema.

• ¿Cómo se evaluarán y procesarán los registros defectuosos?• Siempre se requiere detección, gestión y auditoría.

• Otras transformaciones:• Transformaciones específicas según problema, generación

de claves, convenciones dentro del sistema de información, etc.

Transformación

Limpieza de datos

Eliminación de Duplicados

Staging

Transformaciones específicas según

problema

Page 27: Comenzamos a las - hpclab.ucentral.edu.co

Transformaciones

• A escala de registro: Aggregation, Copy, Join, Sort, Merge, Partition, Filter, Reformat, Lookup

• Matemáticas: +, -, x, /, Abs, IsValidNumber, Mod, Pow, Rand, Round, Sqrt, ToNumber, Truncate, Average, Min, Max

• Lógicas: And, Or, Not, IfThenElse, RegEx, Variables

• De cadena: Concatenate, CharacterLengthOf, LengthOf, Pad, Replace, ToLower, ToText, ToUpper, Translate, Trim, Hash

• De fecha: DateAdd, DateDiff, DateLastDay, DatePart, IsValidDate

• De formato: ASCII, EBCDIC, Unicode

Page 28: Comenzamos a las - hpclab.ucentral.edu.co

Transformación

Operativización e instrumentación

Cronograma

Notificaciones

Monitoreo de actividad

Auditoría

Copias de respaldo

Seguridad

Re-ejecución

Regulación

• ¿El proceso terminó correctamente?

• ¿Es posible monitorear el proceso?

• ¿Hay suficientes detalles en caso de errores en tiempo de ejecución?

• ¿Es posible auditar o solucionar errores en tiempo de ejecución?

• En caso de falla, ¿es posible reiniciar el proceso sin intervención humana?

• ¿Es posible proteger el código fuente y los datos tanto transferidos como almacenados?

• ¿Es posible confiar en el sistema resultante?

Page 29: Comenzamos a las - hpclab.ucentral.edu.co

Requerimientos de las herramientas ETL

Page 30: Comenzamos a las - hpclab.ucentral.edu.co

Integración de datos en el proceso analítico

Ejemplo según Talend https://www.talend.com/es/resources/etl-tools/

Page 31: Comenzamos a las - hpclab.ucentral.edu.co

Consideraciones sobre herramientas ETL (ELT) en el mercado• Una herramienta de ETL debería funcionar correctamente con las últimas

innovaciones y adaptarse fácilmente a nuevas tecnologías. • Las buenas herramientas de ETL podrán integrarse con tecnologías serverless, Spark,

Snowflake, machine learning, etc., y adaptarse rápidamente a nuevas tecnologías que aún no conocemos.

• La escalabilidad es muy importante al elegir herramientas • Escalado horizontal/vertical

• La portabilidad es una capacidad importante de las herramientas de ETL, pero que muchas veces se pasa por alto. Por ejemplo: • El ecosistema Apache Hadoop está avanzando a gran velocidad. En 2014 y 2015 la

norma era MapReduce, pero a finales de 2016 Spark se convirtió en la nueva solución por defecto. Si en su día había optado por de programación a mano, resultaba imposible portar ese código de MapReduce a Spark. Las principales herramientas de ETL permiten este tipo de cambios sin problemas

Page 32: Comenzamos a las - hpclab.ucentral.edu.co

Requerimientos de las herramientas ETL I

• Leer y escribir a partir del abanico completo de fuentes de datos que necesite, estén ubicadas en la nube o localmente.

• Realizar procesos de transformación de datos (ordenar, filtrar y agregar).

• Brindar capacidades de calidad y gobernanza de datos integradas, como eliminación de duplicados, correspondencias y perfiles de datos.

• Incluir herramientas de colaboración. • Con ello resultará más fácil reutilizar elementos de desarrollo anteriores y los flujos

de integración de datos resultantes pueden ser más eficientes.

• Una única tarea puede alimentar varios destinos en lugar de tener una serie de flujos de integración de datos haciendo prácticamente lo mismo sin parar.

https://www.talend.com/es/resources/etl-tools/

Page 33: Comenzamos a las - hpclab.ucentral.edu.co

Requerimientos de las herramientas ETL II • Con el cambio a los “sistemas en la nube” (cloud), la capacidad de

adaptarse a procesos CI/CD (Continuous Integration/Delivery) es una necesidad.

• La herramienta de ETL debería poder operar en cualquier entorno, en infraestructuras locales, cloud o híbridas.

• Una herramienta de ETL debería poder adaptarse a nuevos proveedores sin problemas. Por ejemplo: • Portar un datalake de Redshift a Snowflake según ofertas o requerimientos• Usar AWS como proveedor de cloud durante un trimestre, pero usar Azure al

siguiente.

Es importante disponer de una herramienta de ETL que funcione en un entorno multi-cloud y sepa adaptarse a nuevos proveedores y entornos de despliegue modificando simplemente algunos componentes, pero conservando la lógica del negocio y de la transformación.

https://www.talend.com/es/resources/etl-tools/

Page 34: Comenzamos a las - hpclab.ucentral.edu.co
Page 35: Comenzamos a las - hpclab.ucentral.edu.co

Taller

Trabajo escrito (en grupo)• Dadas la Ley 1581 de 2012 y el Reglamento General de Protección de Datos de la Unión

Europea (GDPR):• Hacer un comparativo entre Ley 1581 de 2012 y la GDPR

• Mencionar los antecedentes de cada una de las leyes

• Explicar las similitudes y las diferencias

• Dos ejemplos de no cumplimiento de la normativa (1581 de 2012 y/o GDRP)

• Dos ejemplos de cumplimiento de la normativa (1581 de 2012 y/o GDRP)

• Entrega: 3 de septiembre de 2021.

• Máximo cuatro páginas (incluye portada)

• Aplicar una norma estándar para presentación de trabajos escritos (APA, IEEE, etc)

Page 36: Comenzamos a las - hpclab.ucentral.edu.co

Proyecto (primera entrega)

Reporte (en grupo)• Según sus intereses, competencias y, potencialmente, acceso a datos, definir un Proyecto en

Analítica de Grandes Volúmenes de Datos

• Entrega: 10 de septiembre de 2021.

• Máximo cuatro páginas (incluye portada). Brief que contenga:• Definición del problema (o pregunta de investigación)

• Objetivo principal del proyecto

• Fuentes de datos que serán empleadas

• Métodos de análisis

• Resultados esperados

• Bibliografía base

• Aplicar una norma estándar para presentación de trabajos escritos (APA, IEEE, etc)