房租 做網(wǎng)站百度網(wǎng)頁版鏈接
流式處理引擎,顛覆50年未變的數(shù)據(jù)庫內(nèi)核
流式處理的概念
2001年9月11日,美國世貿(mào)大樓被襲擊,美國國防部第一次將“主動預警”納入國防的宏觀戰(zhàn)略規(guī)劃。而IBM作為當時全球最大的IT公司,承擔了大量基礎(chǔ)支撐軟件研發(fā)的任務。其中2009年正式發(fā)布的IBM InfoSphere Streams,就是全球最早真正意義上的商業(yè)化流數(shù)據(jù)處理引擎之一。
典型的流處理框架,如Apache Storm、Spark Streaming、Flink等也都是基于IBM的設(shè)計理念,采用“請求發(fā)送+結(jié)果返回”的模式進行了研發(fā),并大量應用于實時互聯(lián)網(wǎng)類型的業(yè)務中,對前方產(chǎn)生的海量事件進行實時預處理。
Gartner在《2022中國數(shù)據(jù)庫管理系統(tǒng)市場指南》中,將流處理定義為:涉及對“事件”(event)的觀察和觸發(fā),通常在“邊緣”采集,包括將處理結(jié)果傳輸至其他業(yè)務階段。并將在未來五年中,獲得更多關(guān)注。
圖:Gartner對于流/事件處理的定義
傳統(tǒng)部署架構(gòu)的痛點
但是,不論Apache Storm、Spark Streaming、還是Flink等流處理框架的設(shè)計,都是將目光集中在“處理”本身。由于其自身不具備數(shù)據(jù)庫的能力,當需要與其他數(shù)據(jù)進行關(guān)聯(lián)、臨時存儲等互動時,則需要進行復雜的數(shù)據(jù)抽取。這使得大量的開發(fā)人員,還需要編寫復雜的Java/C++/Scala代碼,用最傳統(tǒng)的方式對記錄進行一條條預處理,并且還需要經(jīng)常從其他外部的緩存/數(shù)據(jù)庫中實時調(diào)取額外數(shù)據(jù)進行手工關(guān)聯(lián),開發(fā)和運維的負擔極大。
在亞信科技AntDB數(shù)據(jù)庫發(fā)展的十幾年中,我們看到大量運營商對核心數(shù)據(jù)處理加工的業(yè)務場景。這些需求中,有些能夠很容易地使用傳統(tǒng)技術(shù)滿足,但還有一些一定需要采用流式計算等實時處理能力才能支持。
數(shù)據(jù)庫與流式處理的有機融合
流數(shù)據(jù)處理模式與傳統(tǒng)數(shù)據(jù)庫的內(nèi)核設(shè)計有著極大的區(qū)別。其核心本質(zhì)在于,傳統(tǒng)數(shù)據(jù)庫架構(gòu)設(shè)計中,應用與數(shù)據(jù)庫之間是“請求-響應“的關(guān)系,即業(yè)務發(fā)起SQL請求,數(shù)據(jù)庫隨即執(zhí)行請求并返回結(jié)果。
而流處理內(nèi)核則是“訂閱-推送“的模式。通過預先定義好的數(shù)據(jù)處理模型,對數(shù)據(jù)承載的業(yè)務“事件”進行處理,之后將處理后的結(jié)果推送給下游應用進行展現(xiàn)或入庫。
圖:AntDB數(shù)據(jù)庫流式處理引擎的基礎(chǔ)架構(gòu)
因此在流式數(shù)據(jù)實時處理領(lǐng)域,亞信科技AntDB數(shù)據(jù)庫做了大量從零開始的創(chuàng)新性探索與研究,于2022年底推出AntDB-S流處理數(shù)據(jù)庫引擎,徹底將流式計算與傳統(tǒng)交易、分析型數(shù)據(jù)存儲進行了融合,讓用戶可以在數(shù)據(jù)庫引擎內(nèi),通過標準SQL自由定義數(shù)據(jù)的結(jié)構(gòu)以及實時處理邏輯。
同時數(shù)據(jù)在數(shù)據(jù)庫內(nèi)部的流對象、表對象之間自由流轉(zhuǎn)的過程中,用戶可以隨時通過建立索引、流表關(guān)聯(lián)、觸發(fā)器、物化視圖等方式對數(shù)據(jù)進行性能優(yōu)化、數(shù)據(jù)加工、集群監(jiān)控、以及業(yè)務邏輯定制。
功能優(yōu)勢
-
技術(shù)堆棧簡化:在實時流事件的處理上,AntDB數(shù)據(jù)庫流式處理一體引擎將大量的實時數(shù)據(jù)處理做到數(shù)倉內(nèi)部,更進一步向通用事務靠攏。
-
標準SQL定義:傳統(tǒng)流處理方式對于SQL的處理很弱,還要寫大量業(yè)務代碼,而AntDB-S可以通過統(tǒng)一SQL語句進行處理,在流的使用上更便捷。
-
統(tǒng)一數(shù)據(jù)接口:支持流批模式的轉(zhuǎn)換,AntDB數(shù)據(jù)庫統(tǒng)一超融架構(gòu),實現(xiàn)了對外的接口統(tǒng)一,數(shù)據(jù)的采集與處理無需分開,流批都用SQL即可全部搞定。
-
支持完整事務處理:傳統(tǒng)流處理過程中不支持數(shù)據(jù)的修改,AntDB-S支持流處理中對數(shù)據(jù)的修改和事務操作。
-
實時結(jié)果更準確:通過分布式事務的ACID特性,解決實時流數(shù)據(jù)處理中,數(shù)據(jù)容災和一致性的問題,可以精確判斷數(shù)據(jù)故障點,完成流事件的矯正計算和重統(tǒng)計。
關(guān)于AntDB數(shù)據(jù)庫
?
AntDB數(shù)據(jù)庫始于2008年,在運營商的核心系統(tǒng)上,為全國24個省份的10億多用戶提供在線服務,具備高性能、彈性擴展、高可靠等產(chǎn)品特性,峰值每秒可處理百萬筆通信核心交易,保障系統(tǒng)持續(xù)穩(wěn)定運行近十年,并在通信、金融、交通、能源、物聯(lián)網(wǎng)等行業(yè)成功商用落地。