图数据库Neo4j概念、应用场景、安装及CQL的使用

这篇具有很好参考价值的文章主要介绍了图数据库Neo4j概念、应用场景、安装及CQL的使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、图数据库概念

引用Seth Godin的说法,企业需要摒弃仅仅收集数据点的做法,开始着手建立数据之间的关联关系。数据点之间的关系甚至比单个点本身更为重要。

传统的**关系数据库管理系统(RDBMS)**并不擅长处理数据之间的关系,那些表状数据模式和呆板的结构难以添加新连接或不同类型连接。为了利用这些数据关系,需要一种能将关系信息存储为一等实体的新型数据库技术,这种技术就是图数据库。

图数据库不仅能有效存储数据点之间的关系,而且非常灵活,适合添加新的关系类型,并使数据模型适应新的业务需求。

除了数据库本身,图技术还涵盖了图数据科学的新兴领域,适合预测分析和机器学习,而所有的图数据可视化适合针对特定目的的数据发现和探索。

二、图数据应用场景

1、欺诈检测
2、实时推荐引擎
3、知识图谱
4、反洗钱
5、主数据管理
6、供应链管理
7、增强网络和IT运营管理能力
8、数据谱系
9、身份和访问管理
10、材料清单

三、安装Neo4j

有三种安装方式,一种是社区版,在官网上下载社区版本;第二种是基于docker进行安装的;第三种是neo4j desktop安装,本文介绍第一种安装社区版本。
官网 https://neo4j.com/deployment-center/#community
如果是4.x的版本,jdk要是符合11的,因为我们的jdk版本是8的,安装的版本是3.5x。

* bin目录:用于存储Neo4j的可执行程序;
* conf目录:用于控制Neo4j启动的配置文件;
* data目录:用于存储核心数据库文件;
* plugins目录:用于存储Neo4j的插件;

在bin目录下使用neo4j console启动
图数据库Neo4j概念、应用场景、安装及CQL的使用,知识图谱,数据库,neo4j
默认账号密码neo4j/neo4j, 可以修改密码。
图数据库Neo4j概念、应用场景、安装及CQL的使用,知识图谱,数据库,neo4j
图数据库Neo4j概念、应用场景、安装及CQL的使用,知识图谱,数据库,neo4j

Neo4j-CQL使用

neo4j-CQL简介
Neo4j的Cypher语言是为了处理图形数据而构建的,CQL代表Cypher查询语言,像Oracle数据库具有查询语言SQL,Neo4j具有CQL作为查询语言。
CQL命令 用法

CQL命令 用法
CREATE 创建节点,关系和属性
MATCH 检索有关节点,关系和属性数据
RETURN 返回查询结果
WHERE 提供条件过滤检索数据
DELETE 删除节点和关系
REMOVE 删除节点和关系的属性
ORDER BY 排序检索数据
SET 添加或更新标签
节点、关系的方向、关系的标签

常用的CQL命令
match (n:person {name: ‘孙悟空’}) return n.name, id(n)
match (n:person) where n.name=‘孙悟空’ return n.name, id(n)
match (n:person {name:‘孙悟空’}),(m:xiyouRelation) where m.from =‘孙悟空’
return n.name, m.relation, m.to

创建节点

创建节点
create (n)
创建多个节点
create(n),(m)
创建带标签和属性的节点并返回节点
create (n: person {name: '孙悟空'}) return n

创建关系
先创建节点
create(:student{name:"xiaohong"}), (:student{name:"zhangsan"})

查询节点
match (n:student {name: "小明"}),(m:student {name: "小红"})
create (n)-[r:同学]-> (m) return n.name, type(r), m.name

创建关系
match (n:person {name: '孙悟空'}), (m:xiyouRelation),(s: person) where
m.from = '孙悟空' and m.to = s.name
create (n)-[: 西游人物关系{relation:m.relation}]->(s)
return n.name, m.relation, s.name
就是把 n 指向 s

where子句
使用where子句来过滤match查询的结果。

# 创建关系
match (n:person), (m:person) where n.name='孙悟空' and m.name='猪八戒' 
create (n)- [r:师弟]->(m) return n.name, type(r), m.name

Delete删除
Neo4j使用CQL Delete子句
删除节点前,先删除关系
删除节点及相关节点和关系
match (n: person{name: “白龙马”})delete n
删除关系
match (n:student) -[r]->(m:student) where n.name=“张三” and m.name= “小红” delete r
return type®

Match p=(:person {name : ‘孙悟空’})-[r:‘西游人物关系’]->() return p

Remove删除
删除属性,
create(n:student: {name:“张三”, age:18})
match (n:person {name:“张三”}) remove n:person return n

Set 改值
match (n:role {name:“fox”}) set n.age =32 return n

Order by排序
match (n: “西游”) return id(n), n.name order by id(n) desc

IN操作符
与SQL一样,Neo4j CQL提供了一个IN运算符,可以是集合
match (n: ‘西游’) where n.name in[‘孙悟空’,‘唐僧’] return id(n), n.name, n.tail , n.label文章来源地址https://www.toymoban.com/news/detail-738033.html

