数据存储的新手,但熟悉Cassandra和Dynamo。我有一个用例,其中有一个由两个字段(B
,B
)组成的唯一组合键。 desc
的顺序为B
。我的访问模式将是查询给定A
值(带有分页)的最新实体(基于A
)。我的问题是A
的基数可能很高(可能在5到1千万之间,但低到100到1000)。
如果这是在Dynamo中,则我将B
作为分区键,并将A
作为排序键。
但是,在数据存储区中,密钥标识符的概念使我望而却步。我是否应该将唯一的CONCAT(A,B)用作键标识符(以实现某种唯一的约束)?然后再次在B
和A
上添加一个索引以进行查询?
我找不到有关数据存储内部工作的太多信息,所以我不确定是否以CONCAT(A,B)作为键标识符可以随机分配数据。我猜对于快速查询,我希望所有具有相同{{1}}值的实体都存储在同一分区中。还是索引就像关系数据库中的视图一样工作?