gpt4 book ai didi

java - BigTable 与 noSQL

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:58:08 24 4
gpt4 key购买 nike

  1. 我可以知道在“nosql”中存在限制,就像 bigtable 一样,我们应该“非规范化”我们的表/实体吗?

  2. 任何允许我们编写一次代码并可用于 google app engine bigtable 和 nosql 的 api 包装器? (类似 hiberanate 的东西)

最佳答案

是的,例如在 MongoDB 中您没有联接,因为它是非关系,所以它确实改变了我们存储和浏览数据的方式。

As MongoDB is non-relational (no joins), references ("foreign keys") between documents are generally resolved client-side by additional queries to the server. Two conventions are common for references in MongoDB: first simple manual references, and second, the DBRef standard, which many drivers support explicitly.

似乎共识是非规范化和复制以加速读取以避免将分布式数据全部连接在一起的成本,连接和合并逻辑在应用程序级别完成。

至于非规范化数据库是否是绝对要求,我不确定(其他SO成员可能会启发我们)。但我认为,数据库建模时应考虑到这些“局限性”,同时深入研究如何查询数据。这应该给过程带来最小的阻力。

另请参阅:

Bigtable database design theory

GAE - How to live with no joins?


Any API wrapper that allow we to write code once and can be used for google app engine BigTable and nosql ? (something like Hibernate)

JDO 是数据存储不可知论者,因此它可能只是在某种程度上提供您想要的内容。

最近似乎有很多项目将 JDO 和 JPA 与“NoSQL”产品一起使用。

参见:

Datanucleus-Cassandra

Datanucleus-Cassandra-Plugin

关于java - BigTable 与 noSQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3261525/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com