ETL

Qu'est-ce qu'un pipeline ETL ?

streaming pipeline ETL

Qu'entend-on par pipeline ETL ?

Le pipeline ETL décrit les composants d'un pipeline de données qui extrait les données sources, les transforme et les charge dans un entrepôt de données cible.

Pourquoi utiliser des pipelines ETL ?

Les pipelines ETL connectent et automatisent les opérations d'extraction, de transformation et de chargement des données depuis les sources de données vers un entrepôt de données de destination. La caractéristique principale est qu'ils peuvent être gérés comme un processus unique de bout en bout.

Qu'est-ce qu'un pipeline de données?

Un pipeline de données est un processus plus large que l'ETL en ce sens qu'il décrit le mouvement général des données au-delà de l'ETL, comme la mise en place d'un lac de données en tant que dépôt intermédiaire de données brutes dans un magasin de données très performant. Par exemple, un pipeline de données complexe peut être utilisé pour extraire des données brutes à partir de nombreux systèmes opérationnels vers un lac de données intermédiaire. Un processus ETL peut ensuite être utilisé pour transformer et charger les données dans un entrepôt de données pour l'analyse des données ou pour aider à entraîner modèles d'apprentissage automatique.

Quelle est la différence entre ETL Pipeline et pipeline de pipeline de données?

Un processus ETL peut être un sous-ensemble d'un pipeline de données plus étendu. Contrairement à l'ETL, certaines parties du pipeline de données plus large peuvent consolider les données sans aucune transformation vers une destination intermédiaire telle qu'un lac de données Hadoop. Par exemple, vous pouvez consolider les logs de l'ordinateur central, du CRM et du site web dans un lac de données de transit sur le stockage AWS S3. Ensuite, utilisez un processus ETL pour extraire les données fusionnées du lac de données S3 dans une série de transformations de données avant de charger les données dignes d'analyse dans un entrepôt de données. C'est là qu'un outil de visualisation de données comme Tableau peut être utilisé pour obtenir des informations commerciales.

Comment construire un pipeline ETL en Python

Un pipeline ETL peut être écrit à la main à l'aide de Python ou utilisé pour invoquer des opérateurs à partir d'outils qui support ETL. Les ingénieurs des données utilisent couramment Python pour créer des pipelines ETL. Cette tâche est facilitée par l'utilisation d'outils tels que Luigi et Apache Airflow (open-source) pour gérer les flux de travail. Les opérations de copie de fichiers FTP ou locaux peuvent être utilisées pour déplacer les données. Les tâches Actian DataConnect peuvent être invoquées à partir de Python et utilisées pour profiler, extraire, transformer et charger des données.

Pygrametl est un cadre ETL Python open-source qui peut représenter les tableaux de dimensions et de faits en tant qu'objets Python . Pour construire un pipeline ETL dans Pygrametl, suivez les étapes suivantes :

  • Importer des données à partir de fichiers sources de formulaires dans les tableaux de dimensions et de faits de Pygrametl.
  • Utilisez le module Python psycopg2 pour vous connecter à l'entrepôt de données cible.
  • Utilisez le module SQLSource pour Embarquer instructions SQL SELECT dans la source Python utilisée pour extraire les données.
  • Effectuer la transformation des données extraites, une ligne à la fois, et insérer les données transformées dans l'entrepôt de données de destination.

Apache Airflow peut être utilisé pour créer des flux de travail ETL en composant un graphe acyclique dirigé (DAG), qui exprime les relations et les dépendances entre les tâches ETL.

Avec Airflow, vous importez les bibliothèques nécessaires et définissez les arguments par défaut pour chaque tâche du DAG. La définition de l'objet DAG peut inclure des paramètres pour planifier le propriétaire, l'intervalle d'exécution de la gestion des exceptions et les tentatives.

La plateforme de données Actian permet de créer et de planifier des pipelines ETL. Elle dispose de connecteurs intégrés pour les sources, y compris les applications SaaS telles que Salesforce, NetSuite et Marketo, en plus des sources de données sur site. Les API de connectivité standard comprennent Spark, ODBC, JDBC et .NET.

Actian DataConnect est une solution complète et évolutif pour la construction et l'exploitation de pipelines ETL sophistiqués. Vous pouvez utiliser son interface visuelle de type pointer-cliquer pour connecter, profiler, nettoyer et mapper des sources de données à des cibles et construire des workflows de processus basés sur des règles d'entreprise. Une fois construits, les modèles de pipelines ETL peuvent être réutilisés. Les pipelines ETL peuvent être exécutés, surveillés et gérés quel que soit l'endroit où ils sont déployés, que ce soit dans le Cloud d'Actian, votre VPC, votre centre de données ou un service Embarqué .

