Archivo de la etiqueta: kettle

Herramientas ETL y su relevancia en la cadena de valor del dato

El聽proceso de Extracci贸n (E), Transformaci贸n (T) y Carga (L, de Load en Ingl茅s) -ETL-聽consume entre el 60% y el 80% del tiempo de un聽proyecto de Business Intelligence. Suelo empezar con este dato siempre a hablar de las herramientas ETL por la importancia que tienen dentro de cualquier proyecto de manejo de datos. Tal es as铆, que podemos afirmar que聽proceso clave en聽la vida de todo proyecto y que por lo tanto debemos conocer.聽Y 茅ste es el objetivo de este art铆culo.

La cadena de valor de un proyecto de Business Intelligence la podemos representar de la siguiente manera:

Cadena de valor de un proyecto de BI (Fuente: http://www.intechopen.com/books/supply-chain-management-new-perspectives/intelligent-value-chain-networks-business-intelligence-and-other-ict-tools-and-technologies-in-suppl)
Cadena de valor de un proyecto de BI (Fuente: http://www.intechopen.com/books/supply-chain-management-new-perspectives/intelligent-value-chain-networks-business-intelligence-and-other-ict-tools-and-technologies-in-suppl)

Hecha la representaci贸n gr谩fica, es聽entendible ya el valor que aporta una herramienta ETL. Como vemos, es la recoge todos los datos de las diferentes fuentes de datos (un ERP, CRM, hojas de c谩lculo sueltas, una base de datos SQL, un archivo JSON de una BBDD NoSQL orientada a documentos, etc.), y ejecuta las siguientes acciones (principales, y entre otras):

  • Validar los datos
  • Limpiar los datos
  • Transformar los datos
  • Agregar los datos
  • Cargar los datos

Esto, tradiocionalmente se ha venido realizando con c贸digo a medida. Lo que se puede entender, ha tra铆do muchos problemas desde la 贸ptica del mantenimiento de dicho c贸digo y la colaboraci贸n dentro de un equipo de trabajo. Lo que vamos a ver en este art铆culo es la importancia de estas acciones y qu茅 significan.聽Por resumirlo mucho, un proceso de datos cualquiera comienza en el origen de datos, contin煤a con la intervenci贸n de una herramienta ETL, y concluye en el destino de los聽datos que posteriormente va a ser explotada,聽representada en pantalla, etc.

驴Y por qu茅 la importancia de una herramienta ETL?聽B谩sicamente, ejecutamos las acciones de validar, limpiar, transformar, etc. datos para minimizar los fallos que en etapas posteriores del proceso de datos pudieran darse (existencia de campos o valores nulos, tablas de referencia inexistentes, ca铆das del suministro el茅ctrico,聽etc.).

Este parte del proceso consume una parte significativa de todo el proceso (como dec铆amos al comienzo),聽por ello requiere recursos, estrategia, habilidades especializadas聽y tecnolog铆as. Y aqu铆 es donde necesitamos una herramienta ETL que nos ayude en todo ello.聽驴Y qu茅 herramientas ETL tenemos a nuestra disposici贸n? Pues desde los fabricantes habituales (SAS, Informatica, SAP, Talend, Information Builders, IBM, Oracle, Microsoft, etc.), hasta herramientas con un coste menor聽(e incluso abiertas)聽como Pentaho Kettle,聽Talend聽y RapidMiner. En nuestro Programa de Big Data y Business Intelligence, utilizamos mucho tanto SAS como Pentaho Kettle (especialmente esta 煤ltima), por lo que ayuda a los estudiantes a integrar, depurar la calidad, etc. de los datos que disponen. A continuaci贸n os dejamos聽una comparaci贸n entre herramientas:

Comparaci贸n Talend vs. Pentaho Kettle
Comparaci贸n Talend vs. Pentaho Kettle

驴Y qu茅 hacemos con el proceso y las herramientas ETL en nuestro programa? Varias acciones, para hacer conscientes al estudiante sobre lo que puede aportar estas herramientas a sus proyectos. A continuaci贸n destacamos聽5 subprocesos, que son los que se ejecutar铆an dentro de la herramienta:

  1. Extracci贸n: recuperaci贸n de聽los datos f铆sicamente de las聽distintas fuentes de informaci贸n. Probamos a extrar desde una base de datos de un ERP, CRM, etc., hasta una hoja de c谩lculo, una BBDD documental como un JSOn, etc. En este momento disponemos聽de los datos en bruto. 驴Problemas que nos podemos encontrar al acceder a los datos para extraerlos?聽B谩sicamente se refieren a que provienen de distintas fuentes (la V de Variedad), BBDD, plataformas tecnol贸gicas, protocolos de comunicaciones, juegos de caracteres y tipos de datos.
  2. Limpieza: recuperaci贸n de聽los datos en bruto, para, posteriormente: comprobar聽su聽calidad, eliminar los duplicados y, cuando es posible, corrige聽los valores err贸neos y completar los valores vac铆os. Es decir se聽transforman los datos -siempre que sea posible- para reducir聽los errores de carga. En este momento disponemos de datos聽limpios y de alta calidad. 驴Problemas?ausencia de valores, campos que tienen distintas utilidades, valores cr铆pticos, vulneraci贸n de las reglas de negocio, identificadores que no son 煤nicos, etc.聽La limpieza de datos, en consecuencia, se divide en distintas etapas,聽que debemos trabajar para dejar los datos bien trabajados y limpios.
    • Depurar los valores (parsing)
    • Corregir (correcting)
    • Estandarizar (standardizing)
    • Relacionar (matching)
    • Consolidar (consolidating)
  3. Transformaci贸n: este proceso recupera los datos limpios y聽de alta calidad y los estructura y resume聽en los distintos聽modelos de an谩lisis. El resultado de este proceso es聽la obtenci贸n de datos limpios, consistentes y聽煤tiles.聽La transformaci贸n de los datos se hace partiendo de los datos una vez聽鈥渓impios鈥 (la etapa 2 de este proceso)(. Transformamos los datos de acuerdo con las reglas de negocio y聽los est谩ndares que han sido establecidos por el equipo de trabajo. La transformaci贸n incluye: cambios聽de formato, sustituci贸n de c贸digos, valores derivados y agregados, etc.
  4. Integraci贸n: Este proceso valida que los datos que cargamos聽en el datawarehouse o la BBDD de destino (antes de pasar a su procesamiento) son consistentes con las definiciones聽y formatos del datawarehouse; los integra en los distintos聽modelos de las distintas 谩reas de negocio que hemos definido聽en el mismo.
  5. Actualizaci贸n: Este proceso es el que nos permite a帽adir los聽nuevos datos al datawarehouse o base de datos de destino.

Para concluir este art铆culo, os dejamos la presentaci贸n de una de las sesiones de nuestro Programa de Big Data y Business Intelligence. En esta sesi贸n, hablamos de los competidores y productos de mercado ETL.