Come posso eseguire un processo AWS Glue su una partizione specifica in Amazon S3?

2 minuti di lettura
0

Desidero eseguire un processo AWS Glue su una partizione specifica in una posizione Amazon Simple Storage Service (Amazon S3).

Breve descrizione

Per filtrare le partizioni nel catalogo dati AWS Glue, è necessario utilizzare un predicato pushdown. A differenza delle trasformazioni del filtro, i predicati pushdown consentono di filtrare le partizioni senza bisogno di elencare e leggere tutti i file nel set di dati.

Risoluzione

Crea un processo AWS Glue, quindi specifica il predicato pushdown in DynamicFrame. Nell'esempio seguente, il processo elabora i dati solo nella partizione s3://awsexamplebucket/product_category=Video:

datasource0 = glueContext.create_dynamic_frame.from_catalog(database = "testdata", table_name = "sampletable", transformation_ctx = "datasource0",push_down_predicate = "(product_category == 'Video')")

Nell'esempio seguente, il predicato pushdown filtra per data. Il processo elabora i dati solo nella partizione s3://awsexamplebucket/year=2019/month=08/day=02:

datasource0 = glueContext.create_dynamic_frame.from_catalog(database = "testdata", table_name = "sampletable", transformation_ctx = "datasource0",push_down_predicate = "(year == '2019' and month == '08' and day == '02')")

Nell'esempio seguente, il predicato pushdown filtra per data le partizioni in stile non Hive. Il processo elabora i dati solo nella partizione s3://awsexamplebucket/2019/07/03:

datasource0 = glueContext.create_dynamic_frame.from_catalog(database = "testdata", table_name = "sampletable", transformation_ctx = "datasource0",push_down_predicate ="(partition_0 == '2019' and partition_1 == '07' and partition_2 == '03')" )

AWS UFFICIALE
AWS UFFICIALEAggiornata un anno fa