共用方式為


對應資料流中的代理鍵轉換

適用於:Azure Data Factory Azure Synapse Analytics

提示

試用 Microsoft Fabric 中的 Data Factory,這是適用於企業的全方位分析解決方案。 Microsoft Fabric 涵蓋從資料移動到資料科學、即時分析、商業智慧和報告的所有項目。 了解如何免費開始新的試用 (部分機器翻譯)!

Azure Data Factory 和 Azure Synapse Pipelines 中均可使用資料流。 本文適用於對應資料流。 如果您不熟悉轉換作業,請參閱簡介文章使用對應資料流轉換資料

使用代理鍵轉換將遞增的索引鍵值新增至每個資料列。 在星型結構描述的分析資料模型中設計維度資料表時,此功能十分實用。 在星型結構描述中,維度資料表中的每個成員都需要一個非商務索引鍵的唯一索引鍵。

組態

Surrogate 金鑰轉換

索引鍵資料行:產生的代理鍵資料行名稱。

開始值:將產生的最低索引鍵值。

從現有來源遞增索引鍵

若要從存在於來源中的值啟始序列,建議您使用快取接收來儲存該值,並使用衍生的資料行轉換,將這兩個值加在一起。 使用快取查閱來取得輸出,並將其附加至產生的索引鍵。 如需詳細資訊,請了解快取接收快取查閱

Surrogate 索引鍵查閱

從現有的最大值遞增

若要使用先前的最大值植入索引鍵值,您可以根據來源資料的位置使用兩種技術。

資料庫來源

使用SQL查詢選項,從來源選取 MAX()。 例如: Select MAX(<surrogateKeyName>) as maxval from <sourceTable>

Surrogate 索引鍵查詢

檔案來源

如果先前的最大值位於檔案中,請使用彙總轉換中的 max() 函式來取得先前的最大值:

Surrogate 金鑰檔案

在這兩種情況下,您必須寫入快取接收並查閱值。

資料流程指令碼

語法

<incomingStream> 
    keyGenerate(
        output(<surrogateColumnName> as long),
        startAt: <number>L
    ) ~> <surrogateKeyTransformationName>

範例

Surrogate 金鑰轉換

上述代理鍵設定的資料流程指令碼位於下列程式碼片段中。

AggregateDayStats
    keyGenerate(
        output(key as long),
        startAt: 1L
    ) ~> SurrogateKey1

這些範例使用聯結衍生的資料行轉換。