我的英语不好!
Cassandra 3.5中有一张表,其中所有列都不会同时出现。表的唯一性是一些行中唯一的列,但其中一些列最初为空。由于null值,我无法将它们设置为主键。我在Cassandra中确定了一个名称为id且类型为uuid
的列。
如何在Cassandra中将这些列组合在一起?
我的数据模型是真的吗?
我该如何解决这个问题?
答案 0 :(得分:1)
你不能。它不是关系数据库。使用群集和/或分区键添加唯一约束。
请参阅this answer
要存储唯一值,请创建一个单独的表,将您的唯一值作为键。在插入行之前通过请求此表来检查它是否存在。但要注意,即使这样做,如果你有两个并发插入,你也无法确保它在你的最终表中是唯一的。
基本上,我建议使用Cassandra,因为它确实是:数据存储。并找到一种方法来实现它所属的业务逻辑:在您的代码中。