在數位經濟時代,資料已成為企業的核心資產。如何有效地設計、實作和管理資料產品,是企業能否成功進行數位轉型的關鍵。本文從資料驅動設計的視角出發,探討資料產品設計與實作的核心概念,包括界限上下文、整合模式以及資料產品的內部結構。同時,文章也強調了資料產品描述檔(DPDS)的重要性,並深入解析了 DPDS 中介面元件的組成部分:承諾、期望和義務,以及如何利用這些元素來規範資料產品的設計和使用,確保資料產品的互操作性和可管理性,最終提升企業資料資產的價值。

高科技理論與商業養成系統指引

重新定義企業資料管理

在當前的商業環境中,企業資料管理已成為一個至關重要的議題。為了有效地管理資料,企業需要建立一個健全的資料管理系統。這個系統應該能夠實時收集、處理和分析資料,以支援企業的決策和營運。

資料產品的設計和實作

資料產品是企業資料管理的核心部分。它們需要被設計和實作,以滿足企業的具體需求。資料產品可以分為兩類別:源對齊資料產品和消費者對齊資料產品。源對齊資料產品負責收集和處理資料,而消費者對齊資料產品則負責向使用者提供資料。

資料產品之間的互動作用

資料產品之間的互動作用是企業資料管理的另一個重要方面。不同資料產品需要能夠相互通訊和交換資料,以支援企業的營運。這需要建立一個標準化的資料交換格式和協定,以確保不同資料產品之間的相容性。

外部系統的整合

除了內部資料產品之外,企業還需要整合外部系統以支援其營運。這些外部系統可以包括第三方服務、商業軟體和傳統應用程式。企業需要建立一個標準化的介面以整合這些外部系統,並確保其與內部資料產品的相容性。

實時資料處理和分析

實時資料處理和分析是企業資料管理的關鍵部分。企業需要能夠實時收集、處理和分析資料,以支援其決策和營運。這需要建立一個實時資料處理系統,以能夠快速地處理和分析大量資料。

看圖說話:
  graph LR
    A[資料收集] --> B[資料處理]
    B --> C[資料分析]
    C --> D[決策支援]
    D --> E[營運最佳化]

上述流程圖展示了企業資料管理的基本流程,從資料收集到決策支援和營運最佳化。

資料產品設計與實作

在設計資料產品時,瞭解資料產品之間的關係以及其所屬的界限上下文(Bounded Context)至關重要。界限上下文是指一個具有明確邊界的業務領域,資料產品則是這個領域中的一個具體實作。決定資料產品之間的關係和實作邏輯是資料驅動設計(Data-Driven Design, DDD)中的重要步驟。

界限上下文對映

界限上下文對映(Context Mapping)是一種用於描述界限上下文之間關係的方法。它涉及識別不同界限上下文之間的耦合程度和互動模式。界限上下文之間的關係可以是強耦合、弱耦合或無耦合。強耦合表示兩個界限上下文之間存在密切的依賴關係,而弱耦合則表示兩個界限上下文之間的依賴關係較為鬆散。

整合模式

在資料驅動設計中,存在多種整合模式,用於描述界限上下文之間的互動方式。常見的整合模式包括:

  1. 開放主機服務(Open Host Service, OHS):一個界限上下文透過標準介面和協定向外暴露其資料或功能。
  2. 分享核心(Shared Kernel, SK):兩個界限上下文分享同一個元件或服務的責任。
  3. 順從者(Conformist, CF):下游界限上下文使用上游界限上下文採用的資料模型。
  4. 反腐蝕層(Anti-Corruption Layer, ACL):下游界限上下文開發了一個層來隔離從上游系統讀取的資料,並將其轉換為自己的資料模型。
  5. 釋出語言(Published Language, PL):兩個界限上下文透過一個共同的語言進行互動,這個語言與其各自的通用語言不同。

資料產品內部結構

一個資料產品由多個元件組成,包括:

  1. 資料資產:資料產品所暴露的資料。
  2. 資料集:描述資料資產的概念模型。
  3. 消費資料儲存:用於儲存和提供資料給消費者的資料儲存。
  4. 內部資料儲存:用於儲存和處理中間資料的資料儲存。
  5. 輸入埠:實作資料產品接收資料的服務。
  6. 輸出埠:實作資料產品提供資料的服務。
  7. 資料管道:實作業務邏輯的元件,負責讀取和轉換資料。

資料產品描述檔案

資料產品描述檔案是一種用於收集和分享與資料產品相關的所有後設資料的工具。它包含了有關資料產品的各個元件的資訊,包括其名稱、版本、描述等。這份檔案在資料產品的生命週期中扮演著重要角色,幫助消費者和開發人員更好地理解和使用資料產品。

資料產品描述

資料產品描述檔是一份正式且可機器閱讀的檔案,描述資料產品的所有元件,包括其公開介面和內部元件。這份檔案包含了關於資料產品的所有相關中繼資料,供使用者和開發團隊使用。

資料產品描述檔的重要性

