(1) 客戶反映es查詢只能返回10000個資料,而需求時返回1.9w個資料,因此需要設定對應索引的預設返回數index.max_result_window
(2) 給客戶部署的服務以docker-compose啟動,其配置檔案docker-compose.yml檔案如下,其中es版本為5.6.16
(1) es提供通過請求的方式更改指定index的_settings資訊,因此可通過如下命令對索引aimind_prod_storage設定預設最大返回數量
curl -xput localhost:9200/aimind_prod_storage/_settings -d '(2) 查詢設定後'
curl -xget localhost:9200/aimind_prod_storage/_settings(3) 為了避免docker-compose down/up重啟,導致es的資料丟失,因此可以將es的資料檔案儲存在宿主機上,通過掛載的方式進行,具體配置如下:
aimind_es_single:view codeimage: elasticsearch:5.6
container_name: aimind_es_single
ports:
- "9300:9300"
- "9200:9200"
restart: always
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- ./data:/usr/share/elasticsearch/data
environment:
- "discovery.type=single-node"
elasticSearch修改資料
elasticsearch幾乎能實時提供資料操作和搜尋功能。預設情況下,從開始索引 更新 刪除資料到出現搜尋結果的時間可以認為需要一秒的時間。這是與sql等其他平台的重要區別,其中資料在事務完成後可以立即使用。在上節中我們給索引建立了乙個文件,命令為 put customer doc 1 prett...
Elasticsearch 併發修改樂觀鎖
來自 1 elasticsearch 的樂觀鎖,可以使用外部系統提供的版本號 這時elasticsearch將只檢查提供的版本是否比當前儲存在索引中的版本大 大多少不重要 如果是成功,否則失敗。在elasticsearch中,更新請求實際上是分為兩個階段,獲取文件,修改文件,然後儲存文件。那麼當兩個...
ElasticSearch修改和刪除文件
修改文件方式一 使用prepareupdate,prepareindex兩者選其一皆可 刪除文件方式一 使用preparedelete刪除文件 client.preparedelete blog2 article article.getid tostring get 修改文件方式二 直接使用upda...