Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在使用超级专栏来创建两个人之间的聊天。
每个聊天都有自己的行,其中包含所有消息。
当用户想要删除该聊天时,我只需将列重命名为类似的old_chat_deleted名称,然后创建新的列族来存储新的聊天消息,但现在的问题是如何重命名旧的列族?
old_chat_deleted
如果这不可能,剩下的唯一选择是删除整个 cf 并使用新名称创建新的,但是如果聊天中的100k+消息可能会非常慢,因为我需要将所有数据检索回我的服务器然后插入回来了...
100k+
开箱即用不支持重命名列 CF。
您不需要为每次聊天都创建一个新的 CF。您可以创建一个包含所有聊天消息的 CF,并包含标识聊天会话的索引列。或者您可以为聊天记录使用复合键。
为每个聊天创建一个 CF 是一种不好的做法,并且会严重影响 cassandra 的性能。