

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用查詢將資料載入 Amazon Neptune
<a name="load-data-via-query"></a>

Neptune 支援直接透過查詢語言操作寫入資料。您可以使用 openCypher、`INSERT`SPARQL 或 `mergeE()` Gremlin `CREATE``MERGE`中的 `mergeV()`和 等標準寫入操作來新增或修改圖形中的資料。這些操作適用於增量更新和交易寫入。

若要從 Amazon S3 載入資料，請[使用 Amazon Neptune 大量載入器擷取資料](bulk-load.md)針對需要最佳化效能的大型資料集使用 。對於一或多個 Amazon S3 檔案中的較小資料集，您可以使用查詢型載入函數直接在查詢中讀取和處理資料。

可使用下列查詢型載入函數：

## openCypher：neptune.read()
<a name="opencypher-neptune-read"></a>

`neptune.read()` 函數會在`CALL`子查詢中從 Amazon S3 讀取 CSV 或 Parquet 檔案，讓您在查詢時處理和載入資料。

```
CALL neptune.read({
  source: "s3://bucket/data.csv",
  format: "csv"
})
YIELD row
CREATE (n:Person {id: row.id, name: row.name})
```

如需完整的文件，請參閱 [neptune.read()](access-graph-opencypher-21-extensions-s3-read.md)。

## SPARQL：LOAD 和 UNLOAD
<a name="sparql-load-unload"></a>

SPARQL `LOAD`操作會將 RDF 資料從 URI 匯入具名圖形。 會將資料從圖形`UNLOAD`匯出至 Amazon S3。

```
LOAD <s3://bucket/data.ttl> INTO GRAPH <http://example.org/graph>
```

如需完整的文件，請參閱 [使用 SPARQL UPDATE LOAD 將資料匯入至 Neptune](sparql-api-reference-update-load.md)。

## Gremlin：io() 步驟
<a name="gremlin-io-step"></a>

您也可以使用 Gremlin `g.io(URL).read()`的步驟，以 [GraphML](https://tinkerpop.apache.org/docs/current/dev/io/#graphml) (XML 格式）、[GraphSON](https://tinkerpop.apache.org/docs/current/dev/io/#graphson) (JSON 格式） 和其他格式讀取資料檔案。

```
g.io("s3://bucket/data.graphml").read().iterate()
```

 如需詳細資訊，請參閱 [TinkerPop 文件](https://tinkerpop.apache.org/docs/current/reference/#io-step)。