ElasticSearch5 x幾個為什麼

2021-09-22 20:37:35 字數 1333 閱讀 4042

為什麼es6.0要拋棄_all欄位?

將所有欄位都拷貝到_all顯然不太合理,而且就算禁用_all欄位,還是有乙個bug:

"_all":
在query_string裡,以星號作為查詢條件時還是會查到東西:

}}

但是在match裡查詢卻查不到任何東西:

}}

為什麼es的docker容器將9300埠對映出來之後就啟動不起來?

以前es客戶的通過transport的方式連線es,使用的是9300埠,走的是tcp協議。es5.x開始嘗試使用rest的方式連線es,並且以後可能會放棄transport的方式,所以他們在做es映象時有意把9300隱藏掉,限制的比較緊,就算你修改ulimit,在centos6.7下也挺難的。

首先你得進入到容器裡面把配置檔案改了,commit成乙個新的映象,然後在啟動的時候加上--ulimit和--ulimit nproc引數。

docker run -d --ulimit nofile=65536:131072 --ulimit nproc=2048:2048 -p 9200:9200 -p 9300:9300 -v /home/esdata:/usr/share/elasticsearch/data es:v5.5.1 -ehttp.cors.enabled=true -ehttp.cors.allow-origin=* -etransport.host=0.0.0.0 -ediscovery.zen.minimum_master_nodes=1
或者你先不對映9300埠,先讓容器跑起來,然後用 docker -cp命令把es容器裡的配置檔案拷貝出來,在容器外將配置檔案改了,這樣就不用commit乙個新的映象了。配置檔案elasticsearch.yaml需要修改的地方是:

http.cors.allow-origin: "/.*/"然後再new乙個新的容器的時候可以加上-p 9300:9300。 但是即使這樣,在有些情況下啟動的時候還是會報錯,大多數是ulimit的問題,很煩人。在ubuntu下稍微好點。

所以,使用es docker的時候還是不要試圖開啟9300埠了,這個9300本來就要廢棄了,所以沒必要折騰了。

elasticsearch 7 X 部署文件

elasticsearch 7.2.1 kibana 7.2.1 最新版為7.3.0 以下文件是根據7.3.0書寫,7.2.1通用 開發 測試環境 cpu 8 核 記憶體8g 硬碟200g 3臺 生產環境 待討論確定 如已設定則可無須考慮該部署準備操作,文件中所有涉及到ip port的資訊,請根據實...

Elasticsearch 6 x 倒排索引與分詞

示例 對以下三個文件去除停用詞後構造倒排索引 倒排索引 查詢過程 查詢包含 搜尋引擎 的文件 通過倒排索引獲得 搜尋引擎 對應的文件id列表,有1,3 通過正排索引查詢1和3的完整內容 返回最終結果 倒排索引 組成 單詞詞典 term dictionary 單詞詞典的實現一般用b 樹,b 樹構造的視...

ElasticSearch6 x 之分組聚合

資料準備 新建索引my index,初始化資料 建立my index索引 put 請求 索引資料初始化 put請求 persion 1 put請求 persion 2 put請求 persion 3 put請求 persion 4 put請求 persion 5 put請求 persion 6 分組...