我在cassandra中有这张表
CREATE TABLE daily_stats (
day text,
user text,
clicks counter
PRIMARY KEY ((day, user))
)
我需要改变的是分区键
PRIMARY KEY (day, user)
现在cassandra不允许我改变这样的表格。 它也不支持table renaming。
因此,更新cassandra表中主键的唯一方法是创建新表并从旧表迁移数据。这很容易。
但我想为其他未来的变化准备基础设施。
我可以轻松提出的是为每个表添加版本后缀
daily_stats_v1
daily_stats_v2
或者每个键空间
app_stats_v1
app_stats_v2
然后,创建新的固定表,更新应用程序以使用此表并最终从旧表迁移数据将非常容易。
无论如何,我对良好实践和#34;正确的方法更感兴趣"。