當(dāng)前位置:首頁 > 電源 > 功率器件
[導(dǎo)讀]隨著從通信設(shè)備到航空裝備和工業(yè)控制器等技術(shù)中對數(shù)據(jù)管理需求的不斷增長,以及受到這些設(shè)備中不斷增加的板載CPU、RAM和存儲資源的推動,數(shù)據(jù)庫管理系統(tǒng)(DBMS)軟件在電子設(shè)

隨著從通信設(shè)備到航空裝備和工業(yè)控制器等技術(shù)中對數(shù)據(jù)管理需求的不斷增長,以及受到這些設(shè)備中不斷增加的板載CPU、RAM和存儲資源的推動,數(shù)據(jù)庫管理系統(tǒng)(DBMS)軟件在電子設(shè)備中越來越普及。設(shè)備上的數(shù)據(jù)庫規(guī)模大小不一,從幾個GB的數(shù)據(jù)到支持電信計費/信用系統(tǒng)的等級評定和余額管理應(yīng)用,再到10GB以上的IP路由器的控制層數(shù)據(jù)庫以及100GB以上的電信呼叫路由數(shù)據(jù)庫。

數(shù)據(jù)庫管理系統(tǒng)--曾經(jīng)與商業(yè)應(yīng)用、臺式機和web應(yīng)用幾乎完全關(guān)聯(lián)在一起--為了滿足當(dāng)今電子設(shè)備的需求而經(jīng)過了長足的發(fā)展。設(shè)計師經(jīng)常采用的內(nèi)存數(shù)據(jù)庫系統(tǒng)(IMDS)是在主存中存儲記錄,因此可以消除許多延時源,比如通過硬連線接進數(shù)據(jù)庫管理系統(tǒng)的緩存和文件管理,這些源將數(shù)據(jù)永久存儲在硬盤或閃存中(下圖1顯示了這些延時源)。因此與傳統(tǒng)“硬盤上的”數(shù)據(jù)庫管理系統(tǒng)相比,內(nèi)存數(shù)據(jù)庫系統(tǒng)的執(zhí)行速度可以快好幾個數(shù)量級。它們的設(shè)計也更簡單,可以最大限度地減少對CPU周期的需求,進而允許使用更小功耗和更低成本的處理器。

 

 

圖1:傳統(tǒng)(磁盤上)數(shù)據(jù)庫系統(tǒng)中的延時源。

然而,易失性有時是一個使人擔(dān)心的因素。當(dāng)發(fā)生斷電或系統(tǒng)故障時,主存中的內(nèi)容將消失。一些應(yīng)用可以容忍這種風(fēng)險。例如,存儲在機頂盒中的基于RAM的電子節(jié)目指南在發(fā)生電源故障時會丟失,但利用有線電視頭端或衛(wèi)星接收機中的信息可以很快重建。然而,其它許多電子設(shè)備要求更高等級的數(shù)據(jù)庫持久性和可恢復(fù)性。舉例來說,一些醫(yī)療設(shè)備要求記錄隨時間變化的癥狀以支持臨床決策--這些數(shù)據(jù)在發(fā)生電源故障時不能突然消失。網(wǎng)絡(luò)路由器和交換機通常將配置數(shù)據(jù)永久地存儲在閃存中。將這種配置數(shù)據(jù)保存在內(nèi)存中也是有意義的,可以實現(xiàn)更快的重啟--但數(shù)據(jù)需要是可恢復(fù)的。面臨DRAM易失性挑戰(zhàn)的還有“讀取”指紋或臉部的掃描儀。為了允許或拒絕訪問安全設(shè)施,掃描儀需要將這些數(shù)據(jù)與存儲在設(shè)備上的內(nèi)存數(shù)據(jù)庫系統(tǒng)中的生物特征數(shù)據(jù)進行匹配。如果訪問控制系統(tǒng)發(fā)生了故障,系統(tǒng)必須能夠很快恢復(fù)。

應(yīng)用例子:內(nèi)存數(shù)據(jù)庫系統(tǒng)和工業(yè)控制器

