我正在阅读"如何读取数据"在http://docs.datastax.com/en/cassandra/3.0/cassandra/dml/dmlAboutReads.html。它提到了#34;在一个分区中,所有行的查询成本都不相同。分区的最开始(第一行,按密钥定义聚类)查询的成本稍低,因为不需要查询分区级索引。"
那么在分区位于读取特定行或某些特定行之后Cassandra会做什么?它是对所有行的简单迭代。或者是否有更有效的方法来查找特定行的偏移量?
答案 0 :(得分:1)
Cassandra有一个“提升索引”的概念 - 用于具有多行(index file format)的大型分区。
如果在具有多行的分区中搜索特定行,则索引文件中的提升索引用于查找包含与此行所属行范围相关的信息的数据文件部分。
Cassandra 3.6改进了推广的索引格式,以便更好地搜索(new promoted index format)