<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之旅 廣告
                #使文本可以被搜索 第一個不得不解決的挑戰是如何讓文本變得可搜索。在傳統的數據庫中,一個字段存一個值,但是這對于全文搜索是不足的。想要讓文本中的每個單詞都可以被搜索,這意味這數據庫需要存多個值。 支持一個字段多個值的最佳數據結構是[倒排索引](052_Mapping_Analysis/35_Inverted_index.md)。倒排索引包含了出現在所有文檔中唯一的值或詞的有序列表,以及每個詞所屬的文檔列表。 Term | Doc 1 | Doc 2 | Doc 3 | ... ------------------------------------ brown | X | | X | ... fox | X | X | X | ... quick | X | X | | ... the | X | | X | ... > 注意 >當討論倒排索引時,我們說的是把文檔加入索引。因為之前,一個倒排索引是用來索引整個非結構化的文本文檔。ES中的文檔是一個結構化的JSON文檔。實際上,每一個JSON文檔中被索引的字段都有它自己的倒排索引。 倒排索引存儲了比包含了一個特定term的文檔列表多地多的信息。它可能存儲包含每個term的文檔數量,一個term出現在指定文檔中的頻次,每個文檔中term的順序,每個文檔的長度,所有文檔的平均長度,等等。這些統計信息讓Elasticsearch知道哪些term更重要,哪些文檔更重要,也就是[相關性](056_Sorting/90_What_is_relevance.md)。 需要意識到,為了實現倒排索引預期的功能,它必須要知道集合中所有的文檔。 在全文檢索的早些時候,會為整個文檔集合建立一個大索引,并且寫入磁盤。只有新的索引準備好了,它就會替代舊的索引,最近的修改才可以被檢索。 ##不可變性 寫入磁盤的倒排索引是不可變的,它有如下好處: * 不需要鎖。如果從來不需要更新一個索引,就不必擔心多個程序同時嘗試修改。 * 一旦索引被讀入文件系統的緩存(譯者:在內存),它就一直在那兒,因為不會改變。只要文件系統緩存有足夠的空間,大部分的讀會直接訪問內存而不是磁盤。這有助于性能提升。 * 在索引的聲明周期內,所有的其他緩存都可用。它們不需要在每次數據變化了都重建,因為數據不會變。 * 寫入單個大的倒排索引,可以壓縮數據,較少磁盤IO和需要緩存索引的內存大小。 當然,不可變的索引有它的缺點,首先是它不可變!你不能改變它。如果想要搜索一個新文檔,必須重見整個索引。這不僅嚴重限制了一個索引所能裝下的數據,還有一個索引可以被更新的頻次。
                  <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>

                              哎呀哎呀视频在线观看