Bonnes pratiques pour la mise en œuvre d’ETL
La clé d’une bonne conception ETL réside dans les performances et la précision. Les performances reposent souvent sur une infrastructure sous-jacente. Il est donc important de disposer d’un data warehouse capable d’évoluer et de s’adapter à l’augmentation des charges. Les données structurées prennent souvent plus de temps à se transformer en raison des nombreuses contraintes liées aux tables, mais les solutions telles que FlashArray™ sont conçues pour les importations de données volumineuses et garantissent le bon fonctionnement des pipelines sur site.
Concevez toujours des processus ETL adaptés à l’évolution et à l’inconnu. Il est fort possible que vous importiez un enregistrement qui ne peut pas être transformé. Toutes les erreurs doivent être consignées et les enregistrements stockés pour un examen plus approfondi. Cela peut signifier qu’il y a un bogue dans votre ETL ou que la conception manque un cas de périphérie qui peut être corrigé en modifiant le code ETL.
Tous les processus ETL ne fonctionnent pas avec des serveurs physiques, c’est pourquoi les solutions telles que Portworx® gèrent les bases de données et les analyses virtualisées et conteneurisées. Les services conteneurisés doivent évoluer au fur et à mesure que de plus en plus de données sont importées et fonctionner avec des outils d’orchestration courants. Portworx s’intègre aux outils d’orchestration, notamment Kubernetes, pour des pipelines dynamiques et mis à jour de manière cohérente.
Les défis et les solutions de l’ETL
Comme les sources de données et les besoins métier évoluent en permanence, les administrateurs chargés de concevoir l’ETL rencontrent des difficultés en matière d’évolutivité, de mises à jour et de contrôle qualité. Les difficultés liées à l’évolution sont généralement dues aux limitations de l’espace de stockage, ce qui permet aux administrateurs de résoudre ce problème avec un stockage qui évolue avec l’augmentation des besoins en stockage de données.
Les difficultés liées à l’évolution des exigences métier relèvent souvent de la maintenance. Une source de données peut modifier la façon dont les données sont stockées, ou les développeurs peuvent apporter des modifications à une application nécessitant des modifications à la transformation ou aux structures de charge. Sans documentation provenant de sources de données tierces pour alerter les administrateurs, les modifications apportées au stockage de données ou aux exigences de charge ne se présentent pas tant que le processus ETL n’est pas erroné. La journalisation et les alertes aident les administrateurs à identifier rapidement les problèmes afin qu’ils puissent apporter des modifications au codage ETL. Les changements précoces réduisent l’impact des erreurs sur la productivité et le chiffre d’affaires de l’entreprise.
La conception d’un processus ETL est l’une des tâches les plus difficiles, mais il peut être plus facile pour les administrateurs de parler aux parties prenantes et de s’assurer que les règles métier sont incluses. La refonte et le remaniement d’une conception ETL peuvent retarder le déploiement et ajouter des frais inutiles. Documentez toutes les règles métier afin que chaque cas puisse être inclus dans une conception ETL pour éviter des réécritures excessives.
Gardez différents processus ETL séparés et indépendants les uns des autres. Cette solution garantit que l’ensemble du processus ETL ne tombe pas en panne en cas de défaillance d’un composant. Par exemple, si une API externe tombe en panne, l’extraction des données de toutes les autres sources se poursuit jusqu’à ce que l’API soit à nouveau disponible. Il est également possible de créer plusieurs planifications ETL si nécessaire. Si vous travaillez avec plusieurs plateformes cloud, le stockage cloud Pure Storage prend en charge AWS , Azure , GCP et d’autres plateformes majeures.
ETL ou ELT
Il est important de noter que l’ETL peut nécessiter beaucoup de ressources et introduire une certaine latence dans la disponibilité des données, en particulier lorsqu’il s’agit de jeux de données volumineux. Si le traitement des données en temps réel ou quasi réel est une exigence critique, d’autres méthodes d’intégration des données, comme la capture des données modifiées (CDC) ou les pipelines de données en streaming, peuvent être plus adaptées.
De plus, ces dernières années, l’ELT (extraction, chargement, transformation) est devenue une alternative populaire à l’ETL, en particulier dans les environnements de données basés sur le cloud où la transformation des données peut être effectuée dans le système de stockage de données cible. L’ELT peut être plus économique et évolutive pour certains cas d’utilisation, mais le choix entre ETL et ELT dépend de vos besoins spécifiques et des technologies que vous utilisez.
Conclusion
La conception d’une solution ETL prend du temps, mais n’oubliez pas de créer un système qui évolue avec l’augmentation du stockage de données. L’un des défis les plus simples à résoudre est la capacité de stockage de données, et les solutions Pure Storage sont conçues pour l’entreposage de données pour les données non structurées et structurées.
D’autres défis peuvent être résolus grâce à des normes de conception, une documentation et des tests d’assurance qualité de bonne qualité. Vous constaterez peut-être que certains outils peuvent faciliter la conception, mais l’ETL est souvent personnalisé pour l’entreprise. Testez un petit échantillon de données dans un environnement de préproduction, et prévoyez de maintenir en permanence le codage ETL à mesure que de nouvelles exigences commerciales seront introduites.