我寻找nosql的密钥值存储了还提供用于存储/保持存储实体之间的关系。我知道,谷歌App Engine的数据存储区允许实体之间拥有和无主的关系。是否有任何流行的NoSQL商店的提供类似的东西?

虽然大部分都是少的模式,有没有方法,以适当的关系到键值存储?

有帮助吗?

解决方案

它属于的图形数据库的核心特征为实体之间的关系提供支持。通常情况下,你的实体建模为节点,如曲线关系/边缘的关系。不同于 RDBMS 你不必提前定义的关系 - 只要将它们添加到图根据需要(无架构)。我创建了一个域建模库给这可以如何在实践看几个例子。该示例使用的Neo4j graphdb,我参与了一个项目,该邮件列表这个项目的使用证明为图建模问题非常有益的。

在面向文档的数据库了Riak 具有用于文档之间的链接的支持。

您可以添加在任何数据库引擎(如键/值)的顶部关系的支持,但它不工作内部消除。这一切都归结到你的使用情况。如果你提供更多的细节更容易拿出一个有用的答案。

哎呀,现在我看到标题写着“NoSQL的商店”,然后您的实际问题,缩小这种下调至“的NoSQL键值存储”。以键/值存储有用于定义实体之间的关系我还是会后我的回答没有任何语义。

其他提示

MongoDB是一个文件数据库,而不是一个键/值存储。但它确实提供,文档间引用的简单形式。这些工作更多或更少就像当被引用的对象被删除时自动清零SQL外键。

这是足够的同样类型的事情,你会使用外键,但不严重遍历中进行了优化。

在谷歌应用程序引擎的关系是唯一的键在代码访问时,系统将自动取消引用的实体。而用来过滤对抗时只值。其DB API的功能,而不是什么明确的,所以访问的ReferenceProperty只会对参考模型进行查询来获取访问对象。

如果你看看像MongoDB的,关系都存储在对象(从我remeber),但它们也可以但是存储你想在你创建,将搜索连接表一个API感您在以类似的方式,以谁的App Engine的工作关系项目。

保罗。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top