Concepts de la zone de consommation Analytics

Analytics Consumption Zone (ACZ) exporte les données d’entité sélectionnées de Azure Data Manager for Energy vers votre compte Azure Data Lake Storage Gen2. ACZ écrit les données Azure Data Manager for Energy au format ouvert Delta Parquet. Les services tels que Microsoft Fabric et Azure Databricks peuvent lire ce format directement.

Important

Analytics Consumption Zone est actuellement en préversion. Pour consulter les conditions légales applicables aux fonctionnalités Azure qui sont en version bêta, en préversion ou qui ne sont pas encore mises à la disposition générale, consultez Conditions d’utilisation supplémentaires pour les préversions de Microsoft Azure.

Pendant la préversion, ACZ est disponible uniquement sur les instances de niveau Développeur et nécessite l’utilisation de listes autorisées. Suivez les instructions fournies dans Enable Analytics Consumption Zone et contactez votre représentant Microsoft.

Qu’est-ce que ACZ ?

ACZ est une couche de synchronisation managée. Il exporte les données d’entité de votre instance Data Manager for Energy Azure vers un compte de stockage Azure Data Lake Storage Gen2 que vous possédez. Vous pouvez ensuite connecter ces données à des outils d’analytique, de création de rapports et d’apprentissage automatique.

Principales caractéristiques d’ACZ :

  • Stockage appartenant au client : vous créez et gérez un compte de stockage Data Lake Storage Gen2 où vos données sont envoyées. Vous êtes responsable de la sélection d’un compte de stockage de destination géographique si vous avez des exigences de résidence des données.
  • Format ouvert : Vos exportations de données au format Delta Parquet. Les moteurs d’analyse prennent largement en charge ce format.
  • Synchronisation sélective : vous choisissez les types d’entités à synchroniser. Les options incluent les types de catalogue et les types du service Wellbore Domain Gestion des données Service (DDMS).
  • Synchronisation historique et incrémentielle : vous obtenez un instantané initial des données existantes à partir d’ACZ. AcZ synchronise ensuite les modifications au fur et à mesure qu’elles se produisent.
  • Piloté par l’API : vous configurez et gérez entièrement ACZ par le biais d’API REST.

Architecture

Le diagramme suivant montre le flux de données ACZ.

Diagramme montrant les données qui passent de Azure Data Manager for Energy à Data Lake Storage Gen2 aux outils d’analytique.

Fonctionnement d’ACZ

Types d’entités pris en charge

ACZ synchronise deux catégories de types d’entité d’Azure Data Manager for Energy.

Category Description Exemples de types
Types de catalogues Données principales et données de référence du service de stockage osdu:wks:master-data--Well:*, osdu:wks:reference-data--UnitOfMeasure:*
Types de DDMS Wellbore Entités de Wellbore DDMS osdu:wks:work-product-component--WellLog:*

Lorsque vous créez une instance ACZ, vous spécifiez les types d’entités à synchroniser en fournissant :

  • catalogKinds: liste de modèles de type catalogue (par exemple, osdu:wks:master-data--Well:*).
  • wellboreDDMSKinds: Une liste des motifs de type Wellbore DDMS (par exemple, osdu:wks:work-product-component--WellLog:*).

Ces modèles de type agissent comme des filtres qui déterminent quel Azure Data Manager for Energy enregistre les exportations ACZ et conserve la synchronisation.

Utiliser l’indicateur allCatalogSync

L’indicateur allCatalogSync est un paramètre booléen facultatif que vous pouvez spécifier lorsque vous créez une instance ACZ. Lorsqu’il est défini sur true, il synchronise tous les types de catalogues depuis la partition de données.

Comportements clés :

  • allCatalogSync est spécifié en dehors de la configuration section dans le corps de la requête.
  • Quand allCatalogSync: true, ACZ exporte automatiquement tous les types de catalogues.
  • Les tableaux catalogKinds et wellboreDDMSKinds de la configuration sont ignorés pour les données de catalogue.
  • Les téléchargements de fichiers en bloc DDMS Wellbore ne sont pas affectés par cet indicateur. Les fichiers sont téléchargés uniquement pour les types explicitement répertoriés dans wellboreDDMSKinds.

