国产精品视频网址|久久机热国产自偷自|欧美一级中文一级|久久久无码日韩视频|欧美午夜激情影院|成人av不卡网站|色吧加勒比一本道东京热成人无码在线|欧美 亚洲 偷情|欧美老妇乱一区二区|亚洲一区二区网站

VLDB 2019 | 揭秘騰訊TDSQL全時態(tài)數(shù)據(jù)庫系統(tǒng)

2019/8/28 18:44:55 來源:DTDATA 作者:騰訊 分類:特別報道

【編者按:全時態(tài)數(shù)據(jù)為數(shù)據(jù)安全、數(shù)據(jù)重演、數(shù)據(jù)挖掘和AI技術(shù)的施展提供了物理基礎(chǔ)。這篇入選VLDB 2019的論文介紹,基于騰訊云TDSQL擴展而來的全時態(tài)數(shù)據(jù)庫系統(tǒng)(T-TDSQL),在保證OLTP性能的前提下提供了輕量級的全時態(tài)數(shù)據(jù)管理功能和全時態(tài)數(shù)據(jù)的事務(wù)處理能力、以及集當前態(tài)數(shù)據(jù)于生產(chǎn)系統(tǒng)集歷史態(tài)數(shù)據(jù)于分析型系統(tǒng)的集群架構(gòu),構(gòu)成了全時態(tài)數(shù)據(jù)的完備解決方案?!?


一 、前言:


騰訊與中國人民大學于2017年起,依托于騰訊TEG計費平臺部豐富的實戰(zhàn)經(jīng)驗和中國人民大學數(shù)據(jù)工程與知識工程教育部重點實驗室的多年學術(shù)積累,在數(shù)據(jù)庫前沿研究領(lǐng)域開展了深入合作,研究成果已經(jīng)連續(xù)兩年入選國際頂級會議VLDB。(TDSQL帶你走進數(shù)據(jù)庫頂會VLDB 2018 | 論文縱覽)。


VLDB 會議是國際公認的數(shù)據(jù)管理與數(shù)據(jù)庫領(lǐng)域頂尖的三大學術(shù)會議(SIGMOD、VLDB、ICDE)之一,旨在展示和推廣領(lǐng)域內(nèi)最新的研究成果和核心科技。自1975年開辦至今,VLDB會議已經(jīng)成功舉辦了44屆,每年的VLDB能在全球范圍內(nèi)吸引到大量優(yōu)秀的研究人員、企業(yè)代表以及行業(yè)精英到場參會,是一場不容錯過的學術(shù)盛會。VLDB 2019會議于當?shù)貢r間2019年8月26日至8月30日在美國洛杉磯召開,屆時團隊????會對本次研究成果進行公開展示,盡請期待。


