

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à.

# neptune.read ()
<a name="access-graph-opencypher-21-extensions-s3-read"></a>

 Neptune supporta `CALL` una `neptune.read` procedura per leggere i dati da Amazon S3 e quindi eseguire una query OpenCypher (lettura, inserimento, aggiornamento) utilizzando i dati. La procedura restituisce ogni riga del file come riga di variabile di risultato dichiarata. Utilizza le credenziali IAM del chiamante per accedere ai dati in Amazon S3. Vedi [Gestione delle autorizzazioni per neptune.read ()](access-graph-opencypher-21-extensions-s3-read-permissions.md) per configurare le autorizzazioni. La AWS regione del bucket Amazon S3 deve trovarsi nella stessa regione in cui si trova l'istanza. Attualmente, le letture tra regioni non sono supportate. 

 **Sintassi** 

```
CALL neptune.read(
  {
    source: "string",
    format: "parquet/csv",
    concurrency: 10
  }
)
YIELD row
...
```

**Input**
+  **source** (obbligatorio): URI Amazon S3 per un **singolo** oggetto. Il prefisso Amazon S3 per più oggetti non è supportato. 
+  **formato** (obbligatorio) - `parquet` e `csv` sono supportati. 
  +  Maggiori dettagli sul formato Parquet supportato sono disponibili in[Tipi di colonne Parquet supportati](access-graph-opencypher-21-extensions-s3-read-parquet.md#access-graph-opencypher-21-extensions-s3-read-parquet-column-types). 
  +  Per ulteriori informazioni sul formato csv supportato, consulta[Formato dati di caricamento Gremlin](bulk-load-tutorial-format-gremlin.md). 
+  **concurrency** (opzionale): digitare un numero intero pari o superiore a 0. Impostazione predefinita: 0. Speciifica il numero di thread da utilizzare per leggere il file. Se il valore è 0, verrà utilizzato il numero massimo di thread consentito dalla risorsa. Per Parquet, si consiglia di impostare un numero di gruppi di righe. 

**Output**

 Il neptune.read restituisce: 
+  **riga** - Tipo:map 
  +  Ogni riga del file, dove le chiavi sono le colonne e i valori sono i dati trovati in ogni colonna. 
  +  Puoi accedere ai dati di ogni colonna come una proprietà access (`row.col`). 

## Le migliori pratiche per neptune.read ()
<a name="access-graph-opencypher-21-extensions-s3-read-best-practices"></a>

Le operazioni di lettura di Neptune S3 possono richiedere molta memoria. Utilizza tipi di istanze adatti ai carichi di lavoro di produzione, come indicato in [Scelta dei tipi di istanze per Amazon Neptune](instance-types.md).

L'utilizzo della memoria e le prestazioni delle `neptune.read()` richieste sono influenzati da una serie di fattori come la dimensione del file, il numero di colonne, il numero di righe e il formato del file. A seconda della struttura, i file di piccole dimensioni (ad esempio, file CSV di dimensioni pari o inferiori a 100 MB, file Parquet di dimensioni pari o inferiori a 20 MB) possono funzionare in modo affidabile sulla maggior parte dei tipi di istanze adatti alla produzione, mentre i file più grandi possono richiedere una notevole quantità di memoria che i tipi di istanze più piccoli non sono in grado di fornire.

Durante il test di questa funzionalità, si consiglia di iniziare con file di piccole dimensioni e di ridimensionarla gradualmente per garantire che il carico di lavoro di lettura possa essere adattato alle dimensioni dell'istanza. Se notate che `neptune.read()` le richieste portano a out-of-memory eccezioni o al riavvio dell'istanza, prendete in considerazione la possibilità di suddividere i file in blocchi più piccoli, ridurre la complessità dei file o passare a tipi di istanze più grandi.