如何在时间戳上对 cassandra table 进行分区?

How to partition on cassandra table on timestamp?

我有table这样的

CREATE TABLE ks.log_by_date (
        column_name text,
    status text,
    error_msg text,
    last_update_date date,
    last_update_timestamp timestamp,
    updated_user text,
    PRIMARY KEY (( column_name), last_update_date)
) WITH CLUSTERING ORDER BY ( last_update_date DESC );

INSERT INTO ks.log_by_date (column_name,last_update_date,error_msg,last_update_timestamp,status,updated_user) 
  VALUES ('column_log_by_date','2018-10-23','NONE',1540302120001,'ERROR','user1');

INSERT INTO ks.log_by_date (column_name,last_update_date,error_msg,last_update_timestamp,status,updated_user) 
  VALUES ('column_log_by_date','2018-10-23','NONE',1540302340001,'SUCCESS','user1');

当我根据具有不同时间戳的 "last_update_timestamp" 列插入两列时 1540302120001 和 1540302340001 该行被覆盖。

我在这里做错了什么?为什么它覆盖行而不是两个单独的行。 我怎样才能在这里插入两行...基于 last_update_timestamp

您的帮助非常有用。

如果你想将last_update_timestamp不同的2行算作单独的行,那么你需要将last_update_timestamp放入主键,作为聚类列:

PRIMARY KEY (( column_name), last_update_date, last_update_timestamp)

但我不知道 - 您真的需要 last_update_date 吗?您是否需要 select 所有具有特定 last_update_date 的行?