如何在一条记录而不是整行上设置 TTL?
How to set TTL on one record rather than on an entire row?
Cassandra 有没有办法只为一条记录(一列)而不是整行设置 TTL。例如,有一个 table,其中包含临时用户数据,其中有一个 OTP 字段,该字段将在 30 分钟后过期。我正在尝试弄清楚如何仅在 OTP 记录而不是整个用户字段行上设置 TTL。
到目前为止,我找到的所有示例都在整行而不是任何特定记录上设置了 TTL。
我正在为 Cassandra 使用 Spring 数据。
使用带 TTL 的单独查询插入字段
如果您的 table 名称是 users
并且主键是 userid
然后使用 TTL 30 * 60 = 1800 插入带有 userid
的 OTP
字段秒
INSERT INTO users(userid, OTP) values(?, ?) USING TTL 1800;
Cassandra 有没有办法只为一条记录(一列)而不是整行设置 TTL。例如,有一个 table,其中包含临时用户数据,其中有一个 OTP 字段,该字段将在 30 分钟后过期。我正在尝试弄清楚如何仅在 OTP 记录而不是整个用户字段行上设置 TTL。
到目前为止,我找到的所有示例都在整行而不是任何特定记录上设置了 TTL。 我正在为 Cassandra 使用 Spring 数据。
使用带 TTL 的单独查询插入字段
如果您的 table 名称是 users
并且主键是 userid
然后使用 TTL 30 * 60 = 1800 插入带有 userid
的 OTP
字段秒
INSERT INTO users(userid, OTP) values(?, ?) USING TTL 1800;