Extraer/Transformar/Cargar (ETL, Extract/Transform/Load) es el proceso que se emplea para convertir datos en bruto en información útil para disponer de una business intelligence operativa. En un proceso de ETL, los datos se extraen de aplicaciones como Salesforce o SAP, bases de datos como Oracle o Redshift, o formatos de archivo como CSV, XML, JSON o AVRO. Los datos, una vez extraídos, se transforman en información útil que se carga en aplicaciones o destinos nuevos, o también podría cargarse a un data lake o un almacén de datos para ser transformada más adelante en un proceso de ELT.

Estos procesos de datos pueden realizarse por medio de conexiones programadas manualmente o mediante una herramienta de ETL. No obstante, estas herramientas de ETL deben evolucionar como lo hacen los procesos de datos: tendiendo a operar en la cloud. Si bien una gran cantidad de datos corporativos procede de fuentes cloud o de sensores, muchos otros, de importancia crítica, vienen también de fuentes in situ.

Analizaremos detenidamente algunos casos en los que le conviene usar una herramienta de ETL, qué debemos buscar al elegirla y por qué las herramientas de ETL deben funcionar en cloud.

Descargar Herramientas de ETL: Evaluación de herramientas para un ETL cloud ahora
Ver ahora

Herramientas de ETL en cloud y en entorno local

En Informática, todo está avanzando hacia cloud. Forrester ha predicho que el mercado de cloud pública mundial ha aumentado en 40 000 millones de dólares hasta 178 000 millones el año pasado y seguirá creciendo a un 22 % de TCAC. Esto está creando un nuevo imperativo para las empresas orientadas a los datos; los almacenes de datos en cloud van cobrando importancia, procesar esos datos en cloud cada vez resulta más fundamental para las analíticas en tiempo real y las aplicaciones de SaaS en cloud permiten a las empresas disfrutar de capacidades y funcionalidades de forma asequible y eficiente.

Lo que todas estas funcionalidades cloud están logrando, más allá de proporcionar una nueva potencia de computación y nuevas capacidades, es generar compartimentos de datos cloud además de los existentes en sistemas heredados. En un mundo centrado en la cloud, las organizaciones tienen que trabajar con aplicaciones, bases de datos y plataformas en cloud, además de los datos que generan. No obstante, conviene no olvidar los datos que sus sistemas locales contienen. Las herramientas ETL deberían reconocer datos de cualquier fuente: cloud, multicloud, híbridas o locales. Y, con tanta innovación en el espacio cloud, es importante que su infraestructura de gestión de datos sea lo suficientemente flexible como para trasladarse sin esfuerzo al proveedor de cloud que usted desee.

Por qué necesita una herramienta de ETL

Muchos profesionales de los datos se preguntan por qué necesitan una herramienta de ETL cuando muchas veces la programación manual les resuelve el problema rápidamente y a un precio más económico. La programación manual presenta dos inconvenientes principales:

  1. 1) Programar manualmente limita el uso compartido y la reutilización. Las buenas herramientas de ETL deberían tener una interfaz de diseño visual para que los compañeros puedan observar el diagrama de flujo y saber todo lo que se ha creado. Programando a mano cuesta saber los pasos recorridos, de modo que muchas veces los desarrolladores abandonan y vuelven a realizar el mismo trabajo, lo que no solo es redundante, sino que consume tiempo y recursos.
  2. 2) Programar manualmente eleva los costes de mantenimiento. Si personas diferentes se encargan del mantenimiento y la asistencia del código una vez se halla en producción, la curva de aprendizaje será alta si el enfoque es de programación manual, y si el código lleva años en producción, la rotación hará aumentar los costes a largo plazo.

A menudo los proyectos de integración de datos empiezan a pequeña escala, tal vez como prueba de concepto, para cosechar un triunfo rápido; muchas veces el desarrollador tiene que conectar dos sistemas entre sí para efectuar una tarea concreta y siente que no necesita una herramienta de ETL para manejar procesos más complicados, como la analítica en tiempo real o la gobernanza de datos cuando programando manualmente se apaña. El problema es que los proyectos pequeños rara vez conservan esa dimensión. Con frecuencia el resto de la empresa conoce estos proyectos y los adopta, por lo que algo que empieza siendo un proyecto bastante acotado se expande rápidamente y comprende varios departamentos; de repente una pequeña integración rápida programada a mano ya no es ni rápida ni tan pequeña.

