我尝试在Cassandra表中插入主键中所有相同值的两条记录,并且插入成功。我是Cassandra的新手,并认为Cassandra中的Primary Keys不允许重复插入。这是不正确的?以下是我的主键
中的列PRIMARY KEY((customer_id,source_id),status_code,create_timestamp,modified_timestamp)
以下是我如何插入
insert into testkeyspace.customers
(customer_id, source_id, status_code,
create_timestamp, modified_timestamp)
value ('123e4567-e89b-12d3-a456-426655440000',
1122334455, 0, toTimestamp(now()), toTimestamp(now()));
答案 0 :(得分:3)
您对主键中的2个聚类列使用toTimestamp(now())
,因此2个插入的记录不太可能对这些列具有完全相同的值,即两个记录不重复。
查看this answer类似的问题
答案 1 :(得分:3)
需要注意的一点是,C *并没有明确禁止为主键提供重复值。具有重复值将覆盖先前的值(基于写入时间),将没有客户端消息来指示这种情况正在发生。您只会在后续读取时注意到。