gpt4 book ai didi

cassandra - 如何在cassandra中使用非主键删除一行

转载 作者:行者123 更新时间:2023-12-04 12:13:34 25 4
gpt4 key购买 nike

这是我的 table id作为主键:
enter image description here
我想删除基于 msisdn 的行柱子。
我怎样才能做到这一点?
请建议

最佳答案

答案是:通过编写一个首先执行 select 的工具使用 allow filtering确定主键,然后使用确定的主键进行删除。

实际答案是:您不会,因为我刚刚提出的建议会非常缓慢,使您的集群承受很大压力,并且通常会揭示对 Cassandra 数据建模如何工作的误解。

Cassandra 数据建模与 SQL 数据建模根本不同。在 SQL 中,你有你的主键,你规范化,然后你非常有信心你将能够以良好的性能查询和编写大多数东西。在 Cassandra 中,您可以为您的查询建模,我所说的查询是指任何包含 where 的内容。 .

假设您出于某种原因设计了这样的表格,您可以做的是添加一个物化 View ,该 View 添加 msisdn到主键,把它变成分区键,然后变成id成一个聚类列。这样,您至少可以在不执行 allow filtering 的情况下有效地进行查询。 .您仍然需要两次往返,一次用于阅读,一次用于删除,但该成本可能是可以接受的。如果不是,您需要从根本上重新设计您的表,记住您需要通过 msisdn 进行查询。 .

关于cassandra - 如何在cassandra中使用非主键删除一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52420224/

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