亞寵展、全球寵物產業風向標——亞洲寵物展覽會深度解析
934
2022-05-28
image.png
默認設置下,translog 的持久化策略是每個請求都flush(durability參數值為request),這樣能保證寫操作的可靠性,但是對性能會有很嚴重的影響,實際測試發現如果使用默認設置進行導數據磁盤IO會持續占滿。如果系統可以接受一定幾率的數據丟失(或有手段補錄丟失數據),可以通過調整 translog 持久化策略、周期性和一定大小的時候 flush,能大大提升導入性能。該配置項可以建索引時指定(或者配置到template里去)。執行命令如下所示:
curl -XPUT "http://ip:httpport/myindex/_settings" -H 'Content-Type: application/json' -d' { "index": { "translog": { "flush_threshold_size": "1GB", "sync_interval": "180s", "durability": "async" } } }'
默認情況下,支持doc values 的所有字段都是開啟的。因為 Doc Values 默認啟用,可以選擇對數據集里面的大多數字段進行聚合和排序操作。但是如果確定不需要在字段上進行排序和聚合,或從腳本中訪問字段值,則可以禁用 doc values 來節省磁盤空間。
要禁用 Doc Values ,在字段的映射(mapping)設置 “doc_values”為“false”即可。例如,這里我們創建了一個新的索引,字段 "session_id" 禁用了 Doc Values:
curl -XPUT "http://ip:httpport/myindex" -H 'Content-Type: application/json' -d' { "mappings": { "my_type": { "properties": { "session_id": { "type": "keyword", "doc_values": false } } } } }'
“_source”字段包含在索引時傳遞的原始JSON文檔正文。該“_source”字段本身不被索引(因此是不可搜索的),但它被存儲,以便在執行擷取請求時可以返回,例如get或search。
雖然很方便,但是“_source”字段確實在索引中有不小的存儲開銷。因此,可以使用如下方式禁用:
curl -XPUT 'http://ip:httpport/tweets?pretty' -H 'Content-Type: application/json' -d' { "mappings": { "tweet": { "_source": { "enabled": false } } } }'
在禁用_source 字段之前請注意:如果_source字段不可用,則不支持以下功能:
update,update_by_query,reindex APIs.
高亮
將索引從一個Elasticsearch索引reindex(重索引)到另一個索引的能力,以便更改映射或分析,或將索引升級到新的主要版本。
通過查看索引時使用的原始文檔來調試查詢或聚合的能力。
潛在的未來可能會自動修復索引損壞的能力。
在禁用_source 字段之前請注意:如果_source字段不可用,則不支持以下功能:?update,update_by_query,reindex APIs. ?高亮 ?將索引從一個Elasticsearch索引reindex(重索引)到另一個索引的能力,以便更改映射或分析,或將索引升級到新的主要版本。 ?通過查看索引時使用的原始文檔來調試查詢或聚合的能力。 ?潛在的未來可能會自動修復索引損壞的能力。
Elasticsearch
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。