2

我想知道 Cassandra 的二级索引与 DSE 放在 CF 上的 solr 索引的性能差异。

我们有一些没有放置二级索引的 CF,因为我们的印象是二级索引会(最终)导致重读/写 CF 的重大性能问题。我们正试图转向 Solr 以允许搜索这些 CF,但看起来加载索引模式会修改 CF 以在感兴趣的列上具有二级索引。

想知道 Solr 索引是否不同于 Cassandra 的二级索引?并且,它最终是否会导致带有大型数据集和大量读/写的 CF 的缓慢查询(插入/读取)?如果是这样,您会建议自定义索引(我们想避免)吗?顺便说一句——我们也在使用(尝试使用)Solr 进行空间搜索。

感谢您提供的任何建议/链接。


更新:为了更好地理解我为什么要问这些问题,并看看我是否在问正确的问题——我们用例的描述:

我们正在收集传感器事件——很多!我们将它们存储在时间序列 CF (EventTL) 和瘦 CF (Event) 中。因为我们在 Event CF 中大量写入(插入和更新),所以我们没有放置任何二级索引。我们现在的查询仅限于通过 Event 的单个事件或通过 EventTL 的事件时间范围(除非我们创建额外的胖 CF 以允许对事件的其他属性进行范围查询)。

这就是 DSE (Solr+Cassandra) 可以帮助我们的地方。我们认为利用 Solr 搜索将允许我们避免创建额外的胖 CF 以允许搜索事件的其他属性,并允许我们一次搜索多个属性(位置 + 文本/属性)。但是,通过 Solr 添加 Event 的索引模式后,查看 Event CF 的定义如何变化表明二级索引已创建。这导致了这些索引是否会为在 Event 中插入/更新行(最终)产生问题的问题。我们需要能够“快速”插入新事件——因为事件可能以每秒 1000+ 的速度进入。

4

2 回答 2

2

想知道 Solr 索引是否不同于 Cassandra 的二级索引?

DSE 搜索使用 Cassandra 二级索引 API。

并且,它最终是否会导致带有大型数据集和大量读/写的 CF 的缓慢查询(插入/读取)?

在超过给定服务器集群的最佳性能阈值之前,Lucene 和 Solr 容量规划是一个好主意。

如果是这样,您会建议自定义索引(我们想避免)吗?顺便说一句——我们也在(尝试使用)Solr 进行空间搜索。

DSE 搜索查询与 Apache Solr 查询一样快。

于 2013-09-25T12:20:04.453 回答
1

由于您的用例是空间搜索,我认为 Cassandra 的二级索引功能不适合您。这是一篇关于二级索引的相当简洁的文章,您可能会发现它很有用:http ://www.datastax.com/docs/1.1/ddl/indexes

你应该可以用 Solr 做到这一点。

这是一篇应该与您相关的帖子:

http://digbigdata.com/geospatial-search-cassandra-datastax-enterprise/

于 2013-09-24T23:02:17.203 回答