Además, conforme la cifra y el volumen de fuentes de datos aumenta, y las empresas cada vez se ven más sujetas a normativas de protección de datos como el RGPD, sus procesos de ETL tendrán que incorporar funcionalidades de calidad de datos, capacidades de gobernanza de datos y gestión de metadatos. Estas capacidades son imposibles de programar manualmente a la escala que necesitan gran parte de las organizaciones.

Un ejemplo es una empresa de telecomunicaciones estadounidense que cuenta con más de 50 millones de abonados. Su equipo de publicidad quería crear un nuevo producto para vender publicidad local personalizada a asistentes a congresos, de modo que utilizaron Hadoop para rastrear los datos de ubicación de los móviles de su red. Hadoop hizo posible una analítica de datos a esa escala. Y, cuando las demás empresas vieron el éxito de este proyecto, de repente les llegaron 50 solicitudes más para realizar ese nivel de análisis de datos. Era imposible que el equipo de informática tuviera tiempo o recursos para tramitar 50 integraciones manuales más. Necesitaban una herramienta de ETL que fuera sencilla de redimensionar.

Descargar Herramientas de ETL: Evaluación de herramientas para un ETL cloud ahora
Ver ahora

La selección de la herramienta ETL más adecuada 

Al plantearse la adquisición de una herramienta de ETL, aunque sea para un proyecto aislado, como la creación de un almacén de datos en Snowflake, son varias las prestaciones que debiera tener.

He aquí la lista de todo lo que una buena herramienta de ETL debe lograr:

  1.  Debería poder leer y escribir a partir del abanico completo de fuentes de datos que necesite, estén ubicadas en cloud o localmente.
  2. Debería poder realizar procesos de transformación de datos, como ordenar, filtrar y agregar.
  3. Debería contener capacidades de calidad y gobernanza de datos integradas, como eliminación de duplicados, correspondencias y perfiles de datos.
  4. Debería 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.
  5. Con el cambio a los sistemas cloud, la capacidad de adaptarse a procesos CI/CD es una necesidad.
  6. Su herramienta de ETL debería poder operar en cualquier entorno, en infraestructuras locales, cloud o híbridas.
  7. Una herramienta de ETL debería poder adaptarse a nuevos proveedores sin problemas. A lo mejor hoy decide crear un data lake en Redshift y mañana en Snowflake, o usar AWS como proveedor de cloud este trimestre, pero Azure al siguiente. Es importante disponer de una herramienta de ETL que funcione en un entorno multicloud 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. 
  8. 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.
  9. La escalabilidad es muy importante al elegir herramientas. Es tentador fijarse en un proveedor de herramientas capaz sencillamente de manejar procesos simples: son baratos y fáciles de usar. Sin embargo, no son aptas para redimensionarse; están destinadas a la escala que la máquina soporte, así que tendrá que plantearse cuánta RAM o cuántas CPU puede que se vea obligado a utilizar. Esto significa que, a medida que su empresa crezca, estará fijando un límite artificial para el crecimiento de su operativa de analíticas, lo que en este entorno comercial hipercompetitivo puede suponer una desventaja para usted. También cuesta mas colaborar y volver a utilizar elementos de un proyecto otro, lo que significa que muchas veces los proyectos de ETL tendrán que empezar de cero, cosa que consume tiempo y recursos.
  10. 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.

Plantéese una herramienta de ETL para cloud 

No hay duda de que el mundo se está pasando a cloud. Muchas veces cuando las empresas dan este paso reevalúan toda su infraestructura. Lo que funcionó en un entorno local no necesariamente va a funcionar en cloud. Por ejemplo, en un entorno local tiene un mayor control de sus servidores y su hardware, mientras que en cloud el paradigma es un tanto distinto: tiene que saber trabajar con pilas de clouds y redes privadas externas a sus propias redes. La cloud cambia la forma de funcionar de las herramientas de ETL y cómo se trabaja con ellas; existen distintos lenguajes de programación, procesos y plataformas que son diferentes a lo que cabe esperar en un entorno local, por lo que necesita una herramienta capaz de alternar sin fisuras entre los dos entornos.

