温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎样导入csv到neo4j

发布时间:2026-09-09 05:08:25 来源:亿速云 阅读:103 作者:小樊 栏目:数据库

把 CSV 导入 Neo4j 常用有 三种方式,从简单到专业依次是:


一、使用 Neo4j Browser(最简单,适合小数据)

1. 把 CSV 放到 import 目录

先找到 Neo4j 的 import 目录(默认在):

  • 桌面版:Neo4j/default.graphdb/import
  • 服务器版:<neo4j-home>/import

例如文件:

import/person.csv

2. 使用 LOAD CSV

LOAD CSV WITH HEADERS FROM "file:///person.csv" AS row
CREATE (:Person {
  id: row.id,
  name: row.name,
  age: toInteger(row.age)
})

✅ 适合:

  • 数据量 < 10 万
  • 一次性导入

二、使用 neo4j-admin import(最快,适合大数据)

⚠️ 只能在数据库为空时使用

1. 准备 CSV

  • 节点文件:persons.csv
  • 关系文件:relations.csv

2. 执行命令

neo4j-admin import \
  --nodes=import/persons.csv \
  --relationships=import/relations.csv

✅ 适合:

  • 百万级以上数据
  • 初始化数据库

三、使用 Python(最灵活)

示例(neo4j driver)

from neo4j import GraphDatabase

driver = GraphDatabase.driver("bolt://localhost:7687", auth=("neo4j", "password"))

with driver.session() as session:
    with open("person.csv") as f:
        next(f)
        for line in f:
            id, name, age = line.strip().split(",")
            session.run(
                "CREATE (:Person {id:$id, name:$name, age:$age})",
                id=id, name=name, age=int(age)
            )

✅ 适合:

  • 有复杂清洗逻辑
  • 增量导入

四、常见坑提醒

  • CSV 必须是 UTF-8
  • 数值类型要用 toInteger / toFloat
  • 大文件加 CALL db.index.fulltext.createNodeIndex
  • 导入前先建索引提升性能

如果你愿意,可以告诉我:

  • CSV 结构(节点 / 关系)
  • 数据量
  • Neo4j 版本

我可以直接帮你写 完整导入 Cypher 或命令。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手