Lot*_*out 6 complexity-theory big-o key time-complexity cassandra
假设只有一个节点具有R行。基本Cassandra操作的理论时间复杂度是多少?
更具体地说,我想知道:
key = item。我认为O(log(R))是这样吗?key > item,即切片。C *是否将获取所有R行以判断是否满足条件,结果是O(R)?那有序行呢?key > 10 AND key < 12。C *是否会首先选择所有匹配项key > 10,然后使用进行过滤key < 12?还是C *将它们组合成一个条件进行查询?尽管您似乎在谈论读取操作,但您没有澄清您的意思是读取还是写入。Cassandra 中的读取路径针对数据在磁盘上的结构进行了高度优化,具有不同的读取缓存、布隆过滤器和不同的压缩策略(STCS、LTCS、TWCS)。数据写入磁盘上的一个或多个 SSTable 中,逻辑删除的存在会降低读取性能,有时甚至会显着降低。
Cassandra 架构旨在随着数据量的增长提供线性可扩展性。随着行数 R 变大,只有单个节点的前提将成为读取延迟的主要限制因素。