neo4j 使用之数据导入初探

neo4j创建数据库及导入csv文件内容详解 详细讲解neo4j导入数据的结构及知识图谱展示 阅读详情

平台:windows10
neo4j下载安装(较为简单,不做赘述)参考:
(https://blog.youkuaiyun.com/qq_41510429/article/details/103922515)
(注:neo4j是用Java语言编写的图形数据库,运行时需要启动JVM进程,因此,需安装JAVA SE的JDK,且注意安装版本与所要安装neo4j版本的对应,不然后面启动neo4可能报错)

数据导入:

一、通过csv文件导入:

1、待导入数据文件置于neo4j安装路径下(如下所示):
在这里插入图片描述
在这里插入图片描述
2、导入实体:

load csv from "file:/index_wh.csv" as line 
create(n:IndexWh{id:line[0],name:line[2],code:line[1],displayname:line[3],description:line[4]}) 
return n

3、导入关系:

LOAD CSV FROM "file:/index_rel.csv" AS row
MATCH (p:IndexWh),(o:IndexWh)
WHERE p.id = row[0] and o.id=row[1]
CREATE (p)-[r:IndexRel{type:row[2]}]->(o);

二、链接RDMS关系数据库导入

前提:
1、apoc 配置
(1)下载对应版本的apoc jar包(版本不对会报错!)
从github apoc下载对应版本的apoc jar包,并放到 $NEO4J_HOME/plugins 目录下,如下所示:
在这里插入图片描述
(2)修改 neo4j.conf 配置文件
在 neo4j.conf 最后一行添加

dbms.security.procedures.unrestricted=apoc.*
apoc.import.file.enabled=true

(3)重启neo4j,打开http://localhost:7474/browser/,输入

return apoc.version()

返回apoc版本号,说明配置成功
2、数据库驱动配置(以mysql和postgresql为例):
下载对应驱动(mysql),并放到 $NEO4J_HOME/plugins 目录下

关系数据库连接实现:
1、连接MySql:
(1)连接MySql:
CALL apoc.load.driver(“com.mysql.cj.jdbc.Driver”);
(2)查询:
查看数据个数

with "jdbc:mysql://localhost:3306/gz_db?serverTimezone=GMT&user=root&password=123456" as url
CALL apoc.load.jdbc(url, "planning_class_big") YIELD row
RETURN count(*);

(3)查看数据详情

with "jdbc:mysql://localhost:3306/gz_db?serverTimezone=GMT&user=root&password=123456" as url,
     "select id, name,keywords from planning_class_big" as sql
CALL apoc.load.jdbc(url, sql, []) YIELD row
RETURN row LIMIT 10;

(4)导入表数据到neo4j:

CALL apoc.load.jdbc(
 'jdbc:mysql://localhost:3306/gz_db?user=root&password=123456&useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai',
 'select * from planning_class_big'
)YIELD row
CREATE(p:PlanningBig{id:toInteger(row.id),name:row.name,keywords:row.keywords})

2、连接postgresql:
(1)数据库连接

CALL apoc.load.driver("org.postgresql.Driver");

(2)查看数据个数示例(同mysql):

with "jdbc:{jdbcUrl}?serverTimezone=GMT&user={usr}&password={password}" as url
CALL apoc.load.jdbc(url, "tablename") YIELD row
RETURN count(*);

(3)导入数据到neo4j创建实体:

with "jdbc:{jdbcUrl}?serverTimezone=GMT&user={usr}&password={password}" as url
CALL apoc.load.jdbc(url, "topiccatalog") YIELD row
CREATE(t:TopicCatalog{id:toInteger(row.id),name:row.name,type:row.type})

(4)导入数据到neo4j创建关系:
在这里插入图片描述
以上图所示为例,content1/2中内容为相关节点id号,rela为节点间关系,则将表中关系导入图数据库语句为:

with "jdbc:{jdbcUrl}?serverTimezone=GMT&user={usr}&password={password}" as url,"select * from table" as sql
CALL apoc.load.jdbc(url, sql,[]) YIELD row
MATCH (p:Label1),(o:Label2)
WHERE p.id = row.content1 and o.id=row.content2
CREATE (p)-[r:RelData{type:row.rela}]->(o);
neo4j导入protege的owl文件 本文根据某乎某导入文章,细节化得到 特:1. 用的是protege的owl文件 2.对比两种导入方式(可直接跳到第三步) 一.原文链接: 某乎如何导入:[如何将owl/RDF文件导入neo4j](https://zhuanlan.zhihu.com/p/347501642) 二. 原文中两种导入方法: 三. 方法对比(protege的owl): 方法1流程:①protege导出RDF/XML格式的owl文件: ②neo4j输入命令: semantics.liteOntoImport('file:/// 阅读详情

相关推荐

Neo4j:使用neo4j-import导入CSV数据

neo4j-import 1.使用条件 关闭neo4j 无法在原有数据库添加,只能重新生成一个数据库 导入文件格式为csv 2.参数 --into:数据库名称 --bad-tolerance:能容忍的错误数据条数(即超过指定条数程序直接挂掉),默认1000 --multiline-fields:是否允许多行插入(即有些换行的数据也可读取) --nodes:插入节点 --relat...

爱米粒的博客 3万+

Neo4j导入数据的5种方式详解配图

一、前言 Neo4j导入数据的方式有: 使用LOAD CSV导入数据 使用APOC导入数据 使用编程语言(Java,python,js,C#,Go)导入数据 使用neo4j-admin工具导入数据 使用应用导入数据 使用ETL工具导入数据 具体选择哪种导入方法取决于: 数据量大小 使用者对导入方法的轻松度感受 有多少时间来导入 各种导入方法的精力-效率图像如下图: 横坐标表示导入的效率,LOAD CSV导入比较慢,而neo4j-admin工具导入比较快。 纵坐标表示人耗费的精力,LOAD CSV比较

qianmojl的博客 3万+

CSV文件导入Neo4j数据库

之前创建Neo4j数据库是直接读取txt文件,在代码中创建节点和边导入数据库的。今天下午,师妹跟我说还可以直接导入csv文件,我一想这也是一个不错的方法啊,就和她开始研究了起来。中间遇到了很多问题,但都一一解决了,oh yes,赶快记录一下以免忘记^.^!     低版本的了neo4j中好像不支持neo4j-import,所以这里用的版本是3.3.1,安装方法就自行百度吧~     本例中用到

swy520的博客 2万+

4.2、从RDBMS向Neo4j导数据【专题四:数据处理】

1、目标  介绍将从PostgreSQL(RDBMS)导出的数据导入Neo4j(GraphDB),即将关系数据库模式建模,使之形成图。   预备知识:熟悉图模型并安装neo4j服务2、导RDBMS数据到Neo4j2.1、RDBMS数据集  用到的数据集是NorthWind dataset(点击下载),该数据库的E-R图如下: 2.2、构建图模型  当将E-R模型转换成图模型时,需要遵守如下规则:

何源浩的博客 5369

neo4j(二).使用neo4j-import导入数据及关系

背景 上节我们了解了什么是图数据库,作为研究对象的neo4j的特点,优缺点以及基本的环境搭建。 现在我们要讲存储在csv中的通话记录数据导入到neo4j中去,并且可以通过cql去查询导入的数据及关系 1.选取导入方式 neo4j的导入方式有很多,我大概总结了一下: Cypher CREATE 语句,为每一条数据写一个CREATE Cypher LOAD CSV 语句,将数据转成CSV格式,通过...

抓住流浪剑客的小YI巴 1万+

neo4j学习总结--第九课 neo4j 数据导入与导出

一、导入工具 导入CSV文件的方式: Load CSV 指令 (增量式导入的导入到原数据库总) neo4j-import 、neo4j-admin命令行工具(导入到新建的数据库中) 第三方导入工具,如batch-import (不推荐) batch-import工具下载地址:https://github.com/jexp/batch-import Neo4j命令行导入工具有两种: neo4j-import neo4j-admin import (推荐使用) 两种工具使用方式相同,...

qq_36697880的博客 1万+

实现Python将csv数据导入到Neo4j

关于CSV数据集《我是刑警》导入到Neo4j中,形成知识图谱,本文详细描述过程,实现Python与Neo4j的连接,增进交互,实现知识图谱。

小星袁 6193

csv文件导入到neo4j数据库

1、停止neo4j服务:neo4j stop 2、导入csv数据 使用的数据如http://neo4j.com/docs/stable/re03.html,包含节点文件movies、actors和关系文件roles,创建三个excel文件,分别命名为movies.xlsx、actors.xlsx、roles.xlsx,然后另存为.csv文件,注意:要修改文件的编码格式为utf-8,要不然会乱码。为...

开开_王子的博客 1万+

csv文件导入neo4j、数据批量导入neo4j

csv文件导入neo4j、数据批量导入一、数据准备阶段1.创建文件夹2.导入neo4j数据格式2.1 结点类型2.2 关系类型2.3.csv文件转换二、数据导入阶段Import文件夹导入的代码语句大功告成三、一些问题导入neo4j后乱码问题Unable to parse header 一、数据准备阶段 1.创建文件夹 首先进入neo4j文件夹,看一下是否有import这个文件夹,没有的话就新建一个。 2.导入neo4j数据格式 2.1 结点类型 csv文件需要指定一个唯一标识id,如果需要标签的话用

Karenmaxx的博客 1万+

Neo4j导入csv文件

Neo4j导入csv文件的用法

qq_42582489的博客 1万+

owl文件导入Neo4j

前提: 1.下载扩展neosemantics jar包,将jar复制到neo4j/plugins目录下。 注意:neosemantics jar包必须与Neo4J版本相匹配。 例如:neo4j-community-3.3.1与neosemantics-3.3.0.2.jar https://github.com/jbarrasa/neosemantics/releases/download/3.3...

天空飘来五个字 8460

Neo4j笔记(三)Neo4j批量导入数据

Neo4j批量导入提供了三个工具:load csv、neo4j-admin import、apoc。本文只介绍前两个方法,也是使用最多的方法,关于apoc的内容在后面介绍。load csv和neo4j-admin import的主要区别就是 load csv是在线导入方式,即Neo4j不需要停止运行,支持增量导入数据,本质是cypher语言;neo4j-admin import 导入数据必须是生成...

haveanybody的博客 1万+

Neo4j中导入RDF数据

本文主要介绍将RDF数据导入Neo4j的过程。 下载neosemantics jar包,将jar复制到neo4j/plugins目录下 jar包下载链接 注意:jar包必须与Neo4J版本匹配 修改配置文件 在neo4j/neo4j.conf文件最后一行添加以下内容: dbms.unmanaged_extension_classes=semantics.extension=/rdf 重新启动 neo4j 但是这时候网neo4j打开web界面失败: 解决方法:将上一步的配置语句注释掉,可以打开web页

除了学习谁都不爱的博客 4133

Neo4j数据导入

常见的Neo4j数据导入方式如下: 1.通过Cypher中的create语句。 2.Cypher中的load csv方式。 3.官方提供的neo4j-import工具。 4.官方提供的Java API BatchInserter。 5.batch-import 工具。 6.neo4j-apocload.csv +apoc.load.relationship。 其各自使用优劣如下图(网上): ...

shenzhibiao的博客 1万+

Neo4j:入门基础(二)~ 数据导入Neo4J

Neo4j入门基础

满腹的小不甘 4203

Neo4j:入门基础(二)之导入CSV文件

导入CSV文件的方式  主要的两种方式如下:   1、使用 Cypher 命令LOAD CSV,这种方式可以处理中小型数据(可达10 million条记录)   2、使用批量导入工具neo4j-admin ,用来直接导入大数据集 三、上述方式具体导入过程   1、Cypher 命令LOAD CSV 参数 1、USING PERIODIC COMMIT 300 使用批量提交,每满300条提交一次,防止内存溢出 2、WITH HEADERS 从文件中读取第一行作为参数名,...

Puzzle的博客 3万+

向Neo4j导入CSV文件

1、安装Neo4j 安装Neo4j服务社区版,可以在微云数聚上下载。 需要先安装JDK,下载的是压缩包,解压之后将bin文件的路径添加到环境变量的path里面D:\neo4j-community-3.5.0\bin。 然后用管理员身份运行cmd,输入neo4j install-service. 得到Neo4j service installed 然后输入neo4j start就可以开启服...

sushaning的博客 1万+

Revit获取族预览图

最近做到和族库相关的功能需要获取到族文件的预览图,在RevitAPI中提供了ElementType.GetPreviewImage方法,但是前提就是你是在Revit里面操作的,并且已经拿到了Symbol对象实例,才可以调用此方法。然后在网上找了另外一种方式,通过读取Revit文件,在REVITPREVIEW4.0字段截取文件信息,将其转换为图片格式。 一、使用RevitAPI中ElementType.GetPreviewImage方法 [Autodesk.Revit.Attributes.Transac.

weixin_44631419的博客 1757

学习Neo4j几小时小结~将数据批量导入Neo4j数据库

一、关于Neo4j Neo4j是一款强健的,可伸缩的高性能图数据库。 我是用它来可视化我的知识图谱的~ 下面是我整个可视化的过程,学习了一下午+一晚上搞定,记录本次流程,方便我以后使用~ 这是最后的效果截图 二、安装Neo4j 下载和安装Neo4j可以参考这篇文章的第一章:下载和安装Neo4j 1,安装Java JDK 2,下载Neo4j安装文件 3,创建系统环境变量 三、导入数据 1.常见导入...

欢迎来到小丁的技术空间 5028

射频指纹识别技术:原理、应用与深度学习实现

射频指纹识别(RFFI)是一种基于硬件特征的设备身份认证技术,通过分析无线设备发射信号中的独特硬件特征实现设备识别。其核心原理源于发射器硬件电路的非线性特性,如功率放大器的相位噪声和混频器的非线性失真,这些特征具有难以伪造的特点。在物联网和边缘计算场景中,RFFI技术展现出独特优势,尤其在智能家居和工业物联网中,能有效防止非法接入和设备伪造。深度学习方法的引入进一步提升了RFFI的性能,通过自动特征提取和端到端优化,显著提高了识别准确率。本文详细探讨了RFFI的技术原理、应用场景及实现方法,为相关领域的研究

weixin_30457465的博客 890

【StarRocks】-- DATETIME 与 TIMESTAMP 区别详解

本文详细解析了StarRocks中DATETIME/DATETIMEV2与TIMESTAMP的区别及使用场景。DATETIME系列存储人类可读时间,不携带时区;TIMESTAMP实际指Unix时间戳,建议用BIGINT存储。关键差异包括:精度选择(DATETIMEV2支持微秒级)、时区处理(仅函数计算时影响)、存储方式等。针对不同场景提供选型建议:单时区展示用DATETIMEV2,跨时区计算用BIGINT存储Epoch。特别强调与MySQL迁移时的注意事项,并给出常见问题解决方案和最佳实践清单,包括统一入口

欢迎来到我的博客,一起探索代码里的世界! 501
上一篇: github项目提交入坑总结
下一篇: 网络数据爬虫(scrapy+selenium)实现页面跳转及文件/附件下载
Cherry CSL
博客等级 码龄11年 36粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Cherry CSL

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值