ElasticSearch最佳入門實踐(十一)分散式原理 橫向擴容過程,如何超出擴容極限,以及如何提升容錯性
(1)primary&replica自動負載均衡,6個shard,3 primary,3 replica
(2)每個node有更少的shard,IO/CPU/Memory資源給每個shard分配更多,每個shard效能更好
(3)擴容的極限,6個shard(3 primary,3 replica),最多擴容到6臺機器,每個shard可以佔用單臺伺服器的所有資源,效能最好
(4)超出擴容極限,動態修改replica數量,9個shard(3primary,6 replica),擴容到9臺機器,比3臺機器時,擁有3倍的讀吞吐量
(5)3臺機器下,9個shard(3 primary,6 replica),資源更少,但是容錯性更好,最多容納2臺機器宕機,6個shard只能容納1臺機器宕機
相關推薦
ElasticSearch最佳入門實踐(十一)分散式原理 橫向擴容過程,如何超出擴容極限,以及如何提升容錯性
(1)primary&replica自動負載均衡,6個shard,3 primary,3 replica (2)每個node有更少的shard,IO/CPU/Memory資源給每個shard分配更多,每個shard效能更好 (3)擴容的極限,6個shard(3 prima
ElasticSearch最佳入門實踐(四十三)mapping 的核心資料型別以及 dynamic mapping
1、核心的資料型別 string byte,short,integer,long float,double boolean date 2、dynamic mapping true or false --> boolean 123 --> lo
ElasticSearch最佳入門實踐(三十三)search結果深入解析search timeout機制揭祕
1、我們如果發出一個搜尋請求的話,會拿到一堆搜尋結果,這個搜尋結果裡的各種資料,都代表了什麼含義 took:整個搜尋請求花費了多少毫秒 hits.total:本次搜尋,返回了幾條結果 hits.max_score:本次搜尋的所有結果中,最大的相關度分數是多少,每一條do
ElasticSearch最佳入門實踐(七十三)Java 實戰 - 對員工資訊進行聚合分析
構建資料 client.prepareIndex("company", "employee", "1") .setSource(XContentFactory.jsonBuilder() .startOb
ElasticSearch最佳入門實踐(六十三)索引管理_mapping root object
1、root object 就是某個type對應的mapping json,包括了properties,metadata(_id,_source,_type),settings(analyzer),其他settings(比如include_in_all) PUT /
ElasticSearch最佳入門實踐(二十三)基於groovy指令碼進行partial update
es,其實是有個內建的指令碼支援的,可以基於groovy指令碼實現各種各樣的複雜操作 1、初始化一條資料 2、內建指令碼 3、外部指令碼 4、用指令碼刪除文件 5、update操作 6
ElasticSearch最佳入門實踐(七十三)Java 實戰
構建資料 client.prepareIndex("company", "employee", "1") .setSource(XContentFactory.jsonBuilder()
ElasticSearch最佳入門實踐(四十一)query string 的分詞以及 mapping 引入案例遺留問題的大揭祕
1、query string分詞 query string必須以和index建立時相同的analyzer進行分詞 query string對exact value和full text的區別對待 date:exact value _all:full text
ElasticSearch最佳入門實踐(三十一)document查詢內部原理揭祕
1、客戶端傳送請求到任意一個node,成為coordinate node 對於讀請求,不一定所有的請求都發送的primary shard 上去,也可以轉發到replied shard 上去,因為replied shard 也是可以服務所有讀請求的 2、coordin
ElasticSearch最佳入門實踐(六十一)修改分詞器以及定製自己的分詞器
1、預設的分詞器 standard 其餘: standard tokenizer:以單詞邊界進行切分 standard token filter:什麼都不做 lowercase token filter:將所有字母轉換為小寫 stop token filer
ElasticSearch最佳入門實踐(四十二)什麼是mapping再次回爐透徹理解
(1)往es裡面直接插入資料,es會自動建立索引,同時建立type以及對應的mapping (2)mapping中就自動定義了每個field的資料型別 (3)不同的資料型別(比如說text和date),可能有的是exact value,有的是full text (4)exac
ElasticSearch最佳入門實踐(四十)分詞器的內部組成到底是什麼,以及內建分詞器的介紹
1、什麼是分詞器 一個分詞器,很重要,將一段文字進行各種處理,最後處理好的結果才會拿去建立倒排索引 切分詞語,normalization(提升recall召回率) 給你一段句子,然後將這段句子拆分成一個一個的單個的單詞,同時對每個單詞進行normalizat
ElasticSearch最佳入門實踐(三十九)倒排索引核心原理揭祕
1、例子,兩段文字 doc1:I really liked my small dogs, and I think my mom also liked them doc2:He never liked any dogs, so I hope that my m
ElasticSearch最佳入門實踐(三十八)精確匹配與全文搜尋的對比分析
1、ES中的兩種搜尋模式 1、exact value 2、full text 2、exact value 2017-01-01,exact value,搜尋的時候,必須輸入2017-01-01,才能搜尋出來。如果你輸入一個01,是搜尋不
ElasticSearch最佳入門實踐(三十七)用一個例子告訴你 mapping 到底是什麼
1、插入幾條資料 PUT /website/article/1 { "post_date": "2017-01-01", "title": "my first article", "content": "this is my first article in this w
ElasticSearch最佳入門實踐(三十六)query string search 語法以及 _all metadata 原理揭祕
1、query string基礎語法 GET /test_index/test_type/_search?q=test_field:test GET /test_index/test_type/_search?q=+test_field:test
ElasticSearch最佳入門實踐(三十五)分頁搜尋以及deep paging效能問題深度揭祕
1、如何使用es進行分頁搜尋的語法 size,from GET /_search?size=10 GET /_search?size=10&from=0 GET /_search?size=10&from=20 假設將這6條資料分成3頁,每一頁是2
ElasticSearch最佳入門實踐(三十四)multi-index & multi-type 搜尋模式解析以及搜尋原理解析
1、multi-index 和 multi-type 搜尋模式 告訴你如何一次性搜尋多個 index 和多個 type 下的資料 /_search:所有索引,所有type下的所有資料都搜尋出來 /index1/_search:指定一個ind
ElasticSearch最佳入門實踐(三十二)bulk api的奇特json格式與底層效能優化關係揭祕
1、bulk api奇特的json格式 {"action": {"meta"}}\n {"data"}\n {"action": {"meta"}}\n {"data"}\n 2、bulk中的每個操作都可能要轉發到不同的node的shard去執行 3、如果採用比較良好的js
ElasticSearch最佳入門實踐(三十)寫一致性原理以及quorum機制深入剖析
1、consistency,one(primary shard),all(all shard),quorum(default) 我們在傳送任何一個增刪改操作的時候,比如說put /index/type/id,都可以帶上一個consistency引數,指明我們想要的寫一致性是什