Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
DataFreshness
Verifica l'aggiornamento dei dati in una colonna valutando la differenza tra l'ora corrente e i valori di una colonna di date. È possibile specificare un'espressione basata sul tempo per questo tipo di regola per assicurarsi che i valori delle colonne siano aggiornati.
Sintassi
DataFreshness
<COL_NAME>
<EXPRESSION>
COL_ NAME — Il nome della colonna in base alla quale si desidera valutare la regola di qualità dei dati.
Tipi di colonne supportati: Data
EXPRESSION— Un'espressione numerica espressa in ore o giorni. È necessario specificare l'unità di tempo nell'espressione.
Esempio: freschezza dei dati
Le seguenti regole di esempio controllano la freschezza dei dati, ovvero quanto sono aggiornati.
DataFreshness "Order_Date" <= 24 hours DataFreshness "Order_Date" between 2 days and 5 days
Comportamento nullo
Le DataFreshness
regole avranno esito negativo per le righe con NULL
valori. Se la regola fallisce a causa di un valore nullo, il motivo dell'errore sarà il seguente:
80.00 % of rows passed the threshold
dove il 20% delle righe che hanno avuto esito negativo include le righe conNULL
.
La seguente regola composta di esempio fornisce un modo per consentire esplicitamente NULL
i valori:
(DataFreshness "Order_Date" <= 24 hours) OR (ColumnValues "Order_Date" = NULL)
Freschezza dei dati per oggetti Amazon S3
A volte è necessario convalidare l'aggiornamento dei dati in base all'ora di creazione del file Amazon S3. A tale scopo, puoi utilizzare il codice seguente per ottenere il timestamp e aggiungerlo al tuo dataframe, quindi applicare i controlli di 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 ]