推荐答案
neo4j-admin import \
--nodes=import/nodes.csv \
--relationships=import/relationships.csv \
--id-type=STRING \
--database=my_database \
--delimiter="," \
--array-delimiter=";" \
--ignore-missing-nodes=true本题详细解读
1. 命令结构
neo4j-admin import 是 Neo4j 提供的一个命令行工具,用于将大规模数据导入到 Neo4j 数据库中。该工具支持从 CSV 文件中导入节点和关系数据。
2. 参数说明
--nodes=import/nodes.csv:指定包含节点数据的 CSV 文件路径。可以指定多个--nodes参数来导入多个节点文件。--relationships=import/relationships.csv:指定包含关系数据的 CSV 文件路径。可以指定多个--relationships参数来导入多个关系文件。--id-type=STRING:指定节点 ID 的类型。可以是STRING或INTEGER,默认为STRING。--database=my_database:指定要导入数据的数据库名称。如果数据库不存在,Neo4j 会自动创建。--delimiter=",":指定 CSV 文件中的字段分隔符,默认为逗号(,)。--array-delimiter=";":指定 CSV 文件中数组类型字段的分隔符,默认为分号(;)。--ignore-missing-nodes=true:如果设置为true,则在导入关系时忽略缺失的节点。默认为false。
3. CSV 文件格式
- 节点文件:每一行代表一个节点,通常包含
:ID列来指定节点的唯一标识符,以及其他属性列。 - 关系文件:每一行代表一个关系,通常包含
:START_ID和:END_ID列来指定关系的起始节点和结束节点,以及其他属性列。
4. 示例
假设你有以下两个 CSV 文件:
nodes.csv
:ID,name,:LABEL 1,Alice,Person 2,Bob,Person
relationships.csv
:START_ID,:END_ID,:TYPE 1,2,KNOWS
使用上述命令导入数据后,Neo4j 数据库中将会创建两个节点和一个关系。
5. 注意事项
- 导入数据时,Neo4j 数据库必须处于停止状态。
- 导入工具不支持增量导入,每次导入都会覆盖目标数据库中的数据。
- 确保 CSV 文件的路径和格式正确,否则导入可能会失败。