0% encontró este documento útil (0 votos)
21 vistas55 páginas

Clase 14 Introducción A Procesos ETL

El documento aborda el proceso de Extracción, Transformación y Carga (ETL) en la gestión de bases de datos, destacando su importancia en la actualización de información hacia un Data Warehouse. Se describen las fases del proceso ETL, las herramientas disponibles en el mercado y la necesidad de asegurar la calidad de los datos. Además, se enfatiza la planificación adecuada para minimizar el impacto en los sistemas fuentes durante la carga inicial y periódica.

Cargado por

brca.catalan
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
21 vistas55 páginas

Clase 14 Introducción A Procesos ETL

El documento aborda el proceso de Extracción, Transformación y Carga (ETL) en la gestión de bases de datos, destacando su importancia en la actualización de información hacia un Data Warehouse. Se describen las fases del proceso ETL, las herramientas disponibles en el mercado y la necesidad de asegurar la calidad de los datos. Además, se enfatiza la planificación adecuada para minimizar el impacto en los sistemas fuentes durante la carga inicial y periódica.

Cargado por

brca.catalan
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

INF303

Bases de Datos
para la Gestión

ESTAMOS POR EMPEZAR


Hoy en Bases de Datos para la Gestión
Definición del Proceso de Extracción, Transformación y Carga (ETL)
Proceso de Extracción: Fuentes de datos

Proceso de Transformación: Perfilado y limpieza de datos

Proceso de Transformación: Herramientas de Software

Proceso de Carga: Inicial y Periódica

2
INF303 Bases de Datos para la Gestión
Proceso de ETL

INF303 Bases de Datos para la Gestión


Introducción

Esquema Convencional de un Sistema de Inteligencia de Negocios

Ciclo Vida Sistema BI Adquisición Almacenamiento Análisis


4
INF303 Bases de Datos para la Gestión
Introducción
Los procesos de ETL (Extracción, Transformación y Carga), son los encargados,
principalmente, de actualizar la información desde los sistemas fuentes (source)
hacia el Data Warehouse, y también entre los subsistemas que componen la
arquitectura de un sistema de Inteligencia de Negocios (BI).

Los procesos de ETL deberán ejecutarse periódicamente, normalmente en las


noches, para sincronizar al contenido entre los diversos sistemas.

5
INF303 Bases de Datos para la Gestión
Introducción
En el mercado existen diversas herramientas
para implementar ETLs, clasificadas como
Data Integration Tools, tales como :

• PowerCenter de Informatica,
• DataStage de IBM,
• Data Integrator de Oracle,
• Integration Services de Sql Server,
• entre otros.

6
INF303 Bases de Datos para la Gestión
Introducción
Los procesos de ETL son relevantes en la integración de los diferentes componentes de la Arquitectura de
Inteligencia de Negocios (BI).

7
INF303 Bases de Datos para la Gestión
Introducción
Los procesos de ETL son relevantes en la integración de los diferentes componentes de la Arquitectura de
Inteligencia de Negocios (BI).

8
INF303 Bases de Datos para la Gestión
Introducción
Los procesos de ETL son relevantes en la integración de los diferentes componentes de la Arquitectura de
Inteligencia de Negocios (BI).

9
INF303 Bases de Datos para la Gestión
Introducción
Los procesos de ETL son relevantes en la integración de los diferentes componentes de la Arquitectura de
Inteligencia de Negocios (BI).

10
INF303 Bases de Datos para la Gestión
Introducción
Los procesos de ETL son relevantes en la integración de los diferentes componentes de la Arquitectura de
Inteligencia de Negocios (BI).

11
INF303 Bases de Datos para la Gestión
Introducción
Los procesos de ETL son relevantes en la integración de los diferentes componentes de la Arquitectura de
Inteligencia de Negocios (BI).

12
INF303 Bases de Datos para la Gestión
Consideraciones
Los procesos de ETL deben ser diseñados tanto para la carga inicial del Data
Warehouse (carga full) como para la carga periódica (carga incremental), considerando
el menor impacto en los sistemas fuentes y teniendo presente los siguientes puntos:

Necesidades Calidad de los


Compliance Latencia
del Negocio Datos

Procesamiento Estadísticas de
Linaje
End2End Carga

13
INF303 Bases de Datos para la Gestión
Consideraciones
Los procesos de ETL deben ser diseñados tanto para la carga inicial del Data
Warehouse (carga full) como para la carga periódica (carga incremental), considerando
el menor impacto en los sistemas fuentes y teniendo presente los siguientes puntos:

Necesidades Calidad de los


Compliance Latencia
del Negocio Datos

