neptune.read () - Amazon Neptune
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

neptune.read ()

Neptune 支持从亚马逊 S3 读取数据,然后使用这些数据运行 OpenCypher 查询(读取、插入、更新)的CALL过程neptune.read。该过程将文件中的每一行作为声明的结果变量行生成。它使用调用者的 IAM 凭证来访问 Amazon S3 中的数据。管理 neptune.read () 的权限要设置权限,请参阅。Amazon S3 存储桶的区域必须与实例所在的区域相同。 Amazon 目前,不支持跨区域读取。

语法

CALL neptune.read( { source: "string", format: "parquet/csv", concurrency: 10 } ) YIELD row ...
输入
  • 来源(必填)-单个对象的 Amazon S3 URI。不支持多个对象的 Amazon S3 前缀。

  • 格式(必填)-parquetcsv受支持。

  • 并发(可选)-类型:0 或更大的整数。默认值:0。指定用于读取文件的线程数。如果该值为 0,则将使用资源允许的最大线程数。对于 Parquet,建议将其设置为多个行组。

输出

neptune.read 返回:

  • -类型:地图

    • 文件中的每一行,其中键是列,值是每列中的数据。

    • 您可以像访问属性一样访问每列的数据 (row.col)。

neptune.read 的最佳实践 ()

Neptune S3 读取操作可能占用大量内存。请使用非常适合生产工作负载的实例类型,如为 Amazon Neptune 选择实例类型中所述。

neptune.read()请求的内存使用和性能会受到多种因素的影响,例如文件大小、列数、行数和文件格式。根据结构的不同,小文件(例如,100 MB 或更小的 CSV 文件、20MB 或以下的 Parquet 文件)可能在大多数适合生产的实例类型上可靠地运行,而较大的文件可能需要较小的实例类型无法提供的大量内存。

在测试此功能时,建议从小文件开始,然后逐渐扩展,以确保您的读取工作负载可以适应您的实例大小。如果您发现neptune.read()请求导致 out-of-memory异常或实例重启,请考虑将文件拆分为较小的块、降低文件复杂性或升级到更大的实例类型。