我正在阅读Elasticsearch文档,但没有找到这个问题的答案。
可以为聚集步骤指定的名称的最大长度是否有限制?
为了明确起见,当我说聚合步骤名称时,我指的是Elastic搜索文档中以下示例中的my-agg-name
:
GET /my-index-000001/_search
{
"size": 0,
"aggs": {
"my-agg-name": {
"terms": {
"field": "my-field"
}
}
}
}
我知道这是一个有点荒谬的问题,但我正在开发一个系统,它通过编程方式构建复杂的聚合,其部分输入来自用户输入-用例有点复杂,所以我需要知道需要对用户施加哪些限制。
1条答案
按热度按时间8fq7wneg1#
我尝试使用126500个字符作为聚合名称。在这个example中,我不知道哪个用户希望在输入中写入这么长的文本:)。我看不到聚合中名称的限制。正如@sinanorl所提到的,Java字符串变量长度可能存在限制。但我想提到的另一个问题是请求大小。当您放入这么长的名称时,请求大小会增加。这意味着为了处理请求,计算机开始使用更多的资源来处理这个长名称的请求,非常肯定这会导致速度变慢。因此我认为您需要强制用户使用逻辑大小。