Procesamiento Estadísticas de
Linaje
End2End Carga

14
INF303 Bases de Datos para la Gestión
Consideraciones
Los procesos de ETL deben ser diseñados tanto para la carga inicial del Data
Warehouse (carga full) como para la carga periódica (carga incremental), considerando
el menor impacto en los sistemas fuentes y teniendo presente los siguientes puntos:

Necesidades Calidad de los


Compliance Latencia
del Negocio Datos

Procesamiento Estadísticas de
Linaje
End2End Carga

15
INF303 Bases de Datos para la Gestión
Consideraciones
Los procesos de ETL deben ser diseñados tanto para la carga inicial del Data
Warehouse (carga full) como para la carga periódica (carga incremental), considerando
el menor impacto en los sistemas fuentes y teniendo presente los siguientes puntos:

Necesidades Calidad de los


Compliance Latencia
del Negocio Datos

Procesamiento Estadísticas de
Linaje
End2End Carga

16
INF303 Bases de Datos para la Gestión
Consideraciones
Los procesos de ETL deben ser diseñados tanto para la carga inicial del Data
Warehouse (carga full) como para la carga periódica (carga incremental), considerando
el menor impacto en los sistemas fuentes y teniendo presente los siguientes puntos:

Necesidades Calidad de los


Compliance Latencia
del Negocio Datos

Procesamiento Estadísticas de
Linaje
End2End Carga

17
INF303 Bases de Datos para la Gestión
Consideraciones
Los procesos de ETL deben ser diseñados tanto para la carga inicial del Data
Warehouse (carga full) como para la carga periódica (carga incremental), considerando
el menor impacto en los sistemas fuentes y teniendo presente los siguientes puntos:

Necesidades Calidad de los


Compliance Latencia
del Negocio Datos

Procesamiento Estadísticas de
Linaje
End2End Carga

18
INF303 Bases de Datos para la Gestión
Consideraciones
Los procesos de ETL deben ser diseñados tanto para la carga inicial del Data
Warehouse (carga full) como para la carga periódica (carga incremental), considerando
el menor impacto en los sistemas fuentes y teniendo presente los siguientes puntos:

Necesidades Calidad de los


Compliance Latencia
del Negocio Datos

Procesamiento Estadísticas de
Linaje
End2End Carga

19
INF303 Bases de Datos para la Gestión
Consideraciones
Los procesos de ETL deben ser diseñados tanto para la carga inicial del Data
Warehouse (carga full) como para la carga periódica (carga incremental), considerando
el menor impacto en los sistemas fuentes y teniendo presente los siguientes puntos:

Necesidades Calidad de los


Compliance Latencia
del Negocio Datos

Procesamiento Estadísticas de
Linaje
End2End Carga

20
INF303 Bases de Datos para la Gestión
Consideraciones
Calidad de Datos: Hemos dicho que la calidad de los datos es clave para obtener buenos
resultados en todo el proceso de Inteligencia de Negocios, por lo que, necesita de mayor atención.
Para ello se sugiere considerar las siguientes reglas:

Fuente : [Link] 21
INF303 Bases de Datos para la Gestión
Fases de ETL
Correspondencia

Extracción Load (Carga)

Stage DW

Transformación Data Warehouse


Bases de Datos
Operacionales Almacenamiento
Intermedio

Fuentes
Externas

22
INF303 Bases de Datos para la Gestión
Proceso de Extracción

INF303 Bases de Datos para la Gestión


Fases de ETL
Extracción: Antes de llevarla a cabo, hay que identificar los cambios, al determinar los datos
operacionales (relevantes) que han sufrido una modificación desde el último refresh.

24
INF303 Bases de Datos para la Gestión
ETL: Proceso de Extracción
Para su ejecución…

▪ En datos operacionales están mantenidos en un SABD relacional,


la extracción de datos se puede reducir a consultas en SQL o
rutinas programadas.
▪ En datos operacionales de un sistema propietario o en fuentes
externas textuales, hipertextuales u hojas de cálculo, la extracción
puede ser muy difícil y puede tener que realizarse a partir de
informes o volcados de datos proporcionados por los propietarios
que deberán ser procesados a posterior.

INF303 Bases de Datos para la Gestión


Proceso de Transformación

INF303 Bases de Datos para la Gestión


ETL: Proceso de Transformación
Los datos de trabajo pueden ser impuros, y conducir a la extracción
de patrones/reglas poco útiles.

Motivos:
▪ Datos incompletos.
▪ Datos con ruido.
▪ Datos inconsistentes.

