中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

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

2020-01-08    來源:raincent

容器云強勢上線!快速搭建集群,上萬Linux鏡像隨意使用

作者:騰訊TDSQL團隊

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

一 前言

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

VLDB 會議是國際公認的數(shù)據(jù)管理與數(shù)據(jù)庫領域頂尖的三大學術會議(SIGMOD、VLDB、ICDE)之一,旨在展示和推廣領域內最新的研究成果和核心科技。自 1975 年開辦至今,VLDB 會議已經(jīng)成功舉辦了 44 屆,每年的 VLDB 能在全球范圍內吸引到大量優(yōu)秀的研究人員、企業(yè)代表以及行業(yè)精英到場參會,是一場不容錯過的學術盛會。

繼去年在 VLDB2018 上通過 DEMO 論文展示了合作成果 MSQL+ 后(基于 TDSQL 的插件式近似查詢工具),今年騰訊與中國人民大學最新聯(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)截圖

二 研究背景

時態(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)中的普通關系表進行賬戶余額管理(如圖 1 所示),賬戶余額變動不會被維護,因而上層應用需要通過日志等形式來額外記錄余額的每次變動,這會大大提高應用復雜度;而采用如表 2 所示的時態(tài)數(shù)據(jù)表,余額的變遷被原生維護在數(shù)據(jù)庫中,即可準確獲取到余額變動數(shù)據(jù)(表中加粗數(shù)據(jù))。

三 系統(tǒng)簡介

結合 TDSQL 系統(tǒng)的特點,研究團隊提出并實現(xiàn)了一個輕量且高效的全時態(tài)數(shù)據(jù)庫系統(tǒng),該系統(tǒng)可以在保留原有 TDSQL 強勁的 OLTP 處理性能的同時,通過巧妙的系統(tǒng)設計,提供了內建的時態(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ù)據(jù)庫所普遍采用的段頁式結構,并且專門開辟回滾段,來對更新或刪除操作產(chǎn)生的舊版本進行暫存。在回滾段中暫存的數(shù)據(jù)會在數(shù)據(jù)庫進行資源回收操作(如 MySQL 中的 Purge 和 PostgreSQL 中的 VACUUM 等)時,遷移到歷史數(shù)據(jù)管理模塊,這個過程被稱為數(shù)據(jù)轉儲。這是一種異步的轉儲策略,因而幾乎不會造成性能損耗。歷史數(shù)據(jù)存儲模塊,通過 k-v 格式來進行組織,可以大幅度縮小存儲開銷。由于一個數(shù)據(jù)項會存在多個歷史版本,而這些歷史版本會在某些屬性上存在一樣的值,例如表一中的 James 被重復四次。因此,在歷史數(shù)據(jù)存儲模塊中,系統(tǒng)將每一個版本轉化為一條 k-v,并且只存儲相較于上一個版本發(fā)生變化的屬性值。

3.2 查詢與事務處理

系統(tǒng)對時態(tài)查詢處理邏輯進行了針對性設計與優(yōu)化。通過專門的時態(tài)查詢編譯器,部分時態(tài)查詢條件(如有效時間查詢)會被重寫并拼接到 WHERE 條件中。而對于事務時間查詢,系統(tǒng)將其查詢條件轉化為了內嵌的可見性判斷過程,從而使得時態(tài)查詢所獲取的數(shù)據(jù)滿足事務一致性的要求,保證數(shù)據(jù)的準確性,這點在金融場景下顯得尤為重要。

另外,通過持久維護事務狀態(tài),系統(tǒng)可以快速獲取到事務的執(zhí)行狀態(tài),結合時態(tài)數(shù)據(jù),即可原生支持事務級數(shù)據(jù)閃回等實用操作。對于歷史數(shù)據(jù),系統(tǒng)利用 k-v 存儲的特性,可以根據(jù)時間條件快速定位到所需數(shù)據(jù)版本,具備了較好的時態(tài)查詢性能,且在 SQL 語句的寫法上方便用戶直接使用 SQL 語句進行查詢。

3.3 架構設計

系統(tǒng)體現(xiàn)了 HTAC(Hybrid Transaction / Analytical Cluster,混合事務 / 分析集群)這一新型的系統(tǒng)架構設計理念,如圖 3。

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

 

 

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

四 論文貢獻

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

論文提出了一種內建的時態(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í)行器等策略,該解決方案具有輕量且高效的特點。

通過在真實場景和 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%,領先于其他基于傳統(tǒng)關系數(shù)據(jù)庫實現(xiàn)的時態(tài)數(shù)據(jù)庫系統(tǒng)。

 

 

圖 4 TPCC 測試結果

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

 

 

圖 5 實際業(yè)務場景測試

對于該論文,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)提供了如下特性:

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

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

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

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

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

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

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

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

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

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

致謝

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

標簽: 全時態(tài)數(shù)據(jù) 

版權申明:本站文章部分自網(wǎng)絡,如有侵權,請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:美國十大熱門數(shù)據(jù)科學Data Science全面解析卷

下一篇:Python 中的多進程與線程 每個數(shù)據(jù)科學家都需要知道