- Neo4j CQL
- Neo4j CQL - 简介
- Neo4j CQL - 创建节点
- Neo4j CQL - 创建关系
- Neo4j CQL 编写子句
- Neo4j - 合并命令
- Neo4j - 集合子句
- Neo4j - 删除条款
- Neo4j - 删除条款
- Neo4j - Foreach 子句
- Neo4j CQL 读取子句
- Neo4j - 匹配子句
- Neo4j - 可选匹配子句
- Neo4j -Where 子句
- Neo4j - 计数函数
- Neo4j CQL 通用条款
- Neo4j - 退货条款
- Neo4j - 按条款排序
- Neo4j - 限制条款
- Neo4j - 跳过子句
- Neo4j - With 子句
- Neo4j - 放松条款
- Neo4j CQL 函数
- Neo4j - 字符串函数
- Neo4j - 聚合函数
- Neo4j CQL 管理员
- Neo4j - 备份和恢复
- Neo4j - 索引
- Neo4j - 创建唯一约束
- Neo4j - 丢弃独特的
- Neo4j 有用资源
- Neo4j - 快速指南
- Neo4j - 有用的资源
- Neo4j - 讨论
Neo4j - 概述
Neo4j是世界领先的开源图数据库,采用Java技术开发。它具有高度可扩展性和无模式(NoSQL)。
什么是图数据库?
图表是一组对象的图形表示,其中一些对象对通过链接连接。它由两个元素组成——节点(顶点)和关系(边)。
图数据库是用于以图的形式对数据进行建模的数据库。在这里,图的节点描述实体,而关系描述这些节点的关联。
流行的图数据库
Neo4j 是一种流行的图数据库。其他图形数据库包括 Oracle NoSQL 数据库、OrientDB、HypherGraphDB、GraphBase、InfiniteGraph 和 AllegroGraph。
为什么选择图数据库?
如今,大多数数据以不同对象之间的关系的形式存在,而且更多时候,数据之间的关系比数据本身更有价值。
关系数据库存储高度结构化的数据,其中有多个记录存储相同类型的数据,因此它们可用于存储结构化数据,但它们不存储数据之间的关系。
与其他数据库不同,图数据库将关系和连接存储为一流实体。
与其他数据库相比,图数据库的数据模型更简单,并且可以与 OLTP 系统一起使用。它们提供事务完整性和操作可用性等功能。
RDBMS 与图数据库
下表是关系数据库和图数据库的比较。
先生编号 | 关系型数据库管理系统 | 图数据库 |
---|---|---|
1 | 表格 | 图表 |
2 | 行数 | 节点 |
3 | 列和数据 | 属性及其值 |
4 | 约束条件 | 人际关系 |
5 | 加入 | 遍历 |
Neo4j的优点
以下是 Neo4j 的优点。
灵活的数据模型- Neo4j 提供了灵活简单但功能强大的数据模型,可以根据应用程序和行业轻松更改。
实时洞察- Neo4j 提供基于实时数据的结果。
高可用性- Neo4j 对于具有事务保证的大型企业实时应用程序具有高度可用性。
连接和半结构化数据- 使用 Neo4j,您可以轻松表示连接和半结构化数据。
轻松检索- 与其他数据库相比,使用 Neo4j,您不仅可以表示,还可以更快地轻松检索(遍历/导航)连接的数据。
Cypher 查询语言- Neo4j 提供了一种声明性查询语言,使用 ascii-art 语法直观地表示图形。这种语言的命令是人类可读的格式,非常容易学习。
无连接- 使用 Neo4j,不需要复杂的连接来检索连接/相关数据,因为无需连接或索引即可轻松检索其相邻节点或关系详细信息。
Neo4j 的特点
以下是 Neo4j 的显着特征 -
数据模型(灵活的模式) - Neo4j 遵循名为本机属性图模型的数据模型。这里,图包含节点(实体),并且这些节点彼此连接(通过关系来描述)。节点和关系将数据存储在称为属性的键值对中。
在 Neo4j 中,不需要遵循固定的模式。您可以根据需要添加或删除属性。它还提供模式约束。
ACID 属性- Neo4j 支持完整的 ACID(Atomics性、一致性、隔离性和持久性)规则。
可扩展性和可靠性- 您可以通过增加读/写次数和卷来扩展数据库,而不会影响查询处理速度和数据完整性。Neo4j 还提供对复制的支持,以确保数据安全性和可靠性。
Cypher 查询语言- Neo4j 提供了一种强大的声明性查询语言,称为 Cypher。它使用 ASCII-art 来描绘图形。Cypher 易于学习,可用于创建和检索数据之间的关系,而无需使用连接等复杂查询。
内置 Web 应用程序- Neo4j 提供内置Neo4j 浏览器Web 应用程序。使用它,您可以创建和查询图形数据。
驱动程序- Neo4j 可以使用 -
REST API 可与 Java、Spring、Scala 等编程语言配合使用。
用于与 Node JS 等 UI MVC 框架配合使用的 Java 脚本。
它支持两种Java API:Cypher API和Native Java API来开发Java应用程序。除此之外,您还可以使用其他数据库,例如 MongoDB、Cassandra 等。
索引- Neo4j 通过使用 Apache Lucence 支持索引。