Comparativa de herramientas para procesos ETL

Introducción

Antes de abordar nuestra comparativa hemos de decir que R y Python, siendo lenguajes de programación y no herramientas de ETL propiamente dichas, pueden cubrir estas funcionalidades de manera satisfactoria. 

Lo que nos hace revisar otras opciones es la posibilidad de que perfiles menos técnicos puedan realizar estas tareas de manera fácil e intuitiva.

¿Qué significa ETL?

En analítica digital, como en otros campos en los que se dispone de grandes volúmenes de datos, los procesos ETL son clave a la hora de optimizar el rendimiento de la información.

El término ETL hace referencia a Extract (lectura de datos), Transform (aplicar los cambios pertinentes a esos datos según los requerimientos necesarios para su posterior análisis) y Load (carga de datos procesados), como funciones en el contexto de bases de datos. 

En el caso que nos ocupa no necesariamente haremos una consulta directa sobre una base de datos, nuestra “E” puede ser una llamada a API para obtener el dataset de interés (por ejemplo, llamada a la API de Google Analytics).

Herramientas de integración de datos

En el mercado actual encontramos gran variedad de herramientas de integración de datos que realizan las tareas de ETL descritas anteriormente.

Para situarnos en él revisaremos la comparativa de Gartner del año pasado. Las dos herramientas que encabezan el top de revisiones de usuarios son:

Informatica Power Center

Esta plataforma nos asiste en todo el ciclo de vida de integración de los datos, ofreciéndonos agilidad, escalabilidad empresarial y confianza operativa durante este proceso.

¿Qué ventajas tiene Informatica Power Center?

Fácil manejo (asistentes, plantillas y gran cantidad de conectores).

SQL Server Integration Services (SSIS) 

Es el producto que nos ofrece Microsoft para la creación de soluciones empresariales de transformación e integración de datos.

¿Qué aspectos positivos tiene SSIS?

Posibilidad de introducir código para manipulación de datos más compleja, fácil integración con MSSQL.

Al no haber probado ninguna de ellas, no entraremos en detalle en aspectos negativos.

Knime

Es una plataforma open-source que ha conseguido posicionarse entre las primeras en el cuadrante de Gartner en la categoría de Data Science y Machine Learning. 

También nos podría ser de utilidad en procesos ETL. 

¿Qué ventajas tiene Knime?

Entre sus ventajas:

– Gratuita.

– Comunidad proactiva.

– Se integran nuevos desarrollos continuamente.

– Flujos muy intuitivos con componentes que pueden ser reutilizados.

– En cuanto a sus integraciones, encontramos: 

  • R (en un post anterior hablamos sobre este tema) y Python.
  • Apache Spark para procesos de Big Data.
  • H2O para aprendizaje automático.
  • Keras para deep learning.

– Entre sus conexiones: 

¿Qué desventajas tiene Knime?

No hemos profundizado en su funcionamiento, con lo cual nos vemos limitados a la hora de evaluar sus puntos débiles.

Cloud Composer

Es la reciente oferta del Cloud de Google para crear, programar y supervisar flujos de trabajo. Utiliza Python y se basa en Apache Airflow, con lo cual es fácil de usar y no exige dependencias.

La interfaz es similar a la de Talend.

¿Qué ventajas tiene Cloud Composer?

Cuenta con la ventaja, en el caso de trabajar con Google Analytics y BigQuery, de tener conectores nativos.

¿Qué desventajas tiene Cloud Composer?

En contraposición, encontramos un coste asociado, al ser un producto de Google Cloud Platform.

Talend

Otra plataforma open-source que nos ayuda en el almacenamiento masivo de datos y la resolución de problemas de inteligencia de negocio. 

En la anterior comparativa, Talend ocupa la posición 11 con una buena puntuación (4.2/5).

¿Qué ventajas tiene Talend?

Basándonos en nuestra experiencia, es una opción bastante viable por varios motivos:

– Dispone de una versión gratuita: Talend Open Studio.

– Comunidad muy activa, con recursos y formación disponible.

– Buen soporte.

– Gran cantidad de conectores. En nuestro caso usamos conectores no nativos de Google Analytics y BigQuery, si bien la conexión con Google Sheets no es demasiado estable.

– El flujo ha de estar perfectamente definido pero, una vez depurados, los jobs son bastante consistentes, sólo fallarán en caso de no poder establecer la conexión.

¿Qué contras tiene Talend?

Entre sus limitaciones:

– Sería ideal una integración con lenguajes como R, para reutilizar scripts en la etapa de transformación. No parece haber solución a esta cuestión.

– Hay tareas no posibles de integrar en Talend, por ejemplo: web scrapping. En este caso, en lugar de iniciar el flujo importando el raw data habría que pasar los datos ya escrapeados para su posterior procesamiento.

Conclusiones

Lo que nos hará decantarnos por una herramienta/lenguaje u otro para la extracción, transformación y carga de datos vendrá determinado por:

  • El perfil más o menos técnico de la persona encargada de la tarea.
  • La necesidad de reutilizar componentes del workflow o reaprovechar scripts ya desarrollados en algún lenguaje.
  • El tipo de conector a utilizar.
  • El presupuesto disponible para desarrollar nuestro proyecto.
Lourdes Hernández

Lourdes Hernández

Share on facebook
Share on twitter
Share on linkedin
Share on email
3 min
Suscríbete a nuestra newsletter

Los mejores artículos de analítica digital para potenciar tu negocio.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Entradas relacionadas

Cómo integrar KNIME con R

Integrar KNIME con R nos permite construir flujos de análisis de datos fácilmente comprensibles.

2 minutos

Dificultad