27
INF303 Bases de Datos para la Gestión
ETL: Proceso de Transformación
La preparación de datos puede generar un conjunto de datos más
pequeño que el original, lo cual puede mejorar la eficiencia del
proceso.

Posibilidades

▪ Selección relevante de datos: mediante eliminación de registros


duplicados, de anomalías, etc.

▪ Reducción de datos: mediante selección de características.

28
INF303 Bases de Datos para la Gestión
ETL: Proceso de Transformación
La preparación de datos genera "datos de calidad", los cuales pueden
conducir a patrones/reglas de calidad a través de:

▪ Recuperación de información perdida.


▪ Eliminación de outliers.
▪ Resolución de conflictos.
▪ …

29
INF303 Bases de Datos para la Gestión
Almacenamiento Intermedio
Correspondencia

Extracción Transporte

Bases de datos Data


Transformación
operacionales Warehouse

Fuentes Externas Almacenamiento


intermedio

El almacenamiento intermedio permite:


• Realizar transformaciones sin paralizar las bases de datos OLTP ni el DW
• Almacenar metadatos.
• Facilitar la integración de fuentes externas.
30
INF303 Bases de Datos para la Gestión
ETL: Proceso de Transformación
Perfilado de los datos: puede ser usada para llenar valores perdidos,
suavizar datos con ruido, identificar outliers y corregir datos
inconsistentes.

Herramientas: Tabla de Resumen de atributos

31
INF303 Bases de Datos para la Gestión
ETL: Proceso de Transformación
Limpieza de datos: puede ser usada para llenar valores perdidos, suavizar datos
con ruido, identificar outliers y corregir datos inconsistentes.

32
INF303 Bases de Datos para la Gestión
ETL: Proceso de Transformación
Limpieza de datos: puede ser usada para llenar valores perdidos, suavizar datos
con ruido, identificar outliers y corregir datos inconsistentes.
ACCIONES POSIBLES

▪ Eliminar o Reemplazar la columna: solución extrema, pero a veces existe otra


columna con datos de mayor calidad

▪ Eliminar la fila: sesga los datos, porque muchas veces las causas de un dato
faltante están relacionadas con casos o tipos especiales…
▪ Por ejemplo, la ausencia de un número de teléfono puede representar el deseo de que no se moleste a
la persona en cuestión.
▪ Valores no existentes: algunos valores faltantes pueden no existir en la realidad…un cliente que acaba de
regresar al negocio no tiene consumo medio de los últimos 12 meses.

▪ Reemplazar el valor: por una constante (desconocido, sin información, etc),


por el promedio u otro valor que a veces se puede predecir

33
INF303 Bases de Datos para la Gestión
Interpretación de una Tabla Resumen
Ejemplo
Una empresa de retail se encuentra en pleno proceso de diseño de un Data Warehouse para segmentar
su cartera de clientes y para cargar un cubo de datos dispone de varias planillas Excel con información.

Durante el proceso ETL, se analizaron algunos atributos de los clientes y se obtuvo la siguiente Tabla
resumen para un conjunto de datos
Valores
Atributo Total Filas Cantidad nulos Media Moda Valor Mínimo Valor Máximo
distintos
Edad 14567 423 80 38,6 25 14 220
Ingresos promedio 14567 980 10 301500 500000 100000 1300000
Género 14567 39 8 - “Fem” “F” “V”
RUT 14567 2 13948 - “17665394-3” “2.334.412-4” “24983003-K”

¿Qué acción para Limpieza de Datos es la más apropiada para manejar los valores nulos en Edad, Ingreso
Promedio, Género y RUT?

34
INF303 Bases de Datos para la Gestión
Interpretación de una Tabla Resumen
Ejemplo
Una empresa de retail se encuentra en pleno proceso de diseño de un Data Warehouse para segmentar
su cartera de clientes y para cargar un cubo de datos dispone de varias planillas Excel con información.

Durante el proceso ETL, se analizaron algunos atributos de los clientes y se obtuvo la siguiente Tabla
resumen para un conjunto de datos
Valores
Atributo Total Filas Cantidad nulos Media Moda Valor Mínimo Valor Máximo
distintos
Edad 14567 423 80 38,6 25 14 220
Ingresos promedio 14567 980 10 301500 500000 100000 1300000
Género 14567 39 8 - “Fem” “F” “V”
RUT 14567 2 13948 - “17665394-3” “2.334.412-4” “24983003-K”

¿Existe uno o más atributos que no tenga una cantidad razonable de valores distintos? ¿Cuál/es? ¿Por qué
cree que hay tantos o tan pocos valores distintos?

