apoc.export.arrow.all

过程

apoc.export.arrow.all(file STRING, config MAP<STRING, ANY>) - 将整个数据库导出为 arrow 文件。

在多线程环境下运行此过程被认为是不安全的。因此,它不受并行运行时(于 Neo4j 5.13 引入)的支持。更多信息,请参阅 Cypher 手册 → 并行运行时

签名

apoc.export.arrow.all(file :: STRING, config = {} :: 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)

输入参数

名称 类型 默认

file

STRING

null

config

MAP

null

输出参数

名称 类型

file

STRING

source

STRING

format

STRING

节点

INTEGER(整数)

relationships

INTEGER(整数)

属性

INTEGER(整数)

time

INTEGER(整数)

rows

INTEGER(整数)

batchSize

INTEGER(整数)

batches

INTEGER(整数)

done

布尔值 (BOOLEAN)

data

STRING

配置参数

该过程支持以下配置参数

表 1. 配置参数
名称 (name) type 默认 description(描述)

batchSize

整数

2000

ArrowStreamWriter 的批处理大小

使用示例

该过程以 Arrow 文件格式导出数据,其结构如下: - <id>:节点 ID - <labels>:标签列表 - <source.id>:源节点 ID(针对关系) - <target.id>:目标节点 ID(针对关系) - <type>:关系类型 - 节点和关系的属性列表,以表格形式扁平化展示

因此,对于以下查询

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 {age:12}),(d:Another {foo: 'bar'})

使用此查询

CALL apoc.export.arrow.all('my_file.arrow') YIELD file, source, format,
    nodes, relationships, properties,
    time, batchSize,
    batches, done, data

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

  • <id>

  • <labels>

  • <source.id>

  • <target.id>

  • <type>

  • 名称 (name)

  • age

  • male

  • kids

  • born

  • place

  • since

  • bffSince

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