Share via


以指令清單為基礎的擷取概念

以指令清單為基礎的檔案擷取提供使用者和系統的健全機制,可用來載入 Azure Data Manager for Energy 實例中數據集的相關元數據。 此元數據是由系統編製索引,可讓用戶搜尋數據集。

指令清單型檔案擷取是不透明的擷取,不會剖析或了解檔案內容。 它會根據指令清單建立元數據記錄,並讓記錄可供搜尋。

什麼是指令清單?

指令清單是 JSON 檔,其具有預先決定的結構,可用來擷取定義為「種類」的實體,也就是向架構服務註冊為架構 - 已知架構 (WKS) 定義

您可以在這裡找到範例指令清單 json 檔

指令清單架構具有下列 OSDU® 群組類型的容器:

  • ReferenceData零個或多個) - 其他 (master 或 transaction) 數據欄位要使用的一組允許值。 範例包括 測量單位(英呎)貨幣等。
  • MasterData零個或多個) - 跨多個系統、應用程式和/或程式使用的基本商務數據單一來源。 範例包括 WellsWellbores
  • WorkProduct (WP)一個 - 如果載入 WorkProductComponents) - 會話界限或集合(專案,研究)包含一組需要一起處理的實體。 例如,您可以擷取一或多個記錄集合。
  • WorkProductComponents (WPC)如果載入數據集,必須存在零個或多個 - 輸入、最小、可獨立使用的業務數據內容單位,作為工作產品一部分傳輸(一起內嵌的專案集合)。 每個工作產品元件 (WPC) 通常會使用參考數據、屬於某些主要數據,並維護數據集的參考。 範例: 記錄、錯誤、檔
  • 數據集(零個或多個 - 載入 WorkProduct 和 WorkProductComponent 記錄時必須存在 - 每個工作產品元件 (WPC) 都包含一或多個稱為數據集的數據容器。

指令清單資料會以特定順序載入:

  1. 'ReferenceData' 陣列(如果已填入)。
  2. 'MasterData' 陣列(如果已填入)。
  3. 'Data' 結構會最後處理(如果已填入)。 在 'Data' 屬性內,處理會依下列順序完成:
    1. 'Datasets' 陣列
    2. 'WorkProductComponents' 陣列
    3. 'WorkProduct'。

任何陣列都已排序。 如果存在相依性,相依項目必須放在其關聯性目標後面,例如,master-data Well 記錄必須放在其 Wellbores 之前的 'MasterData' 陣列中。

指令清單型檔案擷取工作流程

適用於能源的 Azure 數據管理員實例具有指令清單型檔案擷取工作流程的現用支援。 Osdu_ingest 您的實例中已預先設定 Airflow DAG。

指令清單型檔案擷取工作流程元件

指令清單型檔案擷取工作流程包含下列元件:

  • 工作流程服務 - 在 Airflow 工作流程引擎之上執行的包裝函式服務。
  • Airflow 引擎 - 工作流程協調流程引擎,執行註冊為 DAG 的工作流程(有向非循環圖)。 Airflow 是由 OSDU® 社群選擇的工作流程引擎,用來協調和執行擷取工作流程。 空氣流不會直接公開,而是透過工作流程服務存取其功能。
  • 儲存體 服務 - 用來將指令清單元數據記錄儲存至數據平台的服務。
  • 架構服務 - 管理數據平臺中 OSDU® 定義的架構的服務。 架構會在指令清單型檔案擷取期間參考。
  • 權利服務 - 管理存取群組的服務。 此服務會在擷取期間用來驗證擷取許可權。 此服務也會在元數據記錄擷取期間用來驗證「讀取」寫入。
  • 法律服務 - 透過法律標籤合規性的服務。
  • 搜尋服務 可用來在指令清單擷取程式期間執行引用完整性檢查。

必要條件

在執行指令清單型檔案擷取工作流程之前,客戶必須確定執行工作流程的用戶帳戶可以存取核心服務(搜尋、儲存體、架構、權利和法律)和工作流程服務(如需詳細資訊,請參閱權利角色)。 作為 Azure Data Manager for Energy 實例布建的一部分,OSDU® 標準架構和相關聯的參考數據會預先載入。 客戶必須確保用來擷取指令清單的用戶帳戶包含在適當的擁有者和檢視者 ACL 中。 客戶必須確保指令清單已設定正確的合法標籤、擁有者和檢視者 ACL、參考數據等。

工作流程順序

下圖提供指令清單型檔案擷取工作流程: 指令清單擷取序列的螢幕快照。

使用者使用指令清單擷取工作流程名稱 (“Osdu_ingest” 將指令清單提交至 Workflow Service 。 如果要求正確且使用者有權執行工作流程,工作流程服務會載入指令清單並起始指令清單擷取工作流程。

工作流程服務會根據定義的架構執行一系列指令清單,例如指令清單 syntax validation 結構和屬性驗證,並檢查強制架構屬性。 系統接著會在工作產品元件與數據集之間執行 referential integrity validation 。 例如,參考的父數據是否存在。

驗證成功之後,系統會使用 儲存體 服務 API,將每個有效實體寫入數據平臺,以將內容處理到記憶體。

OSDU® 是開放群組的商標。

下一步