Skip to Content

¿Qué es ETL?

Extraer, transformar y cargar (ETL) es un proceso importante en el almacenamiento de datos cuando las empresas necesitan extraer datos de varias fuentes y almacenarlos en una ubicación centralizada. La lógica del proceso y el diseño de la infraestructura dependerán de los requisitos comerciales, los datos que se almacenen y si el formato está estructurado o no.

¿Qué es ETL?

Los datos extraídos de varias fuentes deben almacenarse en una forma específica para permitir que las aplicaciones, el aprendizaje automático, la inteligencia artificial y el análisis funcionen con ellos. El proceso de ETL es un grupo de reglas empresariales que determinan las fuentes de datos que se utilizan para extraer datos, transformarlos en un formato específico y luego cargarlos en una base de datos. Los datos pueden ser estructurados o no estructurados, o podrían ser ambos.

Después de que ocurre el proceso de ETL, los datos se almacenan en un almacenamiento de datos donde los administradores pueden administrarlos aún más. Los administradores responsables de las bases de datos que almacenan datos de ETL administran el registro, la auditoría y las copias de seguridad. Los datos de registro para los eventos de ETL también podrían pasar por su propio proceso de datos antes de almacenarse en un almacenamiento de datos para el análisis administrativo.

El proceso de ETL

ETL tiene tres pasos: extraer, transformar y cargar. Los administradores de bases de datos, los desarrolladores y los arquitectos de la nube generalmente diseñan el proceso de ETL utilizando reglas comerciales y requisitos de aplicaciones. El diseño de un proceso de ETL aborda los siguientes tres pasos:

  • Extraer: Los datos sin procesar para la extracción podrían provenir de una o varias fuentes. Las fuentes pueden provenir de una API, un sitio web, otra base de datos, registros de IoT, archivos, correo electrónico o cualquier otro formato de datos ingerible. Debido a que las fuentes podrían tener varios formatos, el primer paso en ETL extrae datos de una fuente para el siguiente paso.
  • Transformar: Las reglas comerciales y la ubicación de almacenamiento de destino definen el diseño de transformación. Los datos se deben formatear, filtrar y validar antes de que se puedan enviar al almacenamiento de datos. Los datos duplicados pueden sesgar los resultados analíticos, por lo que los elementos de línea duplicados se eliminan antes de almacenarlos. Los datos tienen un formato que permite almacenarlos. Por ejemplo, un número de teléfono puede almacenarse con o sin guiones, por lo que el proceso de transformación agrega o elimina guiones antes de ser enviado al almacenamiento.
  • Cargar: Después de la transformación, los datos se envían al almacenamiento de datos para su almacenamiento. Se deben conservar los datos y evitar los duplicados, por lo que el paso de carga debe tener en cuenta los cambios incrementales cada vez que se ejecuta el proceso de ETL. ETL a menudo se ejecuta varias veces al día para corporaciones más grandes, por lo que solo se agregan datos nuevos sin afectar los datos de la aplicación actual ya almacenados en la base de datos.

Beneficios de ETL

Una vez que se diseña un proceso de ETL, se ejecuta automáticamente a lo largo del día. Algunos procesos de ETL podrían ser una ocurrencia semanal o mensual, y la mayoría de los motores de bases de datos ofrecen un programador que se ejecuta en el servidor para ejecutar tareas en un tiempo establecido. Un proceso de ETL bien diseñado no necesita muchos cambios y puede importar datos de varias fuentes sin interacción manual.

Los datos sin procesar sin ninguna transformación generalmente son inútiles para el análisis, especialmente si su empresa utiliza datos similares de varias fuentes. Por ejemplo, una empresa que trabaja con análisis de tráfico podría extraer datos de varias fuentes gubernamentales diferentes. Es muy probable que todas las fuentes creen registros duplicados, pero un proceso de ETL tomará los datos, eliminará los duplicados y dará formato a los datos para aplicaciones de análisis interno. Las empresas podrían extraer datos de varias ubicaciones y prepararlos automáticamente para el análisis interno, lo que también potencia las decisiones comerciales futuras y el lanzamiento de productos.

