連接至 Azure Data Lake Storage 中的 Delta 資料表
連接至 Delta 資料表中的資料,並將其引入 Dynamics 365 Customer Insights - Data 中。
要連接至儲存為 Delta Lake 格式之資料的主要原因:
- 直接匯入 Delta 格式的資料,以節時間和精力。
- 消除與轉換和儲存 Lakehouse 資料複本相關的計算和儲存成本。
- 自動提高將資料擷取至 Delta 版本設定所提供之 Customer Insights - Data 的可靠性。
支援的 Databricks 功能和版本
Customer Insights - Data 支援「minReaderVersion」版本 2 或更早版本的 Databricks 功能。 不支援需要 Databricks 讀取器版本 3 或更新版本的 Databricks 功能。 下表顯示支援和不支援的 Databricks 功能。
支援的功能 | 不支援的功能 |
---|---|
基本功能 | 刪除向量 |
變更資料摘要 | Liquid 叢集 |
檢查限制式 | 資料表功能寫入 |
資料行對應 | TimestampNTZ |
產生資料行 | 類型放大 |
身分識別資料行 | 變數 |
資料列追蹤 | |
資料表功能讀取 | |
UniForm |
深入了解:Databricks 如何管理 Delta Lake 功能相容性?。
必要條件
Azure Data Lake Storage 必須與 Customer Insights - Data 位於同一個租用戶和 Azure 區域。
若要連接至受防火牆保護的儲存體,請設定 Azure Private Link。
Customer Insights - Data 服務主體必須有儲存體 Blob 資料參與者權限,才能存取儲存體帳戶。 如需詳細資訊,請參閱將權限授與服務主體以存取儲存體帳戶。
設定或更新資料來源的使用者對於 Azure Data Lake Storage 帳戶,至少需要儲存體 Blob 資料讀者權限。
儲存在線上服務中的資料可能儲存在與處理或儲存資料所在位置不同的位置。 匯入或連接至儲存在線上服務的資料,即表示您同意可以將資料轉移。 請至 Microsoft 信任中心了解詳細資訊。
Customer Insights - Data 支援 Databricks 讀取器版本 2。 不支援使用需要 Databricks 讀取器版本 3 或更新版本功能的 Delta 資料表。 深入了解:支援的 Databricks 功能。
Delta 資料表必須位於儲存體容器的資料夾,不能在容器根目錄中。 例如:
storageaccountcontainer/ DeltaDataRoot/ ADeltaTable/ _delta_log/ 0000.json 0001.json part-0001-snappy.parquet part-0002-snappy.parquet
- Azure Data Lake Storage 中的資料必須位於 Delta 資料表中。 Customer Insights - Data 依賴資料表歷程記錄中的版本屬性來識別累加式處理的最新變更。
從 Azure Data Lake Storage 連接至 Delta 資料
資料連接名稱、資料路徑 (例如容器中的資料夾) 和資料表名稱必須使用字母開頭的名稱。 名稱只能包含字母、數字和底線 (_)。 不支援特殊字元。
移至資料>資料來源。
選取新增資料來源。
選取 Azure Data Lake Delta 資料表。
輸入資料來源名稱和說明 (選填)。 該名稱在下游流程中參考,並且在建立資料來源後無法變更。
您可以選擇下列其中一種選項,以連接使用的儲存體。
- Azure 訂閱:選取訂閱,然後選取資源群組和儲存體帳戶。
- Azure 資源:輸入資源識別碼。
選擇容器的名稱,容器中包含您資料的資料夾。
或者,如果您想透過 Azure Private Link 從儲存體帳戶中內嵌資料,請選取啟用 Private Link。 如需詳細資訊,請移至 Private Link。
瀏覽至包含 Delta 資料表中資料的資料夾並加以選取。 然後選取下一步。 顯示可用資料表的清單。
選取要包含的資料表。
對於未定義主索引鍵的選定資料表,則會在主索引鍵下顯示必要。 對每一個資料表:
- 選取必要。 編輯資料表面板隨即顯示。
- 選擇主索引鍵。 主索引鍵是資料表的唯一屬性。 若要讓屬性成為有效的主索引鍵,其中不能包含重複值、遺漏值或 Null 值。 字串、整數及 GUID 資料類型屬性均支援主索引鍵。
- 選取關閉以儲存並關閉面板。
若要啟用對任何資料行的資料分析,請選取資料表的資料行數目。 管理屬性頁面隨即顯示。
- 選取整個資料表或特定資料行的資料分析。 根據預設,沒有資料表會啟用於資料剖析。
- 選取完成。
選取儲存。 資料來源頁面會打開,顯示處於重新整理狀態中的新資料來源。
載入資料可能需要花費一些時間。 成功重新整理之後,即可從資料表頁面查看擷取的資料。
管理結構描述變更
在 Delta 資料夾資料來源的結構描述中新增或移除一欄時,系統會執行完整的資料重新整理。 與累加式重新整理相比,完整重新整理處理所有資料所需的時間更長。
新增欄
將一欄新增至資料來源後,只要發生重新整理,資訊就會自動附加至 Customer Insights - Data 中的資料。 如果已設定對資料表的統整,則必須將新的資料列新增至統整程序。
從客戶資料步驟,選擇選取資料表和資料行,並選取新的資料行。
在整合資料檢視步驟中,確定資料行未從客戶設定檔中排除。 選取已排除,並重新加入該資料行。
在執行統一設定檔更新步驟中,選取整合客戶設定檔和相依性。
變更或移除資料行
從資料來源中移除一欄時,系統會檢查其他程序中是否有相依性。 如果對資料行有相依性,系統就會停止重新整理,並提供錯誤,指出必須移除這些相依性。 這些相依性會顯示在通知中,協助您尋找並加以移除。
驗證結構描述變更
資料來源重新整理後,移至資料>資料表頁面。 選擇資料來源的資料表並驗證結構描述。
Delta Lake 時間旅行和資料重新整理
Delta Lake 時間旅行是根據時間戳記或版本號碼查詢資料表版本的功能。 對 Delta 資料夾的變更有版本控制,而且 Customer Insights - Data 會使用 Delta 資料夾版本來追蹤要處理的資料。 在定期增量資料表重新整理中,資料是從上次重新整理以來的所有資料表版本中提取。 只要所有版本都存在,Customer Insights - Data 就可以只處理變更的元素,而提供更快的結果。 深入了解時間旅行。
例如,如果 Customer Insights – Data 上次與之同步處理的是版本 23 的 Delta 資料夾資料,則預期要找到版本 23 以及可能的後續版本。 如果沒有預期的資料版本可用,則資料同步處理會失敗,而且需要手動完整資料重新整理。 如果將 Delta 資料夾資料刪除然後重新建立,則資料同步處理可能會失敗。 或者,如果 Customer Insights - Data 在版本升級期間,長時間無法連接至 Delta 資料夾,也會失敗。
為了避免需要完整資料重新整理,建議您保留合理的歷史記錄積存,例如 15 天。
對 Delta 資料表資料夾手動執行完整資料重新整理
完整重新整理會從 Delta 格式的資料表取得所有資料,並從 Delta 資料表版本零 (0) 重新載入資料。 對 Delta 資料夾結構描述的變更會觸發自動完整重新整理。 若要手動觸發完整重新整理,請執行下列步驟。
移至資料>資料來源。
選取 Azure Data Lake Delta 資料表資料來源。
選取您要重新整理的資料表。 編輯資料表面板隨即顯示。
選取執行一次性完整重新整理。
選取儲存以執行重新整理。 資料來源頁面會開啟,顯示資料來源處於重新整理中狀態,但只有選取的資料表正在重新整理。
對其他資料表重複此程序 (如果適用)。
資料同步處理失敗
如果將 Delta 資料夾資料刪除然後重新建立,則資料同步處理可能會失敗。 或者,如果 Customer Insights - Data 在版本升級期間,長時間無法連接至 Delta 資料夾,也會失敗。 為了盡可能降低間歇性資料管線失敗導致需要完整重新整理的影響,建議您保留合理的歷程記錄積存,例如 15 天。