Neo4j介绍与使用

neo4j新手教程 neo4j新手教程 本文通过一个实际的案例来一步一步使用Cypher来操作Neo4j。 这个案例的节点主要包括专业和课程两类,课程和课程之间有前置、并列等关系,专业和课程之间有包含等关系。 1、(可选)首先,我们删除数据库中以往的图,确保一个空白的环境进行操作: MATCH (n) DETACH DELETE n MATCH是匹配操作,而小括号()代表一个节点node(可理解为括号类似一个圆形),括号里面的n为标识符。 2、我们创建一个课程节点: CREATE (n:Class {name:'大学英语Ⅱ'} 阅读详情

Neo4j简介

Neo4j是一个高性能的,NOSQL图形数据库,它将结构化数据存储在网络上而不是表中。Neo4j也可以被看作是一个高性能的图引擎,该引擎具有成熟数据库的所有特性。程序员工作在一个面向对象的、灵活的网络结构下而不是严格、静态的表中——但是他们可以享受到具备完全的事务特性、企业级的数据库的所有好处。

Neo4j因其嵌入式、高性能、轻量级等优势,越来越受到关注。

图形数据结构

在一个图中包含两种基本的数据类型:Nodes(节点) 和 Relationships(关系)。Nodes 和 Relationships 包含key/value形式的属性。Nodes通过Relationships所定义的关系相连起来,形成关系型网络结构。

网络结构图

Neo4j安装

Neo4j可以被安装成一个独立运行的服务端程序,客户端程序通过REST API进行访问。也可以嵌入式安装,即安装为编程语言的第三方类库,目前只支持Java和Python语言。

因Neo4j是用java语言开发的,所以确保将要安装的机器上已安装了jre或者jdk

安装为服务

此种安装方式简单,各平台安装过程基本一样

  1. 从http://neo4j.org/download上下载最新的版本,根据安装的平台选择适当的版本。
  2. 解压安装包,解压后运行终端,进入解压后文件夹中的bin文件夹。
  3. 在终端中运行命令完成安装

    Linux/MacOS系统 neo4j install
    Windows系统 Neo4j.bat install

  4. 在终端中运行命令开启服务

    Linux/MacOS系统 service neo4j-service start
    Windows系统 Neo4j.bat start

通过stop命令可以关闭服务,status命令查看运行状态

支持python嵌入式安装

第一步:安装Jpype

从http://sourceforge.net/projects/jpype/files/JPype/ 下载最新版本,windows有exe格式的直接安装程序,linux平台要下载源码包,解压后运行sudo python setup.py install完成安装

第二步:安装 neo4j-embedded

如果安装了python的包管理工具 pip 或者 easy_install 可直接运行

Pip install neo4j-embedded  
easy_install neo4j-embedded

也可以从http://pypi.python.org/pypi/neo4j-embedded/下载相应的安装包完成安装。

Neo4j使用实例

有如下所示的用户关注关系所形成的关系网络

关系网络图

现在利用图形数据库进行数据的储存,并获得user1 的粉丝,并为user4 推荐好友

示例代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#
# Neo4j图形数据库示例
#
from  neo4j import  GraphDatabase, INCOMING
 
# 创建或连接数据库
db =  GraphDatabase( 'neodb' )
# 在一个事务内完成写或读操作
with db.transaction:
     #创建用户组节点
     users =  db.node()
     # 连接到参考节点,方便查找
     db.reference_node.USERS(users)
 
     # 为用户组建立索引,便于快速查找
     user_idx =  db.node.indexes.create( 'users' )
 
#创建用户节点
def  create_user(name):
     with db.transaction:
         user =  db.node(name = name)
         user.INSTANCE_OF(users)
         #  建立基于用户name的索引
         user_idx[ 'name' ][name] =  user
     return  user
 
  #根据用户名获得用户节点
def  get_user(name):
     return  user_idx[ 'name' ][name].single
 
#建立节点
for  name in  [ 'user1' , 'user2' , 'user3' , 'user4' ]:
    create_user(name)
 
#为节点间添加关注关系(FOLLOWS)
with db.transaction:
     get_user( 'user2' ).FOLLOWS(get_user( 'user1' ))
     get_user( 'user3' ).FOLLOWS(get_user( 'user1' ))
     get_user( 'user4' ).FOLLOWS(get_user( 'user3' ))
 
# 获得用户1的粉丝
for  relationship in  get_user( 'user1' ).FOLLOWS.incoming:
     u =  relationship.start
     print  u[ 'name' ]
#输出结果:user2,user3
 
#为用户4推荐好友,即该用户关注的用户所关注的用户
nid =  get_user( 'user4' ). id
#设置查询语句
query =  "START n=node({id}) MATCH n-[:FOLLOWS]->m-[:FOLLOWS]->fof RETURN n,m,fof"
 
for  row in  db.query(query, id = nid):
     node =  row[ 'fof' ]
     print  node[ 'name' ]
#输出结果:user1

  

最详细的Neo4J解读(附安装教程) 文章目录一、Neo4j简介二、Neo4j - 特点和优势1.Neo4j的特点2.Neo4j的优点3.Neo4j的缺点或限制三、Neo4j - 数据模型四、Neo4j安装及配置1.安装Java JDK2.下载安装Neo4j3.创建系统环境变量4.Neo4j的启动和停止5.切换数据库五、Neo4j的CQL操作 一、Neo4j简介 Neo4j是一种流行的基于Java语言编写的图形数据库。图是一组节点和连接这些节点的关系。图形数据库也被称为图形数据库管理系统或GDBMS, 其他的图形数据库是Oracle NoSQL 阅读详情

相关推荐

【知识图谱】neo4j安装与配置_社区版_2025(附完整安装软件包)

(经历过各种版本NEO4J,遇见杂七杂八的各种问题,也看过非常多很好的教程,特此来分享一下,为大家排排坑。

知识靠谱的博客 2万+

Neo4j 安装、使用教程

文章目录一、Neo4j 的安装与配置1、安装JDK2、安装Neo4j3、Neo4j环境变量配置4、启动服务器二、Neo4j 使用教程 一、Neo4j 的安装与配置 1、安装JDK 由于Neo4j是基于Java的图形数据库,运行Neo4j需要启动JVM进程,因此必须安装JAVA SE的JDK。配置 JDK环境,为以后能适应Springboot,请选择最低JDK1.8的环境。 2、安装Neo4j 下载地址:https://neo4j.com/download-center 我安装的是 Neo4j Communi

17902的博客 13万+

ner4j3.0 win64安装包1

neo4j-community_windows-x64_3_0_0安装包1

图数据库Neo4j实战(全网最详细教程)

知识图谱,作为人工智能和语义网技术的重要组成部分,其核心在于将现实世界的对象和概念以及它们之间的多种关系以图形的方式组织起来。它不仅仅是一种数据结构,更是一种知识的表达和存储方式,能够为机器学习提供丰富、结构化的背景知识,从而提升算法的理解和推理能力。在人工智能领域,知识图谱的重要性不言而喻。它提供了一种机器可读的知识表达方式,使计算机能够更好地理解和处理复杂的人类语言和现实世界的关系。通过构建知识图谱,人工智能系统可以更有效地进行知识的整合、推理和查询,从而在众多应用领域发挥重要作用。

专注 AI、大数据、Python、爬虫、数据分析可视化、机器学习、推荐算法、知识图谱、大模型应用与全栈系统开发,长期沉淀真实项目案例、源码解析、系统设计、部署经验与工程化实践,分享可运行、可复用、可落地的技术方案。 8万+

codesys【modbusRTU】主站

【代码】modbusRTU【codesys】

cfqq1989的博客 4374

TC3xx芯片SPI多从机通信避坑指南:AUTOSAR框架下的DMA配置与片选切换

本文针对英飞凌TC3xx芯片在AUTOSAR框架下实现SPI多从机通信的实战难题,提供了详尽的避坑指南。重点解析了如何利用硬件支持的16路片选(SLSO)灵活切换,在AUTOSAR中正确配置不同时序的从设备,并深入探讨了异步模式下DMA的启用条件与关键配置细节,帮助开发者规避通信失败风险,提升系统可靠性。

nn3456的博客 153

Neo4j详细介绍及使用教程

Neo4j介绍,服务端基本使用,java实战

tttalk的博客 3万+

ICM42670-P嵌入式开发实战:从寄存器配置到姿态解算全解析

本文全面解析ICM42670-P高性能6轴MEMS运动传感器的嵌入式开发实战,涵盖寄存器配置、数据采集滤波、低功耗优化及姿态解算算法。通过详细代码示例和应用案例,帮助开发者快速掌握从硬件对接到姿态跟踪系统的完整开发流程,适用于可穿戴设备和智能家居等低功耗应用场景。

gold的博客 1067

Neo4J Cypher neo4j-driver py2neo介绍与使用

Neo4J Cypher neo4j-driver介绍与使用neo4j介绍关系型数据库和图数据库图数据库的基本概念简单例子NodesLabelsRelationshipRelationshipTypePropertiesSchemaCypherneo4j-driver参考链接 neo4j介绍 先简单介绍一下neo4j,Cpyher,neo4j-driver之间的关系 neo4j 是一个图数据库,专门存储图结构,图的定义; Cpyher 是Neo4J的声明式图形查询语言,类似于传统数据库的SQL; neo4

Srfun的博客 4663

手把手教你搭建离线语音助手:FunASR+DeepSeek+TTS保姆级教程

本文详细介绍了如何利用FunASR、DeepSeek和TTS技术搭建离线语音助手系统。从环境配置、模型部署到唤醒词检测优化、语音识别与语义理解联调,再到语音合成与系统集成,提供全链路实战教程。特别适合智能家居控制、企业内部知识问答等需要数据隔离的场景,实现高响应、低延迟的离线语音交互体验。

weixin_30316097的博客 475

SRAM vs RRAM:存算一体芯片选型指南(含最新技术对比)

本文深入对比了SRAM与RRAM在存算一体芯片设计中的核心差异,为硬件工程师和架构师提供实战选型指南。文章从技术本质、性能、功耗、成本及设计风险等多维度剖析,指出SRAM基于成熟CMOS工艺,适合高精度、低延迟场景;而RRAM凭借非易失性和高密度潜力,在超低功耗、固定模型应用中优势明显。决策需综合项目预算、上市时间及技术储备。

e4f5g6h的博客 940

Neo4j基础使用介绍

Create by yster@foxmail.com 2018-7-10我的博客:https://blog.youkuaiyun.com/yueshutong123W3Cschool文档:https://www.w3cschool.cn/neo4j/neo4j_features_advantages.htmlneo4j-examples:https://github.com/neo4j-examp...

weixin_46000535的博客 1269

OpenPCDet安装及其3D检测算法实现

OpenPCDet及pointpillar复现

weixin_58207716的博客 1万+

Neo4j简洁版介绍、安装和使用

Neo4j简洁版介绍、安装和使用

qq_43750301的博客 1181

Ubuntu-22.04安装VMware虚拟机并安装Windows10

最近在研究虚拟机,主要集中在KVM、Virtualbox和VMware这三种虚拟机上。前面我已经研究了前两种虚拟机的安装和使用方式,这篇文章介绍3兄弟中最后一个虚拟机安装和使用方式。Virtualbox虚拟机安装和使用KVM虚拟机安装和使用相比于前两种,VMware的安装方式最麻烦,但是综合体验下来我感觉流畅度最好。如果你确实有在Linux上使用VMware虚拟机的需求,那不妨跟着我看下去吧。1、gcc版本和内核版本一定要匹配上,否则会出各种错误。

jiexijihe945的博客 4118

YOLOv11 改进 - C2PSA | C2PSA融合TSSA(Token Statistics Self-Attention)令牌统计自注意力,优化遮挡目标感知

本文介绍了Token Statistics Self-Attention(TSSA)机制,并将其集成到YOLOv11中。传统自注意力计算复杂度高,TSSA进行了范式转变,基于token统计特征实现高效注意力交互。它通过“算法展开”推导得出,以“最大编码率降低”为目标,实现特征学习。TSSA包含动态分组和低秩投影优化两步创新,具备线性复杂度。我们将TSSA代码集成到YOLOv11的C2PSA模块中。实验表明,改进后的YOLOv11在目标检测任务中表现良好,验证了TSSA机制的有效性。

魔改工程师的博客 669

图数据库Neo4j介绍与使用

介绍图数据库Neo4j的基本概念和基本的使用方法,入门与使用,包括数据浏览器的使用和CQL的入门使用

qq_52965253的博客 3189

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Neo4j数据库介绍及简单使用

Neo4j是一种图数据库管理系统,专门设计用于存储和处理图形数据。节点:节点是图中的基本单元,用于表示实体。每个节点可以包含一个或多个属性,用于描述实体的特征。属性: 节点和关系可以包含属性,属性是键值对的形式,用于存储有关节点或关系的信息。属性提供了关于节点或关系的详细数据。关系:关系表示节点之间的连接或关联。它有一个方向,描述了连接的含义。关系也可以包含属性,用于描述关系的特征。标签:标签是用于将节点分组的一种方式。节点可以附加一个或多个标签,这样可以更轻松地对节点进行分类和检索。

日拱一卒,默默努力 2743

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

使用neo4j_neo4j基本介绍

neo4j的基础介绍请参考https://www.w3cschool.cn/neo4j/neo4j_data_model.html,已经很详细了。这里我只记录我希望记录的。neo4j下载 & 安装下载地址我使用的是neo4j-window-3.5.5版本的,java环境要求jdk8。官网下载比较慢,可以使用以下地址下载:链接:https://pan.baidu.com/s/1Oi2v4Gn...

weixin_32770687的博客 270

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

上一篇: CDH5.10 ubuntu14.04部署文档--离线安装
下一篇: Maven介绍,包括作用、核心概念、用法、常用命令、扩展及配置
youbo_sun
博客等级 码龄12年 20粉丝 51原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值