索引模塊是按索引建立的模塊,控制與索引相關的全部方面。正則表達式
能夠按索引設置索引級別,設置多是:緩存
靜態安全
動態性能
update-index-settings
API在活動索引上更改它們。更改關閉的索引上的靜態或動態索引設置可能致使不正確的設置,在不刪除和從新建立索引的狀況下,不可能糾正這些設置。
下面是與任何特定索引模塊無關的全部靜態索引設置的列表:優化
index.number_of_shards日誌
1
。此設置只能在建立索引時設置,它不能在關閉的索引上更改,注意:每一個索引的碎片數量限制爲1024
個,這種限制是一種安全限制,以防止意外地建立可能因爲資源分配而破壞集羣穩定的索引。能夠在集羣的每一個節點上經過指定系統變量export ES_JAVA_OPTS="-Des.index.max_number_of_shards=128"
來修改該限制。index.shard.check_on_startupcode
index.codec索引
best_compression
,它使用DEFLATE得到更高的壓縮比,代價是下降存儲字段的性能。若是你正在更新壓縮類型,則新的壓縮類型將在段合併後應用,段合併能夠使用強制合併來強制執行。index.routing_partition_sizetoken
1
,只能在建立索引時設置,這個值必須小於index.number_of_shards
,除非index.number_of_shards
值也是1
。index.load_fixed_bitset_filters_eagerly生命週期
true
(默認值)和false
。如下是與任何特定索引模塊無關的全部動態索引設置列表:
index.number_of_replicas
1
。index.auto_expand_replicas
0-5
),或將all
用於上界(例如0-all
),默認爲false
(即禁用)。注意,自動擴展的副本數量沒有考慮任何其餘分配規則,好比碎片分配感知、過濾或每一個節點的總碎片,若是適用的規則阻止分配全部副本,則可能致使集羣健康狀態變爲黃色。index.search.idle.after
30s
)。index.refresh_interval
1s
,能夠設置爲-1
以禁用刷新。若是沒有顯式設置此設置,至少在index.search.idle.after
秒內沒有看到搜索流量的碎片在收到搜索請求以前不會收到後臺刷新,當刷新掛起時,搜索到空閒碎片,將等待下一次後臺刷新(在1秒內)。此行爲的目的是在不執行搜索的默認狀況下自動優化批量索引,爲了不這種行爲,應該將顯式值1s
設置爲刷新間隔。index.max_result_window
from + size
的最大值,默認爲10000
,搜索請求佔用的堆內存和時間與from + size
成正比,這限制了內存。index.max_inner_result_window
from + size
的最大值,用於將內部命中定義和頂部命中聚合到此索引,默認爲100
,內部命中和頂部命中聚合佔用堆內存,而且時間與from + size
成正比,這限制了內存。index.max_rescore_window
rescore
請求的window_size
的最大值,默認爲index.max_result_window
,其默認值爲10000
,搜索請求佔用堆內存,時間與max(window_size, from + size)
成正比,這限制了內存。index.max_docvalue_fields_search
docvalue_fields
的最大數量,默認爲100
,Doc-value字段代價高昂,由於它們可能致使每一個字段每一個文檔的搜索。index.max_script_fields
script_fields
數量,默認爲32
。index.max_ngram_diff
1
。index.max_shingle_diff
3
。index.blocks.read_only
true
使索引和索引元數據只讀,設置爲false
容許寫入和元數據更改。index.blocks.read_only_allow_delete
index.blocks.read_only
相同,可是容許刪除索引來釋放資源。index.blocks.read
true
以禁用對索引的讀取操做。index.blocks.write
true
可禁用對索引的數據寫操做,與read_only
不一樣,此設置不影響元數據,例如,能夠用write
塊關閉索引,但不能用read_only
塊關閉索引。index.blocks.metadata
true
可禁用索引元數據的讀寫。index.max_refresh_listeners
refresh=wait_for
。index.analyze.max_token_count
_analyze
API能夠生成的最大令牌數量,默認爲10000
。index.highlight.max_analyzed_offset
1000000
。index.max_terms_count
65536
。index.max_regex_length
1000
。index.routing.allocation.enable
控制此索引的碎片分配,它能夠被設置爲:
all
(默認值)— 容許爲全部碎片分配碎片。primaries
— 只容許爲主碎片分配碎片。new_primary
— 只容許爲新建立的主碎片分配碎片。none
— 不容許碎片分配。index.routing.rebalance.enable
啓用此索引的碎片從新平衡,它能夠被設置爲:
all
(默認值)—容許對全部碎片進行碎片再平衡。primaries
— 只容許對主碎片進行碎片再平衡。replicas
— 只容許對複製碎片進行碎片再平衡。none
— 不容許再平衡碎片。index.gc_deletes
60s
。index.default_pipeline
pipeline
參數重寫默認值,特殊管道名稱_none
表示不該該運行攝取管道。其餘索引設置在索引模塊中可用:
分析
索引碎片分配
映射
合併
類似性
慢日誌
存儲
事務日誌
索引生命週期管理