下一個獨角獸是拿來的開源還是大投入的“自研”系統?

danny_2018發表於2023-02-21

“時代拋棄你,真的完全不講情面!”資料庫領域一次次驗證了此法則的冷酷無情。

因為廣受關注,近幾年來,資料庫成為吸引投資最多的軟體領域,市場上資料庫供應商也越來越擁擠。

另外,資料庫市場的迭代與淘汰比想象得快,如數倉巨頭Teradata退出中國市場不是因為水土不服,而是因為在適應性、易用性、成本等方面被競爭對手甩在後邊,使用者收縮,營收減少,市值大幅縮水,是不爭的事實。

那麼,全球增長最快的資料庫是哪一種?DB-Engines的資料顯示,時序資料庫,超過了備受關注的鍵值資料庫、圖資料庫、時空資料庫等,成為目前增長最快的資料庫型別。

而引領時序資料庫發展的則是開源的InfluxDB。就像每一個開源資料庫背後都有一家商業公司一樣,開源時序資料庫InfluxDB背後的商業公司InfluxData正在蠢蠢欲動,意欲在商業上取得成功,在技術上引領發展。

時序資料應用場景隨處可見

智慧家居系統監控室內環境所發生的變化,按時間點透過感測器採集資料,透過實時的資料處理,以調節溫度、識別入侵者。

自動駕駛的汽車需要不斷收集有關其環境隨時間變化的資料,並根據天氣條件、街道行人、車輛等無數其他變數,快速進行資訊處理,並適時做出決策。

生產製造、電力、化工、能源等行業需要實時監測裝置等執行情況,需要按時間收集裝置運營的資料,檢查並分析海量裝置所採集和產生的資料,以便及時做出安全預警。

這類隨著時間點發展而變化的資料,就是時間序列資料,是按連續間隔收集的資料集合,並按捕獲事件的發生順序進行記錄。

時序資料具有產生頻率快(每一個監測點一秒鐘內可產生多條資料)、 嚴重依賴於採集時間 (每一條資料均要求對應唯一的時間)、 測點多資訊量大(常規的實時監測系統均有成千上萬的監測點,監測點每秒鐘都產生資料,每天產生幾十GB的資料量)。

時間序列資料過去由通用資料庫處理。例如,如果在20年前,有人可能會在Oracle的關聯式資料庫中構建應用;如果在10年前,有人可能會使用通用SQL資料庫。顯然隨著時序資料量的增加,其效能、擴充套件性等都難以滿足需求。

在最近的5~7年裡,出現了一個專門處理時間序列類別的資料庫,也就是說,如果你知道資料的特徵——也就是隨時間推移的資料——那麼你就可以採用時間序列資料庫,一般簡稱為時序資料庫。

專為時序資料最佳化而設計的時序資料庫,在很多方面都與傳統的關係型資料庫不太一樣,如它不關心正規化和事務;寫多於讀,95%-99%的操作都是寫操作;順序讀,基本上都是按照時間順序讀取一段時間內的資料等。

因此,時序資料庫以寫效能優先,不為讀取做儲存最佳化,但是透過分散式和併發讀,來提高讀取的速度。

在寫入的時候就考慮到讀的效能問題,將統一指標、時間段的資料寫入到同一資料塊中,為讀取進行寫入最佳化。

時序資料庫應用場景大爆發。2020年出現的新冠疫情,使全球數十億人成為時間序列資料的消費者,以便準確及時地提供疫情相關各種統計資料。

現在比較流行的各種穿戴裝置,都可以聯網,穿戴裝置上採集的心跳資訊、血流資訊、體感資訊等也會實時傳輸給伺服器進行實時分析、儲存以及查詢統計。

財務資料就是時間序列資料。時序資料庫可以輕鬆跟蹤時間序列資金、市場資料,並將其與其他資料相關聯,快速做出決策。

面向客戶和內部的SaaS應用和資料管道等產品資料也是時間序列資料。使用者想快速瞭解產品隨時間推移的使用方式、細分客戶群,以便做出產品和業務決策。時序資料庫可以儲存所有應用程式指標,而成本只是分析服務的一小部分。

透過精確定位地理空間和時間精度跟蹤裝置效能是一個時間序列問題。時序資料庫可幫助使用者經濟高效地大規模儲存和分析源源不斷的裝置遙測和感測器數流,以便管理工業裝置維護、車隊管理、資產跟蹤、路線規劃、產量最佳化、石油和天然氣生產等。

在可預知的未來3~5年,隨著物聯網以及工業4.0的到來,所有裝置都會攜帶感測器並聯網,感測器收集的時序資料將嚴重依賴時序資料庫的實時分析能力、儲存能力以及查詢統計能力。

開源系統先行,背後商業公司伺機而動

