neo4j是什么

starrylsi
2024-04-24 / 0 评论 / 42 阅读 / 正在检测是否收录...

什么是 neo4j

Neo4j 图形数据库存储的是节点和关系而不是表或文档。数据的存储就像您在白板上绘制想法一样。您的数据存储时不会将其限制为预定义的模型,从而允许以非常灵活的方式思考和使用数据

属性图模型

  • 1.1_属性图模型

Node (节点)

节点是图中的实体
  1. 可以用标签来标记节点,代表他们在域中的不同角色(例如: Person)
  2. 节点可以保存任意数量的键值对或属性(例如: name)
  3. 节点标签还可以将元数据(例如索引或约束信息)附加到某些节点

Relationships (关系)

关系提供两个节点实体之间的定向命名连接(例如,Person LOVES Person)
  1. 关系总是有方向、类型、起始节点和结束节点,并且它们可以有属性,就像节点一样。
  2. 节点可以具有任意数量或类型的关系,而不会牺牲性能。
  3. 尽管关系总是有方向的,但它们可以在任何方向上有效地导航

是什么让 neo4j 成为最容易使用的图

  1. Cypher,一种类似于 SQL 的声明式查询语言,但针对图形进行了优化。现在通过 openCypher 项目被 SAP HANA Graph 和 Redis graph 等其他数据库使用。
  2. 由于节点和关系的有效表示,大图中深度和广度的恒定时间遍历。可以在中等硬件上扩展到数十亿个节点。
  3. 流行编程语言的驱动程序,包括 Java、JavaScript、.NET、Python 等。

什么是图数据库

我们生活在一个互联的世界中,了解大多数领域需要处理丰富的连接集才能了解真正发生的事情。通常,我们发现项目之间的联系与项目本身一样重要。

今天人们还能怎么做呢?虽然现有的关系数据库可以存储这些关系,但它们通过昂贵的 JOIN 操作或交叉查找来导航它们,通常与严格的模式绑定。事实证明,“关系”数据库处理关系的能力很差。在图形数据库中,没有 json 或 查找。关系以更灵活的格式与数据元素(节点)一起本地存储。系统的一切都针对快速遍历数据进行了优化;每个核心每秒数百万个连接。

图数据库解决了我们许多人每天面临的巨大挑战。现代数据问题通常涉及与异构数据的多对多关系,这些关系需要:

  1. 浏览深层层次结构。
  2. 寻找遥远事物之间隐藏的联系。
  3. 发现项目之间的相互关系。

无论是社交网络、支付网络还是道路网络,您都会发现一切都是相互关联的关系图。当您想询问有关现实世界的问题时,许多问题都与关系有关,而不是与单个数据元素有关。

小记

谈到 neo4j 你解答的思路

你应该先想到属性图模型然后介绍节点和关系,然后讲一下什么是图数据库

0

评论 (0)

取消