allegrograph和五列mysql表之间的区别是什么?

时间:2012-01-06 11:24:34

标签: graph rdf allegrograph rdfstore

Allegrograph基本上是一个RDF三元组(实际上是五场)商店。那么为什么我们不能创建一个包含五列的MySQL表并将三元组存储在其中。 ?

AG对此类MySql表有哪些功能?

2 个答案:

答案 0 :(得分:5)

简单地说它支持SPARQL

SPARQL是RDF的查询语言,它与SQL有很大的区别,有些工具可以将SPARQL转换为SQL查询,但性能通常很差。此外,SPARQL规范的许多功能(特别是内置函数)在MySQL中没有相应的功能,因此必须由存储过程/用户定义的函数加速或在代码中完成。

评估SPARQL与评估SQL完全不同,因为SPARQL更依赖于大量复杂的连接,SPARQL存储使用的优化器虽然与SQL优化器的工作原理相同,但是旨在处理针对这些优化的非常不同类型的查询传统的RDBMS通常会处理。

一般来说,五列表非常幼稚,因为每列包含一个复杂项目,该项目包含多个部分,并且可以使用多个表格更好地存储。此外,单一表格方法将导致对更标准化的表格设计的大量存储要求。

如果您只关心将RDF三元组保存到SQL数据库或从SQL数据库加载RDF三元组,则可以使用简单的单表方法。如果您确实想要做一些有用的事情,那么您需要一个更复杂的SQL数据库模式或一个适当的RDF存储,如AllegroGraph

答案 1 :(得分:0)

AllegroGraph为符合ACID标准的RDF图形数据库设定了行业标准 并针对OLTP,推理和商业智能应用进行了优化 利用语义技术。

因此,如果您决定创建单个五列表来模拟RDF图 数据库,你会缺少什么?

  • 如其他回复中所述,您无法获得SPARQL(查询 语义世界的语言)或创建自己的SPARQL的能力 扩展。
  • mySQL针对高度规范化的数据库模式进行了优化,而不是单一模式 表大表和每个查询多个自联接。
  • AllegroGraph支持多种服务器端编程语言 (Javascript,Prolog,Lisp)都针对这种类型的商店进行了优化。
  • AllegroGraph支持RDF数据和地理扩展,社交网络 在同一数据集中同时分析扩展名。
  • AllegroGraph支持推理RDF图形数据集(RDFS ++)
  • AllegroGraph支持三级安全性。
  • AllegroGraph支持Java语义库Jena和Sesame,以及 Python,C#,Clojure,Lisp,Ruby,REST接口
  • 与任何企业数据库一样,AllegroGraph也支持在线备份, 复制,热备份,时间点恢复