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