Exemples de configurations :

// Selective catalog sync - only Wells and Fields
{
  "allCatalogSync": false,
  "configuration": {
    "catalogKinds": [
      "osdu:wks:master-data--Well:*",
      "osdu:wks:master-data--Field:*"
    ]
  }
}

// Sync all catalog kinds using allCatalogSync flag
{
  "allCatalogSync": true,
  "configuration": {
    // catalogKinds is ignored when allCatalogSync is true
  }
}

// Sync all catalog kinds, but Wellbore DDMS files only for specified kinds
{
  "allCatalogSync": true,
  "configuration": {
    "wellboreDDMSKinds": [
      "osdu:wks:work-product-component--WellLog:*"
    ]
  }
}

Types de versions

Lorsque vous créez une instance ACZ, vous choisissez comment gérer les versions d’entité.

Type Description
LATEST_VERSION Exporte uniquement la dernière version de chaque entité. Valeur par défaut et recommandée.
ALL_VERSIONS Exporte toutes les versions de chaque entité. Conserve l’historique complet des versions.

États du cycle de vie

Chaque ACZ passe par les états suivants :

État Description
ACTIVE Opérationnel. ACZ synchronise les modifications de façon incrémentielle.
ÉCHEC Une erreur a arrêté l’installation ou la synchronisation.
ACCESS_DENIED ACZ ne peut pas atteindre le compte de stockage de destination Data Lake Storage Gen2.

Instantané historique

Lorsque vous créez une instance ACZ, le service prend un instantané historique. Cet instantané exporte tous les enregistrements existants qui correspondent aux types d’entités configurés (catalogKinds et wellboreDDMSKinds). L’instantané passe par les états suivants :

État Description
TRAITEMENT Exportation active des données.
TERMINÉ Toutes les données historiques exportées.
ÉCHEC Une erreur s’est produite.

Une fois l’instantané terminé, ACZ bascule vers le mode incrémentiel. Il capture les enregistrements nouveaux et mis à jour en quasi-temps réel.

Comment ACZ gère les modifications des données

ACZ propage les enregistrements créés, mis à jour et supprimés de Azure Data Manager for Energy aux tables Delta.

  • Creations et mises à jour : lorsque vous créez un enregistrement ou modifiez son bloc de données, Azure Data Manager for Energy crée une nouvelle version. ACZ détecte la modification et écrit une nouvelle ligne dans la table Delta.
  • Mises à jour des métadonnées uniquement : lorsqu’une opération PATCH modifie la liste de contrôle d’accès, la conservation légale ou les balises sans créer de version, ACZ détecte cette modification et exécute une opération de fusion (upsert) sur la ligne existante.
  • Suppressions logiques : lorsque vous effectuez une suppression logique d’un enregistrement dans Azure Data Manager for Energy, ACZ définit le champ isActive sur False dans la ligne au lieu de le supprimer. Les suppressions logiques conservent l’historique à des fins d’audit et de requêtes de voyage dans le temps.
  • Purges : lorsque vous purgez un enregistrement dans Azure Data Manager for Energy, ACZ supprime définitivement l’enregistrement de la table Delta. La ligne est supprimée et ne peut pas être récupérée à partir des données ACZ.

Avertissement

ACZ est une synchronisation unidirectionnelle en lecture seule entre Azure Data Manager for Energy et Data Lake Storage Gen2 :

  • Les données circulent uniquement de Azure Data Manager for Energy vers Data Lake Storage Gen2.
  • Ne modifiez pas, supprimez ou ajoutez des fichiers directement dans les dossiers ACZ dans Data Lake Storage Gen2.
  • Les modifications manuelles apportées aux données ACZ endommagent la synchronisation et provoquent des incohérences de données.
  • ACZ gère toutes les opérations Delta Lake (journaux des transactions, points de contrôle et compactage).

