【问题标题】:what's the difference between allegrograph and five column mysql table?allegrograph和五列mysql表有什么区别?
【发布时间】:2012-01-06 11:24:34
【问题描述】:

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

AG对这样的MySql表有什么特点?

【问题讨论】:

    标签: graph rdf allegrograph rdfstore


    【解决方案1】:

    简单来说就是支持SPARQL

    SPARQL 是 RDF 的查询语言,它与 SQL 的语义有很大不同,有工具可以将 SPARQL 转换为 SQL 查询,但性能通常很差。另外,SPARQL 规范的许多特性(尤其是内置函数)在 MySQL 中没有等效的特性,因此要么必须通过存储过程/用户定义的函数来模仿,要么在代码中完成。

    评估 SPARQL 与评估 SQL 完全不同,因为 SPARQL 更依赖于许多复杂的连接,SPARQL 存储使用优化器,虽然其工作原理与 SQL 优化器相同,但旨在处理与那些非常不同类型的查询传统的 RDBMS 通常可以处理。

    一般来说,一个五列的表非常幼稚,因为每列都包含一个复杂的项目,它有多个部分,并且使用多个表更好地存储。此外,与更规范化的表设计相比,单表方法会导致大量存储需求。

    如果您只关心在 SQL 数据库中保存和加载 RDF 三元组,那么简单的单表方法可能适合您。如果您真的想做一些有用的事情,那么您需要更复杂的 SQL 数据库架构或像 AllegroGraph 这样的适当 RDF 存储

    【讨论】:

      【解决方案2】:

      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 也支持在线备份, 复制、热备份、时间点恢复

      【讨论】:

        猜你喜欢
        • 2013-04-03
        • 2013-03-14
        • 1970-01-01
        • 2010-11-05
        • 2010-10-12
        • 2012-12-09
        相关资源
        最近更新 更多