三重存储数据库(例如Mulgara)的优缺点是什么?在哪些情况下,它的性能会与传统的关系型数据库有显着差异?
我特别考虑在表单中有数据的情况namespace:predicate=value
。Triplestores 似乎将数据保持在“自然”形式,但我想知道除此之外是否还有特定的优势。
我是Redland的创建者,其中包括 C 中的本机三重存储,而且我使用了一些 Java 系统,如 Jena 和 Sesame。
在不知道您的问题是什么的情况下很难说更多,但一般来说,如果您的问题空间/查询模式更“图形”而不是“客观”,则本机三重存储会更好地工作。Objecty 意味着您倾向于始终进行操作 - 每次设置/获取相同的数据模式 - 在这种情况下,您不妨使用 ORM 或其他对象关系映射和固定模式。如果您的问题和架构更具动态性 - “图形化” - 您可能会从三重存储方法中受益,在这种方法中,与通常在 RDBMS 世界(又名连接)中相比,它更容易跨越数据。
当然,也有文档方法,例如 CouchDB,但从您提供的信息中很难知道。
我假设您正在询问三元组的持久性(可能还有通过四元组的图),其中存储是“本机”三元组存储(例如,TDB)或具有三元组覆盖的关系数据库(例如SDB)。
如果您详细说明您的要求,我相信 Stack Overflow 成员可以提供更直接的答案,但只是在我的脑海中: