版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、TDSQL分布式金融級數(shù)據(jù)庫技術(shù)介紹技術(shù)創(chuàng)新,變革未來Architecture of TDSQL目錄CONTENTSNew characteristics of financial businessTransaction processing technology Of Temporal DBTDSQL分布式數(shù)據(jù)庫面向金融類業(yè)務,十年積累,億級賬戶驗證騰訊公司內(nèi)與計費、充值、轉(zhuǎn)賬、財務等核心系統(tǒng)90%以上都使用TDSQL!2002騰訊SP業(yè)務原生MYSQL2004增值業(yè)務分庫分表手工 伸縮2008業(yè)務爆炸一致性、7X24可用性2010騰訊計費超高并發(fā)超短 時延2012米大師,騰訊 充值更名TD
2、SQL2015騰訊云金融云2014WeBank私有化部署TDSQL,數(shù)據(jù)庫的特點跨機房部署網(wǎng)絡故障不影響業(yè)務數(shù)據(jù)強同步主備數(shù)據(jù)完全一致三重保障集群內(nèi)保障3套節(jié)點,單 點故障整體穩(wěn)定金融級安全支持物理專享,支持數(shù)據(jù) 庫審計,支持加密等可用性:99.999%數(shù)據(jù)可靠性:99.99999%Architecture of TDSQL目錄CONTENTSNew characteristics of financial businessTransaction processing technology Of Temporal DBWhat is the pain point of your busines
3、s?你的業(yè)務痛點是什么?Application development is complex,應用開發(fā)復雜:各種應用使用業(yè)務日志生產(chǎn)日志:不同應用創(chuàng)造了不同格式的日志存儲日志:大量冗余信息(源庫 + 日志)分析日志:讀入、解析、分析The logic of the data is fragmented,邏輯割裂:業(yè)務按日分表,只能按日進行結(jié) 算,不能靈活、方便的計算。如計算任意時間段內(nèi)的數(shù)據(jù),日表在物理上割裂 了數(shù)據(jù)按時間的邏輯連續(xù)特性,需要指定若干個特定的日表才能進行計算。No real time characteristics,實時特性丟失:如上兩個問題,隱含地,意味著進 行計算的數(shù)據(jù)需要
4、導入到一個新的分析系統(tǒng)進行計算,導出/導入數(shù)據(jù)的過程也 帶來了資源和時間的消耗、使得分析系統(tǒng)難以具備實時計算特性。Complexity of data management,數(shù)據(jù)管理復雜:另外,日志等信息,是歷史數(shù) 據(jù),需要長期保存。對不同格式、海量的日志進行存儲與管理,這成為一個巨 大的挑戰(zhàn)。Can the database solve your pain point?數(shù)據(jù)庫能解決痛點嗎?The modern database system only stores the current value of the data現(xiàn)代的數(shù)據(jù)庫系統(tǒng)只保留有數(shù)據(jù)的當前值Historical data i
5、s discarded歷史數(shù)據(jù)被丟棄The value of the data is valuable數(shù)據(jù)有價值A(chǔ)re you willing to throw away something valuable?你愿意拋棄有價值的東西嗎?Tencent solution騰訊解決之道-FmSMCFull-state temporal data model,全時態(tài)數(shù)據(jù)模型。數(shù)據(jù)的誕生、修改、消亡的 全過程管理。Full-state data,全態(tài)數(shù)據(jù)Temporal data,時態(tài)數(shù)據(jù)Storage,全時態(tài)數(shù)據(jù)存儲?,F(xiàn)有的數(shù)據(jù)庫系統(tǒng),只能保存數(shù)據(jù)的當前狀態(tài)(當 前態(tài)數(shù)據(jù))。歷史態(tài)數(shù)據(jù)怎么存儲?海量歷
6、史態(tài)數(shù)據(jù)怎么存儲?海量全時態(tài)數(shù)據(jù)怎么存儲?Management,全時態(tài)數(shù)據(jù)管理。雙時態(tài)數(shù)據(jù)的管理。Computing,全時態(tài)數(shù)據(jù)計算。歷史態(tài)數(shù)據(jù)可見性判斷如何利用索引高效讀取歷史態(tài)數(shù)據(jù)?海量全時態(tài)數(shù)據(jù)計算環(huán)境?一切過往(數(shù)據(jù)的歷史和狀態(tài))兼可追溯Other solution其他解決方案Therory,理論界Full-state data,全態(tài)數(shù)據(jù)模型,沒有Temporal data,雙時態(tài)數(shù)據(jù)模型,支持1993年出版的Temporal Databases: Theory, Design, and Implementation被 稱為“世界第1本關(guān)于時態(tài)數(shù)據(jù)庫專著”。書中列出13種最具影響的時態(tài)
7、數(shù) 據(jù)庫模型:TDB、HRDM、TempSQL、IXRM、TRM、HSQL、TQuel、TRC、TEER、TDM、OODAplex、Object History、Temporal Deductive Database。SQL:2011:對雙時態(tài)模型進行了定義包含事務時間的表不刪除數(shù)據(jù),歷史和當前數(shù)據(jù)同時存在于表中且都能被查詢,但只有當前數(shù)據(jù)能被更新、 刪除。事務時間由兩個時間域組成,事務開始時間表示“元組被新增的時間”,事務結(jié)束時間表示“元組被移除的時間”DB2 V10:歷史表存儲歷史數(shù)據(jù),全面支持雙時態(tài)數(shù)據(jù)模型SQL Server 2016:只支持事務時態(tài)數(shù)據(jù)模型,但有較多輔助功能一切過往(
8、數(shù)據(jù)的歷史和狀態(tài))兼可追溯T-TDSQL New FeatureT-TDSQL特性表Full-state temporal data model全時態(tài)數(shù)據(jù)模型Storing Data-Format儲存數(shù)據(jù)-轉(zhuǎn)儲格式Column Store數(shù)據(jù)格式支持Parquet、RCFile、ORCFile等列存格式Typical Cases典型案例增量計算:總賬快對、細賬精確New MethodOld Method流水表相同只能對總賬精確的細賬Typical Cases典型案例2. 有效時間表的插入:新入職三位員工,ID分別為2018001,2018002,2018003,暫且認為該員工不會調(diào)離所屬部門。
9、INSERT INTO Employee (ID, Dept, Valid_Start, Valid_End) VALUES (2018001, 1, 2018-1-1 00:00:00, 9999-12-31 23:59:59), (2018002, 1, 2018-1-1 00:00:00, 9999-12-31 23:59:59), (2018003, 1, 2018-1-1 00:00:00, 9999-12-31 23:59:59);mysql SELECT * FROM Employee;+-+-+-+-+| ID | Dept | Valid_Start| Valid_End|+
10、-+-+-+-+| 2018001 | 1 | 2018-01-01 00:00:00 | 9999-12-31 23:59:59 | 2018002 | 1 | 2018-01-01 00:00:00 | 9999-12-31 23:59:59 | 2018003 | 1 | 2018-01-01 00:00:00 | 9999-12-31 23:59:59 |+-+-+-+-+3. 有效時間表的更新,更新有效時間字段: ID為2018002的員工將于2019-1-1 00:00:00調(diào)離部門1 UPDATE Employee SET Valid_End = 2019-1-1 00:00:0
11、0 WHERE ID=2018002;mysql SELECT * FROM Employee;+-+-+-+-+| ID | Dept | Valid_Start| Valid_End|+-+-+-+-+| 2018001 | 1 | 2018-01-01 00:00:00 | 9999-12-31 23:59:59 | 2018002 | 1 | 2018-01-01 00:00:00 | 2019-01-01 00:00:00 | 2018003 | 1 | 2018-01-01 00:00:00 | 9999-12-31 23:59:59 |+-+-+-+-+有效時間應用1. 創(chuàng)建有效
12、時間表:表Employee,ID為員工編號,Dept為員工任職部門編號,Valid_Start和Valid_End為有效時間起、止,Valid_Period為有效時間區(qū)間。CREATE TABLE Employee(ID INT, Dept INT, Valid_Start DATETIME, Valid_End DATETIME, PRIMARY KEY(ID, Valid_Start), PERIOD FOR Valid_Period (Valid_Start, Valid_End);Typical Cases典型案例有效時間應用5. 有效時間表的查詢: 傳統(tǒng)SELECT仍可行,T-TDS
13、QL提供AS OF、FROM TO和BETWEEN AND三種時態(tài)查詢方式:AS OF查詢AS OF tv:在tv時刻,元組所表示的關(guān)系在現(xiàn)實世界正確 在2018-7-15 00:00:00時,各員工就職的部門SELECT * FROM Employee WHERE PERIOD Valid_Period AS OF 2018-7-15 00:00:00; mysql SELECT * FROM Employee WHERE PERIOD Valid_Period AS OF 2018-7-15 00:00:00;+-+-+-+-+| ID | Dept | Valid_Start| Vali
14、d_End|+-+-+-+-+| 2018001 | 2 | 2018-01-01 00:00:00 | 2019-01-01 00:00:00 | 2018003 | 2 | 2018-06-01 00:00:00 | 2019-01-01 00:00:00 |+-+-+-+-+FROM TO查詢FROM tv1 TO tv2:在時間段tv1, tv2)內(nèi),元組所表示的關(guān)系在現(xiàn)實世界正確,時間不及tv或超過tv2,該元組所表示的關(guān)系在現(xiàn)實世界不成立。有效時間在2018-6-1 00:00:00至2019-6-1 00:00:00之間的員工信息SELECT * FROM Employee WH
15、ERE PERIOD Valid_Period FROM 2018-6-1 00:00:00 TO 2019-6-1 00:00:00; mysql SELECT * FROM Employee WHERE PERIOD Valid_Period FROM 2018-6-1 00:00:00 TO 2019-6-1 00:00:00;+-+-+-+-+| ID | Dept | Valid_Start| Valid_End|+-+-+-+-+| 2018003 | 2 | 2018-06-01 00:00:00 | 2019-01-01 00:00:00 |+-+-+-+-+BETWEEN A
16、ND查 詢BETWEEN tv1 AND tv2:在時間段tv1, tv2)內(nèi),元組所表示的關(guān)系在現(xiàn)實世界正確。在2018-6-1 00:00:00至2019-6-1 00:00:00時間段內(nèi),員工任職過的部門SELECT * FROM Employee WHERE PERIOD Valid_Period BETWEEN 2018-6-1 00:00:00 AND 2019-6-1 00:00:00;mysql SELECT * FROM Employee WHERE PERIOD Valid_Period BETWEEN 2018-6-1 00:00:00 AND 2019-6-1 00:0
17、0:00;+-+-+-+-+| ID | Dept | Valid_Start| Valid_End|+-+-+-+-+| 2018001 | 2 | 2018-01-01 00:00:00 | 2019-01-01 00:00:00 | 2018003 | 1 | 2018-01-01 00:00:00 | 2018-06-01 00:00:00 | 2018003 | 2 | 2018-06-01 00:00:00 | 2019-01-01 00:00:00 | 2018003 | 1 | 2019-01-01 00:00:00 | 9999-12-31 23:59:59 |+-+-+-+
18、-+Typical Cases典型案例數(shù)據(jù)安全:數(shù)據(jù)訂正、聯(lián)機閃回、歷史追蹤T-TDSQL提供聯(lián)機的數(shù)據(jù)閃回,可以查詢過去某個時間段的數(shù)據(jù)庫狀態(tài)。而讀取數(shù)據(jù)庫的過去某個時間點的數(shù)據(jù)狀態(tài)(歷史態(tài)被儲存而不是被清理),依據(jù)的是三種快照讀操作。這是閃回實現(xiàn)的原理?;诖嗽?,實現(xiàn)了多種類型的聯(lián)機閃回功能,包括:閃回查詢,閃回刪除,閃 回歸檔。閃回查詢:可以查詢過去某個時間段的數(shù)據(jù)庫狀態(tài),可將某個表回退到過去某個時 間點。閃回刪除:閃回刪除可以將一個已經(jīng)被Drop的表還原。相應的索引也會被還原。閃回歸檔:閃回數(shù)據(jù)歸檔可使表具有回退到過去任何時間點。Architecture of TDSQL目錄CONTENTSNew characteristics of financial businessTransaction processing technology Of Temporal DB全態(tài) 數(shù)據(jù)Storing temporal DataWhen儲存時態(tài)數(shù)據(jù)-轉(zhuǎn)儲時機Principle原理歷史數(shù)據(jù)可見性算法快照差增量抽取算法數(shù)學上,兩個集合的對稱差是只屬 于其中一個集合,而不屬于另一個 集合的元素組成的集合。Principle原理T-TDSQLTDSQL Full-state Temporal Database System TencentPlease Follow U
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)社會責任“美麗中國,我是行動者”推廣方案
- 2024年教師資格考試初中學科知識與教學能力信息技術(shù)試卷及答案指導
- 學校校車安全管理與維修方案
- 基于聲感知的移動終端身份認證綜述
- 節(jié)能項目施工用水用電方案
- 建筑行業(yè)信用管理及評估標準
- 體育賽事應急安全培訓預案
- 新農(nóng)村建設房屋拆除施工方案
- 500噸農(nóng)村污水治理方案設計
- 橋梁施工腳手架與電力保障方案
- 高中英語新外研版選擇性必修四unit2Tuesdays with Morrie課件(精編)
- 蘇少版音樂六年級上冊《幽靜的山谷》課件
- 中山大學PPT模板-中山大學01
- 千兆位以太網(wǎng)用光纖收發(fā)器設計-設計應用
- 中國特色社會主義理論與實踐研究智慧樹知到答案章節(jié)測試2023年北京交通大學
- 《月光曲》評課稿
- 白蟻防治分部工程驗收鑒定書
- 黑龍江省哈爾濱市八年級上學期物理期中測試試卷四套含答案
- 韓文那些事兒智慧樹知到答案章節(jié)測試2023年嘉興學院
- 一年級上冊數(shù)學《認識鐘表》教學課件-A3演示文稿設計與制作【微能力認證優(yōu)秀作業(yè)】
- 余華《活著》讀書分享課件ppt
評論
0/150
提交評論