indexing - Apache Cassandra 。二级索引的优缺点

标签 indexing nosql cassandra

我读过,Cassandra 中的二级索引是非常无用的功能。实际上,它使写入数据库的速度要慢得多,您只能通过精确索引找到值,并且您需要向 claster 中的所有服务器发出请求以通过索引找到值。谁能告诉我好处,这将是使用二级索引的原因?

最佳答案

当您向表列添加二级索引时,查询变得更加灵活。您可以将索引列添加到 WHERE SELECT的条款.

何时使用二级索引
您想要查询不是主键且不属于组合键的列。您要查询的列几乎没有唯一值(我的意思是,假设您有一个列 Town,这是二级索引的不错选择,因为很多人将来自同一个城镇,但是出生日期不会是一个很好的选择)。

何时避免二级索引
尽量不要在包含大量唯一值的列上使用二级索引,这将产生很少的结果。

与往常一样,请查看文档:

  • About Indexes in Cassandra
  • FAQ for Secondary Indexes
  • 关于indexing - Apache Cassandra 。二级索引的优缺点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17514757/

    相关文章:

    cassandra多数据中心数据同步滞后

    arrays - 展平 Lua 中的嵌套列表

    ios - 为什么是 objectForKey : @"" returning (null)?

    c# - 如何在Ravendb中创建复合索引

    java - 如何将批量数据单独插入到mongoDB中?

    spring-boot - 创建 com.example.betterreadsDataloader.BetterreadsDataloader1Application 中定义的名称为 'sessionBuilderCustomizer' 的 bean 时出错

    mysql - 强制 MySQL 使用非包含索引来避免表扫描?

    java - 使用 Morphia 更新对象数组

    用于个人非分布式工作的 MongoDB

    cassandra - 如果电话号码用作表的主键,scylla/cassandra 集群上的读/写操作是否会发生偏斜?