FileMatch - AWS Glue

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à.

FileMatch

La FileMatch regola consente di confrontare i file con altri file o checksum. Questo può essere utile in alcuni scenari:

  1. Convalida dei file ricevuti da fonti esterne: è possibile eseguire il confronto con i checksum FileMatch per assicurarsi di aver ricevuto i file corretti da fonti esterne. Ciò contribuisce a verificare l'integrità dei dati che stai acquisendo.

  2. Confronto dei dati in due cartelle diverse: FileMatch può essere utilizzato per confrontare i file tra due cartelle.

Questa regola include una metrica: il numero di file che sono stati scansionati dalla regola.

{"Dataset.*.FileCount":1}

Convalidare i file con un checksum:

FileMatch accetta un file e un set di checksum per garantire che almeno un checksum corrisponda al file.

FileMatch "s3://amzn-s3-demo-bucket/file.json" in ["3ee0d8617ac041793154713e5ef8f319"] with hashAlgorithm = "MD5" FileMatch "s3://amzn-s3-demo-bucket/file.json" in ["3ee0d8617ac041793154713e5ef8f319"] with hashAlgorithm = "SHA-1" FileMatch "s3://amzn-s3-demo-bucket/file.json" in ["3ee0d8617ac041793154713e5ef8f319"] with hashAlgorithm = "SHA-256" FileMatch "s3://amzn-s3-demo-bucket/file.json" in ["3ee0d8617ac041793154713e5ef8f319"]

Sono supportati i seguenti algoritmi standard:

  • MD5

  • SHA-1

  • SHA-256

Se non fornisci un algoritmo, quello predefinito è SHA-256.

Convalidare tutti i file in una cartella con un set di checksum:

FileMatch "s3://amzn-s3-demo-bucket /" in ["3ee0d8617ac041793154713e5ef8f319", "7e8617ac041793154713e5ef8f319"] with hashAlgorithm = "MD5" FileMatch "s3://amzn-s3-demo-bucket /internal-folder/" in ["3ee0d8617ac041793154713e5ef8f319", "7e8617ac041793154713e5ef8f319"]

Confrontare i file in diverse cartelle

FileMatch "s3://original_bucket/" "s3://archive_bucket/" FileMatch "s3://original_bucket/internal-folder/" "s3://original_bucket/other-folder/"

FileMatch controllerà il contenuto dei file original_bucket e si assicurerà che corrispondano a ciò che c'è dentro. archive_bucket Se non corrispondono esattamente, la regola non verrà applicata. Può anche verificare il contenuto delle cartelle interne o dei singoli file.

FileMatch possono anche confrontare i singoli file l'uno con l'altro.

FileMatch "s3://amzn-s3-demo-bucket /file_old.json" "s3://amzn-s3-demo-bucket /file_new.json"

Dedurre i nomi dei file direttamente dai data frame

Non è sempre necessario fornire un percorso del file. Ad esempio, quando crei la regola nel AWS Glue Data Catalog (supportato da Amazon S3), potrebbe essere difficile trovare le cartelle utilizzate dalle tabelle del catalogo. AWS Glue Data Quality può trovare le cartelle o i file specifici utilizzati per popolare il tuo frame di dati.

Nota

Questa funzione funziona solo quando i file vengono letti correttamente in sala operatoria DynamicFrame . DataFrame

FileMatch in ["3ee0d8617ac041793154713e5ef8f319"] with hashAlgorithm = "MD5" FileMatch in ["3ee0d8617ac041793154713e5ef8f319"] with hashAlgorithm = "SHA-1" FileMatch in ["3ee0d8617ac041793154713e5ef8f319"] with hashAlgorithm = "SHA-256" FileMatch in ["3ee0d8617ac041793154713e5ef8f319"]

Se il checksum fornito è diverso da quello calcolato, ti FileMatch avviserà della differenza.

La schermata mostra una regola con lo stato DQ di Rule failed. FileMatch spiega l'errore.

Tag delle regole opzionali basati su file:

I tag permettono di controllare il comportamento delle regole.

recentFiles

Questo tag limita il numero di file elaborati mantenendo il file più recente per primo.

FileMatch "s3://amzn-s3-demo-bucket/file.json" in ["3ee0d8617ac04179sam4713e5ef8f319"] with recentFiles = 1

matchFileName

Questo tag garantisce che i file non abbiano nomi duplicati. Il comportamento predefinito è false.

FileMatch "s3://amzn-s3-demo-bucket/file.json" in ["3ee0d8617ac04179sam4713e5ef8f319"] with matchFileName = "true"

Occorre tenere presente alcuni aspetti:

  1. In AWS Glue ETL, è necessario disporre di EvaluateDataQualityTransform subito dopo una trasformazione di Amazon S3 o AWS Glue Data Catalog.

    La schermata mostra una regola con lo stato DQ di Rule failed. FileMatch spiega l'errore.
  2. Questa regola non funzionerà nelle sessioni interattive di AWS Glue.