Partager via


Moteur d’ingestion indépendant des données

Cet article explique comment implémenter des scénarios de moteur d’ingestion indépendant des données à l’aide d’une combinaison de PowerApps, d’Azure Logic Apps et de tâches de copie basées sur les métadonnées dans Azure Data Factory.

Les scénarios de moteur d’ingestion indépendant des données sont généralement axés sur la façon de laisser les utilisateurs non techniques (non-data-engineer) publier des ressources de données dans un Data Lake pour un traitement ultérieur. Pour implémenter ce scénario, vous devez disposer de fonctionnalités d’intégration qui permettent :

  • Enregistrement des actifs de données
  • Provisionnement de flux de travail et capture de métadonnées
  • Planification de l’ingestion

Vous pouvez voir comment ces fonctionnalités interagissent :

diagramme des fonctionnalités d’inscription des données et des interactions

Figure 1 : Interactions des capacités d'enregistrement des données.

Le diagramme suivant montre comment implémenter ce processus à l’aide d’une combinaison de services Azure :

Diagramme d’un processus d’ingestion de moteur agnostique par rapport aux données

Figure 2 : Processus d’ingestion automatisé.

Inscription des ressources de données

Pour fournir les métadonnées utilisées pour piloter l’ingestion automatisée, vous avez besoin d’une inscription des ressources de données. Les informations que vous capturez contiennent les éléments suivants :

  • Informations techniques : nom de ressource de données, système source, type, format et fréquence.
  • Informations de gouvernance : propriétaire, administrateurs, visibilité (pour la découverte) et sensibilité.

PowerApps est utilisé pour capturer les métadonnées décrivant chaque ressource de données. Utilisez une application basée sur un modèle pour entrer les informations qui sont conservées dans une table Dataverse personnalisée. Lorsque les métadonnées sont créées ou mises à jour dans Dataverse, elles déclenchent un flux cloud automatisé qui appelle des étapes de traitement supplémentaires.

Diagramme d’un enregistrement de ressource de données.

Figure 3 : Enregistrement des ressources de données.

Flux de travail d’approvisionnement / capture de métadonnées

Dans l’étape du flux de travail d’approvisionnement, vous validez et conservez les données collectées dans la phase d’inscription dans le metastore. Les étapes de validation technique et métier sont effectuées, notamment :

  • Validation du flux de données d’entrée
  • Déclenchement du workflow d'approbation
  • Traitement logique pour déclencher la persistance des métadonnées dans le magasin de métadonnées
  • Audit d’activité

Diagramme du flux de travail d’inscription

Figure 4 : Flux de travail d’inscription.

Une fois les demandes d’ingestion approuvées, le flux de travail utilise l’API REST Microsoft Purview pour insérer les sources dans Microsoft Purview.

Flux de travail détaillé pour l’intégration de produits de données

diagramme montrant comment les nouveaux jeux de données sont ingérés (automatisés)

Figure 5 : Comment les nouveaux jeux de données sont ingérés (automatisés).

La figure 5 montre le processus d’inscription détaillé pour automatiser l’ingestion de nouvelles sources de données :

  • Les détails de la source sont enregistrés, y compris les environnements de production et de fabrique de données.
  • Les contraintes de forme, de format et de qualité des données sont capturées.
  • Les équipes d’application de données doivent indiquer si les données sont sensibles (données personnelles) Cette classification pilote le processus pendant lequel les dossiers data lake sont créés pour ingérer des données brutes, enrichies et organisées. Les noms de sources incluent des données brutes et enrichies, tandis que les noms de produits de données incluent des données organisées.
  • Le principal de service et les groupes de sécurité sont créés pour l’ingestion et l’octroi de l’accès à un jeu de données.
  • Un travail d’ingestion est créé dans le metastore Data Factory de la zone d’atterrissage des données.
  • Une API insère la définition de données dans Microsoft Purview.
  • Sous réserve de la validation de la source de données et de l’approbation par l’équipe ops, les détails sont publiés dans un metastore Data Factory.

Planification de l’ingestion

Dans Azure Data Factory, les tâches de copie basées sur les métadonnées fournissent une fonctionnalité qui permet aux pipelines d'orchestration d'être pilotés par les lignes d'une table de contrôle stockée dans Azure SQL Database. Vous pouvez utiliser l’outil Copier des données pour précréer des pipelines pilotés par les métadonnées.

Une fois qu’un pipeline a été créé, votre flux de travail d’approvisionnement ajoute des entrées à la table de contrôles pour prendre en charge l’ingestion à partir de sources identifiées par les métadonnées d’inscription des ressources de données. Les pipelines Azure Data Factory et Azure SQL Database contenant votre metastore Control Table peuvent exister dans chaque zone d’atterrissage de données pour créer de nouvelles sources de données et les ingérer dans des zones d’atterrissage de données.

diagramme de planification de l’ingestion des ressources de données

Figure 6 : Planification de l’ingestion des ressources de données.

Flux de travail détaillé pour l’ingestion de nouvelles sources de données

Le diagramme suivant montre comment extraire des sources de données inscrites dans un metastore Data Factory SQL Database et comment les données sont d’abord ingérées :

diagramme de la façon dont les nouvelles sources de données sont ingérées