繼去年在VLDB2018上通過DEMO論文展示了合作成果MSQL+后(基于TDSQL的插件式近似查詢工具, https://mp.weixin.qq.com/s/BZZOH20NfRyCltPkl7Q7_Q]),今年騰訊與中國人民大學最新聯(lián)合研究成果“A Lightweight and Efficient Temporal Database Management System in TDSQL”成功被VLDB2019 Industry Track接收并將通過長文形式發(fā)表。該研究成果由騰訊TEG計費平臺部TDSQL數(shù)據(jù)庫團隊與中???????人民大學數(shù)據(jù)工程與知識工程教育部重點實驗室深度合作完成。論文介紹了一款基于TDSQL擴展而來的全時態(tài)數(shù)據(jù)庫系統(tǒng),該系統(tǒng)在保證OLTP性能的前提下,提供了輕量級的時態(tài)數(shù)據(jù)管理功能。本文將對論文研究成果進行詳細的分析解讀。



圖1  VLDB官網(wǎng)截圖


騰訊TEG計費平臺部擁有多年的數(shù)據(jù)庫實戰(zhàn)研發(fā)經(jīng)驗,其推出的金融級分布式數(shù)據(jù)庫TDSQL,承載了騰訊90%的金融、交易、計費類業(yè)務(wù)。從2014年開始,通過騰訊金融云平臺,TDSQL對外提供穩(wěn)定可靠的云數(shù)據(jù)庫服務(wù),目前在公有云上服務(wù)金融機構(gòu)500余家,為44余家銀行及政企(包括中國銀行、微眾銀行等)提供專有云服務(wù),在業(yè)內(nèi)享有較好的口碑。中國人民大學數(shù)據(jù)工程與知識工程教育部重????實驗室在數(shù)據(jù)庫基礎(chǔ)研究領(lǐng)域底蘊深厚,作為國內(nèi)最早開展數(shù)據(jù)庫相關(guān)研究的實驗室,目前已經(jīng)獲得了國家科學技術(shù)進步二等獎、教育部科技進步一等獎等殊榮。


二、研究背景


時態(tài)數(shù)據(jù)主要指隨時間推移不斷發(fā)生變化的數(shù)據(jù),例如溫度、賬戶余額等數(shù)據(jù)。時態(tài)數(shù)據(jù)在現(xiàn)實生活中非常普遍,而在金融場景下,在數(shù)據(jù)庫層面時態(tài)數(shù)據(jù)管理尤為重要。例如,金融審計時需要獲取2018年11月08日至2018年11月10日的賬戶余額變動情況。如果通過傳統(tǒng)數(shù)據(jù)庫(RDBMS)中的普通關(guān)系表進行賬戶余額管理(如圖1所示),賬戶余額變動不會被維護,因而上層應用需要通過日志等????式來額外記錄余額的每次變動,這會大大提高應用復雜度;而采用如表2所示的時態(tài)數(shù)據(jù)表,余額的變遷被原生維護在數(shù)據(jù)庫中,即可準確獲取到余額變動數(shù)據(jù)(表中標紅數(shù)據(jù))。



三、系統(tǒng)簡介


結(jié)合TDSQL系統(tǒng)的特點,研究團隊提出并實現(xiàn)了一個輕量且高效的全時態(tài)數(shù)據(jù)庫系統(tǒng),該系統(tǒng)可以在保留原有TDSQL強勁的OLTP處理性能的同時,通過巧妙的系統(tǒng)設(shè)計,提供了內(nèi)建的時態(tài)數(shù)據(jù)管理能力(如圖2所示)。



圖2  系統(tǒng)概


3.1 存儲


TDSQL全時態(tài)數(shù)據(jù)庫系統(tǒng)創(chuàng)新性地采用了一種混合存儲模式,來對時態(tài)數(shù)據(jù)進行管理。系統(tǒng)將時態(tài)數(shù)據(jù)拆分為當前數(shù)據(jù)和歷史數(shù)據(jù),針對不同的數(shù)據(jù)類型,分別采用不同的存儲策略。當前數(shù)據(jù)管理模塊,采用了基于MVCC(多版本并發(fā)訪問控制協(xié)議)設(shè)計的數(shù)據(jù)庫所普遍采用的段頁式結(jié)構(gòu),并且專門開辟回滾段,來對更新或刪除操作產(chǎn)生的舊版本進行暫存。在回滾段中暫存的數(shù)據(jù)會在數(shù)據(jù)庫進行資源回收操作(如MySQL中的Purge和PostgreSQL中的VACUUM等)時,遷移到歷史數(shù)據(jù)管理模塊,這個過程被稱為數(shù)據(jù)轉(zhuǎn)儲。這是一種異步的轉(zhuǎn)儲策略,因而幾乎不會造成性能損耗。歷史數(shù)據(jù)存儲模塊,通過k-v格式來進行組織,可以大幅度縮小存儲開銷。由于一個數(shù)據(jù)項會存在多個歷史版本,而這些歷史版本會在某些屬性上存在一樣的值,例如表一中的James被重復四次。因此,在歷史數(shù)據(jù)存儲模塊中,系統(tǒng)將每一個版本轉(zhuǎn)化為一條k-v,并且只存儲相較于上一個版本發(fā)生變化的屬性值。


3.2 查詢與事務(wù)處理


系統(tǒng)對時態(tài)查詢處理邏輯進行了針對性設(shè)計與優(yōu)化。通過專門的時態(tài)查詢編譯器,部分時態(tài)查詢條件(如有效時間查詢)會被重寫并拼接到WHERE條件中。而對于事務(wù)時間查詢,系統(tǒng)將其查詢條件轉(zhuǎn)化為了內(nèi)嵌的可見性判斷過程,從而使得時態(tài)查詢所獲取的數(shù)據(jù)滿足事務(wù)一致性的要求,保證數(shù)據(jù)的準確性,這點在金融場景下顯得尤為重要。另外,通過持久維護事務(wù)狀態(tài),系統(tǒng)可以快速獲???????到事務(wù)的執(zhí)行狀態(tài),結(jié)合時態(tài)數(shù)據(jù),即可原生支持事務(wù)級數(shù)據(jù)閃回等實用操作。對于歷史數(shù)據(jù),系統(tǒng)利用k-v存儲的特性,可以根據(jù)時間條件快速定位到所需數(shù)據(jù)版本,具備了較好的時態(tài)查詢性能,且在SQL語句的寫法上方便用戶直接使用SQL語句進行查詢。


3.3 架構(gòu)設(shè)計


系統(tǒng)體現(xiàn)了HTAC(Hybrid Transaction / Analytical  Cluster,混合事務(wù)/分析集群)這一新型的系統(tǒng)架構(gòu)設(shè)計理念,如圖3。TDSQL全時態(tài)數(shù)據(jù)庫系統(tǒng)分為OLTP集群和OLAP集群,OLTP集群負責事務(wù)型業(yè)務(wù),OLAP系統(tǒng)處理分析型業(yè)務(wù),提供歷史數(shù)據(jù)的查詢分析等功能。通過統(tǒng)一路由模塊根據(jù)查詢語句、查詢操作的語義將SQL發(fā)送到對應集群進行處理。由于時態(tài)數(shù)據(jù)查詢等負載需要占用大量系統(tǒng)資源,這種拆分的系統(tǒng)設(shè)計可以盡量影響減小生產(chǎn)系統(tǒng)受到的性能影響。其次,歷史數(shù)據(jù)量級較大,OLAP集群通過擴展存儲的方式,即可實現(xiàn)歷史數(shù)據(jù)的無限存儲。



圖3 T-TDSQL全時態(tài)數(shù)據(jù)庫系統(tǒng)架構(gòu)圖


四、論文貢獻


1. 論文提出了一種拓展的時態(tài)數(shù)據(jù)模型。 除了在SQL:2011中定義的有效/事務(wù)時間屬性外,本模型通過新引入的事務(wù)ID屬性描述時間。 MIN_ID與創(chuàng)建記錄的事務(wù)相對應,MAX_ID對應于刪除/更新記錄的事務(wù)。 事務(wù)ID能夠識別在同一事務(wù)中插入/更新/刪除的所有記錄,從而實現(xiàn)由于業(yè)務(wù)邏輯破壞數(shù)據(jù)的修復。


2. 論文提出了一種內(nèi)建的時態(tài)數(shù)據(jù)庫解決方案,并針對TDSQL進行了大量優(yōu)化,最終實現(xiàn)了TDSQL全時態(tài)數(shù)據(jù)庫系統(tǒng)。同時,該解決方案具有很強的通用性,可以方便的引入到其他數(shù)據(jù)庫系統(tǒng)中。通過引入異步數(shù)據(jù)遷移、增量歷史數(shù)據(jù)管理、原生時態(tài)查詢執(zhí)行器等策略,該解決方案具有輕量且高效的特點。


3. 通過在真實場景和TPC基準負載下的大量實驗,TDSQL全時態(tài)數(shù)據(jù)庫系統(tǒng)具有非常小的性能損失(相較于原始TDSQL系統(tǒng)),并且能夠快速響應時態(tài)查詢,與其他現(xiàn)有的時態(tài)數(shù)據(jù)庫系統(tǒng)相比具有較好的性能。


五、系統(tǒng)測試


通過TPCC測試基準,論文展示了時態(tài)數(shù)據(jù)管理對原有系統(tǒng)性能的影響情況。如圖3所示,在256、512、1024個數(shù)據(jù)倉庫的場景下,基于TDSQL實現(xiàn)的全時態(tài)數(shù)據(jù)庫系統(tǒng)的系統(tǒng)性能相較于原始TDSQL下降率不到10%,領(lǐng)先于其他基于傳統(tǒng)關(guān)系數(shù)據(jù)庫實現(xiàn)的時態(tài)數(shù)據(jù)庫系統(tǒng)。



圖3  TPCC測試結(jié)果


另外,基于真實的批處理業(yè)務(wù)場景,論文展示了系統(tǒng)在實際業(yè)務(wù)場景下的表現(xiàn)。如圖4所示,通過連續(xù)30天對比原始系統(tǒng)和新型全時態(tài)數(shù)據(jù)庫系統(tǒng)(T-TDSQL)在處理該業(yè)務(wù)時所需的執(zhí)行時間,實驗結(jié)果展示騰訊全時態(tài)數(shù)據(jù)庫系統(tǒng)在簡化業(yè)務(wù)應用開發(fā)的同時,可以縮短近一半的業(yè)務(wù)執(zhí)行時間。



圖4  實際業(yè)務(wù)場景測試


對于該論文,VLDB評審委員會做出如下點評:This paper extends the TDSQL system from Tencent for temporal data management. A new temporal data model is proposed with optimized implementation. Extensive experimental study has been conducted to compare the performance with existing temporal database systems over benchmarks and real data.


六、TDSQL全時態(tài)數(shù)據(jù)庫的價值和意義


TDSQL全時態(tài)數(shù)據(jù)庫核心價值觀是“歷史數(shù)據(jù)富有價值”,核心理念是“為數(shù)據(jù)賦能”,因而系統(tǒng)提供了如下特性:


1. 全時態(tài)數(shù)據(jù)模型。數(shù)據(jù)庫系統(tǒng)通過統(tǒng)一的數(shù)據(jù)模型管理數(shù)據(jù)的生命周期,即數(shù)據(jù)的誕生、修改、消亡的全過程、過程中的狀態(tài)變遷操作等。


2. 全時態(tài)數(shù)據(jù)存儲。全時態(tài)數(shù)據(jù)存儲保證了所有狀態(tài)數(shù)據(jù)的永久保存。解決了現(xiàn)有的數(shù)據(jù)庫系統(tǒng),大部分只能保存當前數(shù)據(jù),而舊版本數(shù)據(jù)被丟棄的問題。


3. 全時態(tài)數(shù)據(jù)查詢。提供了對時態(tài)數(shù)據(jù)的快速查詢能力,由于歷史數(shù)據(jù)的數(shù)據(jù)量級巨大,在海量歷史數(shù)據(jù)上的查詢能力非常重要。


4. 全時態(tài)數(shù)據(jù)計算。數(shù)據(jù)都是具有價值的,因此需要具備在海量時態(tài)數(shù)據(jù)上的分析計算能力。

 

TDSQL全時態(tài)數(shù)據(jù)庫的意義主要體現(xiàn)在功能和成本兩個方面。功能角度看,TDSQL全時態(tài)數(shù)據(jù)庫(用T-TDSQL表示)可以支持如下功能特性:


1. 精確的歷史數(shù)據(jù)讀取??梢圆樵兊綄τ跉v史上任意一個時間段內(nèi)的數(shù)據(jù)變化情況,如新插入的數(shù)據(jù)、連續(xù)被更新的數(shù)據(jù)、以及被刪除的數(shù)據(jù)。因此可以追蹤數(shù)據(jù)的歷史軌跡,并能方便的在增量數(shù)據(jù)的基礎(chǔ)上進行多表連接的增量計算。


2. 數(shù)據(jù)庫中存儲有數(shù)據(jù)的歷史狀態(tài)信息,數(shù)據(jù)的安全性得到保證。防止篡改數(shù)據(jù)、數(shù)據(jù)誤刪除的恢復、賬戶變化軌跡追蹤、回溯歷史時空里的“過去的”數(shù)據(jù)等功能,在T-TDSQL中成為現(xiàn)實。


3. T-TDSQL管理海量時態(tài)數(shù)據(jù),因而流水日志不再重要?;谒饕龣z索歷史態(tài)數(shù)據(jù)時如同基于索引檢索當前數(shù)據(jù)一樣的方便快捷且消耗最少量的計算資源,這對于審計、安全、檔案等部門有幫助。另外,HTAC系統(tǒng)架構(gòu)提供不受限于單機系統(tǒng)的存儲能力,可以通過分布式網(wǎng)絡(luò)文件系統(tǒng)來支持單機無限數(shù)據(jù)量的存儲。


4. T-TDSQL還可以參與到數(shù)據(jù)關(guān)聯(lián)分析的環(huán)節(jié)中,為數(shù)據(jù)賦予了事務(wù)時態(tài)、與用戶的關(guān)聯(lián)關(guān)系等,甚至還可以創(chuàng)造數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系以實現(xiàn)“數(shù)據(jù)血統(tǒng)”的產(chǎn)生等。


5. 全時態(tài)數(shù)據(jù)為數(shù)據(jù)安全、數(shù)據(jù)重演、數(shù)據(jù)挖掘和AI技術(shù)的施展提供了物理基礎(chǔ)。


致謝


本項目在騰訊TEG計費平臺部立項,研究內(nèi)容和實現(xiàn)過程得到中國人民大學數(shù)據(jù)工程和知識工程教育部重點實驗室和騰訊公司的參與和支持,特別向項目參與人、支持者表示感謝。


編輯:夜一

相關(guān)資訊

共有訪客發(fā)表了評論 網(wǎng)友評論

驗證碼: 看不清楚?