91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Elasticsearch單字段支持的最大字符數是多少

發布時間:2022-03-21 16:56:45 來源:億速云 閱讀:553 作者:iii 欄目:大數據

這篇文章主要介紹“Elasticsearch單字段支持的最大字符數是多少”,在日常操作中,相信很多人在Elasticsearch單字段支持的最大字符數是多少問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Elasticsearch單字段支持的最大字符數是多少”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

01

ignore_above的作用?

ES中用于設置超過設定字符后,不被索引或者存儲。

Strings longer than the ignore_above setting will not be indexed or stored.

02

ignore_above用法

PUT ali_test

{

  "mappings": {

    "ali_type": {

        "properties": {

               "url": {

              "type":"keyword",

               "ignore_above":256

            },

               "url_long": {

              "type":"keyword"

            },

             "url_long_long": {

              "type":"keyword",

               "ignore_above":32766

            }

        }

    }

  }

}

03

當字符超過給定長度后,能否存入?

驗證表名,對于以上mapping中設置的url,url_long,url_long_long3個字段。超過256字符的url,都可以存入。

3.1 keyword類型,普通長度驗證

插入url長度為:1705個字符,如下所示:

post ali_test/ali_type/1

{

  "url" : "1705個字符的url"

}

url參考地址:http://t.cn/zH6FHG7

檢索:

GET ali_test/ali_type/_search

{

  "query": {

    "term": {

"url" : "1705個字符的url"

}

}

}

返回結果:

{

  "took": 1,

  "timed_out": false,

  "_shards": {

    "total": 5,

    "successful": 5,

    "failed": 0

  },

  "hits": {

    "total": 0,

    "max_score": null,

    "hits": []

  }

}

結論:

1705個字符,url、url_long、url_long_long都可以存入,可以通過head插件查看結果。

但是url term檢索無法檢索返回結果,原因: url字段設置了"ignore_above":256,導致超出256個字符后不被索引。

Elasticsearch單字段支持的最大字符數是多少

3.2 對于keyword類型,臨界長度驗證

post 32767個字符的文檔,報錯如下:

{
    "error":{
        "root_cause":[
            {

                "type":"illegal_argument_exception",

                "reason":"Document contains at least one immense term in field="url_long" (whose UTF8 encoding is longer than the max length 32766), all of which were skipped.  Please correct the analyzer to not produce such terms.  The prefix of the first immense term is: '[104, 116, 116, 112, 58, 47, 47, 119, 119, 119, 46, 103, 111, 111, 103, 108, 101, 46, 99, 111, 109, 47, 115, 101, 97, 114, 99, 104, 63, 104]...', original message: bytes can be at most 32766 in length; got 32767"

            }
        ],
        "caused_by":{

            "type":"max_bytes_length_exceeded_exception",

            "reason":"max_bytes_length_exceeded_exception: bytes can be at most 32766 in length; got 32767"

        }
    },
    "status":400

}

post 32766個字符后,能提交成功,返回結果如下:

{

  "_index": "ali_test",

  "_type": "ali_type",

  "_id": "2000",

  "_version": 1,

  "result": "created",

  "_shards": {

    "total": 2,

    "successful": 2,

    "failed": 0

  },

  "created": true

}


結論:keyword類型的最大支持的長度為——32766個UTF-8類型的字符。

也就是說term精確匹配的最大支持的長度為32766個UTF-8個字符。

04

text類型和keyword類型的存儲字符數區別?

text類型:支持分詞、全文檢索,不支持聚合、排序操作。適合大字段存儲,如:文章詳情、content字段等;

keyword類型:支持精確匹配,支持聚合、排序操作。適合精準字段匹配,如:url、name、title等字段。

一般情況,text和keyword共存,設置mapping如下:

{

  "mappings": {

    "ali_type": {

        "properties": {

            "title_v1": {

                 "analyzer":"ik_max_word",

                    "type":"text",

                 "term_vector" : "with_positions_offsets",

                    "fields":{

                        "keyword":{

                            "ignore_above":256,

                            "type":"keyword"

                        }

                    }

            }

        }

    }

  }

}

到此,關于“Elasticsearch單字段支持的最大字符數是多少”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宁都县| 仲巴县| 阜宁县| 册亨县| 龙州县| 江安县| 张家界市| 汝南县| 天峨县| 铅山县| 勃利县| 三江| 沙坪坝区| 临沂市| 介休市| 得荣县| 古田县| 离岛区| 乌拉特后旗| 三河市| 武陟县| 太白县| 大宁县| 阳新县| 连南| 高雄市| 鲁甸县| 安图县| 崇明县| 电白县| 珠海市| 黄石市| 长丰县| 浦江县| 德庆县| 赤壁市| 枣强县| 两当县| 长武县| 峡江县| 伊宁县|