apoc.export.arrow.query

在 APOC 2025.06 版本中,此过程已被迁移至不受支持的 APOC Extended 库。这意味着如果您使用的是 APOC 2025.06 或更高版本,该过程在 Cypher 25 中不可用,但仍可与 Cypher 5 一起使用。有关更多信息,请参阅 APOC 和 Cypher 版本

此过程不建议在多线程中运行。因此,并行运行时(于 Neo4j 5.13 引入)不支持该过程。有关更多信息,请参阅 Cypher 手册 → 并行运行时

详细信息

语法

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

描述

将给定 Cypher 查询的结果导出为 Arrow 文件。

输入参数

名称

类型

描述

file

STRING

要导出数据的文件名。

query

STRING

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

config

MAP

{ batchSize = 2000 :: INTEGER }。默认值为:{}

返回参数

名称

类型

描述

file

STRING

数据导出到的文件名。

source

STRING

导出数据的摘要。

format

STRING

文件的导出格式。

节点

INTEGER(整数)

已导出节点的数量。

relationships

INTEGER(整数)

已导出关系的数量。

属性

INTEGER(整数)

已导出属性的数量。

time

INTEGER(整数)

导出所花费的时间。

rows

INTEGER(整数)

返回的行数。

batchSize

INTEGER(整数)

导出过程执行的批处理大小。

batches

INTEGER(整数)

导出过程执行的批次数。

done

布尔值 (BOOLEAN)

导出是否成功执行。

data

ANY

导出返回的数据。

用法示例

假设我们有以下数据集

CREATE (f:User {name:'Adam',age:42,male:true,kids:['Sam','Anna','Grace'], born:localdatetime('2015185T19:32:24'), place:point({latitude: 13.1, longitude: 33.46789})})-[:KNOWS {since: 1993, bffSince: duration('P5M1.5D')}]->(b:User {name:'Jim',age:42}),(c:User {name: 'John', age:12}),(d:Another {foo: 'bar'})

使用此查询

CALL apoc.export.arrow.query('my_file.arrow', 'MATCH (n:User) RETURN count(n) as count, n.name as name') YIELD file, source, format,
    nodes, relationships, properties,
    time, rows, batchSize,
    batches, done, data

我们将得到一个具有以下列的 Arrow 文件

  • count

  • 名称 (name)