到了这里,关于图数据库Neo4j概念、应用场景、安装及CQL的使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Neo4j:入门基础(二)~ 数据导入Neo4J RDF导入neo4j数据库

    neo4j导入数据的方式有以下几种: Cypher create 语句,为每一条数据写一个create Cypher load csv 语句,将数据转成CSV格式,通过LOAD CSV读取数据。 neo4j-admin import导入 官方提供的Java API - BatchInserter 大牛编写的 batch-import 工具 neo4j-apoc load.csv + apoc.load.relationship 针对实际业务场景,定制

    2023年04月24日
    浏览(74)
  • Neo4j | 保姆级教学之如何清空neo4j数据库

    要清空neo4j数据库,需要进行以下操作: 停止Neo4j服务器,关闭Neo4j的所有连接。 找到 Neo4j 数据库存储的目录,通常是 data/databases/ 。 删除该目录中的所有文件和子目录。 请注意,这将不可逆地删除数据库的所有内容,包括节点、关系和属性等数据。在执行这个操作之前,请

    2024年02月06日
    浏览(53)
  • Neo4j数据库删除数据

    我们使用Neo4j图数据库进行写入数据操作之后,免不了要删除数据的。 但是Neo4j的控制台没有提供快捷的删除按钮,所以我们还是需要通过命令来操作。 如果数据库中的数据量并不大,节点数相对较少,我们可以通过命令行直接删除节点。 此类操作起到清空数据库的效果,但

    2023年04月09日
    浏览(92)
  • Neo4j 图形数据库

    目录 Neo4j 基础 什么是Neo4j Neo4j 模块构建 Neo4j的主要应用场景 Neo4j 环境搭建 Docker 安装Neo4j Neo4j数据浏览器  Neo4j CQL CQL简介 Neo4j CQL高级 CQL 函数 CQL多深度关系节点 事务 索引 约束 Neo4j之Admin管理员操作 Neo4j - 数据库备份和恢复 调优思路  Neo4j 程序访问 SpringBoot 整合Neo4j

    2024年02月10日
    浏览(49)
  • neo4j清空数据库

    清空所有Person、 Movie节点及其所有关系 查询任意数据  如果没有, 就说明已经删除成功了 这段代码是用Cypher查询语言编写的,用于清空所有的Person节点、Movie节点以及它们之间的所有关系。让我们逐步解释代码的每个部分: 这部分代码使用MATCH语句来查找图数据库中的所有

    2024年02月14日
    浏览(47)
  • Neo4j数据库使用相关

    做知识图谱相关项目,初步使用了neo4j数据库,简单记录一下使用过程和踩坑备忘~ 操作系统Win10+Neo4j社区版(community,版本4.4.30) 目录 一、安装 1.1 安装Java和Neo4j 1.2 环境变量设置 二、 Neo4j使用 2.1 安装服务 2.2 数据库使用 2.3 数据库备份  Java下载链接:Java Downloads | Oracle

    2024年04月16日
    浏览(62)
  • 图数据库Neo4j简介

    随着社交、电商金融、零售、物联网的快速发展,现实社会支起了一张张庞大二复杂的关系网,传统数据库很难处理关系运算,急需一种支持海量复杂数据关系运算的数据库,图数据库应运而生。 图数据库是基于图论实现的一种Nosql数据库,起数据结构和数据查询方式都是以

    2024年02月22日
    浏览(51)
  • 图数据库Neo4j——SpringBoot使用Neo4j & 简单增删改查 & 复杂查询初步

    图形数据库是专门用于存储图形数据的数据库,它使用图形模型来存储数据,并且支持复杂的图形查询。常见的图形数据库有Neo4j、OrientDB等。 Neo4j是用Java实现的开源NoSQL图数据库,本篇博客介绍如何在SpringBoot中使用Neo4j图数据库,如何进行简单的增删改查,以及如何进行复杂

    2024年02月06日
    浏览(63)
  • 图数据库_Neo4j和SpringBoot整合使用_实战创建明星关系图谱---Neo4j图数据库工作笔记0010

    2023-09-10 10:37:48 补充 注意:下面是旧版本的语法,如果你发现@NodeEntity这样的注解没有的话可以这样: 这里就要用@Node 另外如果@StartNode和@EndNode都没有了,那么说明是用法变了. 关于最新的用法,在官网有明确的说明和案例,很有用: 下面给出官网的案例:

    2024年02月12日
    浏览(47)
  • 图数据库_Neo4j中文版_Centos7.9安装Neo4j社区版3.5.9_基于jdk1.8---Neo4j图数据库工作笔记0012

        由于我们在国内使用啊,具体还是要用中文版滴,找了好久这个neo4j,原来还是有中文版的, 中文版下载地址在这里: 所有版本都在这里了,需要哪个自己去下载就可以了,要注意下载以后,参考:  在这个位置下载,主要是找到对应中文版的安装包,花了写时间啊 然后我们看一下安装

    2024年02月12日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包