阿里云提供了多種Elasticsearch(簡稱ES)版本,您可以通過本文了解各版本的功能特性,并選擇最適合您業務的ES版本。
ES實例類型對比
阿里云ES提供向量增強版、內核增強版和通用商業版三種實例類型,不同類型的實例支持的ES版本和功能特性也不一樣。
對比項 | 向量增強版 | 內核增強版 | 通用商業版 |
支持版本 | 8.15版本 | 7.16、7.10、6.7版本 | 8.13、8.9、8.5、7.7、6.8、6.3、5.6、5.5版本 |
主要特點 |
|
|
|
適用場景 | 全部ES應用場景。 尤其適用于需要進行AI搜索的場景。 | 全部ES應用場景。 尤其適用于:
| 全部ES應用場景。 例如,信息檢索、搜索、日志分析、向量檢索等場景。 |
用戶畫像 |
|
|
|
計費項 |
| 按ES集群節點規格、存儲空間、節點數計費。
| 按ES集群節點規格、存儲空間、節點數計費。 |
開源版本特性
所有ES版本均100%兼容Elasticsearch開源功能特性,并免費提供官方白金版高級特性(原X-Pack商業插件)。阿里云ES不同版本的開源特性變化如下:
8.15版本為向量增強版,在開源基礎上支持了AI搜索。詳細信息,請參見阿里云AI搜索方案。
7.16、7.10和6.7版本為內核增強版,在開源基礎上提供了深度優化的AliES內核引擎增強特性。詳細信息,請參見AliES內核增強版功能介紹。
8.15版本
新增開源特性:
向量索引字段優化。詳細信息,請參見dense-vector。
默認使用int8_hnsw類型替換hnsw,并默認開啟int8量化。
支持int4量化,可以節約8倍內存容量。
新增向量類型
bit
。
使用SIMD指令加速aarch64架構int8量化索引的merge性能,merge性能提高了3倍左右。
支持rerank phase,支持了text_similarity_reranker使用rerank模型。詳細信息,請參見text-similarity-reranker-retriever。
增加retriever查詢語法,支持多路召回。詳細信息,請參見retriever。
增加semantic_text字段類型,更方便的支持語義檢索。詳細信息,請參見semantic-text。
稀疏查詢使用sparse_vector語法替代text_expansion。詳細信息,請參見query-dsl-sparse-vector-query
query rules API正式GA。詳細信息,請參見query-rules-apis。
Index Sorting支持包含nested字段。詳細信息,請參見index-modules-index-sorting。
新增日志場景的高效索引
logsdb
。詳細信息,請參見logs-data-stream。Lucene版本升級到9.11,內存效率和查詢性能提升。詳細信息,請參見apache-lucenetm-9110-available。
更多變化,請參見What’s new in 8.15、 What’s new in 8.14。
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用戶默認只能讀取ES內置索引。
更多變化,請參見Breaking changes in 8.5。
7.16版本
新增開源特性:
跨集群搜索支持SQL查詢。
ingest pipeline支持range類型豐富策略。
優化緩存,提高查詢性能。
支持從Data Stream中添加和刪除索引。
在審計日志中添加了集群UUID和name信息。
更多變化,請參見breaking changes in 7.16。
7.10版本
新增開源特性:
提高對存儲字段的壓縮能力,降低存儲成本。
通過事件查詢語言(EQL)增強ES安全性。
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。如果大于該值,ES只返回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使用規格和容量,請參見規格容量評估。