<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # Mapping(映射) ## Mapping(映射) Mapping是用來定義一個文檔(document),以及它所包含的屬性(field)是如何存儲和索引的。比如,使用mapping來定義: * 哪些字符串屬性應該被看做全文本屬性(full text fields)。 * 哪些屬性包含數字,日期或者地理位置。 * 文檔中的所有屬性是否都能被索引(_all 配置)。 * 日期的格式。 * 自定義映射規則來執行動態添加屬性。 ## Mapping Types(映射類型) 每一個索引都有一個或多個映射類型,用于在一個索引中把文檔劃分為具有邏輯關系的分組。比如,用戶文檔應該存儲為user 類型,博客應該放置于blogpost類型下。 每一個映射類型包含: [Meta_fields](http://www.sohu.wiki/pages/viewpage.action?pageId=9405203)(元標簽) ? ? ? 元標簽用于制定如何處理文檔相關的元數據。例如元標簽包含文檔的[_index](http://www.sohu.wiki/display/Elasticsearch/_index+field),?[_type](http://www.sohu.wiki/display/Elasticsearch/_type+field), [_id](http://www.sohu.wiki/display/Elasticsearch/_id+field), 和 [_source](http://www.sohu.wiki/display/Elasticsearch/_source+field)字段。 [Fields](http://www.sohu.wiki/pages/viewpage.action?pageId=7372806) or properties(字段或屬性) ? ? ? 每一個映射類型包含有一些與該類型相關的字段或者屬性。比如一個user類型也許包含title,name,age屬性,而blogpost類型也許包含title, body, user_id 和 created屬性。在同一索引中,不同的映射類型下具有相同名稱的屬性具有相同的映射。 ## Field datatypes(字段/屬性 數據類型) 每一個屬性都有一個數據類型: * 簡單類型:[text](http://www.sohu.wiki/display/Elasticsearch/Text), [keyword](http://www.sohu.wiki/display/Elasticsearch/Keyword), [date](http://www.sohu.wiki/display/Elasticsearch/Date), [long](http://www.sohu.wiki/display/Elasticsearch/Numeric), [double](http://www.sohu.wiki/display/Elasticsearch/Numeric), [boolean](http://www.sohu.wiki/display/Elasticsearch/Boolean) 或者 [ip](http://www.sohu.wiki/display/Elasticsearch/IP)。 * 支持JSON層次結構的類型:[object](http://www.sohu.wiki/display/Elasticsearch/Object) 或者 [nested](http://www.sohu.wiki/display/Elasticsearch/Nested)。 * 特定類型:?[geo_point](http://www.sohu.wiki/display/Elasticsearch/Geo-point), [geo_shape](http://www.sohu.wiki/display/Elasticsearch/Geo-Shape), 或者 [completion](http://www.sohu.wiki/display/Elasticsearch/Completion+Suggester) 根據不同的目的以不同的方式索引同一字段往往是有用的,例如,一個字符串字段可以作為全文本搜索的文本字段進行[索引](http://www.sohu.wiki/pages/viewpage.action?pageId=9405835),也可以作為排序或者聚合的關鍵字來進行[索引](http://www.sohu.wiki/pages/viewpage.action?pageId=9405835)。另外,你可以通過[標準分詞](http://www.sohu.wiki/pages/viewpage.action?pageId=10027572),[英文分詞](http://www.sohu.wiki/pages/viewpage.action?pageId=10028349#id-語言分析器-english分析器)以及[法文分詞](http://www.sohu.wiki/pages/viewpage.action?pageId=10028349#id-語言分析器-french分析器)來索引一個字符串。 這就是進行multi-fields的目的。大多數數據類型都能通過[fields](http://www.sohu.wiki/pages/viewpage.action?pageId=9405837)配置來支持multi-fields。 ## Settings to prevent mappings explosion 接下來的設置用于限制通過人為或者動態創建field映射的數量,為了防止bad文檔引起mapping explosion。 index.mapping.total_fields.limit ? ? ? 一個索引中的字段/屬性的最大數量,默認為1000. index.mapping.depth.limit ? ? ? 一個字段/屬性的最大深度,用于控制內部對象的數量。例如,如果所有的字段/屬性都定義為root對象級別,那么深度就為1。如果有一個對象映射,那么深度為2。默認值為20。 index.mapping.nested_fields.limit ? ? ? 一個索引中嵌套字段/屬性的最大值,默認為50。用100個嵌套字段索引1個文檔實際上相當于索引了101個文檔,因為每個嵌套文檔都會作為單獨的隱藏文檔被索引。 ## Dynamic mapping(動態映射) 字段和映射在被使用前是不需要定義的。可以通過索引一個文檔來自動添加新的映射和字段名。可以向頂層映射類型和內部對象以及嵌套字段中添加新的字段。 通過配置[動態映射](http://www.sohu.wiki/pages/viewpage.action?pageId=9405268)規則來定制映射,用于新的類型和字段。 ## Explicit mappings(顯式映射) 你可以在[創建索引](http://www.sohu.wiki/pages/viewpage.action?pageId=4882789)的時候創建映射類型和字段映射,并且你可以通過[PUT mapping API](http://www.sohu.wiki/pages/viewpage.action?pageId=4882803)添加映射類型和字段到一個已經存在的索引中。 ## Updating existing mappings(更新已存在的映射) 除了已經存在的文檔之外,存在的類型和字段映射不能被更新。改變映射意味著讓已經索引的文檔失效。相反,你應該使用正確的映射以及重新索引數據來創建新的索引。 ## Fields are shared across mapping types(映射類型中共享字段) 映射類型用于給字段分組,但是每個映射類型中的字段不是相互獨立的。以下情況下的字段具有相同的映射。 * 相同名稱 * 在同一索引中 * 不同的映射類型 * 映射到同一字段內部 如果title字段同時存在于user和blogpost映射類型中,那么title字段在每個類型中都有相同的映射。除了[copy_to](http://www.sohu.wiki/pages/viewpage.action?pageId=10027040), [dynamic](http://www.sohu.wiki/pages/viewpage.action?pageId=10028289), [enabled](http://www.sohu.wiki/pages/viewpage.action?pageId=10028302), [ignore_above](http://www.sohu.wiki/pages/viewpage.action?pageId=10028661), [include_in_all](http://www.sohu.wiki/pages/viewpage.action?pageId=9405298), 和 [properties](http://www.sohu.wiki/pages/viewpage.action?pageId=10027013),這些屬性在每個字段中可能會有不同的設置。 通常,具有相同名稱的字段也包含同樣的數據類型,所以具有相同的映射不是問題。通過選擇更多的描述名稱能夠解決沖突,如`user_title`?和`blog_title.` ## Example mapping(舉例) 可以在創建索引的時候指定映射: ``` curl -XPUT 'localhost:9200/my_index?pretty' -H 'Content-Type: application/json' -d' { "mappings": { "user": { "_all": { "enabled": false }, "properties": { "title": { "type": "text" }, "name": { "type": "text" }, "age": { "type": "integer" } } }, "blogpost": { "_all": { "enabled": false }, "properties": { "title": { "type": "text" }, "body": { "type": "text" }, "user_id": { "type": "keyword" }, "created": { "type": "date", "format": "strict_date_optional_time||epoch_millis" } } } } } ' ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看