FileFreshness - AWS Glue

FileFreshness

nota

Para todas las reglas basadas en archivos, debe ejecutar el trabajo en la misma región que su bucket. Si está intentando analizar una carpeta de Amazon S3, esa carpeta debe existir en Amazon S3.

FileFreshness garantiza que sus archivos de datos estén actualizados en función de la condición que proporcione. Utiliza la hora de la última modificación de los archivos para garantizar que los archivos de datos o toda la carpeta estén actualizados.

Esta regla recopila dos métricas:

  • El cumplimiento de FileFreshness se basa en la regla que haya configurado

  • Número de archivos que se modificaron ese día

{"Dataset.*.FileFreshness.Compliance":1,"Dataset.*.FileCount":1}

La detección de anomalías no tiene en cuenta estas métricas.

Cómo comprobar si los archivos están actualizados

La siguiente regla garantiza que tickets.parquet se haya creado en las últimas 24 horas.

FileFreshness "s3://bucket/artifacts/file/tickets/tickets.parquet" > (now() - 24 hours)

Cómo comprobar si la carpeta está actualizada

La siguiente regla se aplica si todos los archivos de la carpeta se crearon o modificaron en las últimas 24 horas.

FileFreshness "s3://bucket/" >= (now() -1 days) FileFreshness "s3://bucket/artifacts/file/tickets/" >= (now() - 24 hours)

Cómo comprobar si una carpeta o un archivo está actualizado (con umbral)

La siguiente regla se aplica si el 10 % de los archivos de la carpeta “tickets” se crearon o modificaron en los últimos 10 días.

FileFreshness "s3://bucket/artifacts/file/tickets/" < (now() - 10 days) with threshold > 0.1

Cómo comprobar archivos o carpetas con fechas específicas

Puede comprobar si los archivos se actualizaron en días específicos.

FileFreshness "s3://bucket/artifacts/file/tickets/" > "2020-01-01" FileFreshness "s3://bucket/artifacts/file/tickets/" between "2023-01-01" and "2024-01-01"

Cómo inferir los nombres de los archivos directamente de los marcos de datos

No siempre tiene que proporcionar una ruta de archivo. Por ejemplo, al crear la regla en el catálogo de datos de AWS Glue, puede resultar difícil encontrar qué carpetas usan las tablas del catálogo. AWS Calidad de datos de Glue puede encontrar las carpetas o archivos específicos que se usan para rellenar su marco de datos y puede detectar si están actualizados.

FileFreshness > (now() - 24 hours)

Esta regla encontrará la ruta de la carpeta o los archivos que se usan para rellenar el marco dinámico o el marco de datos. Esto funciona para las rutas de Amazon S3 o las tablas del Catálogo de datos de AWS Glue basadas en Amazon S3. Existen algunas consideraciones:

  1. En la ETL de AWS Glue, debe tener la transformación EvaluateDataQuality inmediatamente después de una transformación de Amazon S3 o del Catálogo de datos de AWS Glue.

    La instantánea muestra un nodo de evaluación de Calidad de datos conectado a un nodo de Amazon S3.
  2. Esta regla no funcionará en las sesiones interactivas de AWS Glue.

Si lo intenta en ambos casos, o si Glue no encuentra los archivos, aparecerá el siguiente error: “Unable to parse file path from DataFrame”