資源描述:
《淺議內(nèi)存數(shù)據(jù)庫(kù)中數(shù)據(jù)恢復(fù)技術(shù)的研究與實(shí)現(xiàn)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫(kù)。
1、碩士學(xué)位論文論文題目直在麴握廑史鏨據(jù)這復(fù)披丕數(shù)嬰冠皇塞塑作者姓名隆塞蕉.指導(dǎo)教師睦丟到副熬援壘波副教援學(xué)科(專(zhuān)業(yè))鹽篡褪廛疆接本所在學(xué)院讓箕扭拱堂皇拉盔堂院提交日期三QQ巒生三旦獬④摘要隨著硬件工藝的不斷提高,內(nèi)存越來(lái)越便宜存儲(chǔ)容量越來(lái)越大,這使得將整個(gè)數(shù)據(jù)庫(kù)放在內(nèi)存中成為了可能;而且有很多應(yīng)用需要快速的響應(yīng)時(shí)間和大的吞吐率。正是由于這樣需求的推動(dòng)和硬件條件的保障促使了近年來(lái)內(nèi)存數(shù)據(jù)庫(kù)(MMDB)領(lǐng)域研究的飛速發(fā)展。在MMDB中,整個(gè)數(shù)據(jù)主版本放在內(nèi)存中,這必然比傳統(tǒng)的磁盤(pán)數(shù)據(jù)庫(kù)更加容易崩潰、丟失數(shù)據(jù),因此其恢復(fù)管理子系統(tǒng)就顯得格外重要。本文主
2、要關(guān)注MMDB中恢復(fù)系統(tǒng)技術(shù)的研究,并且詳細(xì)介紹了自主研發(fā)的內(nèi)存數(shù)據(jù)庫(kù)OTBMMDB中恢復(fù)系統(tǒng)的實(shí)現(xiàn)。本文先給出了內(nèi)存數(shù)據(jù)庫(kù)的定義,并且將它與傳統(tǒng)的磁盤(pán)數(shù)據(jù)庫(kù)做了方方面面的對(duì)比。然后對(duì)目前內(nèi)存數(shù)據(jù)庫(kù)的技術(shù)分多個(gè)方面做了概括性介紹,并且扼要介紹了OTB_MMDB的總體設(shè)計(jì)框架。接著則對(duì)MMDB恢復(fù)模塊分為logging,checkpointing和reloading三個(gè)部分詳細(xì)討論,講述了包含WAL(WriteAheadLogging)協(xié)議、LAW(LoggingAfterWriting)協(xié)議在內(nèi)的多種日志登記規(guī)則,描述了多種檢查點(diǎn)算法,包括模糊
3、檢查點(diǎn)算法、黑白點(diǎn)算法、Copy—on—Update算法等。最后講解OTB_MMDB中的恢復(fù)系統(tǒng)的實(shí)現(xiàn),并討論了其中一些優(yōu)化系統(tǒng)性能的措施。關(guān)鍵詞:內(nèi)存數(shù)據(jù)庫(kù),日志規(guī)則,檢查點(diǎn),黑臼點(diǎn)算法,Copy—on—Update算法AbstractInaMainMemoryDambase(MMDB)theprimarycopyofthedatabaseresidesinvolatilemainmemory.ThisnlakesMMDBsystemsmorevulnerabletofailurescomparedtothetraditionalDiskRe
4、sidentDatabases∞RDB).Abackupcopyofthedatabaseismaintainedinsecondarystorageforrecoverypurposes.Recoveryactivitieslikelogging,checkpointingandreloadingareusedtorestorethedatabasetoaconsistentstateafterasystemcrashhasoccurred.Inthispaper,wefocusOiltwopoints.FirstlyweexamineMMD
5、Blogging,checkpointingandreloadingactiveities.Secondly,weimplementarecoveryschemewithtransactionconsistentcheckpointingforamainmemorydatabase.Keywords:mainmemorydatabases,logging,checkpointing,recovery21.1背景介紹第一章緒論1.1.1什么是內(nèi)存數(shù)據(jù)庫(kù)內(nèi)存數(shù)據(jù)庫(kù)還是一個(gè)較新的研究領(lǐng)域,目前對(duì)內(nèi)存數(shù)據(jù)庫(kù)尚無(wú)統(tǒng)一的定義。對(duì)于什么是內(nèi)存數(shù)據(jù)庫(kù),有著幾中
6、說(shuō)法:觀點(diǎn)一:整個(gè)數(shù)據(jù)庫(kù)全部駐留內(nèi)存,數(shù)據(jù)存取無(wú)需YO操作。觀點(diǎn)二:數(shù)據(jù)庫(kù)常駐磁盤(pán),在事務(wù)執(zhí)行前將所需數(shù)據(jù)集調(diào)入內(nèi)存,提交時(shí)所有對(duì)數(shù)據(jù)庫(kù)的修改必須寫(xiě)回磁盤(pán)。觀點(diǎn)三:數(shù)據(jù)庫(kù)常駐磁盤(pán),在內(nèi)存中開(kāi)辟一個(gè)大緩沖區(qū),通過(guò)適當(dāng)?shù)木彌_管理以減少I(mǎi),O操作。目前,大多數(shù)內(nèi)存數(shù)據(jù)庫(kù)都是基于第一種觀點(diǎn)的。然而在很多現(xiàn)實(shí)應(yīng)用中,往往難以保證內(nèi)存總是能夠容納整個(gè)數(shù)據(jù)庫(kù)。因此,數(shù)據(jù)庫(kù)的定義必須包含內(nèi)存不足以容納整個(gè)數(shù)據(jù)庫(kù)的情形。而第二、三兩種觀點(diǎn)下的數(shù)據(jù)庫(kù)本質(zhì)上無(wú)異于常規(guī)磁盤(pán)數(shù)據(jù)庫(kù),只不過(guò)改變了數(shù)據(jù)調(diào)入內(nèi)存的時(shí)機(jī)、增大了緩沖區(qū)的容量,不能稱(chēng)為內(nèi)存數(shù)據(jù)庫(kù)。判斷一個(gè)數(shù)據(jù)庫(kù)是
7、否為內(nèi)存數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)應(yīng)該取決于其數(shù)據(jù)庫(kù)的主拷貝是否常駐內(nèi)存,而不能只看內(nèi)存的大小和存取數(shù)據(jù)所需的I,O次數(shù)及數(shù)據(jù)調(diào)入內(nèi)存的時(shí)機(jī)。一般,對(duì)內(nèi)存數(shù)據(jù)庫(kù)的定義如下:定義1設(shè)有數(shù)據(jù)庫(kù)DB,TS為所有事務(wù)構(gòu)成的集合。VTeTS,D(D為T(mén)的操作數(shù)據(jù)集(D(Dc_DB),DBM(t)是t時(shí)刻DB在內(nèi)存中的數(shù)據(jù)集(DBM(t)_cDB),AT(t)是t時(shí)刻的活動(dòng)事務(wù)集,AT(t)_TS。若在任一時(shí)刻t,均有VTeAT(t)D(D£DBM(t)成立,則稱(chēng)DB為一個(gè)內(nèi)存數(shù)據(jù)庫(kù),間稱(chēng)為MMDB。直觀的說(shuō),MMDB就是指數(shù)據(jù)庫(kù)的“工作版本”(當(dāng)然也可以是整個(gè)數(shù)據(jù)庫(kù))
8、常駐內(nèi)存,任何一個(gè)事務(wù)在執(zhí)行過(guò)程中沒(méi)有與內(nèi)外存間的數(shù)據(jù)YO。顯然,它需要一定的內(nèi)存容量,至少能容納一個(gè)事務(wù)所要求的數(shù)據(jù)集,但并不一定需要容納整個(gè)數(shù)據(jù)庫(kù)