三重存储与关系数据库 [英] Triple Stores vs Relational Databases

查看:79
本文介绍了三重存储与关系数据库的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想知道与关系数据库相比,使用三重存储有什么优势?

I was wondering what are the advantages of using Triple Stores over a relational database?

推荐答案

在商业上广泛使用RDF Triplestore的公司的CTO观点:

The viewpoint of the CTO of a company that extensively uses RDF Triplestores commercially:

模式灵活性-可以实时对RDF存储进行模式更改,而无需任何停机或重新设计-这不是一次免费的午餐,您需要注意软件的工作方式,但这是很容易做.

Schema flexibility - it's possible to do the equivalent of a schema change to an RDF store live, and without any downtime, or redesign - it's not a free lunch, you need to be careful with how your software works, but it's a pretty easy thing to do.

更现代-RDF存储通常通过HTTP查询,因此很容易将它们安装到服务体系结构中,而不会出现骇人的桥接解决方案或性能损失.他们也比典型的SQL数据库更好地处理国际化内容-例如您可以使用不同的语言使用多个值.

More modern - RDF stores are typically queried over HTTP it's very easy to fit them into Service Architectures without hacky bridging solutions, or performance penalties. Also they handle internationalised content better than typical SQL databases - e.g. you can have multiple values in different languages.

标准化-使用RDF和SPARQL的实现的标准化程度远高于SQL.可以将一个三重存储区换成另一个三重存储区,尽管您必须注意不要超出标准.在商店之间移动数据很容易,因为它们都使用相同的语言.

Standardisation - the level of standardisation of implementations using RDF and SPARQL is much higher than SQL. It's possible to swap out one triplestore for another, though you have to be careful you're not stepping outside the standards. Moving data between stores is easy, as they all speak the same language.

可表达性-在RDF中建模复杂数据比在SQL中建模容易得多,查询语言使执行LEFT JOINs(在SPARQL中称为OPTIONAL)之类的事情变得更加容易.相反,如果您的数据非常表格化,那么SQL要容易得多.

Expressivity - it's much easier to model complex data in RDF than in SQL, and the query language makes it easier to do things like LEFT JOINs (called OPTIONAL in SPARQL). Conversely though, if you data is very tabular, then SQL is much easier.

出处-SPARQL使您可以跟踪每条信息的来源,并可以存储有关其的元数据,从而轻松地进行复杂的查询,仅考虑来自某些来源或具有一定信任级别的数据.一些日期范围等.

Provenance - SPARQL lets you track where each piece of information came from, and you can store metadata about it, letting you easily do sophisticated queries, only taking into account data from certain sources, or with a certain trust level, on from some date range etc.

尽管有不利之处. SQL数据库通常比典型的RDF数据库成熟得多,并且具有更多的功能.诸如交易之类的事情通常更为粗糙,或者根本不存在.而且,存储在RDF v的SQL中的单位成本信息明显更高.很难一概而论,但是如果您有大量数据,这可能会很重要-尽管至少在我们看来,鉴于灵活性和强大功能,从财务上来说这是整体利益.

There are downsides though. SQL databases are generally much more mature, and have more features than typical RDF databases. Things like transactions are often much more crude, or non existent. Also, the cost per unit information stored in RDF v's SQL is noticeably higher. It's hard to generalise, but it can be significant if you have a lot of data - though at least in our case it's an overall benefit financially given the flexibility and power.

这篇关于三重存储与关系数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