📜  NoSQL 中基于图的数据模型

📅  最后修改于: 2022-05-13 01:57:01.319000             🧑  作者: Mango

NoSQL 中基于图的数据模型

NoSQL 中基于图的数据模型是一种数据模型,它试图专注于建立数据元素之间的关系。顾名思义,Graph-Based Data Model,这里的每个元素都存储为一个节点,这些元素之间的关联通常称为链接。关联直接存储,因为这些是数据模型的第一类元素。这些数据模型为我们提供了数据的概念视图。

这些是基于拓扑网络结构的数据模型。显然,在图论中,我们有节点、边和属性等术语,让我们看看它在基于图的数据模型中的含义。

  • 节点:这些是表示要跟踪的对象的数据实例。
  • 边:众所周知,边代表节点之间的关系。
  • 属性:它表示与节点相关的信息。

下图表示具有边缘表示的关系的属性的节点。

基于图的数据模型

图数据模型的工作:

在这些数据模型中,连接在一起的节点是物理连接的,它们之间的物理连接也被视为一条数据。以这种方式连接数据变得容易查询关系。该数据模型直接从存储中读取关系,而不是计算和查询连接步骤。与许多不同的 NoSQL 数据库一样,这些数据模型没有任何模式,因为模式很重要,因为模式使模型变得良好且易于编辑。

图数据模型示例:

  • JanusGraph:这些在大数据分析中非常有用。它也是一个可扩展的图形数据库系统开源。 JanusGraph 具有不同的功能,例如:
    • 存储:许多选项可用于存储图形数据,例如 卡桑德拉。  
    • 支持事务:有许多支持可用,如 ACID (原子性、一致性、隔离性和持久性)可以容纳数千个并发用户。
    • 搜索选项:提供复杂的搜索选项和可选支持。
  • Neo4j:它代表 Network Exploration and Optimization 4 Java。顾名思义,这个图形数据库是用Java编写的,具有原生图形存储和处理功能。 Neo4j 具有不同的功能,例如:
    • 可扩展:可通过将数据划分为称为碎片的片段进行扩展。
    • 更高的可用性:由于连续备份和滚动升级,可用性非常高。
    • 查询语言:使用程序员友好的查询语言Cypher图查询语言。DGraph主要特点有:
  • DGraph:它是一个开源的分布式图数据库系统,具有可扩展性。
    • 查询语言:它使用 GraphQL,它是专门为 API 设计的。
    • 开源系统:支持许多开放标准。

图数据模型的优点:

  • 结构:结构也非常灵活和可行。
  • 显式表示:实体之间关系的描述是显式的。
  • 实时 O/P 结果:查询为我们提供实时输出结果。  

图数据模型的缺点:

  • 没有标准查询语言:由于语言取决于所使用的平台,因此没有确定的标准查询语言。
  • 不专业的图表:图表非常不专业 对于基于事务的系统。
  • 小用户群:用户群小,运行到系统时很难获得支持。

图数据模型的应用:

  • 图数据模型在欺诈检测中非常有用,这本身非常有用和重要。
  • 它用于数字资产管理,提供可扩展的数据库模型来跟踪数字资产。
  • 它用于网络管理 提醒网络管理员有关网络中的问题。
  • 它通过提供流量更新等用于上下文感知服务。
  • 它用于提供更好用户体验的实时推荐引擎。