ETL acelera las actualizaciones de datos, por lo que beneficia a las empresas que necesitan trabajar con datos actuales o en tiempo real. Tradicionalmente, las importaciones de datos eran por lotes y ETL era lento. Es posible que las empresas no vean cambios en los datos durante varias horas, pero la tecnología actual de ETL proporciona actualizaciones a los datos para que el análisis pueda reflejar cambios recientes en las tendencias.

Herramientas y tecnologías de ETL

Para grandes procesos de datos, la mayoría de las organizaciones utilizan herramientas y guiones personalizados para ETL. Los motores de bases de datos a menudo vienen con sus propias funciones de ETL para que las empresas puedan importar datos. La forma en que almacena los datos depende de si necesita datos no estructurados o estructurados. Los datos estructurados requieren más formato que los datos no estructurados, por lo que cualquier herramienta lista para usar debe integrarse con la plataforma de base de datos elegida.

Algunas herramientas para ETL:

  • Talenario: Ofrece una interfaz gráfica de usuario de código abierto para la integración del proceso de datos de arrastrar y soltar
  • PowerCenter de Informatica: Proporciona a los usuarios finales las herramientas para importar datos y diseñar sus propios procesos de datos para proyectos comerciales.
  • AWS AWS: Le permite diseñar ETL a partir de datos no estructurados y estructurados para almacenar en cubos S3
  • Flujo de datos de Google Cloud: Le permite crear procesos ETL sin servidor para almacenar datos en la plataforma Google Cloud (GCP)

Mejores prácticas para la implementación de ETL

La clave para un buen diseño ETL es el rendimiento y la precisión. El rendimiento a menudo depende de la infraestructura subyacente, por lo que es importante tener un almacenamiento de datos que pueda escalar y mantenerse al día con las cargas crecientes. Los datos estructurados a menudo tardan más tiempo en transformarse debido a las muchas limitaciones de la tabla, pero las soluciones como FlashArray ™ están diseñadas para grandes importaciones de datos y garantizan que los procesos en las instalaciones continúen funcionando rápidamente.

Siempre diseñe procesos ETL para escala y lo desconocido. Es muy posible que eventualmente importe un registro que no se pueda transformar. Cualquier error debe registrarse y los registros deben almacenarse para una revisión adicional. Podría significar que hay un error en su ETL o que el diseño pierde un caso de borde que se puede corregir con cambios en el código ETL.

No todos los procesos de ETL funcionan con servidores físicos, por lo que las soluciones como Portworx ® manejan bases de datos y análisis virtualizadas y en contenedores. Los servicios en contenedores deben escalar a medida que se importan más datos y funcionan con herramientas de organización comunes. Portworx se integra con herramientas de organización que incluyen Kubernetes para procesos dinámicos y actualizados de manera consistente.

Desafíos y soluciones en ETL

Debido a que las fuentes de datos y los requisitos comerciales cambian continuamente, los administradores responsables de diseñar ETL tienen desafíos asociados con la escala, las actualizaciones y el control de calidad. Los desafíos de escalamiento generalmente provienen de las limitaciones del espacio de almacenamiento, por lo que los administradores pueden solucionar este problema con el almacenamiento que escala con un aumento en los requisitos de almacenamiento de datos.

Los desafíos con los requisitos cambiantes del negocio suelen estar sujetos a mantenimiento. Una fuente de datos puede cambiar la forma en que se almacenan los datos, o los desarrolladores pueden realizar cambios en una aplicación que requiera cambios en la transformación o las estructuras de carga. Sin tener documentación de fuentes de datos de terceros para alertar a los administradores, los cambios en los requisitos de almacenamiento de datos o carga no se presentan hasta que se producen errores en el proceso de ETL. El registro y las alertas ayudan a los administradores a identificar los problemas de forma temprana para que puedan realizar cambios en la codificación ETL. Los primeros cambios reducen el impacto de los errores en la productividad y los ingresos del negocio.

