Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

570
Visualizações
¿Desencadenador basado en eventos de AWS Glue Crawler después de cargar un archivo en un S3 Bucket?

¿Es posible activar un rastreador de AWS Glue en archivos nuevos, que se cargan en un depósito de S3, dado que el rastreador "apunta" a ese depósito? En otras palabras: la carga de un archivo genera un evento que hace que el rastreador de AWS Glue lo analice. Sé que existe un rastreo basado en programación, pero nunca encontré uno basado en eventos.

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Como inicio rápido, aquí hay una cuenta detallada de cómo crear un Lambda en Python para hacer esto. Esta es la primera vez que creo un Lambda para YMMV.

  1. Para ahorrar tiempo, seleccione 'Crear función' y luego haga clic en 'Blueprints'. Seleccione la muestra llamada 's3-get-object-python' y haga clic en 'Configurar'
  2. Complete el nombre de Lambda y cree un nuevo Rol a menos que ya tenga uno.
  3. El asistente configurará el disparador S3 al mismo tiempo
  4. Una vez que lo cree, deberá encontrar el Rol que creó y agregar un nuevo permiso a través de una política que contenga:

"Action": "glue:StartCrawler", "Resource": "*"

  1. Cambia el código a algo como:
 from __future__ import print_function import json import boto3 print('Loading function') glue = boto3.client(service_name='glue', region_name='ap-southeast-2', endpoint_url='https://glue.ap-southeast-2.amazonaws.com') def lambda_handler(event, context): #print("Received event: " + json.dumps(event, indent=2)) try: glue.start_crawler(Name='my-glue-crawler') except Exception as e: print(e) print('Error starting crawler') raise e

Finalmente, suponiendo que seleccionó que el disparador debe estar deshabilitado durante el desarrollo, haga clic en el disparador S3 desde el panel del diseñador y asegúrese de que esté habilitado (es posible que deba guardar la lambda después de realizar este cambio)

Eso es todo, pero tenga en cuenta que se lanzará una excepción si el rastreador ya se está ejecutando, por lo que querrá manejar eso si tiene cargas frecuentes o rastreos largos. Consulte: https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-crawler-crawling.html#aws-glue-api-crawler-crawling-StartCrawler

Editar:

Esto me ayudó con el manejo de excepciones (de AWS Glue): https://github.com/boto/boto3/issues/1606#issuecomment-401423567

over 4 years ago · Santiago Trujillo Relatório

0

No, actualmente no existe una forma directa de invocar un rastreador de AWS Glue en respuesta a una carga en un depósito de S3. Las notificaciones de eventos de S3 solo se pueden enviar a:

  • redes sociales
  • SQS
  • lambda

Sin embargo, sería trivial escribir un pequeño fragmento de código Lambda para invocar mediante programación un rastreador de Glue utilizando el SDK del lenguaje correspondiente.

over 4 years ago · Santiago Trujillo Relatório

0

ingrese la descripción de la imagen aquíAquí hay una guía paso a paso (enlace a continuación) para una arquitectura similar. (Consulte la imagen de arriba para ver la arquitectura)

https://wellarchitechedlabs.com/Cost/Cost_and_Usage_Analysis/300_Automated_CUR_Updates_and_Ingestion/Lab_Guide.html

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda