Analytics 従量課金ゾーンのコンセプト

Analytics Consumption Zone (ACZ) は、選択したエンティティ データを Azure Data Manager for Energy から Azure Data Lake Storage Gen2 アカウントにエクスポートします。 ACZ は、Azure Data Manager for Energy データをオープン Delta Parquet 形式で書き込みます。 Microsoft FabricやAzure Databricksなどのサービスでは、この形式を直接読み取ることができます。

Important

分析消費ゾーンは現在プレビュー段階です。 ベータ版、プレビュー版、または一般公開されていないAzure機能に適用される法的条件については、「Microsoft Azure プレビューの補足使用条件」を参照してください。

プレビュー期間中、ACZ は開発者層インスタンスでのみ使用でき、許可リストを使用する必要があります。 分析消費ゾーンの有効化に関するページのガイダンスに従って、Microsoft担当者にお問い合わせください。

ACZ とは

ACZ はマネージド同期レイヤーです。 エンティティ データは、Azure Data Manager for Energy インスタンスから、所有しているAzure Data Lake Storage Gen2 ストレージ アカウントにエクスポートされます。 その後、そのデータを分析、レポート、機械学習ツールに接続できます。

ACZ の主な特性:

  • 顧客所有のストレージ: データが格納されるData Lake Storage Gen2ストレージ アカウントを作成および管理します。 データ所在地の要件がある場合は、地域内の宛先ストレージ アカウントを選択する必要があります。
  • オープン形式: Delta Parquet 形式でデータをエクスポートします。 分析エンジンでは、この形式が広くサポートされています。
  • Selective sync: 同期するエンティティの種類を選択します。オプションには、カタログの種類と Wellbore Domain データ管理 Service (DDMS) の種類が含まれます。
  • 履歴同期と増分同期: ACZ から既存のデータの初期スナップショットを取得します。 その後、ACZ は変更が発生したときに同期します。
  • API ドリブン: REST API を使用して ACZ を完全に構成および管理します。

アーキテクチャ

次の図は、ACZ データ フローを示しています。

Azure Data Manager for Energy から Data Lake Storage Gen2 から分析ツールに移動するデータを示す図。

ACZ のしくみ

サポートされているエンティティ型

ACZ は、エネルギー エンティティ型の Azure Data Manager の 2 つのカテゴリを同期します。

カテゴリ Description 種類の例
カタログの種類 ストレージ サービスからのプライマリ データと参照データ osdu:wks:master-data--Well:*osdu:wks:reference-data--UnitOfMeasure:*
ウェルボア DDMS の種類 Wellbore DDMS 内のエンティティ osdu:wks:work-product-component--WellLog:*

ACZ インスタンスを作成するときは、次のように指定して、同期するエンティティの種類を指定します。

  • catalogKinds: カタログの種類のパターンの一覧 (たとえば、 osdu:wks:master-data--Well:*)。
  • wellboreDDMSKinds: Wellbore DDMS の種類パターンの一覧 (例: osdu:wks:work-product-component--WellLog:*)。

これらのパターン (ルール) は、ACZ がエクスポートし、同期を維持する Azure Data Manager for Energy のレコードを決定するフィルターとして機能します。

allCatalogSync フラグを使用する

allCatalogSync フラグは、ACZ インスタンスの作成時に指定できる省略可能なブール型パラメーターです。 trueに設定すると、データ パーティションからすべてのカタログの種類が同期されます。

主な動作:

  • allCatalogSyncは、要求本文の セクションのconfigurationで指定されます。
  • allCatalogSync: trueすると、ACZ はすべてのカタログの種類を自動的にエクスポートします。
  • 構成内の catalogKinds 配列と wellboreDDMSKinds 配列は、カタログ データでは無視されます。
  • Wellbore DDMS 一括ファイルのダウンロードは、このフラグの 影響を受けません 。 ファイルは、 wellboreDDMSKindsに明示的に一覧表示されている種類の場合にのみダウンロードされます。

構成例:

// 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:*"
    ]
  }
}

バージョンの種類

ACZ インスタンスを作成するときは、エンティティ バージョンの処理方法を選択します。

タイプ Description
LATEST_VERSION 各エンティティの最新バージョンのみをエクスポートします。 既定で推奨されます。
ALL_VERSIONS 各エンティティのすべてのバージョンをエクスポートします。 完全なバージョン履歴を保持します。

ライフサイクルの状態

各 ACZ は、次の状態を通過します。

地位 Description
アクティブ 稼働中。 ACZ は変更を増分的に同期します。
失敗した エラーがセットアップまたは同期を停止しました。
ACCESS_DENIED ACZ は、ストレージ アカウントData Lake Storage Gen2宛先に到達できません。

履歴スナップショット

新しい ACZ インスタンスを作成すると、サービスは履歴スナップショットを取得します。 このスナップショットは、構成されたエンティティの種類 (catalogKindswellboreDDMSKinds) に一致するすべての既存のレコードをエクスポートします。 スナップショットは次の状態で進行します。

地位 Description
処理 データをアクティブにエクスポートします。
完了 エクスポートされたすべての履歴データ。
失敗した エラーが発生しました。

スナップショットが完了すると、ACZ は増分モードに切り替わります。 新規および更新されたレコードをほぼリアルタイムでキャプチャします。

ACZ によるデータ変更の処理方法

