|| apoc.export.json.query - APOC 核心文档 - Neo4j 文档

apoc.export.json.query

此过程不被认为在多线程环境下运行是安全的。因此,并行运行时不支持此过程。欲了解更多信息,请参阅 Cypher 手册 → 并行运行时

详细信息

语法

apoc.export.json.query(statement, file [, config ]) :: (file, source, format, nodes, relationships, properties, time, rows, batchSize, batches, done, data)

描述

将 Cypher 语句的结果导出到提供的 JSON 文件。

输入参数

名称

类型

描述

statement

STRING

用于收集导出数据的查询。

file

STRING

数据将导出到的文件名称。

config

MAP

{ stream = false :: BOOLEAN, batchSize = 20000 :: INTEGER, bulkImport = false :: BOOLEAN, timeoutSeconds = 100 :: INTEGER, compression = 'None' :: STRING, charset = 'UTF_8' :: STRING, sampling = false :: BOOLEAN, samplingConfig :: MAP }。默认值为:{}

返回参数

名称

类型

描述

file

STRING

数据导出的文件名称。

source

STRING

导出数据的摘要。

format

STRING

文件导出的格式。

nodes

INTEGER

导出节点的数量。

relationships

INTEGER

导出关系的数量。

properties

INTEGER

导出属性的数量。

time

INTEGER

导出持续时间。

rows

INTEGER

返回的行数。

batchSize

INTEGER

导出运行时批处理的大小。

batches

INTEGER

导出运行时批处理的数量。

done

BOOLEAN

导出是否成功运行。

data

ANY

导出返回的数据。

配置参数

该过程支持以下配置参数

配置参数
名称 类型 默认值 描述

writeNodeProperties

BOOLEAN

true

如果为 true,则也导出属性。

stream

BOOLEAN

false

将 JSON 直接流式传输到客户端的 data 字段中。

导出到文件

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

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

有关访问 apoc.conf 的更多信息,请参阅 配置选项

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

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

导出文件写入到 import 目录,该目录由 server.directories.import 属性定义。这意味着我们提供的任何文件路径都是相对于此目录的。如果尝试写入绝对路径,例如 /tmp/filename,将收到类似以下内容的错误消息

调用过程失败:原因:java.io.FileNotFoundException:/path/to/neo4j/import/tmp/fileName (没有此类文件或目录)

我们可以通过在 apoc.conf 中设置以下属性来启用写入文件系统上的任意位置

apoc.conf
apoc.import.file.use_neo4j_config=false

现在 Neo4j 将能够写入文件系统上的任意位置,因此在设置此属性之前请务必确认这是您的意图。

流式导出

如果我们不想导出到文件,可以通过将文件名为 null 并提供 stream:true 配置来将结果流式传输回 data 列。

© . This site is unofficial and not affiliated with Neo4j, Inc.