为什么Solr的日志时间序列是按时间存储在不同的集合中,而不是按时间存储在不同的分片中

Why are Solr's logs time series stored in different collections based on time instead of different shards based on time

如果您看到 Lucidworks Time Based Partitioning or Large Scale Log Analytics with Solr,多个 solr "collections" 被按时分区创建。

我的问题是

  1. 在这种情况下,为什么不根据时间创建多个分片呢?
  2. 在多个集合的情况下,跨越多个 collections/time 的查询将如何完成?

隐式路由的多个分片或多个集合之间没有太大区别。发出查询时,您可以(可选)指定要搜索的分片或集合。

或者,您可以设置一个包含多个集合的别名,从而对搜索客户端隐藏物流。这使得在整个数据集上创建自定义视图变得容易,例如每年的别名,所有内容的别名和上一季度的别名。如果您以后决定以不同方式对数据进行切片,例如每周而不是每月进行一次收集,此更改对客户端应用程序是透明的。别名不适用于分片,因此这是更喜欢集合的原因之一。