Pour l’analytique et la création de rapports, traitez les données exportées en lecture seule. Toutes les modifications de données doivent se produire dans Azure Data Manager for Energy.

Format de sortie de données

ACZ écrit des données au format Delta Lake avec des fichiers encodés en Parquet (DELTA_PARQUET). Delta Lake prend en charge les transactions d’atomicité, de cohérence, d’isolation et de durabilité. Il prend également en charge le voyage dans le temps et les lectures incrémentielles efficaces.

structure de dossiers Data Lake Storage Gen2

ACZ organise les données dans votre compte de stockage Data Lake Storage Gen2 par dossier. Chaque instance ACZ obtient son propre dossier sous le conteneur ou sous le chemin d’accès de base si vous en avez spécifié un. Les partitions ACZ cataloguent les tables Delta Lake par type. Un dossier par type d’entité DDMS et ID d’enregistrement.

Disposition des dossiers

Diagramme montrant la structure de dossiers pour Azure Data Lake Storage.

Détails essentiels

Élément Description
Dossier de niveau supérieur Nommé <acz-id> sous le conteneur, ou sous <base-path> si spécifié. Un dossier par instance ACZ.
osducatalog/ Une table Delta pour tous les types de catalogue. Partitionné par type (par exemple, kind=osdu:wks:master-data--Well:1.0.0).
_delta_log/ Journal des transactions Delta Lake. Suit toutes les modifications apportées aux tables pour les transactions ACID et le voyage dans le temps.
Dossiers d’entité DDMS Un dossier par type d’entité DDMS (par exemple, work-product-component--WellLog). Contient des fichiers Parquet propres à DDMS, par type d’entité et identifiant d’enregistrement.
Fichiers Parquet Fichiers de données compressés avec Snappy. Les mises à jour créent des fichiers. ACZ exécute VACUUM et OPTIMIZE pour compacter les petits fichiers et supprimer les anciens.

Schéma de table delta

La table Delta comporte les champs suivants :

Champ Type Description
id String ID d’enregistrement OSDU®.
version String Numéro de version.
kind String Type OSDU® entièrement qualifié.
data String Bloc de données (JSON).
meta String Métadonnées (JSON).
acl String Liste de contrôle d’accès.
legal String Balises légales.
tags String Balises définies par l’utilisateur.
createUser String Utilisateur qui a créé l’enregistrement.
createTime Horodatage Lorsque l’enregistrement a été créé.
ingestTime Horodatage Quand ACZ a ingéré l’enregistrement.
isActive Boolean True si elle est active. False s’il est supprimé temporairement.

Note

Les entités DDMS Wellbore ont également des champs fileDownloadTime, fileDownloadState et fileDownloadFolder pour le suivi des fichiers.

Limites et accès

Limites d’aperçu

Contrainte Limite
Nombre maximal d’instances ACZ par partition de données Three
Unicité du nom ACZ Doit être unique dans une partition de données
Format cible Delta Parquet uniquement
Type de stockage Data Lake Storage Gen2 uniquement
Prise en charge des niveaux d’instance Niveau développeur uniquement pendant la préversion

Authentification et autorisation

ACZ nécessite :

  • Accès à l’API : pour appeler les API ACZ, vous devez appartenir aux groupes users@{data-partition-id}.dataservices.energy et users.datalake.ops@{data-partition-id}.dataservices.energy.
  • Accès au stockage : l’identité managée a besoin du rôle Contributeur aux données blob de stockage (ou équivalent) sur le conteneur Data Lake Storage Gen2. Durant la préversion, partagez les informations d’identité avec Microsoft pour ajouter l’identité à la liste d’autorisation.
  • Azure Data Manager for Energy access : l’identité managée doit être affectée à la ressource Azure Data Manager for Energy.