使用INSERT覆盖cassandra中的行,是否会导致墓碑?

由于数据量和速度的原因,在我们的情况下将数据写入Cassandra而不会导致它创建墓碑是至关重要的.目前我们只写了一次,然后再也没有需要再次更新行,只是再次获取数据.

现在有一种情况,我们实际上需要编写数据,然后用更多的数据完成它,一段时间后就完成了.
它可以由任何一个制成;

>使用INSERT(所有数据都可用)再次覆盖连续的所有数据,或
>仅对新数据执行更新.

什么是最好的方法,牢记速度而不是创建墓碑是重要的?

解决方法

只有在删除数据或使用TTL值时才会创建逻辑删除.

Cassandra与您描述的用例非常吻合.增量添加数据将适用于INSERT和UPDATE语句.如果为同一分区键添加数据,Cassandra会将数据存储在不同的位置.定期运行压缩将再次合并数据以获得单个密钥,以优化访问和可用磁盘空间.这将基于写入值的时间戳发生,但不会创建任何新的逻辑删除.
您可以详细了解Cassandra如何存储数据,例如here.

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...