溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

數據庫中什么是非易失性內存技術

發布時間:2021-11-04 11:29:17 來源:億速云 閱讀:249 作者:iii 欄目:關系型數據庫

本篇內容介紹了“數據庫中什么是非易失性內存技術”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

Q1:非易失性內存技術是什么?

Arulraj,Pavlo:他是一種廣泛的技術,包括相變內存和憶阻器。具有低延遲讀、堪比DRAM的寫速度,并具有持久特性和堪比SSD的大存儲容量。市場上Intel基于3D XPoint技術[1]出產了傲騰DC NVM模塊的產品。

Q2:基于易失性內存和持久內存的數據庫管理系統有哪些潛在的變化?

Arulraj,Pavlo:現有的數據庫管理系統分為兩大類:1)面向磁盤;2)面向內存。面向磁盤的數據庫管理系統和1970年代的第一代關系數據庫基于的假設相同,比如IBM的R系統?;趦蓪哟鎯?,用易失性的內存比如DRAM作為緩存,使用慢速、非易失的塊設備作為持久存儲器,比如SSD。這些系統基于一個悲觀的假設:事務可以訪問不在內存中的數據,為了訪問磁盤上數據需要很長延遲。采用傳統技術,比如沉重的并發控制機制來客服這些限制。

    最近出現的商品化產品大大擴展了單機DRAM內存。但是面向磁盤的數據庫系統并不是針對數據全部駐留在內存場景而設計。針對NVM,面向磁盤數據庫許多部件都顯得冗余。

    相反,面向內存的數據庫架構假設所有數據都在內存,因此不需要慢速、面向磁盤的部件。因此面向內存的數據庫優于面向磁盤的數據庫。但是由于DRAM易失,系統崩潰后,為了恢復仍需要沉重的部件。隨著NVM的出現,面向磁盤和面向內存的數據庫架構都將發生顛覆性影響。

Q3:現存的數據庫管理系統為什么不能充分利用NVM技術優點?

Arulraj,Pavlo:NVM特性有:

1)可字節尋址:NVM和其他非易失性存儲(僅支持以塊為單位進行數據傳輸)不同,支持字節可尋址。

2)高速寫負載:相比SSD,NVM寫速度能高一個數量級。更重要的是隨機寫和順序寫差距很小。

3)讀寫不對稱。某些NVM技術,寫會比讀花費的時間長。另外,過度寫單個內存單元會損壞它。

    NVM優點顯而易見,在數據庫系統中充分利用他們非常重要。我們對面向磁盤和面向內存數據庫在NVM上進行了評估,他們性能差不多。當前數據庫管理系統假設內存是易失的,因此他們的架構需要將數據持久化到持久設備。這說明為充分利用NVM特性,需要重構數據庫管理系統。

Q4:利用NVM,哪些傳統數據庫系統部件不是必要的?

Arulraj,Pavlo:針對NVM,需要重新設計數據庫系統的幾個關鍵部件:1)日志和恢復協議;2)存儲和buffer管理;3)索引數據結構

舉例說明日志和恢復協議。一個數據庫系統需要確保數據的完整性。更新操作的事務在返回應用成功前,需要將其數據持久化到持久設備如SSD。這樣的存儲設備比DRAM慢,尤其在隨機寫上,只支持以block為單位的傳輸。

事務處理過程中,如果在提交前需要覆蓋數據庫內容,那么必須執行隨機寫到磁盤。通過將隨機寫轉換成日志順序寫來提高數據庫性能。

NVM顛覆了WAL協議的設計,因為他支持快速的隨機寫。因此我們需要為NVM重新定制新協議。例如write behind logging(WBL)。WBL不僅能提高性能,也能使崩潰重啟恢復時快速完成。WBL追蹤數據庫哪些部分發生更改,而不是如何更改。用這樣的日志方法,數據庫可以不將數據記錄到日志,直接將其刷寫。通過排序寫到NVM,確保事務持久性和原子性,使每個事務寫更少數據,提高NVM設備生命周期。

Q5:你們已經設計開發了適配NVM的數據庫系統存儲引擎,關鍵模塊是什么?

Arulraj,Pavlo:傳統的數據庫系統基于兩層架構:DRAM+SSD。這些設備具有各自的硬件特性和約束,傳統數據庫系統架構基于減少這些影響的設計。例如依賴于這些設備,維護兩種元組布局。由于DRAM字節尋址并高效處理隨機讀寫,所以內存中的元組可以報考non-lined字段。而存儲在SSD上的元組只存在inlined字段以避免隨機寫。為分攤訪問持久設備的開銷,這些引擎通過批量寫入和刷新的方法進行延遲操作。然而,在具有NVM的存儲層次結構的系統中,許多這樣的技術將不再是必要模塊。我們采用傳統引擎的存儲和恢復機制以利用NVM的特性。

例如,采用in-place update的NVM-aware存儲引擎。當一個事務插入一個元組的時候,不需將其拷貝到WAL中以備恢復等,這個存儲引擎只需要在WAL中記錄一個元組的非易失指針即可。這非常高效,因為指針和元組都存儲在NVM上。因此系統重啟后,可以通過指針訪問元組,而不需要回放WAL。同樣將索引作為非易失的B+tree,系統重啟后無需重建可立即訪問。因為事務提交時,修改立即持久化,所以系統重啟后提交的事務也是持久的。因為內存控制器刷寫對于的cache lines時機不確定,所以未提交事務進行的修改可能也持久化了。因此存儲引擎需要通過WAL回滾這些事務。由于恢復協議不包含redo處理流程,和傳統存儲引擎相比NVM-aware引擎具有更小的恢復延遲。

Q6:這邊書的要點是什么?

Arulraj, Pavlo: 這本書介紹了適配NVM的關鍵算法和數據結構,不僅提升性能和減小操作消耗,而且簡化了開發和崩潰恢復時間。我們的項目從2013年開始。我們也不太確定NVM技術是否能落地,但是2019年intel基于3D Xpoint技術的傲騰系列使之商品化。我們對NVM對下一代數據庫系統的影響感到興奮。

“數據庫中什么是非易失性內存技術”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女