謝謝你的回複
是的,是關於我。最終代理鍵應該是穩定的,這種說法似乎表明他們不會失敗的。
三角洲生活之外的其他數據產品(管道)可能是指CustomerKey 12 (CustomerCode: BOB1)。如果由於刷新(不確定這將是必要的,但感覺會發生)BOB1 23的關鍵變化相反,我們剛剛默默地破碎的所有外部表引用我們的鑰匙。這不會是一個美好的一天。
還要考慮SCD2情況。SCD2表越來越受益於有一個代理鍵從一個毫無意義的標識列。然而如果身份與應用不支持和應用變化是磚的方式實現SCD2那麼磚怎麼建議SCD2表的外觀和可靠地從其他表引用嗎?
我們需要保持我們BusinessCode映射在一個分離的關鍵,non-delta-live表,以確保他們是穩定的嗎?如果這是推薦那麼我建議要將這些信息添加到FAQ(最小也是偉大的例子)
你有沒有得到一個答案嗎?看起來像一個巨大的洞DLT特性集。我現在的DLT管道停在輸出的數據是不同的下降和刪除記錄。從那裏,我用一個正常三角洲管道對表進行掃描,兩次
你想出一個更好的解決這個問題嗎?
另一個挑戰是輸出表中有一些維度數據本身沒有id。我被迫創建自己的維度表與自己的SKs,然後追溯寫尺寸的SK回目標表。我不介意這樣做,但是DLT似乎不具備支持這個。
令人驚訝的是治療可以寫出你的問題。回複後,解決方案來找我。秘密武器在之前完成所有* *運行dlt.apply_changes()引擎。之後,所有的賭注都關閉,因為發動機似乎停止擔心跟蹤疾病預防控製中心。所以在你跑之前應用變化……
做一個簡單的表,隻需要在你的源數據的主鍵,或使人通過concat是必要的。然後這樣做:
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# #定義目標表的id
@dlt。表(評論=“CDC攝入的目標。”
模式= " "
sk_workorder長整型數字生成的總是作為身份(從1增加1),
workorder_id字符串
”“”
)
def stg_workorder_ids ():
返回(dlt.read_stream (“stg_workorders_hist_bronze”)
.select (“workorder_id”)
.distinct ()
)
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
這讓你一個1:1的關係您的專有密鑰和SK(代理鍵)。一旦我做了這個,我加入它回到我history_silver表,然後* *,穿過apply_changes引擎。似乎工作。GL !