Algorithm 关系数据库与图形数据库的转换

Algorithm 关系数据库与图形数据库的转换,algorithm,graph,relational-database,rdbms,graph-databases,Algorithm,Graph,Relational Database,Rdbms,Graph Databases,我知道有一些算法(甚至工具)可以将关系数据库(RDBMS)转换为图形数据库,反之亦然 我确实有几个问题比这个问题大一些: 对于这种转换,是否有一种通用的工作算法,例如RDBMS=>graph(或几种) 这个算法是双射的吗?更准确地说: 2.1。给定上述算法,转换RDBMS=>图是内射的(一对一)?更简单地说,是否可以将任意两个关系数据库转换为同一个图形数据库 2.2。类似地,任何图形数据库都可以用关系数据库表示吗?基本上,我是问算法函数是否是满射的(on) TL;DR 从图的特定数学概念(节点集

我知道有一些算法(甚至工具)可以将关系数据库(RDBMS)转换为图形数据库,反之亦然

我确实有几个问题比这个问题大一些:

  • 对于这种转换,是否有一种通用的工作算法,例如RDBMS=>graph(或几种)

  • 这个算法是双射的吗?更准确地说:

    2.1。给定上述算法,转换RDBMS=>图是内射的(一对一)?更简单地说,是否可以将任意两个关系数据库转换为同一个图形数据库

    2.2。类似地,任何图形数据库都可以用关系数据库表示吗?基本上,我是问算法函数是否是满射的(on)

  • TL;DR

    从图的特定数学概念(节点集、边关系)到关系表示,通常有一个明显的双射。本质上是因为数学使用集合和关系

    没有标准的图形数据库管理系统。并且没有标准的方法来使用一个来表示应用程序/业务情况。因此,在图形数据库状态和关系状态之间没有标准映射,更不用说在另一个状态中给出表示,这对于所表示的情况来说是自然的

    如果没有关系值属性,非关系结构和关系结构之间的映射并不总是双射的,因为有时我们必须选择关系代理值1:1与我们将使用的关系值


    有时我们对某一特定情况不感兴趣,我们只对数据结构感兴趣。然后我们可以提出它的(各种)关系版本

    但数据库或数据结构变量通常表示应用程序/业务情况。从场景到表示通常有一对多或一对一的映射。在关系模型下,每个表都有一个关联的(特征)谓词(语句模板),并保存从其谓词生成真实命题(语句)的行。其他数据结构以特殊方式用于表示一种情况

    关系模型的特殊之处在于,您可以通过谓词逻辑和/或关系运算符进行一般查询——查询表达式确定谓词,其结果包含从其谓词生成真正命题的行。(计算时有一定的复杂性保证和一定的自动优化机会。)

    表示相同情况的结构之间的映射取决于数据库如何表示情况。因此,即使是使用相同数据结构的两个表示,表示之间也没有通用的映射

    另一方面,您可以在两个结构之间定义一些通用映射,它可能是双射的,但是当一个情况由一个表示时,另一个会告诉您该情况的另一个表示,因此该情况只是间接的,而不是直接的情况本身。因此,不要期望描述其他结构表示的关系版本与该应用程序/业务的良好关系设计类似

    这就是ORMs和对象数据库的问题。您可以定义从特定面向对象状态到关系的映射,但这些关系仅描述面向对象状态,而不是其表示的情况。每当一个对象值持有一个指向被引用而非包含的对象的oid时,该引用对象就表示一个关系/关联实体实例。但是,通常没有为对应于这类对象集的关系给出显式谓词。相反,我们得到了一个表示函数,从某个完整的表示状态到一个表示的情况。而在关系设计中,每个表(基或查询结果)的每个超键值与某些实体(可能是关联的)是1:1;DR

    从图的特定数学概念(节点集、边关系)到关系表示,通常有一个明显的双射。本质上是因为数学使用集合和关系

    没有标准的图形数据库管理系统。并且没有标准的方法来使用一个来表示应用程序/业务情况。因此,在图形数据库状态和关系状态之间没有标准映射,更不用说在另一个状态中给出表示,这对于所表示的情况来说是自然的

    如果没有关系值属性,非关系结构和关系结构之间的映射并不总是双射的,因为有时我们必须选择关系代理值1:1与我们将使用的关系值


    有时我们对某一特定情况不感兴趣,我们只对数据结构感兴趣。然后我们可以提出它的(各种)关系版本

    但数据库或数据结构变量通常表示应用程序/业务情况。从场景到表示通常有一对多或一对一的映射。在关系模型下,每个表都有一个关联的(特征)谓词(语句模板),并保存从其谓词生成真实命题(语句)的行。其他数据结构以特殊方式用于表示一种情况

    关系模型的特殊之处在于,您可以通过谓词逻辑和/或关系运算符进行一般查询——查询表达式确定谓词,其结果包含从其谓词生成真正命题的行。(计算时有一定的复杂性保证和一定的自动优化机会。)

    表示相同情况的结构之间的映射取决于数据库如何表示情况。因此,表示之间没有通用的映射,即使是两个表示