<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>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # 基本概念 Elasticsearch有幾個核心概念。開始學習Elasticsearch之前理解這些概念會對整個學習過程有很大的幫助。 ## 接近實時(NRT) Elasticsearch是一個近實時的搜索平臺。這意味著,從索引一個文檔直到這個文檔能夠被搜索到有一個很小的延遲(通常是一秒)。 ## 集群(cluster) 一個集群就是由一個或多個節點組織在一起, 它們共同持有你全部的數據, 并一起提供索引和搜索功能。 一個集群由一個唯一的名字標識, 這個名字默認就是“elasticsearch”。 這個名字很重要, 因為一個節點只能通過指定某個集群的名字來加入這個集群。 請確保您在不同環境中不要重復使用相同的集群名字,否則您最終可能會將節點加入到了錯誤的集群中。譬如你可以使用`logging-dev`、`logging-stage`、`logging-prod`來作為開發、演示、生產環境的集群名。 注意,一個集群中只包含一個節點也是合法的。另外,你也可以擁有多個集群,只需確保集群的名字唯一。 ## 節點(node) 一個節點是你集群中的一個服務器,作為集群的一部分,它存儲你的數據,參與集群的索引和搜索功能。 和集群類似, 一個節點也是由一個名字來標識的, 默認情況下, 在節點啟動時會隨機分配一個全局唯一標示來作為它的名字,如果你不希望是默認的你也可以自己指定。這個名字在集群管理時很重要,因為在管理過程中,你希望根據這個名稱去確定網絡中的服務器對應的是Elasticsearch集群中的哪個節點。 一個節點可以通過配置集群名稱來加入一個指定的集群。 默認情況下,每個節點都會被安排加入到一個叫做`elasticsearch`的集群中,這意味著,如果你在你的網絡中啟動了若干個節點, 并假定它們能夠相互發現彼此,它們將會自動地形成并加入到一個叫做`elasticsearch`的集群中。 在一個集群里可以擁有任意多個節點。而且,如果當前你的網絡中沒有運行任何Elasticsearch節點,這時啟動一個節點,會默認創建并加入一個叫做`elasticsearch`的單節點集群。 ## 索引庫(index) 一個索引庫就是一些擁有相似特征文檔的集合。例如,你可以有一個會員數據的索引庫,一個商品目錄的索引庫,還有一個訂單數據的索引庫。一個索引庫由一個名字來標識(必須全部是小寫字母的),在對 document(文檔)執行 indexing(索引),search(搜索),update(更新)和 delete(刪除)動作時都需要通過此名字來操作。 ## 類型(type) > 警告 > > Deprecated in 6.0.0. See [Removal of mapping types](https://www.elastic.co/guide/en/elasticsearch/reference/6.0/removal-of-types.html) A type used to be a logical category/partition of your index to allow you to store different types of documents in the same index, eg one type for users, another type for blog posts. It is no longer possible to create multiple types in an index, and the whole concept of types will be removed in a later version. See [Removal of mapping types](https://www.elastic.co/guide/en/elasticsearch/reference/6.0/removal-of-types.html) for more. ## 文檔(document) 文檔是索引信息的基本單位。。理由,你可以擁有某一個會員文檔、一個商品文檔、一個訂單文檔。文檔以[JSON](http://json.org/)格式來表示,[JSON](http://json.org/)是一個到處存在的互聯網數據交互格式。 在一個索引庫或類型里面,你可以存儲任意多的文檔。注意,一個文檔物理上存在于一個索引庫之中,但文檔必須被編入或分配到一個索引庫的類型。 ## <span id="getting-started-shards-and-replicas">分片和副本(shards and replicas)</span> 一個索引可以存儲超出單個結點硬件限制的大量數據。比如,一個具有10億文檔的索引庫需要占據1TB的磁盤空間,他將不可能存儲在單一節點、或者處理搜索請求響應會非常慢。 為了解決這個問題,Elasticsearch提供了將索引庫劃分成多個分片的能力。當你創建一個索引庫的時候,你可以指定你想要的分片的數量。每個分片本身也是一個全功能且獨立的“索引”,這個“索引” 可以被放置到集群中的任何節點上。 分片之所以重要,主要有兩方面的原因: * 允許你水平的拆分與擴展容量 * 允許你在分片(位于多個節點上)之間進行分布式的、并行的操作,進而提高性能與吞吐量 至于分片怎樣分布、搜索請求時它的文檔怎樣聚合返回,完全由Elasticsearch管理,對于用戶來說這些都是透明的。 在一個網絡或云的環境里異常時可預見的。在分片或節點因為某些原因處于離線狀態或者消失的情況下,故障轉移機制是非常有用且強烈推薦的。為此,Elasticsearch允許你為分片創建一份或多份拷貝,這些拷貝叫做副本分片,或者直接叫副本。 副本之所以重要,有兩個主要原因: * 在分片/節點失敗的情況下,副本提供了高可用性。基于整個原因,副本分片不要與原分片或主要分片存放在同一節點上是非常重要的。 * 因為搜索可以在所有的副本上并行運行,副本可以擴展你的搜索量或吞吐量。 總之,每個索引庫可以被分成多個分片。一個索引也可以被復制0次(即沒有副本) 或多次。一旦復制了,每個索引就有了主分片(作為復制源的分片)和副本分片(主分片的拷貝)。 分片和副本的數量可以在索引創建的時候指定。在索引創建之后,你可以在任何時候動態地改變副本的數量,但是你不能再改變分片的數量。 默認情況下,Elasticsearch中的每個索引分配5個主分片和1個副本。這意味著,如果你的集群中至少有兩個節點,你的索引將會有5個主分片和另外5個復制分片(1個全量拷貝),這樣每個索引總共就有10個分片。 > 注意 > > 每個Elasticsearch的分片都是一個獨立的Lucene索引。在單個 Lucene 索引中有一個最大的文檔數量限制。從[LUCENE-5843](https://issues.apache.org/jira/browse/LUCENE-5843)的時候開始,該限制為 2,147,483,519(=Interger.MAX_VALUE - 128)個文檔。您可以使用 [_cat/shards](https://www.elastic.co/guide/en/elasticsearch/reference/current/cat-shards.html)api來監控分片大小。 理解了這些基礎概念之后,讓我們開始接觸更有趣的部分...... > my note > > 6.0.0開始一個index下只能有一個type([出于何種考慮?](https://elasticsearch.cn/article/337)) > 副本分片不要與原分片或主要分片存放在同一節點上 > 單個 Lucene 索引中最大的文檔數量限制:2,147,483,519(=Interger.MAX_VALUE - 128) > > 問題 > * 倒排索引、倒排列表與索引和分片的關系? > * 單個節點是否有完整的數據? > * 數據究竟是如何存儲的?
                  <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>

                              哎呀哎呀视频在线观看