gpt4 book ai didi

cassandra - Cassandra - 基于时间戳数据类型的更新/删除

转载 作者:行者123 更新时间:2023-12-04 08:06:21 24 4
gpt4 key购买 nike

我有下面的表格结构,其中包含失败的记录。

CREATE TABLE if not exists dummy_plan (
id uuid,
payload varchar,
status varchar,
bucket text,
create_date timestamp,
modified_date timestamp,
primary key ((bucket), create_date, id))
WITH CLUSTERING ORDER BY (create_date ASC)
AND COMPACTION = {'class': 'TimeWindowCompactionStrategy',
'compaction_window_unit': 'DAYS',
'compaction_window_size': 1};
我的 table 看起来像下面
| id | payload | status | bucket     | create_date              | modified_date |
| abc| text1 | Start | 2021-02-15 | 2021-02-15 08:07:50+0000 | |
表和记录已成功创建并插入。但是在处理之后,我们想根据Id更新(如果失败)和删除(如果成功)记录。
但是我遇到了时间戳问题,我尝试给出相同的值,但它仍然没有删除/更新。
似乎 Cassandra 不适用于带时间戳的 EQ。
请指导。
先感谢您。

最佳答案

Cassandra 可以很好地处理时间戳列 - 您可以对其使用相等运算。但是您需要确保在值中包含毫秒,否则它将不匹配:

cqlsh> insert into test.dummy_service_plan_contract (id, create_date, bucket)
values (1, '2021-02-15T11:00:00.123Z', '123');
cqlsh> select * from test.dummy_service_plan_contract;
bucket | create_date | id | modified_date | payload | status
--------+---------------------------------+----+---------------+---------+--------
123 | 2021-02-15 11:00:00.123000+0000 | 1 | null | null | null

(1 rows)
cqlsh> delete from test.dummy_service_plan_contract where bucket = '123' and
id = 1 and create_date = '2021-02-15T11:00:00Z';
cqlsh> select * from test.dummy_service_plan_contract;
bucket | create_date | id | modified_date | payload | status
--------+---------------------------------+----+---------------+---------+--------
123 | 2021-02-15 11:00:00.123000+0000 | 1 | null | null | null

(1 rows)
cqlsh> delete from test.dummy_service_plan_contract where bucket = '123' and
id = 1 and create_date = '2021-02-15T11:00:00.123Z';
cqlsh> select * from test.dummy_service_plan_contract;
bucket | create_date | id | modified_date | payload | status
--------+-------------+----+---------------+---------+--------

(0 rows)
如果您在 cqlsh 中没有看到输出中的毫秒数,那么你需要配置 datetimeformat .cqlshrc 中的设置

关于cassandra - Cassandra - 基于时间戳数据类型的更新/删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66204560/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com