什麼是數據產品?
每個應用程式都會暫時或永久地建立及儲存數據。 許多應用程式也會針對作業管理目的建立和儲存數據,例如錯誤記錄和健康情況監視。 若要取用和處理這些應用程式所產生的數據,集中式數據小組會使用擷取、轉換和載入 (ETL) 程式。 應用程式作業小組通常會有其他數據處理流程,例如應用程式健康情況數據和 KPI 狀態監視數據。
對於數據整合,傳統瀑布式方法,小組會遵循特定階段順序並不理想。 這可能會導致知識差距、擁有權問題,以及影響數據品質、時間軸和使用者的通訊衝突。 應用程式小組負責應用程式效能和成功。 當他們使用瀑布式方法時,他們會變更其他小組所擁有的下游程式。 有時候這些變更可能會影響其他區域。 例如,次要上游變更可能會大幅改變 KPI 的趨勢。 這些衝突可能會影響您做出重要決策的能力。
數據做為產品
為了防止這些問題,數據網格方法會採用數據作為產品的概念。 應用程式擁有者和應用程式小組會將數據視為他們所負責的完整產品,而不是另一個小組程式的副產品。 應用程式和分析數據服務工作都在領域責任範圍內。
數據產品是專為分析取用而建立。 它們已定義並達成一致的形狀、取用介面,以及維護和重新整理週期,這些都記載了這些圖形。
數據產品是處理網域數據資產或數據集,您可以透過服務層級目標中的介面與下游進程共用。 除非另有需要,否則您應該先處理、塑造、清理、匯總和正規化原始數據,以符合已同意的質量標準,再讓它可供使用。
下列各節概述良好數據產品的常見特性。
數據產品特性
確定您的資料產品如下:
可探索、可理解且值得信任。 若要提供可探索性和清楚性,請分享和更新每個數據產品、其數據、其意義、其數據的形狀格式,以及其重新整理週期的相關信息。 及時向下游取用者傳達數據變更或塑造變更。 為了確保可信任性,介面會提供數據產品圖形的限時回溯相容性。
可尋址、原生存取且安全。 若要提供可尋址性,請建立已定義的程式,以找出並取得每個數據產品的存取權。 針對各種存取需求實作安全性措施。 將您的數據網域擁有權心態從閘道守衛數據轉移到使用定義完善的安全性預防措施來提供數據。 記載良好的存取介面可能會因不同技術而異。 原生存取數據產品的常用介面包括 API、資料庫使用者、數據表或檢視,以及具有必要訪問許可權的檔案。
互通、真實且有價值。 若要提供互操作性,請確定您的數據遵循定義的通用標準,例如具有相同名稱和數據類型的值。 例如,您可以為每個數據產品中包含客戶識別數據 CustomerID 的數據行命名,而且其數據可能一律為整數。 數據產品為客戶提供價值,而且您可以將其作為相同網域或不同網域中新數據產品的上游來源。 但是,您不能只攜帶並複製多個位置的相同數據產品。 來自先前數據產品的每個數據產品都應該為下游取用者提供新的價值和資訊。 數據產品也必須提供真實、準確的數據。
使用設計完善的維護數據產品及其介面,協助避免複製數據並建立原生單一事實來源。
數據產品開發建議
若要滿足數據產品服務需求,您的網域小組必須取得一組新的技能,並使用新的工具和平臺。
若要建置資料應用程式併產生或提供資料產品,請完整裝備您的網域應用程式小組。 您的小組可以使用熟悉的技術堆疊來建置數據產品。 他們可能也偏好有自己的Spark實例或管線引擎。 例如,提供許多數據產品的大型網域可能會處理數據產品,並從自己的 Azure Synapse Analytics 實例提供數據產品。 小型組織和大型組織的較小網域可能會在共用平臺上開發和執行其數據應用程式,例如位於中央的 Azure Data Factory、Azure Synapse Analytics 或 Azure Databricks 實例。
請確定您的數據產品具有本文中所述的通用特性、您的譜系存放庫會反映您的數據應用程式歷程,以及您控管實作和存取權。
下圖顯示網域和登陸區域中的範例數據應用程式邏輯配置。
Azure 的數據產品和數據應用程式指引
如果您的網域應用程式小組使用共用平臺和共用服務集,您可以在 Azure 數據登陸區域中定位資料應用程式環境的方法。
如需 Azure 數據登陸區域的數據應用程式模式範例 數據應用程式。