天天看點

T-TDSQL的核心技術

T-TDSQL的核心技術之一,是資料模型的定義,全态資料模型和雙時态資料模型的結合,造就了T-TDSQL。

1.T-TDSQL的核心技術一,資料模型

在這個模型中,全态資料展現在了資料項的曆史版本上;時态資料不僅有事務時态、還有有效時間時态。而全态資料的曆史态資料,不僅可以追溯資料庫系統的操作發生時間,還可以追溯發生的操作類型,如下圖中的“Operation”列,可以知道在資料項上曾經發生的DML操作是UPDATE還是INSERT還是DELETE。這是一個非常酷的特性,這使得使用者在T-TDSQL系統中可以實作“一切過往兼可追溯”的夢想。

T-TDSQL的核心技術

2.T-TDSQL的核心技術二,曆史資料轉儲時機

曆史資料的存儲時機,是T-TDSQL的另外一個核心技術。

T-TDSQL用全态的資料概念,巧妙地利用MySQL的復原段和Purge機制,實作了曆史态資料的轉儲。一個原理圖如下:

T-TDSQL的核心技術

3.T-TDSQL的核心技術二,一緻性快照點

在PostgreSQL中,如果實作本技術,可以考慮結合多版本的存儲特點,實作目前态資料與曆史态、過渡态的存儲分離,這需要修改已有的資料可見性判斷算法、頁面存儲格式、資料的合并時機、緩沖區的讀寫和heap的構造方式等,更重要的是要實作新的資料一緻性快照點。

而T-TDSQL基于MySQL實作了新的資料一緻性快照點的建構,因而可以擷取任何時間段(包括曆史發生過的時間)上的任何狀态的資料。

作為原創技術,T-TDSQL的核心技術點及其思路,相關論文已經在World Wide Web journal上以題為《Efficienttime-interval data extraction in MVCC-based RDBMS》發表,詳情可參見:

https://link.springer.com/article/10.1007/s11280-018-0552-7

T-TDSQL的核心技術
T-TDSQL的核心技術