El diseño de un proceso de ETL es una de las tareas más difíciles, pero puede ser más fácil cuando los administradores hablan con las partes interesadas y se aseguran de que se incluyan las reglas comerciales. Rediseñar y refactorizar un diseño de ETL puede retrasar la implementación y agregar gastos generales innecesarios. Documente todas las reglas comerciales para que cada caso pueda incluirse en un diseño de ETL para evitar reescrituras excesivas.

Mantenga varios procesos de ETL separados e independientes entre sí. Esta solución garantiza que todo el proceso de ETL no falle si falla un componente. Por ejemplo, si una API externa se bloquea, la extracción de datos de todas las demás fuentes aún se completa hasta que la API esté disponible nuevamente. También es posible crear varios cronogramas de ETL si es necesario. Si trabaja con varias plataformas en la nube, el almacenamiento en la nube de Pure Storage es compatible con AWS , Azure , GCP y otras plataformas importantes.

ETL frente a ELT 

Es importante tener en cuenta que ETL puede requerir muchos recursos y puede introducir cierta latencia en la disponibilidad de datos, especialmente cuando se trata de grandes conjuntos de datos. Si el procesamiento de datos en tiempo real o casi en tiempo real es un requisito crítico, otros métodos de integración de datos como la captura de datos de cambio (CDC) o los procesos de transmisión de datos pueden ser más adecuados.

Además, en los últimos años, ELT (extraer, cargar, transformar) se ha convertido en una alternativa popular a ETL, especialmente en entornos de datos basados en la nube donde la transformación de datos se puede realizar dentro del sistema de almacenamiento de datos objetivo. ELT puede ser más rentable y escalable para algunos casos de uso, pero la elección entre ETL y ELT depende de sus requisitos específicos y de las tecnologías que esté utilizando.

Conclusiones

Diseñar una solución de ETL lleva tiempo, pero no olvide crear un sistema que se escale con el aumento del almacenamiento de datos. Uno de los desafíos más fáciles de resolver es la capacidad de almacenamiento de datos, y las soluciones de Pure Storage están diseñadas para el almacenamiento de datos para datos estructurados y no estructurados.

Se pueden resolver otros desafíos con buenos estándares de diseño, documentación y pruebas de garantía de calidad. Es posible que descubra que algunas herramientas pueden ayudar con el diseño, pero la ETL a menudo se personaliza para la empresa. Pruebe una pequeña muestra de datos en un entorno de almacenamiento provisional y espere mantener continuamente la codificación ETL a medida que se introducen nuevos requisitos comerciales.

11/2024
Pure Storage FlashArray//C | Data Sheet
FlashArray//C lets you consolidate workloads with consistent all-flash NVMe performance at a lower TCO than hybrid storage.
Hoja de datos
4 páginas
CONTÁCTENOS
¿Preguntas, comentarios?

¿Tiene alguna pregunta o comentario sobre los productos o las certificaciones de Pure?  Estamos aquí para ayudar.

Programe una demostración

Programe una demostración en vivo y compruebe usted mismo cómo Pure puede ayudarlo a transformar sus datos en potentes resultados. 

Llámenos: 800-976-6494

Medios de comunicación: pr@purestorage.com

 

Pure Storage, Inc.

2555 Augustine Dr.

Santa Clara, CA 95054

800-379-7873 (información general)

info@purestorage.com

CERRAR
¡Su navegador ya no es compatible!

Los navegadores más antiguos a menudo representan riesgos de seguridad. Para brindar la mejor experiencia posible al utilizar nuestro sitio, actualice a cualquiera de estos navegadores más recientes.