DataFreshness - AWS Glue

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

DataFreshness

評估目前時間與日期欄值之間的差異,以檢查欄中資料的更新狀態。您可以為此規則類型指定以時間為基礎的運算式,確保欄值處於最新狀態。

語法

DataFreshness <COL_NAME> <EXPRESSION>
  • COL_NAME – 您要評估資料品質規則的欄名稱。

    支援的欄類型:日期

  • EXPRESSION - 以小時或天為單位的數值運算式。您必須在運算式中指定時間單位。

範例:資料更新狀態

下列範例規則會檢查資料更新狀態。

DataFreshness "Order_Date" <= 24 hours DataFreshness "Order_Date" between 2 days and 5 days

Null 行為

具有 NULL值的資料列的DataFreshness規則將會失敗。如果規則因 null 值而失敗,失敗原因會顯示以下內容:

80.00 % of rows passed the threshold

失敗的資料列中有 20% 包含具有 的資料列NULL

下列範例複合規則提供明確允許 NULL值的方法:

(DataFreshness "Order_Date" <= 24 hours) OR (ColumnValues "Order_Date" = NULL)

Amazon S3 物件的資料新鮮度

有時候,您需要根據 Amazon S3 檔案建立時間來驗證資料的新鮮度。若要執行此作業,您可以使用下列程式碼取得時間戳記並將其新增至資料架構,然後套用 Data Freshness 檢查。

df = glueContext.create_data_frame.from_catalog(database = "default", table_name = "mytable") df = df.withColumn("file_ts", df["_metadata.file_modification_time"]) Rules = [ DataFreshness "file_ts" < 24 hours ]