35
INF303 Bases de Datos para la Gestión
Interpretación de una Tabla Resumen
Ejemplo
Una empresa de retail se encuentra en pleno proceso de diseño de un Data Warehouse para segmentar
su cartera de clientes y para cargar un cubo de datos dispone de varias planillas Excel con información.

Durante el proceso ETL, se analizaron algunos atributos de los clientes y se obtuvo la siguiente Tabla
resumen para un conjunto de datos
Valores
Atributo Total Filas Cantidad nulos Media Moda Valor Mínimo Valor Máximo
distintos
Edad 14567 423 80 38,6 25 14 220
Ingresos promedio 14567 980 10 301500 500000 100000 1300000
Género 14567 39 8 - “Fem” “F” “V”
RUT 14567 2 13948 - “17665394-3” “2.334.412-4” “24983003-K”

¿Es razonable el valor de la Media para los atributos Edad e Ingresos Promedio?

36
INF303 Bases de Datos para la Gestión
Interpretación de una Tabla Resumen
Ejemplo
Una empresa de retail se encuentra en pleno proceso de diseño de un Data Warehouse para segmentar
su cartera de clientes y para cargar un cubo de datos dispone de varias planillas Excel con información.

Durante el proceso ETL, se analizaron algunos atributos de los clientes y se obtuvo la siguiente Tabla
resumen para un conjunto de datos
Valores
Atributo Total Filas Cantidad nulos Media Moda Valor Mínimo Valor Máximo
distintos
Edad 14567 423 80 38,6 25 14 220
Ingresos promedio 14567 980 10 301500 500000 100000 1300000
Género 14567 39 8 - “Fem” “F” “V”
RUT 14567 2 13948 - “17665394-3” “2.334.412-4” “24983003-K”

¿Qué quieren decir los valores de moda para cada uno de los atributos?

37
INF303 Bases de Datos para la Gestión
Interpretación de una Tabla Resumen
Ejemplo
Una empresa de retail se encuentra en pleno proceso de diseño de un Data Warehouse para segmentar
su cartera de clientes y para cargar un cubo de datos dispone de varias planillas Excel con información.

Durante el proceso ETL, se analizaron algunos atributos de los clientes y se obtuvo la siguiente Tabla
resumen para un conjunto de datos
Valores
Atributo Total Filas Cantidad nulos Media Moda Valor Mínimo Valor Máximo
distintos
Edad 14567 423 80 38,6 25 14 220
Ingresos promedio 14567 980 10 301500 500000 100000 1300000
Género 14567 39 8 - “Fem” “F” “V”
RUT 14567 2 13948 - “17665394-3” “2.334.412-4” “24983003-K”

Considerando los Valores mínimo, máximo y moda que aparecen para cada atributo, ¿existe algún valor
extraño para edad, Ingresos promedio, Género y RUT?

38
INF303 Bases de Datos para la Gestión
Interpretación de una Tabla Resumen
Acciones a tomar
Valores
Atributo Total Filas Cantidad nulos Media Moda Valor Mínimo Valor Máximo
distintos
Edad 14567 423 80 38,6 25 14 220
Ingresos promedio 14567 980 10 301500 500000 100000 1300000
Género 14567 39 8 - “Fem” “F” “V”
RUT 14567 2 13948 - “17665394-3” “2.334.412-4” “24983003-K”

Atributo Acciones a tomar


Edad Edad es un campo muy importante para segmentación, las filas nulas son solo el 2,9% de los datos, por lo que
serán eliminados. Los datos con edad mayor a 100 serán reemplazados por 100.
Ingresos promedio Se creará una nueva categoría llamada "Sin información" para etiquetar a los datos nulos

Género Se usarán los géneros "Masculino", "Femenino", "Sin especificar". Se reemplazarán los equivalentes por estas
etiquetas. En caso de no poder determinar la etiqueta o dato nulo, se usará "Sin especificar".
RUT Los datos nulos se eliminarán porque son solo 2 filas. Se ajustará el formato de los RUT, para que no
contengan puntos, pero si guión.

39
INF303 Bases de Datos para la Gestión
PREGUNTAS

INF303 Bases de Datos para la Gestión


Proceso de Transformación:
Herramientas de Software

INF303 Bases de Datos para la Gestión


Herramientas de SW
Transformación : Para determinar el “estado de salud” de nuestros datos para
posteriormente tomar decisiones respecto de qué transformaciones debemos aplicar, es
muy útil contar con alguna herramienta para Análisis Exploratorio de Datos, como por
ejemplo Pandas Profiling para explorar los datos y/o OpenRefine de Google para refinarlos.