La capacidad de cloud de redimensionarse es fundamental para elegir una herramienta ETL, porque es difícil predecir la dimensión que cobrará su entorno en el futuro. Podría tener 50 fuentes de datos o 500; y sin duda tiene que adaptarse a nuevas tecnologías que ni siquiera han llegado al mercado todavía. Una herramienta ETL en cloud le va a permitir realizar cambios en su infraestructura de gestión de datos fácilmente.

Otro factor que debe tenerse en cuenta al reflexionar sobre una herramienta de ETL para cloud es el modelo de precios.   Una característica destacada del paso a cloud consiste en poder pagar tan solo por los recursos que realmente utilice. Así que si compra un producto que le cobre por nodo, eso mismo contraviene la filosofía de cloud, que debe poder aprovechar y reasignarlos como más convenga, o disponer de muchos en un momento dado y de ninguno al siguiente. Sus herramientas de ETL deberían poder trabajar de esa manera; no debería tener que pagar por tiempos de ejecución que no esté utilizando o por recursos extra que acumularán polvo. Debería pagar por sus herramientas de ETL como cualquier otro aspecto de la infraestructura cloud.

Herramientas de ETL y calidad de datos 

La calidad de datos está cobrando importancia por momentos para las empresas dado que si la calidad de los datos no es óptima se acaba pagando un precio considerable en tiempo y dinero. Y a medida que la normativa de confidencialidad de los datos, como el RGPD, llega a la esfera digital, las empresas tendrán el imperativo de asegurar tanto la calidad como la gobernanza de los datos.

Como bien sabemos, en esta era de la computación en cloud somos testigos de una explosión de fuentes de datos que conviene combinar para obtener business intelligence. Sin embargo, todas las fuentes de datos del planeta presentan problemas de calidad y, cuando las integra, esos problemas se agravan. Un proyecto de ETL puede parecer una cuestión de mera conexión entre dos sistemas, pero invertir en la calidad de datos desde el principio ahorrará a su empresa cantidades importantes de dinero y de recursos.  Un enfoque proactivo en materia de calidad de datos le permite comprobar y medir ese nivel de calidad antes de que llegue a sus sistemas centrales. Ese el motivo por el que tener herramientas de calidad de datos integradas en herramientas de ETL se está convirtiendo en un factor importante a la hora de adquirir una. Eche un vistazo a la Guía definitiva sobre calidad de datos para obtener más información sobre cómo una buena herramienta de ETL pueden asegurarle de forma proactiva datos de calidad antes siquiera de que entren a sus sistemas y se utilicen.

Herramientas de ETL de Talend

Talend dispone de varias herramientas de ETL que funcionan con cualquier proyecto de integración de datos que deba realizar.  Si necesita una herramienta básica para sus procesos de ETL, Open Studio for Data Integration de Talend, que es gratuito, es la opción perfecta. Funciona bien con integraciones para Redshift, Snowflake, Google BigQuery y mucho más, cargas de datos únicas y procesos de ingesta sencillos. Si busca una herramienta de código abierto sencilla pero potente, descargue Open Studio hoy mismo.

Cuando esté listo para una herramienta de ETL que incorpore calidad de datos, gobernanza de datos, machine learning, opciones colaborativas y otras capacidades, la solución más adecuada es Data Management Platform de Talend. Tiene un modelo de precios dinámico y se puede actualizar sin problemas a partir del producto de Open Source cuando decida añadir más funcionalidades y capacidades. Puede comparar las prestaciones de todos nuestros productos de integración de datos.

Las herramientas de ETL de Talend están pensadas para simplificar las necesidades complejas de un negocio creciente y orientado a los datos. Pruebe la herramienta más adecuada para usted y simplifique los procesos de ETL de su empresa.