个人网站包含哪些内容,怎样建立自己购物网站,最新购物网站建设框架,永久免费wifi响应参数讲解:
key #xff08;字符串#xff09;由 categorization_analyzer 提取的标记组成#xff0c;这些标记是类别中所有输入字段值的共同部分。 doc_count #xff08;整数#xff09;与类别匹配的文档数量。 max_matching_length #xff08;整数#xff09;从… 响应参数讲解:
key 字符串由 categorization_analyzer 提取的标记组成这些标记是类别中所有输入字段值的共同部分。 doc_count 整数与类别匹配的文档数量。 max_matching_length 整数从较短消息中生成的类别也可能与从较长消息中生成的类别匹配。 max_matching_length 表示应被视为属于该类别的消息的最大长度。在搜索属于该类别的消息时任何长度超过 max_matching_length 的消息都应被排除。使用此字段可以防止对短消息类别的搜索匹配到更长的消息。
regex 字符串一个正则表达式它将匹配类别中包含的所有输入字段值。在类别中包含的值的顺序不同时 regex 可能不会包含 key 中的每个术语。然而在简单情况下 regex 将是按顺序连接的术语组成的正则表达式允许在它们之间有任意部分。不建议将 regex 作为搜索原始被分类文档的主要机制因为正则表达式搜索非常慢。相反应该使用 key 字段中的术语来搜索匹配的文档因为术语搜索可以利用倒排索引因此速度要快得多。然而在某些情况下使用 regex 字段来测试未被索引的少量消息是否属于该类别或者确认 key 中的术语在所有匹配文档中按正确顺序出现可能是有用的。
总结:
重新分析大型结果集将需要大量的时间和内存。应将此聚合与异步搜索Async search结合使用。此外你还可以考虑将该聚合作为采样器sampler或多样化采样器diversified sampler聚合的子聚合使用。这通常可以提高速度和内存使用效率。
POST log-messages/_search
{ aggs: { categories: { categorize_text: { field: message } } }
}
输出
{ aggregations: { categories: { buckets: [ { doc_count: 3, key: Node shutting down, regex: .*?Node.?shutting.?down.*?, max_matching_length: 49 }, { doc_count: 1, key: Node starting up, regex: .*?Node.?starting.?up.*?, max_matching_length: 47 } ] } }
}
使用 categorization_analyzer 的示例配置
{ aggs: { categories: { categorize_text: { field: message, categorization_analyzer: { char_filter: [html_strip], tokenizer: ml_standard, filter: [lowercase, stop] } } } }
}
使用 categorization_filters 的示例配置
{ aggs: { categories: { categorize_text: { field: message, categorization_filters: [ \\w\\_\\d{3}, // 过滤掉类似 foo_123 的模式 ERROR:.* // 过滤掉以 ERROR: 开头的日志 ] } } }
}