Cleaning a bucket with purge_s3_path with Glue console.

0

With the Glue Console (Glue 3.0 - python and spark), I'm need to overwrite the data of an S3 bucket in a automated daily process. I tried with the glueContext.purge_s3_path( "s3://bucket-to-clean-path/", { "retentionPeriod": 1, "manifestFilePath": "s3://bucket-for-manifest-path/" } ) function, but it is not cleaning the bucket before sending the data.

The idea is to create a process to transform some data, send it to the bucket, sent it to QS throught a manifest and repeat the process daily. All the script works as it should, it is just that the bucket keeps the data from the previous runs.

Does someone knows what could be causing this problem?

Edit: I tried changing the retention period to one hour (several hours after the data was upload), but it still doesn't remove the files. If I remove the script non relate with emptying the bucket, the job allways takes one minute.

In the manifest appears a partition in success and another in failure, but none of them are from the files that should be removed. Example of the partition: run-1639727067782-part-r-00000

  • The problem was due to lack of permissions for deleting objets in the role created for the jobs. Once revised the roles permissions, the query worked correctly

  • Sorry to revive this old thread. Could you help me know how did you setup the permission?

    Thanks a lot, Haoran

preguntada hace 2 años5370 visualizaciones
2 Respuestas
0
Respuesta aceptada

Under options there are two parms. One is retention period and the other is manifest file. The retention period is 7 days by default and manifest file path might show what files are deleted successfully and which ones failed. Hope that helps. https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-crawler-pyspark-extensions-glue-context.html

respondido hace 2 años
  • Thank you for your help, it gave me a hint of should I look. Unfortunatelly, I wasn't able to fix it yet. It seems like none of the files appears in the manifest folder, just some partitions that I'm not sure of what they represent.

0

Hopefully you worked this out at the time, but I just also hit this issue. It appears you have to over-right the retention period set to 0 to delete immediately.

glueContext.purge_s3_path("s3://my_bucket/path_to_purge/", options={"retentionPeriod": 0}, transformation_ctx="")
Dcoder
respondido hace un año

No has iniciado sesión. Iniciar sesión para publicar una respuesta.

Una buena respuesta responde claramente a la pregunta, proporciona comentarios constructivos y fomenta el crecimiento profesional en la persona que hace la pregunta.

Pautas para responder preguntas