Bucket Count K-S Test是 Elasticsearch 中的一种兄弟管道聚合(sibling pipeline aggregation),用于执行双样本柯尔莫哥洛夫-斯米尔诺夫检验(Kolmogorov-Smirnov Test,简称 K-S 检验)。这种聚合主要用于比较两个分布之间的差异,具体来说,是通过比较兄弟聚合中的文档计数分布与一个已知分布(如均匀分布或预定义的分布)来实现的。
工作原理
• 兄弟聚合:Bucket Count K-S Test 是一种兄弟管道聚合,这意味着它依赖于另一个聚合(如`range`聚合或`terms`聚合)的结果。兄弟聚合会生成一系列的桶(buckets),每个桶包含一组文档的计数。
• K-S 检验:K-S 检验是一种统计方法,用于比较两个分布是否来自同一总体。Bucket Count K-S Test 通过计算兄弟聚合生成的文档计数分布与预定义分布之间的差异来评估它们的相似性。
• 参数配置:
• `buckets_path`:指定兄弟聚合中包含文档计数的路径,通常是`range`聚合或`terms`聚合的`_count`。
• `alternative`:定义 K-S 检验的替代假设,可选值为`less`、`greater`或`two_sided`,默认为所有可能的替代假设。
• `fractions`:定义用于比较的分布,默认为均匀分布。
• `sampling_method`:指定抽样方法,可选值为`upper_tail`、`uniform`或`lower_tail`,默认为`upper_tail`。
使用场景
Bucket Count K-S Test 适用于以下场景:
• 性能分析:通过比较不同版本的软件或系统在延迟分布上的差异,评估性能改进。
• 质量控制:检测生产数据中是否存在异常分布,例如,通过比较实际数据与预期的均匀分布。
• 用户行为分析:分析用户行为数据在不同时间段或不同用户群体中的分布差异。
示例
以下是一个使用 Bucket Count K-

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



