发布于 2010-07-16 02:37:29
是的,例如,在non-relational,中没有联接,所以它确实改变了我们存储和浏览数据的方式。
由于MongoDB是非关系的(没有联接),文档之间的引用(“外键”)通常通过对服务器的额外查询来解析客户端。MongoDB中的引用通常有两种约定:第一种是简单的手动引用,第二种是DBRef标准,许多驱动程序都明确支持该标准。
人们的共识似乎是去denormalize和复制,以加快读取速度,以避免将分布式数据全部连接在一起的成本,而连接和合并逻辑则是在应用程序级别上完成的。
至于对数据库进行非公开是否绝对需要,我不确定(其他成员可能会启发我们)。但是,我认为数据库应该考虑到这些“限制”,同时要很好地研究如何查询数据。这应该给这个过程提供最小的阻抗。
还请参见:
任何允许我们编写一次代码并可用于谷歌应用程序引擎BigTable和nosql的API包装器?(类似于Hibernate)
JDO是datastore-agnostic,,所以它可能在某种程度上只提供您想要的东西。
似乎最近有很多项目将JDO和JPA与"NoSQL“产品一起使用。
见:
卡桑德拉
数据核-卡桑德拉-插件
发布于 2010-07-20 19:42:43
任何允许我们编写一次代码并可用于谷歌应用程序引擎BigTable和nosql的API包装器?(类似于Hibernate)
虽然抽象库确实有助于可移植性,但您必须考虑到正在运行的特定平台。如果你要使用Google,你必须知道附加抽象库所固有的启动成本。
您应该权衡使用JDO或JPA之类的东西的利弊。还请看一下物化图书馆,它提供了一个更本地的接口,它的缺点是耦合到。
https://stackoverflow.com/questions/3261525
复制相似问题