Allegrograph 基本上是一个 RDF 三元组(实际上是五个字段)存储。那么为什么我们不能创建一个包含五列的 MySQL 表并将三元组存储在其中。?
AG 对这样的 MySql 表有什么特点?
Allegrograph 基本上是一个 RDF 三元组(实际上是五个字段)存储。那么为什么我们不能创建一个包含五列的 MySQL 表并将三元组存储在其中。?
AG 对这样的 MySql 表有什么特点?
简单来说就是支持SPARQL
SPARQL是 RDF 的查询语言,它的语义与 SQL 有很大不同,有工具可以将 SPARQL 转换为 SQL 查询,但性能通常很差。此外,SPARQL规范的许多特性(尤其是内置函数)在 MySQL 中没有对应的特性,因此要么必须通过存储过程/用户定义的函数来模仿,要么在代码中完成。
评估 SPARQL 与评估 SQL 完全不同,因为 SPARQL 更依赖于许多复杂的连接,SPARQL 存储使用优化器,虽然其工作原理与 SQL 优化器相同,但旨在处理与传统 RDBMS 截然不同的查询类型通常会处理。
一般来说,五列表非常幼稚,因为每一列都包含一个复杂的项目,该项目具有多个部分,并且使用多个表更好地存储。此外,与更规范化的表设计相比,单表方法将导致大量存储需求。
如果您只关心在 SQL 数据库中保存和加载 RDF 三元组,那么简单的单表方法可能适合您。如果你真的想做一些有用的事情,那么你需要一个更复杂的 SQL 数据库模式或像 AllegroGraph 这样的适当 RDF 存储
AllegroGraph 为符合 ACID 的 RDF 图数据库设定了行业标准,并针对使用语义技术的 OLTP、推理和商业智能应用程序进行了优化。
因此,如果您决定创建一个五列表来模拟 RDF 图数据库,您会缺少什么?