我有一张桌子
CREATE TABLE my_table (
user_id text,
add_id text,
other_user_id text,
date timestamp,
PRIMARY KEY (user_id, add_id, other_user_id)
);
我想分享列日期不是针对空洞分区(即user_id),而是针对 user_ud / add_id 级别。
所以我想要的是类似于将日期设为静态列,但考虑到 add_id 。
所需表的示例:
'user1' 'add1' 'otheruser1' date1
'user1' 'add1' 'otheruser2' date1
'user1' 'add1' 'otheruser3' date1
'user1' 'add2' 'otheruser4' date2
'user1' 'add2' 'otheruser5' date2
'user1' 'add2' 'otheruser6' date2
(* midle中的空格用于说明目的)
这是可能的吗?如果是这样,怎么样?
更多解释:
在关系数据库中,关系将是一个表格,其中包含:
[ user_id(pk) | add_id(pk) | date ]
pk:主键
Cassandra表中的other_user_id是我正在做的一项实验,旨在通过惩罚写入时间来缩短Cassandra的读取时间
谢谢!
答案 0 :(得分:2)
目前不可能在群集级别上拥有静态列。我在这里创建了一个 JIRA ,但它被解雇了
答案 1 :(得分:0)
如果每个add_id
的日期保持不变,那么我建议您使用date
作为主键,而不是other_user_id
。
CREATE TABLE my_table (
user_id text,
add_id text,
date timestamp,
other_user_id text,
PRIMARY KEY (user_id, add_id, date)
);
它将创建具有单个键(user1, add1, date1)
的分区
和记录将是:
'otheruser1'
'otheruser2'
'otheruser3'