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. Questo aiuta a convalidare l'integrità dei dati che stai importando.

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

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

{"Dataset.*.FileCount":1}

Convalida il file con un checksum:

FileMatch accetta un file e imposta i 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 si fornisce un algoritmo, l'impostazione predefinita è SHA-256.

Convalida 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"]

Confronta 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 al contenutoarchive_bucket. La regola fallirà se non corrispondono esattamente. Può anche controllare il contenuto delle cartelle interne o dei singoli file.

FileMatch può 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 frame di dati

Non è sempre necessario fornire un percorso di 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 di regole opzionali basati su file:

I tag consentono di controllare il comportamento delle regole.

File recenti

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

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

matchFileName

Questo tag assicura che i file non abbiano nomi duplicati. Il comportamento predefinito è falso.

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

Ci sono alcune considerazioni:

  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.