如何在Splunk中有效地采样很长时间?

Are*_*rel 5 performance time search splunk random-sample

我想在很长一段时间内(例如,几个月或几年)运行Splunk查询,但我正在搜索足够的数据,我只能搜索数小时或数天的数据.

但是,对于我想在Splunk中回答的问题,我会对统一或统计上无偏见的数据样本感到满意.换句话说,我希望查询返回N个事件在过去一个月内展开,而不是任何N个连续事件.

我考虑的一种方法是仅搜索事件,date_minute=0以便快速过滤1/60事件,这有助于但不是非常灵活.

有没有更好的方法在Splunk中有效地采样事件?

Are*_*rel 2

我在下面的 Splunk Answers 页面上找到了有关采样的相关讨论。

http://answers.splunk.com/answers/3743/is-it-possible-to-get-a-sample-set-of-search-results-rather-than-the-full-search-results

date_minute按或进行过滤的另一种方法date_secondwhere使用_serial属性或random()函数来过滤子句中的事件。例如,

* | 其中 (_serial % 60) = 0 | ...

或者

* | 其中 (随机() % 60) = 0 | ...

然而,在这两种情况下,搜索似乎都会对数据进行完整扫描。如果您需要灵活性并且结果会输入到更昂贵的查询中,那么这可能仍然是可取的。否则,使用该date_second方法会明显更快,因为事件显然是由该字段索引的。例如,上面的两个查询运行在3m 20s数据的子集上,而下面的查询运行在11s相同的数据上。

* 日期秒=0 | ...