我们正在尝试将特定 profile_id 的许多属性存储在一个表中(使用 CQL3)并且无法围绕哪种方法最好:
一个。创建表 mytable (profile_id, a1 int, a2 int, a3 int, a4 int ... a3000 int) 主键 (profile_id);
或者
湾。创建许多表,例如。创建表 mytable_a1(profile_id, value int) 主键 (profile_id); 创建表 mytable_a2(profile_id, value int) 主键 (profile_id); ... 创建表 mytable_a3000(profile_id, value int) 主键 (profile_id);
或者
C。创建表 mytable (profile_id, a_all text) 主键 (profile_id); 并在 a_all 中存储 3000 个“列”,例如:插入 mytable (profile_id, a_all) 值 (1, "a1:1,a2:5,a3:55, ....a3000:5");
或者
d。以上都不是
我们将在此表上运行的查询类型: select * from mytable where profile_id in (1,2,3,4,5423,44)
我们尝试了第一种方法,查询一直超时,有时甚至会杀死 cassandra 节点。