Actian DataFlow peut être utilisé pour créer des pipelines ETL. DataFlow utilise un dialecte JavaScript étendu pour orchestrer une série d'opérations de manipulation de données.

Vous trouverez ci-dessous un exemple d'application DataFlow pour l'extraction et la transformation de données. Voici les étapes à suivre :

  1. Créer un schéma qui définit la structure des données à lire.
  2. Créez un lecteur de fichiers et définissez les propriétés du lecteur.
  3. Créez un opérateur de filtrage pour les données lues, en définissant la condition de filtrage sous la forme d'une expression prédicative.
  4. Traiter les données qui satisfont aux conditions du filtre en les écrivant dans un fichier local.
  5. Traite les données qui ne remplissent pas les conditions du filtre en les écrivant dans un autre fichier local.
  6. Exécute explicitement l'application DataFlow composée, en fournissant un nom qui sera utile pour le débogage et le profilage.

scénario

Actian DataFlow propose les opérateurs de transformation de données suivants au niveau des champs :

  • L'opérateur DeriveFields permet de calculer de nouveaux champs.
  • L'opérateur DiscoverEnums permet de découvrir les types de données énumérés.
  • L'opérateur MergeFields permet de fusionner des champs.
  • L'opérateur RemoveFields permet de supprimer des champs.
  • L'opérateur RetainFields permet de conserver les champs.
  • L'opérateur SelectFields permet de sélectionner des champs.
  • RemapFields pour renommer les champs.
  • L'opérateur SplitField permet de diviser les champs.
  • Opérateur RowsToColumns pour convertir les lignes en colonnes (Pivot).
  • Opérateur ColumnsToRows pour convertir des colonnes en lignes (Unpivot).

Actian DataFlow fournit des chargeurs de données qui peuvent directement charger la plateforme de données Actian sous forme de flux à partir de types de fichiers HDFS tels qu'Apache AVRO. Lors de l'utilisation de la capacité de chargement direct, les données sont acheminées à partir du port d'entrée directement dans le moteur Vector. Le chargement direct peut être exécuté en parallèle et prend en charge l'exécution dans un environnement en grappe tel que Hadoop. Le chargement direct peut être utilisé pour copier des données de HDFS dans une instance de plateforme de données Actian . Lorsqu'il est exécuté dans un Cluster Hadoop, les opérations de lecture des données, de formatage et d'envoi à la plateforme de données Actian sont exécutées dans un environnement distribué, ce qui permet de tirer pleinement parti des ressources Hadoop.

Quels sont les avantages des pipelines ETL ?

  • Fournissez des données précises et cohérentes là où votre entreprise en a besoin.
  • Les flux de travail ETL peuvent être gérés et exécutés en tant qu'unité afin de réduire les coûts d'administration.
  • Les flux de travail peuvent être modélisés pour s'adapter à l'échelle de l'entreprise, réduire les temps d'apprentissage et les erreurs.
  • Des outils tels que DataConnect fournissent une plateforme d'intégration de données à code bas pour déployer plus rapidement des cas d'utilisation plus complexes.
  • Appliquer les normes de qualité des données.
  • Standardiser les pipelines ETL pour exploiter des données plus fiables et mieux gouvernées.
  • Les outils d'intégration de données tels que DataConnect fournissent une bibliothèque complète de connecteurs prédéfinis.
  • Les données peuvent être profilées dès le début du pipeline afin de maintenir une meilleure qualité de données pour une prise de décision en aval en toute confiance.
  • Planifier les mouvements de données en fonction des exigences des ensembles de données sources et des entrepôts de données cibles.
  • Les pipelines ETL peuvent être utilisés comme composants de pipelines de données plus vastes.

Qu'est-ce qu'un pipeline ETL ?

Nous avons besoin de données de haute qualité dans une base de données pour effectuer des analyses de données utiles. L'extraction, la transformation et le chargement de données brutes provenant de plusieurs sources, sous une forme qui facilite la prise de décisions, se fait en trois étapes, également appelées ETL (Extract, Transform and Load).

Apprenez-en davantage sur la gamme de produits et de solutions Actian et sur la façon dont ils peuvent aider votre entreprise à gérer les maux de tête liés à la gestion des données .