如果弹性文件中存在上述忽略之处,谁能帮助您解决有关解释的疑问之一 它提到 长度超过ignore_above设置的字符串将不会被索引或存储。对于字符串数组,将对每个数组元素分别应用ignore_above,并且不会索引或存储长于ignore_above的字符串元素。
这是否意味着如果我添加数据的时间长于长度,那么它将不允许在ES中发布数据
https://www.elastic.co/guide/en/elasticsearch/reference/current/ignore-above.html#ignore-above
这是我尝试过的
我对索引testData(即我创建的索引)的映射如下
使用PUT映射API,我添加了以下映射
{
"testdata": {
"mappings": {
"testdata": {
"properties": {
"email": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
}
}
}
}
}
}
我添加了长度约为150kb的数据(长度约为145149)
它允许在电子邮件字段中添加数据,如果它允许这样做,或者我弄错了这个概念,我也可以使用后期搜索端点搜索数据。
答案 0 :(得分:0)
您的设置ignore_above:256表示如果字符串长度大于256个字符,那么将为文档建立索引,但不会为该字段建立索引。如果字符串长度小于256个字符,则将对文档及其字段建立索引。示例-文本“ stackoverflow”的字符串长度为13个字符。希望这可以澄清。
根据您的映射,ignore_above设置将应用于email.keyword
字段。
答案 1 :(得分:0)
我今天解决了我的问题,我无法通过xx.keyword获得agg条款值。我的值长度是315。
如果字符串长于ignore_above值,则xx.keyword将不适用于搜索。但是该值可以保存,您可以按其他字段搜索文档。