Votre pipeline d’ingestion maître Data Factory lit les configurations à partir d’un metastore Data Factory SQL Database, puis s’exécute de façon itérative avec les paramètres corrects. Les données passent de la source à la couche brute dans Azure Data Lake avec peu à aucune modification. La structure des données est vérifiée en fonction de votre metastore de Data Factory. Les formats de fichier sont convertis en formats Apache Parquet ou Avro, puis copiés dans la couche enrichie.

Les données ingérées se connectent à un espace de travail de science et d’ingénierie des données Azure Databricks, et une définition de données est créée dans le metastore Apache Hive de la zone d’atterrissage des données.

Si vous devez utiliser un pool SQL serverless Azure Synapse pour exposer des données, votre solution personnalisée doit créer des vues sur les données du lac.

Si vous avez besoin d’un chiffrement au niveau des lignes ou des colonnes, votre solution personnalisée doit atterrir des données dans votre lac de données, puis ingérer des données directement dans des tables internes dans les pools SQL et configurer la sécurité appropriée sur le calcul des pools SQL.

Métadonnées capturées

Lorsque vous utilisez l’ingestion automatisée des données, vous pouvez interroger les métadonnées associées et créer des tableaux de bord pour :

  • Effectuez le suivi des travaux et des horodatages de chargement des données les plus récents pour les produits de données liés à leurs fonctions.
  • Suivez les produits de données disponibles.
  • Augmentez les volumes de données.
  • Obtenez des mises à jour en temps réel sur les échecs de travail.

Les métadonnées opérationnelles peuvent être utilisées pour effectuer le suivi :

  • Travaux, étapes de travail et leurs dépendances.
  • Performances des travaux et historique des performances.
  • Croissance du volume de données.
  • Échecs de travail.
  • Modifications des métadonnées sources.
  • Fonctions métier qui dépendent des produits de données.

Utiliser l’API REST Microsoft Purview pour découvrir des données

Les API REST Microsoft Purview doivent être utilisées pour inscrire des données pendant l’ingestion initiale. Vous pouvez utiliser les API pour envoyer des données à votre catalogue de données peu après son ingestion.

Pour plus d’informations, consultez comment utiliser les API REST Microsoft Purview.

Inscrire des sources de données

Utilisez l’appel d’API suivant pour inscrire de nouvelles sources de données :

PUT https://{accountName}.scan.purview.azure.com/datasources/{dataSourceName}

paramètres d’URI pour la source de données :

Nom Obligatoire Type Description
accountName Vrai Chaîne Nom du compte Microsoft Purview
dataSourceName Vrai String Nom de la source de données

Utiliser l’API REST Microsoft Purview pour l’inscription

Les exemples suivants montrent comment utiliser l’API REST Microsoft Purview pour inscrire des sources de données avec des charges utiles :

Inscrire une source de données Azure Data Lake Storage Gen2 :

{
  "kind":"AdlsGen2",
  "name":"<source-name> (for example, My-AzureDataLakeStorage)",
  "properties":{
    "endpoint":"<endpoint> (for example, https://adls-account.dfs.core.windows.net/)",
    "subscriptionId":"<azure-subscription-guid>",
    "resourceGroup":"<resource-group>",
    "location":"<region>",
    "parentCollection":{
      "type":"DataSourceReference",
      "referenceName":"<collection-name>"
    }
  }
}

Inscrire une source de données SQL Database :

{
  "kind":"<source-kind> (for example, AdlsGen2)",
  "name":"<source-name> (for example, My-AzureSQLDatabase)",
  "properties":{
    "serverEndpoint":"<server-endpoint> (for example, sqlservername.database.windows.net)",
    "subscriptionId":"<azure-subscription-guid>",
    "resourceGroup":"<resource-group>",
    "location":"<region>",
    "parentCollection":{
      "type":"DataSourceReference",
      "referenceName":"<collection-name>"
    }
  }
}

Remarque

Le <collection-name>est une collection actuelle qui existe dans un compte Microsoft Purview.

Créer un scan

Découvrez comment créer des informations d’identification pour authentifier des sources dans Microsoft Purview avant de configurer et d’exécuter une analyse.

Utilisez l’appel d’API suivant pour analyser les sources de données :

PUT https://{accountName}.scan.purview.azure.com/datasources/{dataSourceName}/scans/{newScanName}/

Paramètres d’URI pour une analyse :

Nom Obligatoire Type Description
accountName Vrai String Nom du compte Microsoft Purview
dataSourceName Vrai Chaîne Nom de la source de données
newScanName Vrai Chaîne Nom de la nouvelle analyse

Utiliser l’API REST Microsoft Purview pour l’analyse

Les exemples suivants montrent comment utiliser l’API REST Microsoft Purview pour analyser les sources de données avec des charges utiles :

Analyser une source de données Azure Data Lake Storage Gen2 :

{
  "name":"<scan-name>",
  "kind":"AdlsGen2Msi",
  "properties":
  {
    "scanRulesetType":"System",
    "scanRulesetName":"AdlsGen2"
  }
}

Scanner une base de données SQL :

{
  "name":"<scan-name>",
  "kind":"AzureSqlDatabaseMsi",
  "properties":
  {
    "scanRulesetType":"System",
    "scanRulesetName":"AzureSqlDatabase",
    "databaseName": "<database-name>",
    "serverEndpoint": "<server-endpoint> (for example, sqlservername.database.windows.net)"
  }
}

Utiliser l’appel d’API suivant pour analyser les sources de données :

POST https://{accountName}.scan.purview.azure.com/datasources/{dataSourceName}/scans/{newScanName}/run

Étapes suivantes