TimeStream是阿里云Elasticsearch團隊自研,并結合Elastic社區時序類產品特性共建的時序引擎。阿里云Elasticsearch提供的TimeStream時序增強功能插件,優化了Elasticsearch在存儲指標數據方面的DSL( Domain-Specific Language)查詢復雜且慢以及存儲成本過高等問題。本文介紹TimeStream時序增強引擎的產生背景、適用場景、優勢及性能測試結果。
背景信息
當前用戶在存儲和使用時序類型數據時,通常需要在Elasticsearch中完成時序場景的復雜配置,門檻較高。同時該場景面臨著海量時序數據寫入性能不佳、存儲成本高、查詢復雜等問題。為解決這些問題,阿里云Elasticsearch團隊推出了自研TimeStream時序引擎增強插件,該插件具有如下特點:
支持時序類型數據模型,提供TimeStream索引的增刪改查接口,創建TimeStream索引時自動配置Elasticsearch在時序場景的最佳實踐,降低了Elasticsearch管理時序數據的門檻。
使用TimeStream插件能夠提升時序數據的寫入和查詢性能,大幅壓縮時序數據的存儲空間。
TimeStream插件支持使用PromQL查詢Elasticsearch數據,可無縫對接Prometheus+Grafana,能夠進一步降低阿里云Elasticsearch時序數據存儲和使用的成本,提高效率和易用性。
使用場景
阿里云Elasticsearch自研TimeStream時序增強插件適用于時序數據的存儲和使用場景,例如使用Elasticsearch存儲和查詢系統監控指標、IoT設備數據等。
使用限制
使用TimeStream插件時,實例需要滿足以下條件:
版本 | 地域 |
Elasticsearch版本為7.16及以上,內核版本為1.7.0及以上 | 華南1(深圳)、西南1(成都)、華南3(廣州)、華北6(烏蘭察布)、北京金融云、中國香港。 |
Elasticsearch版本為7.10及以上,內核版本為1.8.0及以上 | 華北 2(北京)、華東 2(上海)、華東 1(杭州)、華南 1(深圳)、華北3(張家口) |
支持的地域可能有變化,以控制臺為準。
功能優勢
數據管理提效:基于TimeStream時序數據模型及增刪改查,集成Elasticsearch在時序場景的最佳實踐模板,大幅降低了Elasticsearch管理時序數據的門檻。
查詢體驗提升:支持使用PromQL查詢Elasticsearch數據,可無縫對接Prometheus+Grafana,支持DownSample采樣查詢和DataStream時間分區。
存儲成本優化:通過數據壓縮優化和元數據存儲容量優化,TimeStream索引相比開源Elasticsearch普通索引的存儲容量降低了80%以上。
讀寫性能提升:TimeStream索引相比開源Elasticsearch普通索引寫入TPS提升近40%,對于時序數據的常用查詢分析,性能相比開源Elasticsearch提升了5倍。
時序場景下,Elasticsearch在使用和不使用TimeStream插件的情況下,在數據模型、存儲和查詢維度的對比信息如下。
對比項 | 使用TimeStream | 不使用TimeStream |
數據模型 | 支持時序類型的數據模型。 | 需要用戶進行大量指標場景最佳實踐。例如生成一個時間線ID字段、使用時間線ID和時間配置indexing sorting、使用時間線ID做routing等。 |
存儲 | 支持TimeStream索引增刪改查,創建索引時自動配置Elasticsearch在TSDB場景的最佳實踐,提升數據壓縮率,大幅降低存儲成本。 | 使用關系模型存儲時序數據,會遇到存儲容量過大問題。Elasticsearch官方驗證存儲容量是專業TSDB容量的25倍。 |
查詢語句 | 支持PromQL語句查詢時序數據,能夠無縫對接Prometheus+Grafana。 | 需要使用復雜的DSL語句查詢時序數據。 |