将数据导出到 S3

要导出到 S3,需要下载 APOC AWS 依赖 jar 包并将其复制到插件目录 <NEO4J_HOME>/plugins 中。

AWS 依赖 jar APOC 版本

apoc-aws-dependencies-5.15.jar

5.15

apoc-aws-dependencies-5.14.jar

5.14

apoc-aws-dependencies-5.13.jar

5.13

apoc-aws-dependencies-5.12.jar

5.12

apoc-aws-dependencies-5.11.jar

5.11

apoc-aws-dependencies-5.10.jar

5.10

APOC AWS 依赖 jar 由 APOC 扩展库维护。Neo4j 不支持此库。

将 jar 包复制到插件目录后,需要重启数据库。

默认情况下,导出到 S3 是禁用的。我们可以通过在 apoc.conf 中设置以下属性来启用它:

apoc.conf
apoc.export.file.enabled=true

如果我们在未先设置此属性的情况下尝试使用任何导出过程,将收到以下错误消息:

调用过程失败:原因:java.lang.RuntimeException: 未启用文件导出,请在 apoc.conf 中设置 apoc.export.file.enabled=true。否则,如果您在没有文件系统访问权限的云环境中运行,可以使用 {stream:true} 配置并将 null 作为 'file' 参数,将导出流式传输回客户端。

使用 S3 协议

S3 URL 必须采用以下格式:

  • s3://accessKey:secretKey[:sessionToken]@endpoint:port/bucket/key (其中 sessionToken 是可选的)或

  • s3://endpoint:port/bucket/key?accessKey=accessKey&secretKey=secretKey[&sessionToken=sessionToken] (其中 sessionToken 是可选的)或

  • 如果 accessKey、secretKey 和可选的 sessionToken 在环境变量中提供,则为 s3://endpoint:port/bucket/key

内存要求

为了支持大文件上传,S3 上传工具一次最多可能使用 2.25 GB 内存。实际使用量将取决于上传文件的大小,但最大使用量为 2.25 GB。