0

我的项目环境:SpringWS、Hibernate、Oracle和jBoss。在我的 RDBMS(oracle)出现故障的情况下,我进行了 POC 工作以将数据保存到 cassandra 中。因此 Cassandra 将充当 Oracle 的故障转移/备份。我是 cassandra 的新手,并计划使用 datastax 将数据保存在 cassandra 中,并想了解挑战。(由于它的 POC,我的 cassandra(2.0.3)在单节点上运行)

我知道的挑战(可能是我错了)

  1. 像 RDBMS 一样,我无法在 cassandra 中定义增量键定义,并且 PK 应该由应用程序处理(使用 TimeUUID)
  2. Cassandra 不支持多对多。所以在这种情况下,就像 RDBMS 休眠一样,我不能将多个人员实体设置为部门实体并坚持到 cassandra。相反,将对 cassandra 进行两次插入调用。一个用于持久化 DEPARTMENT,另一个用于 PERSON 表。
  3. 在 cassandra 中无法进行连接。无法在一个 CQL (v3) 中获取 PERSON 和 DEPARTMENT 信息。

您能否指出其他挑战?

4

2 回答 2

1

这篇文章可能会有所帮助:

从 MySQL 切换到 Cassandra - 优点/缺点?

以及一些数据建模技巧......

设计 Cassandra 数据模型的最佳实践是什么?

谢谢,斯文

于 2014-01-03T20:36:38.313 回答
0

层次结构不能直接支持 M2M。1. 将一个作为阵列吸收到另一个中。例如,部门有很多人。将人员置于复合结构的部门之下。2.如果人员维护较多,保持部门和人员不变,但增加复合结构。复合结构是预连接。

于 2014-01-11T17:51:00.467 回答