DynamicFrameReader classe - AWS Glue

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

DynamicFrameReader classe

 — metodi —

__init__

__init__(glue_context)

from_rdd

from_rdd(data, name, schema=None, sampleRatio=None)

Legge un DynamicFrame da un Resilient Distributed Dataset (RDD).

  • data: il set di dati da cui leggere.

  • name: il nome da cui leggere.

  • schema: lo schema da leggere (opzionale).

  • sampleRatio: il rapporto di esempio (facoltativo).

from_options

from_options(connection_type, connection_options={}, format=None, format_options={}, transformation_ctx="")

Legge un DynamicFrame usando la connessione e il formato specificati.

  • connection_type: il tipo di connessione. I valori validi includono s3mysql,postgresql,redshift,, sqlserver oracledynamodb, e. snowflake

  • connection_options: opzioni di connessione, come tabella di database e percorso (opzionale). Per ulteriori informazioni, consulta Tipi di connessione e opzioni per ETL in AWS Glue for Spark. Per un connection_type di s3, i percorsi Amazon S3 sono definiti in una matrice.

    connection_options = {"paths": [ "s3://mybucket/object_a", "s3://mybucket/object_b"]}

    Per le connessioni JDBC, diverse proprietà devono essere definite. Il nome del database deve fare parte dell'URL. Puoi opzionalmente essere incluso nelle opzioni di connessione.

    avvertimento

    Si consiglia di non archiviare le password nello script. Valuta la possibilità boto3 di utilizzarli per recuperarli da AWS Secrets Manager o dal AWS Glue Data Catalog.

    connection_options = {"url": "jdbc-url/database", "user": "username", "password": passwordVariable,"dbtable": "table-name", "redshiftTmpDir": "s3-tempdir-path"}

    Per una connessione JDBC che esegue letture parallele, è possibile impostare l'opzione hashfield. Ad esempio:

    connection_options = {"url": "jdbc-url/database", "user": "username", "password": passwordVariable,"dbtable": "table-name", "redshiftTmpDir": "s3-tempdir-path" , "hashfield": "month"}

    Per ulteriori informazioni, consulta Lettura in parallelo dalle tabelle JDBC.

  • format: una specifica del formato (facoltativa). Viene utilizzato per un servizio Amazon Simple Storage Service (Amazon S3) o una connessione AWS Glue che supporta più formati. Consulta Opzioni del formato dati per input e output in AWS Glue per Spark per informazioni sui formati supportati.

  • format_options: opzioni di formato per il formato specificato. Consulta Opzioni del formato dati per input e output in AWS Glue per Spark per informazioni sui formati supportati.

  • transformation_ctx: il contesto di trasformazione da usare (opzionale).

  • push_down_predicate: filtra le partizioni senza dover elencare e leggere tutti i file nel set di dati. Per ulteriori informazioni, consulta Prefiltraggio con i predicati pushdown.

from_catalog

from_catalog(database, table_name, redshift_tmp_dir="", transformation_ctx="", push_down_predicate="", additional_options={})

Legge un DynamicFrame utilizzando il nome della tabella e il namespace del catalogo specificati.

  • database: il database da cui leggere.

  • table_name: il nome della tabella da cui leggere.

  • redshift_tmp_dir: una directory Amazon Redshift temporanea da utilizzare (facoltativa se non si leggono i dati da Redshift).

  • transformation_ctx: il contesto di trasformazione da usare (opzionale).

  • push_down_predicate: filtra le partizioni senza dover elencare e leggere tutti i file nel set di dati. Per ulteriori informazioni, consulta Prefiltraggio con i predicati pushdown.

  • additional_options: opzioni aggiuntive fornite a AWS Glue.

    • Per usare una connessione JDBC che esegue letture parallele, è possibile impostare l'opzione hashfield, hashexpression o hashpartitions. Ad esempio:

      additional_options = {"hashfield": "month"}

      Per ulteriori informazioni, consulta Lettura in parallelo dalle tabelle JDBC.

    • Per passare un'espressione di catalogo per filtrare in base alle colonne di indice, vedi l'opzione catalogPartitionPredicate.

      catalogPartitionPredicate — È possibile passare un'espressione di catalogo per filtrare in base alle colonne di indice. Questo esegue il push down del filtro sul lato server. Per ulteriori informazioni, consulta la pagina relativa agli indici di partizionamento di AWS Glue. Tieni presente che push_down_predicate e catalogPartitionPredicate usano sintassi diverse. Il primo utilizza la sintassi standard Spark SQL e il secondo utilizza il parser JSQL.

      Per ulteriori informazioni, consulta Gestione delle partizioni per l'output ETL in AWS Glue.