[Link] [Link]
(*) Aplicación web de desarrollo propio sobre Pandas Profiling
By Google 42
INF303 Bases de Datos para la Gestión
Herramientas de SW
Transformación
Ejemplo 1 : Desde un set de datos de postulaciones a una universidad, Pandas Profiling pudo detectar valores
faltantes en las columnas Longitud, Latitud y PACE (Programa de Acceso a la Educación Superior). Consultando al
negocio, se decidió eliminar las columnas Longitud y Latitud por no ser relevantes para el problema y la columna
PACE si es relevante , por lo que se decidió completar los valores faltantes por “Sin PACE”.

Aplicación de Pandas Profiling

43
INF303 Bases de Datos para la Gestión
Herramientas de SW
Transformación
Ejemplo 1 : Desde un set de datos de postulaciones a una universidad, Pandas Profiling pudo detectar valores
faltantes en las columnas Longitud, Latitud y PACE (Programa de Acceso a la Educación Superior). Consultando al
negocio, se decidió eliminar las columnas Longitud y Latitud por no ser relevantes para el problema y la columna
PACE si es relevante , por lo que se decidió completar los valores faltantes por “Sin PACE”.

Aplicación de OpenRefine


44
INF303 Bases de Datos para la Gestión
Herramientas de SW
Transformación

Ejemplo 2 : Desde el mismo set de datos de postulaciones de la universidad, desde el reporte de Pandas Profiling se
pudo detectar valores anómalos en las columnas PUNTA JE y PSU_PROMLM, dado que no están en un rango de
representación real de un puntaje obtenido en la PSU.

Aplicación de Pandas Profiling

45
INF303 Bases de Datos para la Gestión
Herramientas de SW
Transformación

Ejemplo 2 : Desde el mismo set de datos de postulaciones de la universidad, desde el reporte de Pandas Profiling se
pudo detectar valores anómalos en las columnas PUNTA JE y PSU_PROMLM, dado que no están en un rango de
representación real de un puntaje obtenido en la PSU.


Aplicación de OpenRefine
46
INF303 Bases de Datos para la Gestión
Herramientas de SW
Transformación

Ejemplo 3 : El Gerente de Ventas de una compañía solicitó el reporte de los 20 mejores clientes según el monto
total de las compras que han realizado. Al explorar los datos desde la base de datos OLTP, el Gerente planteó dos
requisitos específicos de transformación para ser considerados en su reporte de analítica :
Requisito 1 : El nombre del Requisito 2 : El sexo del cliente debe aparecer de
cliente debe aparecer completo manera más descriptiva, “Masculino” en vez de “M”
en una sola columna y “Femenino” en vez de “F”.

47
INF303 Bases de Datos para la Gestión
Herramientas de SW
Transformación

Ejemplo 3 : El Gerente de Ventas de una compañía solicitó el reporte de los 20 mejores clientes en términos de
monto total que han adquirido. Al explorar los datos desde la base de datos OLTP, el Gerente planteó dos requisitos
específicos de transformación para ser considerados en su reporte de analítica :
Requisito 1 : El nombre del Requisito 2 : El sexo del cliente debe aparecer de
cliente debe aparecer completo
en una sola columna
✓ manera más descriptiva, “Masculino” en vez de “M”
y “Femenino” en vez de “F”. ✓
Aplicación de OpenRefine

48
INF303 Bases de Datos para la Gestión
Proceso de Carga

INF303 Bases de Datos para la Gestión


Fases de ETL
Carga : consiste en mover los datos desde las fuentes operacionales o el
almacenamiento intermedio hasta el DW y cargar los datos en las tablas de
hechos y dimensiones.

50
INF303 Bases de Datos para la Gestión
Fases de ETL
Carga : En la carga inicial se mueven grandes volúmenes de datos, y en los
mantenimientos periódicos (refresh) se mueven pequeños volúmenes de
datos.

Base de Datos
Operacional

T1 T2 T3

• La frecuencia del refresh está determinada por la granularidad del DW y


los requisitos de los usuarios.
51
INF303 Bases de Datos para la Gestión
Diferencias entre carga inicial y periódica

Inicial Periódica
Se realiza con el DW vacío, por lo que Se realiza cuando el DW ya contiene
solo hay que cargar datos datos
El volumen de carga es grande El volumen de carga puede ser
pequeño
Se crean todos los datos de las Antes de cargar, hay que verificar que
dimensiones datos existen actualmente en las
dimensiones y cargar solo los nuevos

52
INF303 Bases de Datos para la Gestión
PREGUNTAS

INF303 Bases de Datos para la Gestión


Un vistazo a Power BI
puede descargar en
[Link]
ir a productos/powerbidesktop
INF303

Bases de Datos
para la Gestión

También podría gustarte