Aceleración de los rastreadores mediante las notificaciones de eventos de Amazon S3
En lugar de publicar los objetos de un destino de Amazon S3 o del Catálogo de datos, puede configurar el rastreador para que utilice eventos de Amazon S3 para buscar cualquier cambio. Esta característica mejora el tiempo de rastreo mediante el uso de eventos de Amazon S3 o del Catálogo de datos para identificar los cambios entre dos rastreos al enumerar todos los archivos de la subcarpeta que activó el evento en lugar de publicar el destino completo de Amazon S3 o el Catálogo de datos.
En el primer rastreo se enumeran todos los objetos de Amazon S3 del destino. Después del primer rastreo exitoso, puede optar por volver a rastrear manualmente o según un calendario establecido. El rastreador enumerará solo los objetos de esos eventos en lugar de enumerar todos los objetos.
Cuando el destino es una tabla del Catálogo de datos, el rastreador actualiza las tablas existentes en el Catálogo de datos con los cambios (por ejemplo, particiones adicionales en una tabla).
Las ventajas de pasar a un rastreador basado en eventos de Amazon S3 son:
Un nuevo rastreo más rápido, ya que la lista de todos los objetos del destino no es necesaria, sino que la lista de carpetas específicas se realiza cuando se agregan o eliminan objetos.
Reducción del costo global de rastreo a medida que la lista de carpetas específicas se realiza en las que se agregan o eliminan objetos.
El rastreo de eventos de Amazon S3 se ejecuta consumiendo los eventos de Amazon S3 de la SQS cola según la programación del rastreador. No habrá ningún costo si no hay eventos en la cola. Los eventos de Amazon S3 se pueden configurar para que vayan directamente a la SQS cola o, en los casos en que varios consumidores necesiten el mismo evento, una combinación de SNS ySQS. Para obtener más información, consulte Cómo configurar la cuenta para las notificaciones de eventos de Amazon S3.
Después de crear y configurar el rastreador en modo evento, el primer rastreo se ejecuta en modo listado y enumera un listado completo del destino de Amazon S3 o del Catálogo de datos. A través del siguiente registro se confirma el funcionamiento del rastreo mediante el uso de eventos de Amazon S3 tras el primer rastreo correcto: “El rastreo se ejecuta mediante el uso de eventos de Amazon S3”.
Después de crear el rastreo de eventos de Amazon S3 y actualizar las propiedades del rastreador que pueden afectar al rastreo, el rastreo funciona en modo lista y se agrega el siguiente registro: “El rastreo no se ejecuta en modo de evento de S3”.
nota
La cantidad máxima de mensajes que se pueden consumir es de 100 000 mensajes por rastreo.
Limitaciones
Las siguientes limitaciones se aplican al configurar un rastreador para el uso de las notificaciones de eventos de Amazon S3 a fin de encontrar cualquier cambio.
El rastreador admite un solo destino, ya sean destinos para Amazon S3 o para el Catálogo de datos.
SQSno VPC se admite la opción de modo privado.
No se admite el muestreo de Amazon S3.
El objetivo del rastreador debe ser una carpeta para un objetivo de Amazon S3 o uno o más AWS Glue Tablas del catálogo de datos para un objetivo del catálogo de datos.
No se admite el comodín de la ruta “todo”: s3://%
Para un destino de Catálogo de datos, todas las tablas del Catálogo deben apuntar al mismo bucket de Amazon S3 para el modo de eventos de Amazon S3.
Para un destino de Catálogo de datos, una tabla de catálogo no debe apuntar a una ubicación de Amazon S3 en formato Delta Lake (que contenga carpetas _symlink o consulte las tablas del catálogo
InputFormat
).
Temas
Cómo configurar la cuenta para las notificaciones de eventos de Amazon S3
Realice los siguientes pasos de configuración. Tenga en cuenta que los valores entre paréntesis hacen referencia a los valores configurables del script.
-
Debe configurar las notificaciones de eventos para su bucket de Amazon S3.
Para obtener más información, consulte Notificaciones de eventos de Amazon S3.
-
Para utilizar el rastreador basado en eventos de Amazon S3, debe habilitar la notificación de eventos en el bucket de Amazon S3 con los eventos filtrados a partir del prefijo, que es el mismo que el del destino de S3 y almacenado en él. SQS Para configurar SQS la notificación de eventos a través de la consola, sigue los pasos que se indican en el tutorial: Configuración de un depósito para notificaciones.
-
Añada la siguiente SQS política a la función utilizada por el rastreador.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "sqs:DeleteMessage", "sqs:GetQueueUrl", "sqs:ListDeadLetterSourceQueues", "sqs:ReceiveMessage", "sqs:GetQueueAttributes", "sqs:ListQueueTags", "sqs:SetQueueAttributes", "sqs:PurgeQueue" ], "Resource": "arn:aws:sqs:{region}:{accountID}:cfn-sqs-queue" } ] }