0
我想刪除表中比給定時間戳更早的請求中的所有條目。刪除時間戳比給定時間戳更早的卡桑德拉表條目
表要求的結構:
CREATE TABLE requests (
request_id uuid,
request_timestamp timestamp,
PRIMARY KEY (request_id, request_timestamp)
) WITH CLUSTERING ORDER BY (request_timestamp ASC)
顯然,下面的查詢是不行的,因爲主鍵REQUEST_ID必須指定:
Delete from Requests where request_timestamp < givenTimestamp;
但是,當我有一個巨大的表數百萬個條目,使用帶有IN子句的查詢將不太理想:
Delete from Requests where request_id in (id1, id2.....) and request_timestamp < givenTimestamp;
一個選項將使用TTL(生存時間),但我們想要保持條目的TTL可配置並且使用TTL,這是不可能的。
還有哪些方法可以從表中刪除舊條目?
感謝