取消
顯示的結果
而不是尋找
你的意思是:

三角洲生活表@expect比較表數之間的兩個階段

140015年
新的貢獻者三世

你好,

我在想如果有一個選項一個期望的DLT將比較兩個階段之間的記錄的數量,例如那些計數失敗如果有區別嗎?

我的意思是這樣的:

@dlt.table ()

def青銅():

一些轉換

@dlt。expect_or_fail (“equal_number_of_records”、“bronze_table.count () = = silver_table.count ()

@dlt.table ()

def銀():

一些轉換

6個回答6

werners1
尊敬的貢獻者三世

如果你添加一個計數(“*”)列銀,和比較,青銅的計數(你先放到一個變量)?這樣你比較列一個標量值,我相信這將工作。

140015年
新的貢獻者三世

不幸的是,它沒有工作,預計不標量值保存為變量

@dlt。expect_or_fail (“equal_number_of_records”、“qa_silver_row_count = = bronze_count”)

@dlt.table ()

def銀():

bronze_count = = bronze_table.count ()

silver_table = #銅表上的轉換

silver_table = silver_table。withColumn (qa_silver_row_count F.lit (silver_table.count ()))

我設法讓它運行的方式是:

@dlt。expect_or_fail (“equal_number_of_records”、“qa_silver_row_count = = qa_bronze_row_count”)

@dlt.table ()

def銀():

bronze_table = #負載銅表

silver_table = upstream_table。withColumn (“qa_bronze_row_count F.lit (bronze_table . . count ()))

silver_table = #銅表上的轉換

silver_table = silver_table。withColumn (qa_silver_row_count F.lit (silver_table.count ()))

有點麻煩。這有點煩人的DLT實際上是行數自動但不能很容易訪問。也許可以得到這個數據事件日誌表我將試著找出答案

140015年
新的貢獻者三世

我深入DLT文檔,發現這一點https://docs.www.eheci.com/workflows/delta-live-tables/delta-live-tables-cookbook.html validate-row……。我猜它解決了我的問題。

werners1
尊敬的貢獻者三世

偉大的發現!

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map