阿里雲提供了多種Elasticsearch版本,您可以通過本文瞭解各版本的功能特性,並選擇最適合您業務的ES版本。
通用商業版和核心增強版對比
阿里雲ES提供通用商業版和核心增強版兩種執行個體類型,不同類型的執行個體支援的ES版本和功能特性也不一樣。
對比項 | 通用商業版 | 核心增強版 |
支援版本 | 8.13、8.9、8.5、7.7、6.8、6.3、5.6、5.5版本 | 7.16、7.10、6.7版本 |
主要特點 |
|
|
適用情境 | 全部ES應用情境。 例如,資訊檢索、搜尋、日誌分析、向量檢索等情境。 | 全部ES應用情境。 尤其適用於:
|
使用者畫像 |
|
|
計費項目 | 按叢集節點規格、儲存空間、節點數計費。 | 按叢集節點規格、儲存空間、節點數計費。 AliES核心基礎增強功能以外掛程式形式免費提供,可按需安裝。 |
開源版本特性
通用商業版和核心增強版均100%相容Elasticsearch開源功能特性,並免費提供官方白金版進階特性(原X-Pack商業外掛程式)。阿里雲ES不同版本的開源特性變化如下:
7.16、7.10和6.7版本為核心增強版,在開源基礎上提供了深度最佳化的AliES核心引擎增強特性。詳細資料,請參見AliES核心增強版功能介紹。
8.13版本
新增開源特性:
向量維度提高到4096。詳細資料,請參見4096 dimension dense vector。
向量索引支援Scalar Quantization特性,可降低接近75%的向量索引的記憶體。詳細資料,請參見scalar-quantization-in-lucene。
支援稀疏向量,增加sparse_vector類型。詳細資料,請參見Sparse vector。
支援單個shard的查詢並發。詳細資料,請參見Query parallelization。
向量欄位支援nested類型,可以將文檔切成段落後,對段落建立向量索引。詳細資料,請參見Multiple results from the same doc with nested vectors。
增加Learning To Rank功能,支援在restore階段對結果進行重排序。詳細資料,請參見Learning To Rank。
支援全新的inference API,可以整合外部模型服務。詳細資料,請參見inference APIs。
使用SIMD提升向量查詢效能。詳細資料,請參見Accelerating vector search with SIMD instructions。
更多變化,請參見What’s new in 8.13。
8.9版本
新增開源特性:
支援文本和向量召回結果混排。詳細資料,請參見Reciprocal rank fusion (RRF)。
向量最大維度提升到2048。詳細資料,請參見Increase max number of vector dims to 2048。
暴力檢索效能提升。詳細資料,請參見Improve brute force vector search speed。
KNN查詢支援多個欄位同時查詢。詳細資料,請參見Allow more than one KNN search clause。
內建ELSER模型。詳細資料,請參見ELSER。
穩定支援NLP分布式模型調度管理。詳細資料,請參見Make native inference generally available。
帶主鍵寫入效能提升。詳細資料,請參見主鍵最佳化。
常量Keyword欄位查詢效能提升。詳細資料,請參見Skip shards when querying constant keyword fields。
穩定支援時序資料流TSDS和降採樣Downsample功能。詳細資料,請參見TSDS和Downsample。
最佳化原文記憶體,去除ThreadLocal使用。詳細資料,請參見Remove uses of deprecated LeafReader。
更多變化,請參見What’s new in 8.9。
8.5版本
新增開源特性:
基於HNSW演算法實現向量相似性搜尋,詳細資料請參見k-nearest neighbor (kNN) search。
新增時序功能(TSDS),詳細資料請參見Time series data stream (TSDS)。
支援上傳PyTorch模型,詳細資料請參見start-trained-model-deployment。
新增Geo grid查詢,詳細資料請參見Geo grid query。
簡化安全配置,詳細資料請參見Start the Elastic Stack with security enabled automatically。
改進Lucene壓縮演算法降低索引大小。
Range query效能增強。
支援lookup運行時欄位類型,詳細資料請參見lookup-runtime-fields。
實現random sampler彙總查詢,詳細資料請參見Random sampler aggregation。
降低Master和Data節點的堆記憶體消耗。
刪除_type,但是8.x會相容7.x的請求,相容方式請參見rest-api-compatibility。
索引保護,elastic使用者預設只能讀取Elasticsearch內建索引。
更多變化,請參見Breaking changes in 8.5。
7.16版本
新增開源特性:
跨叢集搜尋支援SQL查詢。
ingest pipeline支援range類型豐富策略。
最佳化緩衝,提高查詢效能。
支援從Data Stream中添加和刪除索引。
在審計日誌中添加了叢集UUID和name資訊。
更多變化,請參見breaking changes in 7.16。
7.10版本
新增開源特性:
提高對儲存欄位的壓縮能力,降低儲存成本。
通過事件查詢語言(EQL)增強Elasticsearch安全性。
search.max_buckets的預設值由10000增加到65535。
支援不區分大小寫查詢。通過將選擇性參數case_insensitive設定為true,實現不區分大小寫查詢。
更多變化,請參見Breaking changes in 7.10。
7.7版本
新增開源特性:
建立索引時,預設分區數由5個變為1個。
移除Mapping type,在定義索引Mapping和Template等時,無需指定type。詳細資料,請參見Removal of mapping types。
搜尋請求預設返回的總文檔數最多為10000。如果大於該值,Elasticsearch只返回10000個文檔。詳細資料,請參見track_total_hits 10000 default。
單個資料節點預設最多隻能包含1000個shard,可通過cluster.max_shards_per_node參數配置。詳細資料,請參見Cluster Shard Limit。
Scroll對象總數量預設最多為500,可通過search.max_open_scroll_context參數配置。詳細資料,請參見Scroll Search Context。
父熔斷器以當前真實可用記憶體為基準(indices.breaker.total.use_real_memory),預設為JVM堆記憶體的95%,以最大記憶體可用率來避免記憶體溢出。詳細資料,請參見Circuit Breaker。
廢除_all欄位的支援,提升檢索效能。
新增間隔查詢(Intervals Queries),根據多字串在文本中出現的先後順序及距離檢索。
開啟審計日誌後,審計事件將持久儲存到<clustername>_audit.json主機檔案系統上,不支援索引方式輸出。詳細資料,請參見Enabling audit logging。
更多變化,請參見Breaking changes in 7.0。
6.x版本(6.3、6.7、6.8版本)
新增開源特性:
一個index只能有一個type,推薦使用_doc。
從6.6.0開始,新增索引生命週期管理ILM(Index Lifecycle Management),降低索引維護成本。
新增Rolling up historical data功能,實現歷史資料匯總。
從6.3開始,支援X-Pack SQL,支援SQL轉DSL語句,縮減DSL學習成本。
豐富了彙總函式,增加支援Composite、Parent和Weighted Avg函數。
更多變化,請參見Breaking changes in 6.0。
5.x版本(5.5、5.6版本)
新增開源特性:
一個index可以有多個type,支援自訂type。
摒棄了string欄位類型,由text或keyword代替。
index欄位的取值由not_analyzed或no變為true或false。
使用float代替double,降低儲存成本。
推出Java High Level REST Client替換TransportClient。
更多變化,請參見Breaking changes in 5.0。
相關文檔
您可以在執行個體的基本資料頁面查看執行個體類型和ES版本。具體操作,請參見查看執行個體的基本資料。
購買阿里雲ES執行個體,請參見建立Elasticsearch執行個體。
評估ES使用規格和容量,請參見規格容量評估。