@这里:我有一个关于cassandra分区的问题,如果我在下面的表中创建2个表,在下面的2个表中,我们将根据组id进行查询,因此在组id上创建分区,在不同的表中使用相同的组id值,这些表的数据将进入相同的cassandra节点吗?我知道它们会进入不同的ss表,但是当token生成的分区键具有两个不同表的相同值时,它们会在相同的节点上吗?这两个表非常小,每个表中最多有100个组几乎每个组id可能有1000个服务第一个--主键(组id,服务id)几乎每个组id可能有1000个类别第二个--主键(组id,类别id)
由于行分区的\u值相同,在这种情况下,两个分区的组\u id可能都具有相同的值。它们是否会转到相同的节点并创建数据热点?
CREATE TABLE services (
serv_id TEXT,
name TEXT,
description TEXT,
configuration_services SET<TEXT>,
data_services SET<TEXT>,
monitor_services SET<TEXT>,
command_services SET<TEXT>,
created_by TEXT,
created_at TIMESTAMP,
modified_by TEXT,
modified_at TIMESTAMP,
enable boolean,
group_id text,
primary key(group_id,serv_id)
) ;
CREATE TABLE categories (
category_id UUID,
name TEXT,
description TEXT,
category TEXT, [CONFIGURATION/COMMAND/DATA/MONITOR]
characteristics Set<TEXT>,
created_by TEXT,
created_at TIMESTAMP,
modified_by TEXT,
modified_at TIMESTAMP,
enable boolean,
group_id text,
roles_allowed MAP<TEXT,TEXT> // role based permissions.
primary key(group_id,category_id)
) ;
1条答案
按热度按时间mzillmmw1#
只要表具有相同的复制因子、键空间和分区键,它们就存储在同一节点上。