在工業(yè)控制系統(tǒng)中,在控制器中集成內(nèi)存數(shù)據(jù)庫系統(tǒng)可以支持‘扁平的’控制系統(tǒng)架構(gòu)。數(shù)據(jù)在這種架構(gòu)中存儲和處理,一些控制決策在獨立控制器層產(chǎn)生;而在相反(和傳統(tǒng))的層次化系統(tǒng)架構(gòu)中,存儲在控制器層的數(shù)據(jù)通常被限制用于控制變量。

 

 

內(nèi)存數(shù)據(jù)庫系統(tǒng)易失性解決方案

解決這種易失性問題已有相應(yīng)的解決方案。以電池供電RAM形式出現(xiàn)的非易失性內(nèi)存可以在系統(tǒng)斷電時在DRAM芯片上保持數(shù)據(jù)不變,不過這種方法沒有得到廣泛普及,因為存在嚴格的溫度要求、漏電流風(fēng)險、有限的電池使用壽命和其它缺點。

內(nèi)存數(shù)據(jù)庫系統(tǒng)軟件本身可以提供數(shù)據(jù)持久性機制。舉例來說,借助事務(wù)日志功能,這種數(shù)據(jù)庫系統(tǒng)可以在日志文件中創(chuàng)建一條條事務(wù)記錄(對數(shù)據(jù)庫進行的一組修改必須作為一個整體完成或失敗),在發(fā)生故障后這些記錄可以用來恢復(fù)數(shù)據(jù)庫。但記錄本身要求寫入永久存儲器,因此性能上會有些下降。

減輕易失性問題的另外一種內(nèi)存數(shù)據(jù)庫系統(tǒng)功能是數(shù)據(jù)庫復(fù)制,即獨立節(jié)點中的一個或多個備用內(nèi)存數(shù)據(jù)庫與主數(shù)據(jù)庫保持同步。如果主節(jié)點失效,這些數(shù)據(jù)庫的復(fù)制品之一將接替主節(jié)點的角色。雖然管理同步(和有可能發(fā)生的故障轉(zhuǎn)移)的過程和節(jié)點之間的通信會引起一些延時,但同步可以很快發(fā)生。當(dāng)復(fù)制品數(shù)量增加或節(jié)點間的物理距離增加時,性能成本也會增加。可以用不同的復(fù)制策略來管理延時。同步或“2-safe”復(fù)制方法要求數(shù)據(jù)庫事務(wù)在復(fù)制節(jié)點和主節(jié)點上同時完成,而異步或“1-safe”復(fù)制方法允許事務(wù)在復(fù)制節(jié)點上完成之前提交給主數(shù)據(jù)庫。異步方法提供更短的源保持時間,因此速度更快,但一致性和持久性差一些。

NVDIMMS:非易性RAM,無需電池

非易失性雙列直插式內(nèi)存模塊或NVDIMM的出現(xiàn)增加了針對內(nèi)存數(shù)據(jù)庫持久性的一種新工具。NVDIMM采用標(biāo)準記憶棒的形式,可插入現(xiàn)有的DIMM插座,因此簡化了到現(xiàn)成平臺的集成。通常它們包含標(biāo)準DRAM、NAND閃存和超級電容電源。在正常工作時,這種技術(shù)提供了高速DRAM的性能。當(dāng)發(fā)生斷電事件時,超級電容提供的瞬時電能可用來將主存內(nèi)容寫入NAND閃存芯片,實現(xiàn)永久保存。當(dāng)電源恢復(fù)時,NVDIMM將NAND閃存中的數(shù)據(jù)恢復(fù)到DRAM中。

