Professional Documents
Culture Documents
Javier Ochoa
1.
ETL - este trmino proviene de ingls de las siglas Extract-Transform-Load que significan Extraer,
Transformar y Cargar y se refiere al proceso de que permite mover o transformar datos
estructurados o no estructurados desde mltiples fuentes (bases de datos, hojas de Excel, archivos
de datos planos, entre otros), reformatearlos limpiarlos en caso de ser necesarios y cargarlos en
un nuevo repositorio de datos denominada Data Mart o Data Warehouse con el objeto de
analizarlos. Tambin pueden ser enviados a otro sistema operacional para apoyar un proceso de
negocio.
ETL forma parte de la Inteligencia Empresarial (Business Intelligence), tambin llamado Gestin
de los Datos (Data Management). El principal objetivo de este proceso es facilitar el movimiento
de los datos y la transformacin de los mismos, integrando los distintos sistemas y fuentes en la
organizacin moderna.
Los procesos ETL tambin se pueden utilizar para la integracin con sistemas heredados
(aplicaciones antiguas existentes en las organizaciones que se han de integrar con los nuevos
aplicativos, por ejemplo, ERPs. La tecnologa utilizada en dichas aplicaciones puede hacer difcil la
integracin con los nuevos programas).
En un proceso ETL no todo vale, por eso hay que saber elegir. Para hacerlo con conocimiento de
causa es necesario conocer las caractersticas ms importantes que debe incluir un software ETL.
Segn Gartner, son las siguientes:
Conectividad / capacidades de adaptacin (con soporte a orgenes y destinos de datos):
se refiere a la habilidad para conectar con un amplio rango de tipos de estructura de
datos, entre los que podran incluirse: bases de datos relacionales y no relacionales,
variados formatos de ficheros, XML, aplicaciones ERP (sistema de planificacin de recursos
empresariales), CRM (sistema de gestin de clientes) o SCM (supply chain management gestin de proveedores), formatos de mensajes estndar (EDI, SWIFT o HL7), colas de
mensajes, emails, websites, repositorios de contenido o herramientas de ofimtica.
Capacidades de entrega de datos: suponen la habilidad para proporcionar datos a otras
aplicaciones, procesos o bases de datos en varias formas, con capacidades para
programacin de procesos batch, en - tiempo real o mediante lanzamiento de eventos.
Capacidades de transformacin de datos: habilidad para la transformacin de los datos,
desde transformaciones bsicas (conversin de tipos, manipulacin de cadenas o clculos
simples) o transformaciones intermedias (agregaciones, sumarizaciones, lookups) hasta
transformaciones complejas, como anlisis de texto en formato libre o texto enriquecido.
Capacidades de Metadatos y Modelado de Datos: recuperacin de los modelos de datos
desde los orgenes de datos o aplicaciones, creacin y mantenimiento de modelos de
datos, mapeo de modelo fsico a lgico, repositorio de metadatos abierto (con posibilidad
de interactuar con otras herramientas), sincronizacin de los cambios en los metadatos en
los distintos componentes de la herramienta, documentacin, etc.
Cualquier proceso ETL consta de tres fases: extraccin, transformacin y carga. De cada uno de
estos procesos es necesario conocer el funcionamiento y sus claves, pero an es ms decisivo el
comprender las medidas de seguridad y cautelas que se deben tener en cuenta a la hora de
llevarlos a cabo, para evitar que las consecuencias afecten al sistema y a su normal
funcionamiento.
Extraccin.
Para llevar a cabo de manera correcta el proceso de extraccin, primera fase del ETL, hay que
seguir los siguientes pasos:
Extraer los datos desde los sistemas de origen.
Analizar los datos extrados obteniendo un chequeo.
Interpretar este chequeo para verificar que los datos extrados cumplen la pauta o
estructura que se esperaba. Si no fuese as, los datos deberan ser rechazados.
Convertir los datos a un formato preparado para iniciar el proceso de transformacin.
Es necesario extremar la cautela en esta fase del proceso de ETL que es la extraccin, por lo
que se debe tener en cuenta que:
En el momento de la extraccin, anlisis e interpretacin: los formatos en que se
presenten los datos o los modos como stos estn organizados pueden ser distintos en
Declarativas.
Independientes.
Claras.
Inteligibles.
Con una finalidad til para el negocio.
En ocasiones ser necesario realizar alguna pequea manipulacin de los datos, sin embargo, y
dependiendo siempre de las fuentes de datos, a veces los que har falta ser aplicar algunas
de las siguientes transformaciones:
Seleccionar slo ciertas columnas para su carga (por ejemplo, que las columnas con
valores nulos no se carguen).
Traducir cdigos (por ejemplo, si la fuente almacena una H para Hombre y M para
Mujer pero el destino tiene que guardar 1 para Hombre y 2 para Mujer).
Codificar valores libres (por ejemplo, convertir Hombre en H o Sr en 1).
Obtener nuevos valores calculados (por ejemplo, total_venta = cantidad * precio).
Unir datos de mltiples fuentes (por ejemplo, bsquedas, combinaciones, etc.).
Calcular totales de mltiples filas de datos (por ejemplo, ventas totales de cada regin).
Generar campos clave en el destino.
Transponer o pivotar (girando mltiples columnas en filas o viceversa).
Dividir una columna en varias (por ejemplo, columna Nombre: Garca, Miguel; pasar a
dos columnas Nombre: Miguel y Apellido: Garca).
Aplicar para formas simples o complejas, la accin que en cada caso se requiera, como por
ejemplo:
Carga
En esta fase, los datos procedentes de la fase anterior (fase de transformacin) son cargados en el
sistema de destino. Dependiendo de los requerimientos de la organizacin, este proceso puede
abarcar una amplia variedad de acciones diferentes. Por ejemplo, en algunas bases de datos ser
necesario sobreescribir la informacin antigua con nuevos datos mientras que en otras, bastara
con resumir las transacciones y almacenar un promedio de la magnitud considerada.
Los data warehouse mantienen un historial de los registros, de manera que es posible en todo
momento hacer una auditora de los mismos. Esto permite disponer de un rastro de toda la
historia de un valor a lo largo del tiempo.
Existen dos formas bsicas de desarrollar el proceso de carga:
Acumulacin simple: esta manera de cargar los datos consiste en realizar un resumen de
todas las transacciones comprendidas en el perodo de tiempo seleccionado y
transportar el resultado como una nica transaccin hacia el data warehouse,
almacenando un valor calculado que consistir tpicamente en un sumatorio o un
promedio de la magnitud considerada. Es la forma ms sencilla y comn de llevar a cabo el
proceso de carga.
Rolling: este proceso sera el ms recomendable en los casos en que se busque
mantener varios niveles de granularidad. Para ello se almacena informacin resumida a
distintos niveles, correspondientes a distintas agrupaciones de la unidad de tiempo o
diferentes niveles jerrquicos en alguna o varias de las dimensiones de la magnitud
almacenada (por ejemplo, totales diarios, totales semanales, totales mensuales, etc.).
Sea cual sea la manera de desarrollar este proceso elegida, hay que tener en cuenta que
esta fase interacta directamente con la base de datos de destino y, por eso, al realizar esta
operacin se aplicarn todas las restricciones que se hayan definido en sta. Si estn bien
definidas, la calidad de los datos en el proceso ETL estar garantizada.
Ejemplos de estas restricciones pueden ser:
3.
Valores nicos.
Integridad referencial.
Campos obligatorios.
Rangos de valores.
Qu beneficios tengo yo usando una herramienta ETL?
La idea es que una aplicacin ETL lea los datos primarios de unas bases de datos de sistemas
principales, realice transformacin, validacin, el proceso cualitativo, filtracin y al final escriba
datos en el almacn y en este momento los datos son disponibles para analizar por los usuarios.
Dentro de las funciones principales de las herramientas ETL encontramos:
Cuando se habla de sistemas heredados se est haciendo referencia a las aplicaciones antiguas
que existen en el entorno de la empresa. Muchas veces, estos sistemas se deben integrar con
nuevos aplicativos, por ejemplo con ERPs.
La principal dificultad que puede presentarse en este tipo de situaciones es que la tecnologa
utilizada en estas aplicaciones antiguas complica la integracin con los nuevos programas.
4.
Pentaho Business Intelligence (BI) es una iniciativa en curso por la comunidad de Open Source que
provee organizaciones con mejores soluciones para las necesidades de Business Intelligence (BI) a
las empresa.
La plataforma Open Source Pentaho Business Intelligence cubre amplias necesidades de anlisis de
los datos y de los informes empresariales.
Las soluciones de Pentaho estn desarrolladas en Java y tienen un ambiente de implementacin
tambin basado en Java. Eso hace que Pentaho es una solucin muy exible para cubrir una
amplia gama de necesidades empresariales tanto las tpicas como las sosticadas y especcas del
negocio (ver g.7.3).
Las soluciones que Pentaho pretende ofrecer se componen fundamentalmente de una
infraestructura de herramientas de anlisis e informes integrados con un motor de workow de
procesos de negocio.
La plataforma ser capaz de ejecutar las reglas de negocio necesarias, expresadas en forma de
procesos y actividades y de presentar y entregar la informacin adecuada en el momento
adecuado, mediante analisis OLAP, Cuadros de Mando, etc.
Arquitectura de Pentaho
La solucin Business Intelligence OpenSource Pentaho pretende ser una alternativa a las
soluciones propietarias tradicionales ms completas: Business Objects, Cognos, Microstrategy,
Microsoft, IBM, etc., por lo que incluye todos aquellos componentes que se pueden encontrar en
las soluciones Business Intelligence (BI) propietarias ms avanzadas:
Reporting.
Anlisis.
Dashboards.
Workow.
Data Mining.
ETL.
Single Sign-On. Ldap.
Auditora de uso y rendimiento.
Planicador.
Noticador.
Seguridad. Perles.
Caractersticas de Pentaho
Pentaho Business Intelligence abarca las siguientes areas de reporte:
Pentaho Reporting: La solucin proporcionada por la plataforma Business Intelligence OpenSource
Pentaho e integrada en su suite para el desarrollo de informes se llama Pentaho Reporting.
Existen tres productos con diferentes enfoques y dirigidos a diferentes tipos de usuarios:
Pentaho Report Designer: Es un editor basado en Eclipse con prestaciones profesionales
con capacidad de personalizacin de informes a las necesidades de los negocios destinado
a desarrolladores.
Esta herramienta est estructurada de forma que los desarrolladores puedan acceder a sus
prestaciones de forma rpida.
Incluye un editor de consultas para facilitar la confeccin de los datos que sern utilizados en un
informe.
Pentaho Report Design Wizard: Es una herramienta de diseo de informes, que facilita el
trabajo y permite a los usuarios obtener resultados de forma inmediata. Est destinada a
usuarios con menos conocimientos tcnicos.
Web ad-hoc reporting: Es el similar a la herramienta Pentaho Report Design Wizard, pero
via web.
Esta herramienta extiende la capacidad de los usuarios nales para la creacin de informes a partir
de plantillas preconguradas y siguiendo un asistente de creacin.
Pentaho Anlisis
Ayuda a operar con mxima efectividad para ganar perspicacia y entender lo necesario para tomar
optimas decisiones.
Las caractersticas generales son:
Vista dimensional de datos (por ventas, por perodo, por empleados, etc.).
Navegar y explorar (Anlisis Ad Hoc, Drill-down, etc.).
Interactuar con alto rendimiento mediante tecnologas optimizadas para la rpida
respuesta interactiva.
Pentaho Dashboards
Esta solucin provee inmediata perspicacia en un rendimiento individual, departamental o
empresarial. Pentaho Dashboards facilita a los usuarios de los negocios informacin crtica que
necesitan para entender y mejorar el rendimiento organizacional.
El Pentaho Dashboards es una potente herramienta que cuenta con las siguientes caractersticas:
Data Mining
La plataforma Business Intelligence OpenSource Pentaho ofrece diferentes soluciones para el
desarrollo de un proyecto de Business Intelligence.
En este caso se har referencia a la solucin integrada al paquete Business Intelligence Pentaho
para el desarrollo de proyectos de Data Mining.
El Weka (Waikato Enviroment for Knowledge Analysis) es un conjunto de libreras JAVA para la
extraccin de conocimientos desde bases de datos.
Es un software que ha sido desarrollado bajo licencia GPL lo cual ha impulsado que sea una de las
suites ms utilizadas en el rea en los ltimos aos.
Caractersticas Generales del Weka Esta herramienta Open Source incluye las siguientes
caractersticas:
Diversas fuentes de datos (ASCII, JDBC).
Interfaz visual basada en procesos / ujos de datos (rutas).
Distintas herramientas de minera de datos:
Reglas de asociacin (a priori, Tertius, etc.).
Agrupacin / segmentacin / conglomerado (cobweb, EM y k-medias).
Clasicacin (redes neuronales, reglas y rboles de decisin, aprendizaje
bayesiano).
Regresin (regresin lineal, SVM, etc.).
Manipulacin de datos (pick & mix, muestreo, combinacin, separacin, etc.).
Combinacin de modelos (bagging, boosting, etc.).
Entorno de experimentos, con la posibilidad de realizar pruebas estadsticas (Ttest).
5.
Realice una pequea sinopsis con sus propias palabras de como usted usara y
aprovechara una herramienta ETL para poder desarrollar la Idea de negocios que planteamos
anteriormente.
Para el desarrollo de la idea de negocio planteada en mi proyecto que consiste en realizar el
anlisis del impacto de la capacitacin al personal de la Polica Nacional desde diferentes
perspectivas tales como sexo, edad, categora policial, grado, ubicacin geogrfica, tipo de
programa, temtica e programa, entre otras, el uso de una herramienta como Pentahoo estara
ajustada a la necesidad teniendo en cuenta que los componentes del ETL me permitiran realizar la
extraccin, transformacin y cargue de la informacin en un nuevo repositorio para
posteriormente analizarlos y crear dash board que permita a la parte gerencial de la institucin
realizar la toma de decisiones sobre nuevas estrategias que permitan ser ms eficientes y eficaces
los procesos de capacitacin y formacin del personal.
CYBERGRAFIA
http://blog.powerdata.es/el-valor-de-la-gestion-de-datos/bid/312584/Procesos-ETL-Definici-nCaracter-sticas-Beneficios-y-Retos
http://www.dataprix.com/blogs/respinosamilla/herramientas-etl-que-son-para-que-valenproductos-mas-conocidos-etl-s-open-sour
http://etl-tools.info/es/bi/proceso_etl.htm
http://www.dataprix.com/book/export/html/1374