

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
<a name="aws-glue-api-crawler-pyspark-extensions-dynamic-frame-reader"></a>

##  - metodi -
<a name="aws-glue-api-crawler-pyspark-extensions-dynamic-frame-reader-_methods"></a>
+ [\_\_init\_\_](#aws-glue-api-crawler-pyspark-extensions-dynamic-frame-reader-__init__)
+ [from\_rdd](#aws-glue-api-crawler-pyspark-extensions-dynamic-frame-reader-from_rdd)
+ [from\_options](#aws-glue-api-crawler-pyspark-extensions-dynamic-frame-reader-from_options)
+ [from\_catalog](#aws-glue-api-crawler-pyspark-extensions-dynamic-frame-reader-from_catalog)

## \_\_init\_\_
<a name="aws-glue-api-crawler-pyspark-extensions-dynamic-frame-reader-__init__"></a>

**`__init__(glue_context)`**
+ `glue_context`: il [GlueContext classe](aws-glue-api-crawler-pyspark-extensions-glue-context.md) da usare.

## from\_rdd
<a name="aws-glue-api-crawler-pyspark-extensions-dynamic-frame-reader-from_rdd"></a>

**`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
<a name="aws-glue-api-crawler-pyspark-extensions-dynamic-frame-reader-from_options"></a>

**`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 `s3`, `mysql`, `postgresql`, `redshift`, `sqlserver`, `oracle`, `dynamodb` 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](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-connect.html). Per un `connection_type` di `s3`, i percorsi Amazon S3 sono definiti in una matrice.

  ```
  connection_options = {"paths": [ "{{s3://amzn-s3-demo-bucket/object_a}}", "{{s3://amzn-s3-demo-bucket/object_b}}"]}
  ```

  Per le connessioni JDBC, diverse proprietà devono essere definite. Il nome del database deve fare parte dell'URL. Può 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 Gestione dei segreti AWS 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](run-jdbc-parallel-read-job.md). 
+ `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. Consultare [Opzioni del formato dati per input e output in AWS Glue per Spark](aws-glue-programming-etl-format.md) per informazioni sui formati supportati.
+ `format_options`: opzioni di formato per il formato specificato. Consultare [Opzioni del formato dati per input e output in AWS Glue per Spark](aws-glue-programming-etl-format.md) 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](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-partitions.html#aws-glue-programming-etl-partitions-pushdowns).

## from\_catalog
<a name="aws-glue-api-crawler-pyspark-extensions-dynamic-frame-reader-from_catalog"></a>

**`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](aws-glue-programming-etl-partitions.md#aws-glue-programming-etl-partitions-pushdowns).
+ `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](run-jdbc-parallel-read-job.md). 
  + 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, consultare la pagina relativa agli [indici di partizionamento di AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/partition-indexes.html). Tenere 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](aws-glue-programming-etl-partitions.md). 