對于內(nèi)存數(shù)據(jù)庫來說,NVDIMM的作用與電池供電型RAM是類似的,但沒有后者所需的電池及其缺點。McObject公司以前就做過這方面的努力,其eXtremeDB內(nèi)存數(shù)據(jù)庫系統(tǒng)可以與電池供電型RAM一起工作。公司很想將使用NVDIMM的內(nèi)存數(shù)據(jù)庫系統(tǒng)作為主要存儲器。目前有多家供應(yīng)商可以提供NVDIMM。我們使用AgigA Tech公司的產(chǎn)品對eXtremeDB進行了測試,因為我們非常熟悉AgigA公司的母公司--賽普拉斯半導(dǎo)體。同時我們把測試僅限于AgigA的NVDIMM(比如沒有測試來自Viking Technology和Smart Modular Technologies公司的NVDIMM),這主要是因為我們的時間和資源非常有限。因此本文中提到的測試只是從概念上證明,內(nèi)存數(shù)據(jù)庫系統(tǒng)可以與NVDIMM一起作為存儲器,達到與使用傳統(tǒng)DRAM相當(dāng)?shù)男阅?,并且能夠利用NVDIMM的恢復(fù)功能恢復(fù)由于系統(tǒng)故障“丟失的”內(nèi)存數(shù)據(jù)庫。

測試還解決了在同時要求低延時和數(shù)據(jù)可恢復(fù)性的應(yīng)用中使用內(nèi)存數(shù)據(jù)庫系統(tǒng)時經(jīng)常出現(xiàn)的另外一個問題,即采用事務(wù)日志記錄的內(nèi)存數(shù)據(jù)庫系統(tǒng)在多大程度上能保持其性能優(yōu)于基于磁盤的數(shù)據(jù)庫管理系統(tǒng)?對于后面這些涉及永久存儲器 (內(nèi)存數(shù)據(jù)庫系統(tǒng)的事務(wù)日志存儲,以及在采用磁盤上的數(shù)據(jù)庫管理系統(tǒng)情況下的整個數(shù)據(jù)庫)的測試,存儲“設(shè)備”包含了用AGIGARAM NVDIMM配置的RAM盤。下面給出了使用RAM盤而不是傳統(tǒng)硬盤或固態(tài)硬盤的理由。

測試中使用的AgigA Tech公司NVDIMM是設(shè)計用于Intel的Romley和Grantley平臺(采用Sandy Brdige、Ivy Bridge、Haswell和Broadwell處理器架構(gòu))的。McObject在Intel Oak Creek Canyon參考主板中使用了4GB AGIGARAM DDR3-1600 NVDIMM,以及Intel奔騰雙核CPU 1407 @ 2.8 GHz處理器和8GB的金士頓普通DDR3-1333 DRAM,運行的是Debian Linux 2.6.32.5操作系統(tǒng)。

測試應(yīng)用程序執(zhí)行5次數(shù)據(jù)庫操作,每次循環(huán)構(gòu)成一個數(shù)據(jù)庫事務(wù),并包含至少兩個操作實例(見圖2)。基準應(yīng)用程序記錄在兩種數(shù)據(jù)庫類型中的每一個(磁盤上的數(shù)據(jù)庫管理系統(tǒng)和帶事務(wù)日志的內(nèi)存數(shù)據(jù)庫系統(tǒng),或“IMDS+TL”)和兩種內(nèi)存(NVDIMM和傳統(tǒng)DRAM)情況下每毫秒完成的循環(huán)次數(shù)。測試應(yīng)用程序使用了eXtremeDB自己的C/C++應(yīng)用編程接口(API)。[!--empirenews.page--]

 

 

圖2:測試應(yīng)用程序操作。

支持數(shù)據(jù)庫恢復(fù)的測試應(yīng)用程序代碼可以充分利用eXtremeDB功能,而這種功能原本是增加來用于支持電池供電型RAM作為存儲器。這種功能可以在系統(tǒng)重啟后重新連接到NVRAM管理的eXtremeDB數(shù)據(jù)庫,啟動任何必需的清零工作,然后恢復(fù)正常工作。應(yīng)用程序的恢復(fù)算法假設(shè)分配作為MCO_MEMORY_ASSIGN_DATABASE的數(shù)據(jù)庫內(nèi)存器件的內(nèi)存塊可以在應(yīng)用程序崩潰或電源故障之后重新使用,方法是用另外的標(biāo)志MCO_DB_OPEN_EXISTING重新打開它。

基準測試結(jié)果

