Cassandra数据建模:动态列
我有一个表用户活动Cassandra数据建模:动态列,cassandra,data-modeling,Cassandra,Data Modeling,我有一个表用户活动 user_activity { user_id text user_name text email_id text password text activity1 text} 是否可以动态添加列 for ex - user1(user_id : Rowkey) user_name, emai_id, password, activity1, activity2 user2(user_id : Rowkey) user_name, emai_id, password
user_activity
{
user_id text
user_name text
email_id text
password text
activity1 text}
是否可以动态添加列
for ex -
user1(user_id : Rowkey)
user_name, emai_id, password, activity1, activity2
user2(user_id : Rowkey)
user_name, emai_id, password, activity1, activity2, activity3
user3(user_id : Rowkey)
user_name, emai_id, password, activity1
因为活动可以是任意数量的
提前感谢:)您可以使用
例如:
CREATE TABLE user_activity (
user_id text primary key,
emai_id text,
password text,
activity map<text,text>
);
更新:
UPDATE user_activity SET activity['activity1'] = 'updated test activity 1' where user_id = '1';
删除:
DELETE activity['activity2'] FROM user_activity WHERE user_id = '1';
注意:保持集合(映射)的大小较小,在Cassandra中,映射最大键数:65535,值大小:65535这是不可能使用CQL。。。早期的节俭用来支持它。。。。但您可以拥有数据类型映射的列
DELETE activity['activity2'] FROM user_activity WHERE user_id = '1';