時間:2022-11-04 22:30:01 | 來源:信息時代
時間:2022-11-04 22:30:01 來源:信息時代
內(nèi)存數(shù)據(jù)庫 : 視為數(shù)據(jù)庫的“工作版本”(部分或整個數(shù)據(jù)庫)常駐內(nèi)存的數(shù)據(jù)庫。MMDB并不要求能容納整個數(shù)據(jù)庫的大內(nèi)存,只要隨時能存儲當前處理的數(shù)據(jù)即可。不能存放在內(nèi)存的數(shù)據(jù)及用于恢復的數(shù)據(jù)(備份、日志等)還是要用外存來存儲,因此MMDB還是要進行I/O處理。但MMDB已不是傳統(tǒng)磁盤數(shù)據(jù)庫的概念,而且有關(guān)MMDB的技術(shù)、方法與策略與傳統(tǒng)數(shù)據(jù)庫都不一樣。近年來,廉價、存儲量大、性能高的半導體內(nèi)存的發(fā)展和數(shù)據(jù)庫的各種高新應用的需求,大大促進了MMDB技術(shù)的研究與發(fā)展。時至今日,人們已對它的體系結(jié)構(gòu),數(shù)據(jù)組織與存取方法、事務(wù)處理、并發(fā)控制、恢復技術(shù)等方面進行了大量的探討與研究,取得了豐富的成果。
在存取方法方面,人們開發(fā)了許多新的、適合于內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)存儲組織與索引結(jié)構(gòu)及存取策略,如“多目錄hash”結(jié)構(gòu)、T-樹索引等。在事務(wù)及查詢處理方面,深入研究了事務(wù)提交、記日志、查詢優(yōu)化(尤其是連接查詢優(yōu)化)等方法,開發(fā)了諸如“提前提交”等策略與技術(shù)。在并發(fā)控制方面,提出了二級層次封鎖方案、樂觀并發(fā)控制法、基于可擴展hashing技術(shù)使用的方法等。在內(nèi)存數(shù)據(jù)庫的恢復方面,集中研究了檢驗點操作及相應日志的記錄、內(nèi)存數(shù)據(jù)庫裝入與重裝等策略,如Fuzzy(模糊)檢驗點策略、Blank/White(黑/白)策略、Copy-on-Update(變更拷貝)檢驗點策略等。在內(nèi)存數(shù)據(jù)庫所特有的內(nèi)存數(shù)據(jù)裝入方面,開發(fā)了如有序裝入、帶優(yōu)先級的有序裝入、考慮存取頻率的裝入,以及組合優(yōu)先、頻率等的所謂“聰明”裝入等策略。
關(guān)于什么是內(nèi)存數(shù)據(jù)庫,曾有過多種不同的說法或定義,如“內(nèi)存足夠大以容納所有數(shù)據(jù),整個數(shù)據(jù)庫在內(nèi)存,對數(shù)據(jù)的存取無需I/O”; “內(nèi)存不必足夠大到容納整個數(shù)據(jù)庫,但數(shù)據(jù)被存取時,先已進入內(nèi)存,數(shù)據(jù)庫的存取在內(nèi)存進行”; “數(shù)據(jù)庫常駐磁盤,在一個事務(wù)執(zhí)行前,它要求的所有數(shù)據(jù)都已先取到內(nèi)存,提交時其變更反映到磁盤”等。
顯然,MMDB的定義不應涉及內(nèi)存的大小、存取數(shù)據(jù)所需I/O的多少、數(shù)據(jù)何時進入及怎樣才留駐內(nèi)存等這樣一些具體的實現(xiàn)技術(shù),而只包含數(shù)據(jù)庫持久留駐內(nèi)存(而不是磁盤)、事務(wù)(不是系統(tǒng))的數(shù)據(jù)存取只涉及內(nèi)存的意思。依此,給出MMDB的定義如下:
設(shè)有數(shù)據(jù)庫系統(tǒng)DBS,DB為DBS中的數(shù)據(jù)庫,DBM(t)為在時刻 t,DB 在內(nèi)存的數(shù)據(jù)集,DBM(t)DB;TS為DBS中所有可能的事務(wù)集合,AT(t)為在時刻t處于活動狀態(tài)的事務(wù)集,AT(t)TS;Dt(T)為事務(wù)T在時刻t所操作的數(shù)據(jù)集,Dt(t)DB。若在任一時刻t,均有:
∀T∈AT(t)(Dt(T)DBM(t))
成立,則稱DBS為一個內(nèi)存數(shù)據(jù)庫系統(tǒng),簡寫為MMDBS,DB為一個內(nèi)存數(shù)據(jù)庫,簡記為MMDB。微信公眾號
版權(quán)所有? 億企邦 1997-2022 保留一切法律許可權(quán)利。