從故障恢復(fù)是通過重啟測試系統(tǒng)中間執(zhí)行程序進行測試的。當(dāng)系統(tǒng)恢復(fù)后,測試程序自動重新啟動,訪問前故障狀態(tài)的eXtremeDB數(shù)據(jù)庫(在恢復(fù)時,NVDIMM已經(jīng)將數(shù)據(jù)庫從閃存加載到DRAM),檢查數(shù)據(jù)庫的一致性并恢復(fù)操作,并從與系統(tǒng)重啟之前使用的相同NVDIMM存儲空間訪問數(shù)據(jù)庫。

在比較將NVDIMM用作主內(nèi)存的“pure”內(nèi)存數(shù)據(jù)庫系統(tǒng)(沒有事務(wù)日志)和使用傳統(tǒng)DRAM的相同數(shù)據(jù)庫配置下速度的測試中,兩種存儲類型之間的任何差距都是可以忽略的。待測所有數(shù)據(jù)庫操作--插入、更新、刪除、索引搜索和表格遍歷--的性能差異都在所用測量技術(shù)的誤差范圍之內(nèi)。有人可能將這種等效性歸因于加載進CPU緩存的完整數(shù)據(jù)庫,以及在那里發(fā)生而不是在DRAM或NVDIMM那里發(fā)生的數(shù)據(jù)訪問。然而,接近12MB的測試數(shù)據(jù)庫尺寸大大超過5MB的CPU緩存大小,測試應(yīng)用程序則依靠隨機密鑰從數(shù)據(jù)庫中尋找隨機頁。

剩余測試專注于事務(wù)日志對內(nèi)存數(shù)據(jù)庫系統(tǒng)性能的影響。內(nèi)存數(shù)據(jù)庫供應(yīng)商提供事務(wù)日志來減輕“pure”內(nèi)存數(shù)據(jù)存儲的易失性。然而,事務(wù)日志要求永久存儲(進行記錄),這會影響到內(nèi)存數(shù)據(jù)庫系統(tǒng)的性能。正是出于這個理由,內(nèi)存數(shù)據(jù)庫系統(tǒng)供應(yīng)商經(jīng)常被問到,他們的產(chǎn)品性能在采用事務(wù)日志部署時是否仍然超過磁盤上的數(shù)據(jù)庫管理系統(tǒng)。

上述測試力求回答這個問題。用于永久存儲的“硬盤”實際上是一個將NVDIMM用作內(nèi)存的RAM盤(基于內(nèi)存的磁盤類存儲器)。這種做法一方面是想進一步測試AgigA Tech公司的產(chǎn)品(也就是說,為了確認它是否能創(chuàng)建RAM盤,并有一個數(shù)據(jù)庫系統(tǒng)能與它交互),另一方面也是想證明采用事務(wù)日志的內(nèi)存數(shù)據(jù)庫系統(tǒng)性能為何能夠超過磁盤上的數(shù)據(jù)庫管理系統(tǒng)。

除了它們使用的存儲器件(磁盤上的數(shù)據(jù)庫管理系統(tǒng)用的是硬盤或固態(tài)硬盤,內(nèi)存數(shù)據(jù)庫系統(tǒng)用的是DRAM)外,內(nèi)存數(shù)據(jù)庫系統(tǒng)與磁盤上的數(shù)據(jù)庫管理系統(tǒng)還有很重要的區(qū)別。內(nèi)存數(shù)據(jù)庫系統(tǒng)取消了緩沖管理、文件I/O和傳統(tǒng)數(shù)據(jù)庫管理系統(tǒng)架構(gòu)中固有的其它開銷源。取消硬盤--代之以RAM盤--可以消除因存儲器件的物理操作引起的開銷,從而突出內(nèi)存數(shù)據(jù)庫系統(tǒng)的流線型設(shè)計的延時效應(yīng),它比磁盤上的數(shù)據(jù)庫管理系統(tǒng)更為復(fù)雜的處理強得多。

