jpa - 开始 Cassandra - 使用昆德拉?还有什么?

标签 jpa nosql cassandra kundera

关闭。这个问题是opinion-based .它目前不接受答案。












想改进这个问题?更新问题,以便 editing this post 可以用事实和引用来回答它.

6年前关闭。




Improve this question




我们正在与 Cassandra 合作。我们都没有使用这个特定平台的任何经验,但都是经验丰富的 JavaEE、JPA 等开发人员。我遇到了 Kundera 库,它提供了与多个 NoSQL 数据存储(包括 Cassandra)兼容的 JPA 实现。

沿着这条路线走很诱人,因为我们将能够更快地启动和运行。然而,这是正确的想法吗?使用这样的库的权衡是什么?它如何影响性能?有很大的不同吗?

我很想知道其他人使用这个库有什么经验。而且,如果还有其他我们应该看的东西,我很想听听。

最佳答案

将 Jonathan 的 (jbellis) 提升到一个新的水平,恕我直言,像 hibernate 或 JPA 规范这样的 ORM 的目的是隐藏 SQL 的复杂性,因为应用程序开发人员最好处理对象而不是 SQL。
同样,kundera 隐藏了 NoSQL 的复杂性,但以一种智能的方式允许它使用 NoSQL 的强大功能,但仍然使开发人员可以轻松地使用传统的 RDBMS 范例。
但是,正如 Jonathan 所提到的,您仍然应该了解 Cassandra 数据建模概念,否则,您最终将创建另一个 SQL,就像在 Cassandra 之上的怪物一样。
Kundera 通过使用优化技术(例如自动转换为多个列的嵌入式或一对多关系)而不是创建新的列族(RDBMS 表等价物)来帮助这种 NoSQL 建模,从而避免创建物理关系模型。
“工具的好坏取决于使用它的工匠/女人的技能!”

关于jpa - 开始 Cassandra - 使用昆德拉?还有什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16321102/

相关文章:

java - 使用 NoSQL 数据库的抽象框架

c# - 在 MongoDB 的嵌套文档中插入新文档

azure - 宇宙数据库 : Difference between using MaxItemCount and Take() when retrieving N many records

Cassandra 返回数值的无序结果集

cassandra - CQL 选择特定列

jpa - JPA 条件查询中的条件 where 子句

java - 在 Restful 客户端中检索枚举的 PostgreSQL 类型

从 Cassandra 读取的 Hadoop 作业似乎只在主机上运行(从机完全空闲)

java - JOOQ 生成的类的架构默认为 PUBLIC

mysql - 删除父级时 Hibernate/MySQL 级联错误