本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
neptune.read()
Neptune 支援從 Amazon S3 neptune.read讀取資料,然後使用資料執行 openCypher 查詢 (讀取、插入、更新) CALL的程序。程序會將 檔案中的每一列產生為宣告的結果變數列。它使用發起人的 IAM 登入資料來存取 Amazon S3 中的資料。請參閱 管理 neptune.read() 的許可 以設定許可。Amazon S3 儲存貯 AWS 體的區域必須位於執行個體所在的相同區域。目前不支援跨區域讀取。
語法
CALL neptune.read( { source: "string", format: "parquet/csv", concurrency: 10 } ) YIELD row ...
輸入
-
來源 (必要) - Amazon S3 URI 至單一物件。不支援多個物件的 Amazon S3 字首。
-
格式 (必要) -
csv支援parquet和 。-
如需支援的 Parquet 格式詳細資訊,請參閱 支援的 Parquet 資料欄類型。
-
如需支援的 csv 格式的詳細資訊,請參閱 openCypher 資料的載入格式。
-
-
並行 (選用) - 類型:0 或更大的整數。預設:0. 指定用於讀取檔案的執行緒數目。如果值為 0,則會使用資源允許的執行緒數目上限。對於 Parquet,建議設定為多個資料列群組。
輸出
neptune.read 會傳回:
-
row - type:Map
-
檔案中的每一列,其中索引鍵是資料欄,而值是每一欄中找到的資料。
-
您可以存取每個資料欄的資料,例如屬性存取 (
row.col)。
-
neptune.read() 的最佳實務
Neptune S3 讀取操作可能會耗用記憶體。請使用非常適合生產工作負載的執行個體類型,如為 Amazon Neptune 選擇執行個體類型中所述。
neptune.read() 請求的記憶體用量和效能會受到各種因素的影響,例如檔案大小、資料欄數、資料列數和檔案格式。根據結構,小型檔案 (例如,CSV 檔案 100MB 或以下、Parquet 檔案 20MB 或以下) 可能會在大多數適合生產的執行個體類型上可靠運作,而較大的檔案可能需要較小的執行個體類型無法提供的大量記憶體。
測試此功能時,建議從小型檔案開始逐步擴展,以確保您的讀取工作負載可以適應您的執行個體大小。如果您注意到neptune.read()請求導致out-of-memory例外狀況或執行個體重新啟動,請考慮將檔案分割成較小的區塊、降低檔案複雜性,或升級至較大的執行個體類型。