Indexing 阿帕奇·卡桑德拉。具有复合主键的索引或表的特定情况
我在卡桑德拉的POC里有这个场景 桌子Indexing 阿帕奇·卡桑德拉。具有复合主键的索引或表的特定情况,indexing,cassandra,cassandra-2.0,composite-primary-key,Indexing,Cassandra,Cassandra 2.0,Composite Primary Key,我在卡桑德拉的POC里有这个场景 桌子 CREATE TABLE B (B-UID UUID, A-UID UUID, CREATED_AT timestamp , JSON text, PARENT_B-UID UUID, POSTALCODE text, CUSTOMER_TYPE text, START_DATE timestamp, END_DATE timestamp, SOME_PRICE int, PR
CREATE TABLE B (B-UID UUID,
A-UID UUID,
CREATED_AT timestamp ,
JSON text,
PARENT_B-UID UUID,
POSTALCODE text,
CUSTOMER_TYPE text,
START_DATE timestamp,
END_DATE timestamp,
SOME_PRICE int,
PRIMARY KEY (B-UID));
24千转/分的写入/2千转/分的读取。对于1a-UID,大多数情况下我会有67个B-IUD
在我的应用程序的生命周期中,我必须搜索所有的B-IUD以查找特定的a-IUD
我的问题是:最好使用复合主键创建表,还是为a-IUD创建索引?复合主键会影响写入性能吗
我已经阅读了DataStax的文档,他们在那里编写的示例对于我的案例来说并不太好,至少在我的理解中是这样的!!!:) 尽量避免使用二级索引 如果唯一的查询是检索特定a-IUD的所有B-IUD,请使用复合主键(a-IUD,B-IUD) 如果您还需要搜索特定的B-IUD,请使用两个表 1:表1:以B-IUD为主键,其余列保持原样
2:表2:使用复合主键(a-IUD、B-IUD)和剩余列保持原样感谢您的快速回复!