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 É«¿Ø´«Ã½ 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 É«¿Ø´«Ã½ 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.