每一個開源系統背後都有一家商業公司,就像開源搜尋資料庫Elasticsearch背後有一個市值50多億美元的Elastic公司;開源MySQL背後有巨頭甲骨文;開源資料庫MariaDB背後有上市的商業資料庫公司MariaDB plc···

時序資料庫也不例外,開源系統InfluxDB、Kdb+和Prometheus長時間霸佔DB-Engine榜單前三 。

主流的時序資料庫 資料來源:DB-Engines

InfluxData是開源的InfluxDB的建立者和主要贊助商,專為處理物聯網裝置和感測器、應用程式、容器、虛擬機器和網路生成的大量帶時間戳的資料而構建InfluxDB。

InfluxData成立於2012年,總部位於美國舊金山。作為時間序列資料管理專家,InfluxData是在剛剛的E輪融資和其他企業融資中籌集了8100萬美元,使其總融資額超過2億美元。

InfluxData在時序資料庫發展上,有兩大突出表現:

一是InfluxData專為時間序列資料構建新型的系統,因此在效能等方面表現突出。在時間序列資料庫領域,有在關聯式資料庫基礎上進行改進的時序資料庫,比如基於PostgreSQL開發的TimescaleDB,也有在KV資料庫的基礎之上進行改進的時序資料庫,比如基於HBase開發的OpenTSDB。但是與專門的時序資料庫相比,顯然不在一個層次。

二是在提高時序資料庫效能的同時,針對新需求提出更多解決方案。InfluxData執行長Evan Kaplan說:“作為現代時間序列市場的先驅,我們在推動該領域最近的加速發展方面發揮了關鍵作用,將時間序列從邊緣推向雲,現在又進入分析領域。我們的投資者相信我們對時間序列的願景,可以為客戶和社群可以想象的最複雜和最大規模的分析用例提供支援。”

InfluxData推出InfluxDB Cloud,讓使用者專注於構建應用,而不是管理叢集,並可在AWS、Google和Azure上使用;在邊緣執行的InfluxDB 是開源的、社群支援的時間序列資料庫,很容易部署在邊緣、本地膝上型電腦或伺服器上;本地部署上,InfluxDB Enterprise 預配和控制的環境中利用高階安全性和合規性功能。

雲服務商因為IoT需求而發展起來的時序資料庫服務託管也快速發展,如邊雲一體化,方案整合方便簡單的阿里雲Lindorm TSDB時序資料庫;對內支撐了華為雲基礎設施服務,對外以服務的形式開放,幫助上雲企業解決相關業務問題華為GaussDB(for Influx)時序資料庫;快速、可擴充套件的全託管、無伺服器時間序列資料庫服務的亞馬遜雲科技的Amazon Timestream等。

自主研發與開源系統誰能統領市場?

在時序資料庫市場,相對於開源系統,自主研發的系統表現出更強的競爭力。國內自研的時序資料庫正開始替代國外的開源系統,實現時序資料庫庫的國產化替代。

星環科技在其大資料基礎平臺TDH 9.0中,實現9種儲存引擎支援10種資料模型。其中,時序資料庫Timelyre已經升級到了2.2版本。

為了滿足時間序列資料的處理需求,Timelyre改進壓縮演算法,進一步降低了20%~50%儲存空間佔用,提升2倍寫入效能。

同時相比於開源時序產品,Timelyre基於TDH多模型架構下的分散式擴充套件能力,讓Timelyre具備了更多裝置標籤儲存能力,以及基於TDH統一SQL分析能力,讓Timelyre具備複雜關聯查詢能力。

成立於2016年的智臾科技其擁有集高效能時序資料庫與全面的分析功能為一體的新一代資料庫DolphinDB。

由浪潮集團控股的KaiwuDB今年推出時序資料庫KaiwuDB 1.0,擁有實時就地運算等核心專利技術。

北京東方國信科技股份有限公司自主研發的產品CirroData-TimeS在時序空間大資料處理上有著獨到的優勢。

面對日益增加的應用場景以及市場空間,國產自研的時序資料庫將迎來巨大的發展機遇。

從產品技術發展上看,未來時序資料庫首先要支援海量的裝置、大量的指標和標籤,而不是現在開源系統的InfluxDB建議標籤數不要超過3~5個,而其效能會隨著指標數的增加而降低。

二是不但要很好地支援Metrics這種查詢,而且還要實現一流的分析能力。

三是支援多型儲存、多機儲存、存算分離。

最後是視覺化服務。隨著萬物互聯的到來,使用者對資訊的全面掌握的需求增長,時序資料的視覺化展示成為一大趨勢,對時序資料庫的查詢能力提出更高的要求。

來自 “ Hadoop大資料應用 ”, 原文作者:TMT產品技術;原文連結:https://mp.weixin.qq.com/s/qhyvWxVJsm_J3wKrMBgI0Q,如有侵權,請聯絡管理員刪除。

相關文章