众所周知,Cassandra分区的理论极限为20亿个细胞。但是,在下面这样的情况下,它是如何工作的:
create table table1 (
some_id int PRIMARY KEY,
some_name text
);
create table table2 (
other_id int PRIMARY KEY,
other_name text
);
假设我们在table1上有10亿个单元格(some_id = 1)。 如果我们在table2上的分区中有另外10亿个单元格(other_id = 1),那么这些单元会加起来达到20亿理论极限吗?
换句话说,在不同的表中存储的是相同的分区键吗?
答案 0 :(得分:6)
不同的表具有不同的分区。这使得任何特定分区的结构都是同质的(它将始终遵循单个表的被禁止的模式),这允许进行优化。
如果你看看底层的存储引擎,你会发现每个表甚至都有自己的目录结构,这清楚地表明一个表中的分区永远不会与另一个表的分区交互。 (参见/ var / lib / cassandra /)