資料產品描述檔的存在確保了資料產品之間的技術互操作性,並為平臺服務的開發奠定了基礎,方便資料產品的營運管理。一個良好的資料產品描述檔應該具備以下特點:

  • 表達性:能夠清晰、無歧義地代表所有與資料產品相關的中繼資料。
  • 人機可讀:既能被人類也能被機器理解。
  • 靈活性:允許以不同細節層次定義中繼資料,以適應不同戰略分類別的產品需求。
  • 可擴充套件性:易於新增新的中繼資料型別,以滿足未來的需求。
  • 可組合性:允許參照外部標準,以避免重覆工作。
  • 技術獨立性:盡可能地與底層技術規範保持獨立,以維持宣告式結構,限制實作細節。

設計和實施資料產品

在定義資料產品描述檔規範時,應遵循增量方法,逐步完善。規範應從最基本、最必要的中繼資料開始,隨著資料產品導向的採用成熟度提高而逐步擴充套件。每個要求的中繼資料元素都應有明確的用途和價值。

資料產品描述檔規範

目前尚無被廣泛採用的資料產品描述檔規範,因此選擇一種現有的規範並根據需要進行修改或直接使用是可行的方法。選擇規範時,應考慮六個原則:表達性、人機可讀、靈活性、可擴充套件性、可組合性和技術獨立性。

資料產品描述檔結構

以 Data Product Descriptor Specification (DPDS) 為例,資料產品描述檔是一份以 JSON 或 YAML 編碼的檔案,包含了關於資料產品的通用資訊、介面元件和內部元件。這些元件分別描述了資料產品的基本屬性、公開介面和內部架構。

資料產品描述檔範例

{
  "dataProductDescriptor": "1.0.0",
  "info": {
    "name": "inventory",
    "version": "1.5.0",
    "domain": "Inventory Control",
    "owner": {
      "name": "Andrea Gioia"
    }
  },
  "interfaceComponents": {
    "inputPorts": [],
    "outputPorts": []
  }
}

資料產品描述檔案(DPDS)中的介面元件描述

資料產品的所有埠都在介面元件物件中進行描述,該物件包含每個埠的描述。每種型別的埠都可以有特定的屬性,但由於每個埠都是資料產品提供的服務,因此每個埠的描述都具有基本結構和關鍵屬性。具體來說,每個埠除了具有唯一的名稱和版本號外,還將其屬性分為三個主要塊:承諾、期望和義務。

承諾物件

承諾物件包含資料產品宣佈埠意圖的所有中繼資料。承諾代表了資料產品應當履行的內容,資料產品越能履行承諾,就越值得信賴。承諾的結構如以下表格所示:

屬性型別說明
platformstring平臺型別
serviceTypestring服務型別
apiStandard DefinitionAPI 定義
deprecationPolicyStandard Definition退役政策定義
sloStandard Definition服務等級目標定義

期望物件

期望物件包含資料產品宣佈埠使用方式的所有中繼資料。期望是承諾的對立面,代表了資料產品希望消費者對於埠使用方式做出的承諾。期望的結構如以下表格所示:

屬性型別說明

義務物件

義務物件包含資料產品宣佈埠使用時必須尊重的承諾和期望的所有中繼資料。義務的結構如以下表格所示:

屬性型別說明

資料產品中繼資料管理

資料產品的中繼資料管理涉及描述資料產品的內部元件和外部介面。下一節將介紹如何描述資料產品的內部元件。

看圖說話:

  flowchart TD
    A[資料產品] --> B[介面元件]
    B --> C[承諾]
    B --> D[期望]
    B --> E[義務]
    C --> F[平臺]
    C --> G[服務型別]
    C --> H[API]
    D --> I[使用方式]
    E --> J[尊重承諾]

看圖說話:

  flowchart TD
    A[資料產品] --> B[內部元件]
    B --> C[資料儲存]
    B --> D[資料處理]
    B --> E[資料輸出]
    C --> F[資料函式庫]
    D --> G[資料轉換]
    E --> H[資料視覺化]

這兩個圖表分別展示了資料產品的介面元件和內部元件,闡述了資料產品描述檔案(DPDS)中的關鍵概念和結構。

從現代企業資料管理的複雜性來看,建立一個完善的資料產品系統至關重要。本文深入探討了資料產品的設計、互動、整合以及實時處理等關鍵環節,並以資料驅動設計和界限上下文的概念闡明瞭資料產品之間的關係和邏輯。尤其值得關注的是資料產品描述檔案(DPDS)的引入,它以結構化的方式規範了資料產品的中繼資料管理,涵蓋了介面元件的承諾、期望和義務,以及內部元件的資料儲存、處理和輸出。玄貓認為,DPDS 的應用有助於提升資料產品的可理解性、互操作性和可管理性,是邁向資料驅動型企業的關鍵一步。未來,隨著資料治理和資料中臺概念的普及,預計 DPDS 將會整合更多自動化管理和機器學習功能,進一步提升資料產品的價值和效率。對於追求資料驅動決策的高階管理者而言,深入理解並應用 DPDS 框架將是提升企業競爭力的重要策略。