在BigTable中对select by partition key in Cassandra
进行建模等效的内容是什么?
例如;如果我有一张Cassandra表
CREATE TABLE emp (
empID int,
deptID int,
first_name varchar,
last_name varchar,
PRIMARY KEY (empID, deptID));
我可以查询
SELECT deptid FROM emp WHERE empid = 104;
在BigTable中;我认为这相当于在一行中添加列? 如果是这样一个相对标准的设计模式?
如果不是;是否有另一种可以使用的模式?
由于 布伦特
答案 0 :(得分:0)
主要在评论中解决。 Bigtable没有单独的分区键和主键概念,只有一个索引。
您的示例中,您可能希望将员工ID和部门ID都作为行键的一部分。密钥按字典顺序存储,您可以使用前缀进行更有效的子扫描,因此您需要确定是将员工ID后跟部门ID串联还是反之。
这有点类似于反向域名模式,您可能需要查看此处建议的指南:
https://cloud.google.com/bigtable/docs/schema-design#types_of_row_keys