法國通信系統工程師學校與研究中心(Eurecom)數據科學系助理教授 Appuswamy 和倫敦帝國理工學院 SCALE 實驗室負責人 Heinis 等人近期發表了一篇關於在 DBMS 存儲層操作 DNA 的論文《OligoArchive: Using DNA in the DBMS storage hierarchy》。
論文研究了在資料庫存儲層次結構中集成 DNA 的問題。更具體地,其提出了以下兩個問題:
為了回答這兩個問題,該研究引入了一個叫 OligoArchive 的架構,這是一種使用基於 DNA 的存儲系統作為關係資料庫歸檔層的架構。
DNA 的存儲系統簡單講也就是指基於 ATCG 這些鹼基所組成的一套存儲信息的方案,類比 0/1 二進位,這種存儲系統具有四進位。用 DNA 作為存儲介質,優勢是容量大與存儲時間長,有數據指出 1 克 DNA 能夠存儲大約 2 拍位元組,相當於大約 300 萬張 CD;同時用 DNA 存儲數據保存時間可能長達數千年;此外與硬碟、磁帶等存儲介質不同,DNA 不需要經常維護,而且在讀取方式上,DNA 存儲不涉及兼容性問題。
天然存在的 DNA 是有兩條核苷酸鏈的雙螺旋結構,而用於數據存儲的 DNA 是單鏈核苷酸序列,又叫寡核苷酸(oligo),它是使用每次一個核苷酸來組裝 DNA 的化學過程合成的。
OligoArchive 架構通過將基於磁帶的歸檔層替換為基於 DNA 的歸檔層來改變 DBMS 存儲層次結構,論文具體介紹了資料庫引擎和 DNA 存儲設備之間的分工,以及 DNA 存儲設備應在 OligoArchive 中使用的介面。
資料庫與 DNA 存儲分工是這樣的:資料庫系統執行關係數據和寡核苷酸序列之間的轉換。在 put 操作期間,DNA 存儲系統合成 DNA 鏈並將它們存儲在庫中;在 get 操作期間,對 DNA 鏈進行測序並將讀數返回。
研究人員通過為 PostgreSQL 構建歸檔和恢復工具(pg_oligo_dump 與 pg_oligo_restore)證明 OligoArchive 可以在實踐中實現,這些工具執行模式識別編碼和解碼 DNA 上的關係數據,並使用這些工具將 12KB TPC-H 資料庫歸檔到 DNA,進行體外計算,並將其恢復。
論文中的實驗表明,使用合成 DNA 存檔和恢複數據不僅可行,而且還可以利用資料庫知識經驗優化 DNA 編碼和解碼過程,甚至直接在 DNA 上執行 SQL 操作。
具體內容查看論文:
[admin
]