0
我讀過很多博客,告訴不要使用Cassandra COLLECTIONS。由於UPDATE操作也會創建Tombstone,所以會影響性能。由於過多的墓碑可能導致應用程序死亡。可以使用Cassandra Collections嗎?
可以存儲更少的更新數據,如輔助手機號碼,用戶的電子郵件嗎? 等?
或者我應該避免使用CSV或JSON存儲在Varchar中的集合?
我讀過很多博客,告訴不要使用Cassandra COLLECTIONS。由於UPDATE操作也會創建Tombstone,所以會影響性能。由於過多的墓碑可能導致應用程序死亡。可以使用Cassandra Collections嗎?
可以存儲更少的更新數據,如輔助手機號碼,用戶的電子郵件嗎? 等?
或者我應該避免使用CSV或JSON存儲在Varchar中的集合?
是的,你可以使用收集
記得有上集合的大小限制:
和墓碑創建測試,比方說,你有表
CREATE TABLE playlists (
id uuid,
song_order int,
tags set<text>,
PRIMARY KEY(id, song_order)
);
如果您使用下面的更新語句,墓碑將被創建
UPDATE playlists SET tags = {'1973'}
WHERE id = 62c36092-82a1-3a00-93d1-46196ee77204 AND song_order = 1;
但是如果你使用下面的更新語句,不會產生墓碑
UPDATE playlists SET tags = tags + {'1973'}
WHERE id = 62c36092-82a1-3a00-93d1-46196ee77204 AND song_order = 1;