ACZ は、作成、更新、および削除されたレコードを Azure Data Manager for Energy から Delta テーブルに伝達します。

  • 作成と更新: レコードを作成したりデータ ブロックを変更したりすると、Azure Data Manager for Energy によって新しいバージョンが作成されます。 ACZ は変更を検出し、Delta テーブルに新しい行を書き込みます。
  • メタデータのみの更新: PATCH 操作が新しいバージョンを作成せずにアクセス制御リスト、法的、またはタグを変更すると、ACZ はこの変更を検出し、既存の行でマージ アップサートを実行します。
  • Soft deletes: Azure Data Manager for Energy でレコードを論理的に削除すると、ACZ は isActive フィールドを削除するのではなく、行の False に設定します。 論理削除は、監査やタイムトラベルクエリのために履歴を保持します。
  • Purges: Azure Data Manager for Energy でレコードを消去すると、ACZ は Delta テーブルからレコードを完全に削除します。 行は削除され、ACZ データから回復することはできません。

Warnung

ACZ は、Azure Data Manager for Energy から Data Lake Storage Gen2 への一方向の読み取り専用同期です。

  • データ フローは、Azure Data Manager for Energy から Data Lake Storage Gen2 に対してのみ行われます。
  • Data Lake Storage Gen2の ACZ フォルダー内のファイルを直接変更、削除、または追加しないでください
  • ACZ データを手動で変更すると、同期が破損し、データの不整合が発生します。
  • ACZ は、すべての Delta Lake 操作 (トランザクション ログ、チェックポイント、圧縮) を管理します。

分析とレポートの場合は、エクスポートされたデータを読み取り専用として扱います。 すべてのデータ変更は、Azure Data Manager for Energy で行う必要があります。

データ出力形式

ACZ は、Parquet でエンコードされたファイル () を使用して DELTA_PARQUET 形式でデータを書き込みます。 Delta Lake では、アトミック性、一貫性、分離、持続性のトランザクションがサポートされます。 また、時間移動と効率的な増分読み取りもサポートされます。

Data Lake Storage Gen2 フォルダー構造

ACZ は、Data Lake Storage Gen2 ストレージ アカウント内のデータをフォルダー別に整理します。 各 ACZ インスタンスは、コンテナーの下、または指定した場合はベース パスの下に独自のフォルダーを取得します。 ACZ パーティションは、Delta Lake テーブルを種類別にカタログ化します。 DDMS エンティティの種類とレコード ID ごとに 1 つのフォルダー。

フォルダー レイアウト

Azure Data Lake Storageのフォルダー構造を示す図。

重要な詳細

要素 Description
最上位フォルダー コンテナーの下に <acz-id> という名前で、または指定されている場合は <base-path> という名前で命名されます。 ACZ インスタンスごとに 1 つのフォルダー。
osducatalog/ すべてのカタログの種類に対して 1 つのデルタ テーブル。 種類 (たとえば、 kind=osdu:wks:master-data--Well:1.0.0) でパーティション分割されます。
_delta_log/ Delta Lake トランザクション ログ。 ACID トランザクションとタイム トラベルのすべてのテーブル変更を追跡します。
DDMS エンティティ フォルダー DDMS エンティティ型ごとに 1 つのフォルダー (たとえば、 work-product-component--WellLog)。 DDMS 固有の Parquet ファイルをエンティティの種類とレコード ID で保持します。
Parquet ファイル Snappy圧縮データファイル。 更新によって新しいファイルが作成されます。 ACZは、小さなファイルを圧縮し、古いものを削除するために VACUUMOPTIMIZE を実行します。

Delta テーブル スキーマ

Delta テーブルには、次のフィールドがあります。

フィールド タイプ Description
id String OSDU® レコード ID。
version String バージョン番号。
kind String 完全修飾 OSDU® の種類。
data String データ ブロック (JSON)。
meta String メタデータ (JSON)。
acl String アクセス制御リスト。
legal String 許可されたタグ。
tags String ユーザー定義タグ。
createUser String レコードを作成したユーザー。
createTime タイムスタンプ レコードが作成されたとき。
ingestTime タイムスタンプ ACZ がレコードを取り込んだタイミング。
isActive ブール値 True アクティブな場合は 。 False ソフト削除されている場合。

Note

Wellbore DDMS エンティティには、ファイル追跡用の fileDownloadTimefileDownloadState、および fileDownloadFolder フィールドもあります。

制限とアクセス

プレビューの制限

制約 制限
データ パーティションあたりの最大 ACZ インスタンス数 3
ACZ 名の一意性 データ パーティション内で一意である必要があります
対象形式 Delta Parquet のみ
ストレージの種類 Data Lake Storage Gen2のみ
インスタンス層のサポート 開発者層はプレビュー期間中のみ

認証と承認

ACZ には次のものが必要です。

  • API アクセス: ACZ API を呼び出すには、 users@{data-partition-id}.dataservices.energy グループと users.datalake.ops@{data-partition-id}.dataservices.energy グループに属している必要があります。
  • ストレージ アクセス: マネージド ID には、Data Lake Storage Gen2 コンテナーに対するストレージ BLOB データ共同作成者ロール (またはそれと同等のもの) が必要です。 プレビュー中は、ID の詳細をMicrosoftと共有して、ID を許可リストに追加します。
  • Azure エネルギー アクセス用データ マネージャー: マネージド ID を Azure Data Manager for Energy リソースに割り当てる必要があります。