測試表明,對于插入、更新和刪除操作來說,采用事務(wù)日志的內(nèi)存數(shù)據(jù)庫系統(tǒng)性能明顯超過傳統(tǒng)磁盤上的數(shù)據(jù)庫管理系統(tǒng)(同樣,兩者都使用RAM作為它們的“永久”存儲)。圖3顯示了每種配置條件下單位為循環(huán)/毫秒的結(jié)果,以及通過IMDS+TL所表現(xiàn)出來的性能翻倍。舉例來說,在數(shù)據(jù)庫刪除測試中,IMDS+TL要比磁盤上的數(shù)據(jù)庫管理系統(tǒng)快12.77倍。圖3還顯示了關(guān)閉事務(wù)日志、讓eXtremeDB作為將NVDIMM用作主存的“pure”IMDS進行操作的性能影響。

 

 

圖3:結(jié)果。

數(shù)據(jù)庫索引搜索和表格遍歷表明,在從磁盤上的數(shù)據(jù)庫管理系統(tǒng)轉(zhuǎn)移到IMDS+TL時,幾乎沒有性能上的變化。這種結(jié)果是在預(yù)料之中的,因為與插入、更新和刪除操作相比,這種數(shù)據(jù)庫“讀取”操作不會改變數(shù)據(jù)庫內(nèi)容,在性能方面的成本通常低得多。

討論

NVDIMM在用作內(nèi)存數(shù)據(jù)庫系統(tǒng)存儲器時可以匹配傳統(tǒng)DRAM的速度,同時提供完整的內(nèi)存數(shù)據(jù)庫持久性。那么為什么還有人要用帶延時誘導(dǎo)事務(wù)日志的內(nèi)存數(shù)據(jù)庫系統(tǒng)呢?這里有多種理由,包括成本,因為GB規(guī)模的NVDIMM成本要大于DRAM;想要使用非Intel Romley和Grantley的平臺;要求的數(shù)據(jù)庫大小(AgigA Tech公司的NVDIMM支持高達128GB的總內(nèi)存容量)。如上述數(shù)字所示,增加事務(wù)日志實現(xiàn)數(shù)據(jù)持久性將降低內(nèi)存數(shù)據(jù)庫系統(tǒng)的性能,但IMDS+TL組合在插入、更新和刪除操作時仍能超越傳統(tǒng)磁盤型數(shù)據(jù)庫管理系統(tǒng)的性能。

今后用戶會遇到的另外一個問題是他們所選的內(nèi)存數(shù)據(jù)庫系統(tǒng)是否支持將NVDIMM用作主要內(nèi)存。如前所述,McObject的eXtremeDB內(nèi)存數(shù)據(jù)庫系統(tǒng)包括許多功能--在產(chǎn)品開發(fā)早期就加入的,用于支持與電池供電型RAM的交互--這些功能可以用NVDIMM平順地恢復(fù)數(shù)據(jù)庫。使用沒有這些功能的內(nèi)存數(shù)據(jù)庫系統(tǒng)可能導(dǎo)致更高的復(fù)雜性,并且在實現(xiàn)可工作的解決方案之前需要很大的開發(fā)和測試工作量。

另外值得注意的是,本文討論的數(shù)據(jù)庫持久性--也就是確保數(shù)據(jù)庫和所有提交的事務(wù)能在發(fā)生系統(tǒng)故障事件時得到恢復(fù)--有別于高可用性,或不停工操作的能力。雖然兩種技術(shù)都是想幫助數(shù)據(jù)庫經(jīng)受住故障,但如前所述,高可用性通常是通過復(fù)制實現(xiàn)的,故障轉(zhuǎn)移時間單位是毫秒。相反,持久性--帶事務(wù)日志的內(nèi)存數(shù)據(jù)庫系統(tǒng)或?qū)VDIMM用作主存所能達到的--不保證消除停工時間。使用NVDIMM或事務(wù)日志進行數(shù)據(jù)庫恢復(fù)通常是自動的,但兩者最有可能的使用場景是在意外的系統(tǒng)宕機之后,這意味著冷重啟(如重新啟動)這樣的時長為分鐘級的過程。開發(fā)人員在考慮用這些技術(shù)克服易失性問題時應(yīng)該理解數(shù)據(jù)庫高可用性和持久性之間的區(qū)別。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