欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種數(shù)據(jù)存儲(chǔ)方法及裝置的制作方法

文檔序號(hào):7561786閱讀:178來(lái)源:國(guó)知局
專利名稱:一種數(shù)據(jù)存儲(chǔ)方法及裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)存儲(chǔ)領(lǐng)域,尤其涉及一種高效率數(shù)據(jù)存儲(chǔ)方法及裝置。
背景技術(shù)
在當(dāng)今網(wǎng)絡(luò)時(shí)代,網(wǎng)絡(luò)業(yè)務(wù)服務(wù)系統(tǒng)越來(lái)越普通,隨著寬帶網(wǎng)絡(luò)、3G技術(shù)應(yīng)用的普及,多媒體內(nèi)容的存儲(chǔ)對(duì)這些系統(tǒng)越來(lái)越重要。如圖1所示,網(wǎng)絡(luò)業(yè)務(wù)服務(wù)系統(tǒng)在向用戶提供多媒體服務(wù)時(shí),該系統(tǒng)先存儲(chǔ)多媒體,待收到用戶A發(fā)出獲取多媒體請(qǐng)求后,查詢特定多媒體,然后向用戶A提供查詢結(jié)果以提供多媒體服務(wù)。再如圖2所示多媒體服務(wù)中,也涉及多媒體的存儲(chǔ)。多媒體存儲(chǔ)的應(yīng)用還有很多,這里不一一列舉??傊?,網(wǎng)絡(luò)服務(wù)系統(tǒng)在為客戶提供服務(wù)之前都需要快速存儲(chǔ)、查詢、刪除對(duì)應(yīng)的多媒體記錄。
在Internet、無(wú)線網(wǎng)絡(luò)技術(shù)不完善的時(shí)代,網(wǎng)絡(luò)帶寬受到很大的限制,客戶訪問(wèn)、轉(zhuǎn)發(fā)的媒體往往是簡(jiǎn)短的文字,網(wǎng)絡(luò)應(yīng)用系統(tǒng)往往使用普通商用數(shù)據(jù)庫(kù)即可實(shí)現(xiàn)媒體的存儲(chǔ)、快速訪問(wèn)。
隨著網(wǎng)絡(luò)技術(shù)越來(lái)越完善,使用越來(lái)越普及,所傳遞的媒體不再僅局限于簡(jiǎn)短的文字內(nèi)容,而是內(nèi)容與表現(xiàn)形式極大豐富的多媒體內(nèi)容,包括聲音、圖像、電影、商用文件等,且需要存儲(chǔ)的多媒體記錄數(shù)目巨大,單條記錄大小不定,往往從幾K到幾百K不等。普通商用數(shù)據(jù)庫(kù)用來(lái)存儲(chǔ)這些多媒體數(shù)據(jù)力不從心,效率低下,對(duì)于那些對(duì)效率要求較高的系統(tǒng)不適用。有的系統(tǒng)轉(zhuǎn)而直接求助于操作系統(tǒng),直接采用操作系統(tǒng)文件來(lái)存儲(chǔ)媒體,具體方案是一個(gè)文件對(duì)應(yīng)于一條多媒體消息,以后按照文件名來(lái)訪問(wèn)多媒體消息。該方案對(duì)于那些效率要求不高,小型系統(tǒng)尚可,卻無(wú)法滿足大規(guī)模系統(tǒng)的要求,因?yàn)樵摲桨笇?dǎo)致系統(tǒng)中不可避免地存在大量文件,操作系統(tǒng)負(fù)擔(dān)極大地增加,從而導(dǎo)致系統(tǒng)整體性能低下。而且操作系統(tǒng)增加、刪除文件操作性能不高,且不可避免地會(huì)產(chǎn)生磁盤碎片,使得系統(tǒng)的性能每況愈下。總之,對(duì)于數(shù)目巨大,單條記錄大小不大的多媒體存儲(chǔ)需求,這不是一個(gè)可行方案。
有的系統(tǒng)則采用數(shù)據(jù)庫(kù)+大文件方案將多媒體,統(tǒng)一存儲(chǔ)在一個(gè)(或一組)大文件中,將具體多媒體消息存放的起始地址存放在數(shù)據(jù)庫(kù)中。該方案需要增加一個(gè)昂貴的商用數(shù)據(jù)庫(kù)系統(tǒng),成本很高;并且必須輾轉(zhuǎn)多次訪問(wèn)數(shù)據(jù)庫(kù)、多媒體文件才能訪問(wèn)到多媒體內(nèi)容,因而效率不盡如人意。而多媒體內(nèi)容在大文件中存儲(chǔ)組織一樣復(fù)雜,沒(méi)有因數(shù)據(jù)庫(kù)的使用而降低。

發(fā)明內(nèi)容
針對(duì)現(xiàn)有技術(shù)的上述缺陷,本發(fā)明的目的在于提供一種數(shù)據(jù)存儲(chǔ)方法及裝置以實(shí)現(xiàn)數(shù)據(jù)的快速存儲(chǔ)、快速訪問(wèn)、快速刪除,且成本低。
本發(fā)明提供一種數(shù)據(jù)存儲(chǔ)的方法,該方法為為待存儲(chǔ)的數(shù)據(jù)記錄分配一個(gè)數(shù)據(jù)記錄標(biāo)識(shí)(ID);將所述數(shù)據(jù)記錄保存在一個(gè)被分割成簇的文件中;將存儲(chǔ)所述數(shù)據(jù)記錄的頭一個(gè)簇的地址保存于索引存儲(chǔ)區(qū),并建立該地址與數(shù)據(jù)記錄ID的一一映射關(guān)系。
其中建立數(shù)據(jù)記錄ID空閑堆棧,當(dāng)刪除某一數(shù)據(jù)記錄時(shí),將該記錄的ID放置于數(shù)據(jù)記錄ID空閑堆棧中,并保存已經(jīng)分配出去的ID的最大值。
為待存儲(chǔ)的數(shù)據(jù)記錄分配數(shù)據(jù)記錄ID時(shí),首先判斷數(shù)據(jù)記錄ID空閑堆棧中是否有空閑ID,如果有,則優(yōu)先使用該空閑ID,如沒(méi)有空閑ID則接續(xù)已經(jīng)分配出去的ID的最大值生成新的ID。
為存放數(shù)據(jù)記錄的文件的簇建立空閑簇指針堆棧,當(dāng)刪除某一數(shù)據(jù)記錄時(shí),將該記錄的對(duì)應(yīng)的簇指針?lè)胖糜诳臻e簇指針堆棧中,并保存已經(jīng)分配出去的簇指針的最大值。
將所述數(shù)據(jù)記錄存儲(chǔ)在文件中時(shí),首先判斷數(shù)據(jù)記錄空閑簇堆棧中是否有空閑簇指針,如果有,則優(yōu)先使用該空閑簇;否則,接續(xù)已經(jīng)分配出去的簇使用新的簇。
當(dāng)訪問(wèn)數(shù)據(jù)記錄時(shí),通過(guò)該數(shù)據(jù)記錄的ID訪問(wèn)所述記錄。
保存一個(gè)數(shù)據(jù)記錄的所有簇中,每個(gè)簇保存下一個(gè)簇的地址。
本發(fā)明提供一種數(shù)據(jù)存儲(chǔ)裝置,所述裝置包括業(yè)務(wù)處理模塊、存儲(chǔ)控制模塊和物理數(shù)據(jù)存儲(chǔ)區(qū),所述業(yè)務(wù)處理模塊用于接受數(shù)據(jù)記錄操作請(qǐng)求,并完成所述數(shù)據(jù)記錄的應(yīng)用具體數(shù)據(jù)結(jié)構(gòu)到二進(jìn)制數(shù)據(jù)塊的相互轉(zhuǎn)換,轉(zhuǎn)換后的二進(jìn)制數(shù)據(jù)記錄塊將由存儲(chǔ)控制模塊進(jìn)行存儲(chǔ);所述存儲(chǔ)控制模塊用于為所述數(shù)據(jù)記錄分配數(shù)據(jù)記錄ID,并建立該數(shù)據(jù)記錄ID和數(shù)據(jù)記錄在物理數(shù)據(jù)存儲(chǔ)區(qū)存儲(chǔ)地址的關(guān)系;所述物理數(shù)據(jù)存儲(chǔ)區(qū)用于存儲(chǔ)所有數(shù)據(jù)記錄。
所述業(yè)務(wù)處理模塊包括業(yè)務(wù)處理樁模塊,所述樁模塊用于提供樁類及完成數(shù)據(jù)記錄的串化及反串化。
所述物理數(shù)據(jù)存儲(chǔ)區(qū)包括索引存儲(chǔ)區(qū)和數(shù)據(jù)存儲(chǔ)區(qū),分別用于以文件形式存儲(chǔ)數(shù)據(jù)記錄的索引和數(shù)據(jù)記錄;數(shù)據(jù)存儲(chǔ)區(qū)形成的數(shù)據(jù)文件被分割為一個(gè)個(gè)的簇,每個(gè)簇保存下一個(gè)簇的地址;所述數(shù)據(jù)存儲(chǔ)區(qū)還包括空閑簇堆棧,用于當(dāng)數(shù)據(jù)記錄刪除時(shí),保存該記錄對(duì)應(yīng)簇的指針;所述索引存儲(chǔ)區(qū)還包括數(shù)據(jù)記錄ID堆棧,用于當(dāng)數(shù)據(jù)記錄刪除時(shí),保存該記錄對(duì)應(yīng)的ID。
所述存儲(chǔ)控制模塊進(jìn)一步包括存儲(chǔ)管理器和至少一個(gè)分組存儲(chǔ)管理器,所述存儲(chǔ)管理器用于將實(shí)際的存儲(chǔ)管理工作分配給分組存儲(chǔ)器,每個(gè)分組管理器對(duì)應(yīng)一個(gè)工作線程。
所述分組存儲(chǔ)器進(jìn)一步包括索引存儲(chǔ)管理器和數(shù)據(jù)存儲(chǔ)管理器,所述索引存儲(chǔ)管理器用于管理空閑數(shù)據(jù)記錄ID堆棧和索引存儲(chǔ)區(qū),當(dāng)新增數(shù)據(jù)記錄時(shí),首先從空閑ID堆棧中為該記錄申請(qǐng)空閑ID,假如沒(méi)有空閑ID則接續(xù)已經(jīng)分配的ID號(hào)生成新的ID;所述數(shù)據(jù)存儲(chǔ)管理器用于管理空閑簇指針堆棧和數(shù)據(jù)存儲(chǔ)區(qū),當(dāng)新增數(shù)據(jù)記錄時(shí),首先從空閑簇指針堆棧中為該記錄申請(qǐng)空閑簇,假如沒(méi)有空閑簇則將該記錄存儲(chǔ)在新的簇中。
所述數(shù)據(jù)記錄ID是由該記錄索引存儲(chǔ)地址的對(duì)應(yīng)的文件偏移量通過(guò)一一映射變換得到。
所述數(shù)據(jù)記錄是多媒體記錄。
索引存儲(chǔ)管理器進(jìn)一步包括數(shù)據(jù)記錄ID管理器,用于管理空閑數(shù)據(jù)記錄ID堆棧。
所述一種數(shù)據(jù)存儲(chǔ)裝置與應(yīng)用系統(tǒng)相連,接受應(yīng)用系統(tǒng)的存儲(chǔ)請(qǐng)求,依請(qǐng)求進(jìn)行相應(yīng)的存儲(chǔ)、訪問(wèn)及刪除操作,應(yīng)用系統(tǒng)通過(guò)數(shù)據(jù)記錄ID訪問(wèn)數(shù)據(jù)記錄。
本發(fā)明為數(shù)據(jù)記錄分配ID號(hào),且該ID是由該數(shù)據(jù)記錄索引存儲(chǔ)區(qū)對(duì)應(yīng)的文件偏移量通過(guò)一一映射變換得到。應(yīng)用系統(tǒng)靠該ID來(lái)訪問(wèn)時(shí),可變換得到對(duì)應(yīng)存儲(chǔ)區(qū)地址,完全避免復(fù)雜的查詢搜索動(dòng)作,達(dá)到效率最大化。且數(shù)據(jù)記錄存儲(chǔ)是由分組存儲(chǔ)管理器完成,以充分利用系統(tǒng)I/O帶寬,且不需要昂貴的商用數(shù)據(jù)庫(kù)系統(tǒng)支持,成本低。


圖1為多媒體應(yīng)用樣例一流程圖;圖2為多媒體應(yīng)用樣例二流程圖;圖3為數(shù)據(jù)存儲(chǔ)裝置體系結(jié)構(gòu)示意圖;圖4為存儲(chǔ)控制模塊體系結(jié)構(gòu)示意圖;圖5為數(shù)據(jù)存儲(chǔ)區(qū)結(jié)構(gòu)示意圖;圖6為空閑ID堆棧算法示意圖;圖7為本發(fā)明方案中存儲(chǔ)方法流程圖。
具體實(shí)施例方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,在數(shù)據(jù)記錄中選擇多媒體記錄作為實(shí)施例,結(jié)合實(shí)施例和附圖對(duì)本發(fā)明進(jìn)一步詳細(xì)說(shuō)明。
如圖3所示,本發(fā)明提供的數(shù)據(jù)存儲(chǔ)裝置與應(yīng)用系統(tǒng)相連,接受應(yīng)用系統(tǒng)的存儲(chǔ)請(qǐng)求,依請(qǐng)求進(jìn)行相應(yīng)的存儲(chǔ)、訪問(wèn)及刪除操作。
該數(shù)據(jù)存儲(chǔ)裝置包括業(yè)務(wù)處理模塊、存儲(chǔ)控制模塊、物理數(shù)據(jù)存儲(chǔ)區(qū)。其中業(yè)務(wù)處理模塊又包括業(yè)務(wù)處理樁模塊,其向應(yīng)用系統(tǒng)提供樁類,該樁提供串化(marshaling)、反串化(demarshaling)功能,完成應(yīng)用具體數(shù)據(jù)結(jié)構(gòu)到二進(jìn)制數(shù)據(jù)塊的相互轉(zhuǎn)換。它向“存儲(chǔ)控制模塊”屏蔽應(yīng)用系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)的多樣性,便于存儲(chǔ)控制模塊實(shí)現(xiàn)統(tǒng)一的存儲(chǔ)管理。
如圖4所示,存儲(chǔ)控制模塊由存儲(chǔ)管理器和分組存儲(chǔ)管理器組成。存儲(chǔ)管理器起存儲(chǔ)管理代理的作用,它將實(shí)際的存儲(chǔ)管理工作委托給分組存儲(chǔ)管理器去完成。它通過(guò)業(yè)務(wù)處理樁模塊向應(yīng)用系統(tǒng)提供統(tǒng)一的虛擬多媒體存儲(chǔ)設(shè)備。其為每條多媒體記錄分配一個(gè)多媒體記錄標(biāo)識(shí)(ID),并完成多媒體記錄ID到數(shù)據(jù)塊的綁定。該ID可以設(shè)計(jì)為一個(gè)定長(zhǎng)的數(shù)值,如下表所示,其共計(jì)12位數(shù),11~12位是“分組號(hào)”、1~10是統(tǒng)一編號(hào),當(dāng)然實(shí)際實(shí)施時(shí)可以適當(dāng)縮小或擴(kuò)大取值范圍,一切看目標(biāo)系統(tǒng)規(guī)模。當(dāng)應(yīng)用系統(tǒng)訪問(wèn)多媒體記錄時(shí),依該多媒體記錄對(duì)應(yīng)的ID號(hào)進(jìn)行訪問(wèn)。

分組存儲(chǔ)管理器具體完成存儲(chǔ)管理任務(wù)。將存儲(chǔ)管理分組的主要目標(biāo)是通過(guò)分組可以將多媒體內(nèi)容分別存儲(chǔ)在不同的文件上,進(jìn)而可映射到不同的磁盤上,如此,可提高系統(tǒng)I/O效率。每個(gè)分組存儲(chǔ)管理器擁有一個(gè)自己的工作線程,這樣還可以簡(jiǎn)便地實(shí)現(xiàn)并行存儲(chǔ)動(dòng)作。當(dāng)然,也可將所有多媒體的數(shù)據(jù)存儲(chǔ)在同一文件上,在這種情況下,存儲(chǔ)控制模塊不需要分組存儲(chǔ)管理器,由存儲(chǔ)管理器完成具體的存儲(chǔ)管理任務(wù)。
物理數(shù)據(jù)存儲(chǔ)區(qū)分為索引存儲(chǔ)區(qū)和多媒體數(shù)據(jù)存儲(chǔ)區(qū),統(tǒng)一采用大文件存儲(chǔ)方式。其中索引存儲(chǔ)區(qū)存儲(chǔ)每個(gè)多媒體記錄的索引,還包括多媒體記錄ID堆棧,用于當(dāng)多媒體記錄刪除時(shí),保存該記錄對(duì)應(yīng)的ID。當(dāng)應(yīng)用系統(tǒng)請(qǐng)求存儲(chǔ)一條多媒體記錄時(shí),存儲(chǔ)管理層為每條多媒體記錄分配的ID都是由索引存儲(chǔ)區(qū)對(duì)應(yīng)的文件偏移量通過(guò)一一映射變換得到的。近而,通過(guò)索引存儲(chǔ)區(qū)建立起了每個(gè)多媒體記錄的ID與該多媒體記錄在多媒體數(shù)據(jù)存儲(chǔ)區(qū)的索引的一一對(duì)應(yīng)關(guān)系。多媒體數(shù)據(jù)存儲(chǔ)區(qū)采用大文件加按簇分配的方案,即將數(shù)據(jù)大文件分割成一個(gè)個(gè)的簇,每個(gè)簇保存下一個(gè)簇的地址,實(shí)現(xiàn)方式類同于鏈表。在索引區(qū)中保存多媒體記錄對(duì)應(yīng)的頭一個(gè)簇的地址。故,通過(guò)索引存儲(chǔ)區(qū)建立起了每個(gè)多媒體記錄的ID與該多媒體記錄在多媒體數(shù)據(jù)存儲(chǔ)區(qū)的索引的一一對(duì)應(yīng)關(guān)系。又通過(guò)索引區(qū)中保存的多媒體記錄對(duì)應(yīng)的頭一個(gè)簇的地址進(jìn)而訪問(wèn)到相關(guān)多媒體記錄數(shù)據(jù)。所述數(shù)據(jù)存儲(chǔ)區(qū)還包括空閑簇指針堆棧,用于當(dāng)多媒體記錄刪除時(shí),保存該記錄對(duì)應(yīng)的簇指針。物理數(shù)據(jù)存儲(chǔ)區(qū)結(jié)構(gòu)如圖5所示。
在上述系統(tǒng)中,存儲(chǔ)控制模塊是整個(gè)多媒體存儲(chǔ)裝置的核心,每個(gè)分組存儲(chǔ)管理器內(nèi)部又包含索引存儲(chǔ)管理器和數(shù)據(jù)存儲(chǔ)管理器,而索引存儲(chǔ)管理器及數(shù)據(jù)存儲(chǔ)管理器中又相應(yīng)的包括多媒體記錄ID管理器和空閑簇指針管理器。索引存儲(chǔ)管理器用于管理索引數(shù)據(jù)存儲(chǔ)區(qū)及空閑的多媒體記錄ID堆棧。當(dāng)要?jiǎng)h除某多媒體記錄時(shí),將該記錄的ID放置到空閑的多媒體記錄ID堆棧中,當(dāng)新增記錄時(shí),首先從空閑的ID堆棧中申請(qǐng)多媒體記錄ID,假如沒(méi)有空閑ID再生成新的多媒體記錄ID。多媒體數(shù)據(jù)存儲(chǔ)管理器用于管理多媒體存儲(chǔ)區(qū)及空閑的簇指針,當(dāng)刪除某記錄時(shí),將該記錄所對(duì)應(yīng)的簇指針?lè)胖玫娇臻e簇指針堆棧中,當(dāng)新增多媒體記錄時(shí),首先從空閑的簇指針堆棧中申請(qǐng)資源,假如沒(méi)有空閑簇時(shí),再生成新的簇。
其中,多媒體記錄ID管理器是存儲(chǔ)管理層實(shí)現(xiàn)的關(guān)鍵,Server、Portal訪問(wèn)多媒體記錄存儲(chǔ)裝置時(shí)必須首先來(lái)申請(qǐng)獲取ID,存儲(chǔ)數(shù)據(jù)釋放后必須回收ID。其實(shí)現(xiàn)原理是ID管理器內(nèi)部保存內(nèi)存空閑ID堆棧,文件中有相應(yīng)的后援文件堆棧,同時(shí)保存一個(gè)已經(jīng)分配出去的ID最大值,優(yōu)先使用已經(jīng)回收的ID。且內(nèi)存堆棧與對(duì)應(yīng)文件后援堆棧交互當(dāng)以批讀寫形式進(jìn)行,如圖6所示。
外部應(yīng)用系統(tǒng)在訪問(wèn)多媒體記錄時(shí),以多媒體記錄ID來(lái)訪問(wèn)避免復(fù)雜的查詢搜索動(dòng)作。
本發(fā)明提供一種數(shù)據(jù)存儲(chǔ)方法,如圖7所示,其核心是為每條數(shù)據(jù)記錄分配一個(gè)ID,根據(jù)該ID映射變換可得到該多數(shù)據(jù)記錄的索引存儲(chǔ)區(qū)地址,將該數(shù)據(jù)記錄保存在一個(gè)被分割成許多簇的文件中,將存儲(chǔ)該多媒體記錄的頭一個(gè)簇的地址保存于所述索引存儲(chǔ)區(qū)內(nèi)。該ID為一個(gè)定長(zhǎng)的數(shù)值,統(tǒng)一編號(hào),當(dāng)然實(shí)際實(shí)施時(shí)可以適當(dāng)縮小或擴(kuò)大取值范圍。當(dāng)刪除某一多媒體記錄時(shí),將該記錄的ID放置于對(duì)應(yīng)的多媒體記錄ID空閑堆棧中。
先建立多媒體記錄ID空閑堆棧,當(dāng)刪除某一多媒體記錄時(shí),將該記錄的ID放置于對(duì)應(yīng)的多媒體記錄ID空閑堆棧中,并保存已經(jīng)分配出去的ID的最大值。當(dāng)新增多媒體記錄時(shí),首先判斷多媒體記錄ID空閑堆棧中是否有空閑ID,如果有,則優(yōu)先使用該空閑ID,假如沒(méi)有空閑ID則接續(xù)已經(jīng)分配出去的ID的最大值生成新的ID。
為存放多媒體的文件的簇建立空閑簇指針堆棧,當(dāng)刪除某一多媒體記錄時(shí),將該記錄的對(duì)應(yīng)的簇指針壓入空閑簇堆棧中,并保存已經(jīng)分配出去的簇的最大值。當(dāng)新增多媒體記錄時(shí),首先判斷空閑簇堆棧中是否有空閑簇,如果有,則優(yōu)先使用該空閑簇,假如沒(méi)有空閑簇則接續(xù)已經(jīng)分配出去的簇使用新的簇。
綜上所述,當(dāng)需要存儲(chǔ)一多媒體記錄時(shí),為多媒體記錄分配一個(gè)多媒體記錄ID,分配時(shí)優(yōu)先分配已經(jīng)空閑的ID,如沒(méi)有空閑ID則申請(qǐng)新的ID,根據(jù)該ID映射可變換得到該多媒體記錄的索引存儲(chǔ)區(qū)地址。將多媒體記錄存儲(chǔ)在文件中,存儲(chǔ)時(shí),優(yōu)先存儲(chǔ)于該文件中的空閑的簇,如果沒(méi)有空閑簇,則存儲(chǔ)在新的簇中,將該簇的地址存儲(chǔ)于該多媒體記錄的索引存儲(chǔ)區(qū)地址中。當(dāng)外部應(yīng)用系統(tǒng)訪問(wèn)多媒體記錄時(shí),通過(guò)該多媒體記錄對(duì)應(yīng)的ID進(jìn)行,進(jìn)而實(shí)現(xiàn)了該多媒體記錄的快速存儲(chǔ)、訪問(wèn)及刪除。
以上所述僅為本發(fā)明方案的較佳實(shí)施例,并不用以限定本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種數(shù)據(jù)存儲(chǔ)的方法,其特征在于該方法包括步驟為待存儲(chǔ)的數(shù)據(jù)記錄分配一個(gè)數(shù)據(jù)記錄標(biāo)識(shí)(ID);將所述數(shù)據(jù)記錄保存在一個(gè)被分割成簇的文件中;將存儲(chǔ)所述數(shù)據(jù)記錄的頭一個(gè)簇的地址保存于索引存儲(chǔ)區(qū),并建立該地址與數(shù)據(jù)記錄ID的一一映射關(guān)系。
2.如權(quán)利要求1所述的方法,其特征在于,建立數(shù)據(jù)記錄ID空閑堆棧,當(dāng)刪除某一數(shù)據(jù)記錄時(shí),將該記錄的ID放置于數(shù)據(jù)記錄ID空閑堆棧中,并保存已經(jīng)分配出去的ID的最大值。
3.如權(quán)利要求2所述的方法,其特征在于為待存儲(chǔ)的數(shù)據(jù)記錄分配數(shù)據(jù)記錄ID時(shí),首先判斷數(shù)據(jù)記錄ID空閑堆棧中是否有空閑ID,如果有,則優(yōu)先使用該空閑ID,如沒(méi)有空閑ID則接續(xù)已經(jīng)分配出去的ID的最大值生成新的ID。
4.如權(quán)利要求1所述的方法,其特征在于為存放數(shù)據(jù)記錄的文件的簇建立空閑簇指針堆棧,當(dāng)刪除某一數(shù)據(jù)記錄時(shí),將該記錄的對(duì)應(yīng)的簇指針?lè)胖糜诳臻e簇指針堆棧中,并保存已經(jīng)分配出去的簇指針的最大值。
5.如權(quán)利要求4所述的方法,其特征在于將所述數(shù)據(jù)記錄存儲(chǔ)在文件中時(shí),首先判斷數(shù)據(jù)記錄空閑簇堆棧中是否有空閑簇指針,如果有,則優(yōu)先使用該空閑簇;否則,接續(xù)已經(jīng)分配出去的簇使用新的簇。
6.如權(quán)利要求1所述的方法,其特征在于當(dāng)訪問(wèn)數(shù)據(jù)記錄時(shí),通過(guò)該數(shù)據(jù)記錄的ID訪問(wèn)所述記錄。
7.如權(quán)利要求1所述的方法,其特征在于保存一個(gè)數(shù)據(jù)記錄的所有簇中,每個(gè)簇保存下一個(gè)簇的地址。
8.如權(quán)利要求1至7任一所述的方法,其特征在于所述數(shù)據(jù)記錄ID是一定長(zhǎng)度的數(shù)值。
9.如權(quán)利要求8所述的方法,其特征在于所述數(shù)據(jù)記錄是指多媒體記錄。
10.一種數(shù)據(jù)存儲(chǔ)裝置,其特征在于所述裝置包括業(yè)務(wù)處理模塊、存儲(chǔ)控制模塊和物理數(shù)據(jù)存儲(chǔ)區(qū);所述業(yè)務(wù)處理模塊用于接受數(shù)據(jù)記錄操作請(qǐng)求,并完成所述數(shù)據(jù)記錄的應(yīng)用具體數(shù)據(jù)結(jié)構(gòu)到二進(jìn)制數(shù)據(jù)塊的相互轉(zhuǎn)換,轉(zhuǎn)換后的二進(jìn)制數(shù)據(jù)記錄塊將由存儲(chǔ)控制模塊進(jìn)行存儲(chǔ);所述存儲(chǔ)控制模塊用于為所述數(shù)據(jù)記錄分配數(shù)據(jù)記錄ID,并建立該數(shù)據(jù)記錄ID和數(shù)據(jù)記錄在物理數(shù)據(jù)存儲(chǔ)區(qū)存儲(chǔ)地址的關(guān)系;所述物理數(shù)據(jù)存儲(chǔ)區(qū)用于存儲(chǔ)所有數(shù)據(jù)記錄。
11.如權(quán)利要求10所述的裝置,其特征在于所述業(yè)務(wù)處理模塊包括業(yè)務(wù)處理樁模塊,所述樁模塊用于提供樁類及完成數(shù)據(jù)記錄的串化及反串化。
12.如權(quán)利要求10所述的裝置,其特征在于所述物理數(shù)據(jù)存儲(chǔ)區(qū)包括索引存儲(chǔ)區(qū)和數(shù)據(jù)存儲(chǔ)區(qū),分別用于以文件形式存儲(chǔ)數(shù)據(jù)記錄的索引和數(shù)據(jù)記錄;數(shù)據(jù)存儲(chǔ)區(qū)形成的數(shù)據(jù)文件被分割為一個(gè)個(gè)的簇,每個(gè)簇保存下一個(gè)簇的地址;所述數(shù)據(jù)存儲(chǔ)區(qū)還包括空閑簇堆棧,用于當(dāng)數(shù)據(jù)記錄刪除時(shí),保存該記錄對(duì)應(yīng)簇的指針;所述索引存儲(chǔ)區(qū)還包括數(shù)據(jù)記錄ID堆棧,用于當(dāng)數(shù)據(jù)記錄刪除時(shí),保存該記錄對(duì)應(yīng)的ID。
13.如權(quán)利要求10所述的裝置,其特征在于所述存儲(chǔ)控制模塊進(jìn)一步包括存儲(chǔ)管理器和至少一個(gè)分組存儲(chǔ)管理器,所述存儲(chǔ)管理器用于將實(shí)際的存儲(chǔ)管理工作分配給分組存儲(chǔ)器,每個(gè)分組管理器對(duì)應(yīng)一個(gè)工作線程。
14.如權(quán)利要求13所述的裝置,其特征在于所述分組存儲(chǔ)器進(jìn)一步包括索引存儲(chǔ)管理器和數(shù)據(jù)存儲(chǔ)管理器;所述索引存儲(chǔ)管理器用于管理空閑數(shù)據(jù)記錄ID堆棧和索引存儲(chǔ)區(qū),當(dāng)新增數(shù)據(jù)記錄時(shí),首先從空閑ID堆棧中為該記錄申請(qǐng)空閑ID,假如沒(méi)有空閑ID則接續(xù)已經(jīng)分配的ID號(hào)生成新的ID;所述數(shù)據(jù)存儲(chǔ)管理器用于管理空閑簇指針堆棧和數(shù)據(jù)存儲(chǔ)區(qū),當(dāng)新增數(shù)據(jù)記錄時(shí),首先從空閑簇指針堆棧中為該記錄申請(qǐng)空閑簇,假如沒(méi)有空閑簇則將該記錄存儲(chǔ)在新的簇中。
15.如權(quán)利要求10至14中任一項(xiàng)所述的裝置,其特征在于所述數(shù)據(jù)記錄ID是由該記錄索引存儲(chǔ)地址的對(duì)應(yīng)的文件偏移量通過(guò)一一映射變換得到。
16.如權(quán)利要求10至14中任一項(xiàng)所述的裝置,其特征在于所述數(shù)據(jù)記錄是多媒體記錄。
17.如權(quán)利要求10至14中任一項(xiàng)所述的裝置,其特征在于所述一種數(shù)據(jù)存儲(chǔ)裝置與應(yīng)用系統(tǒng)相連,接受應(yīng)用系統(tǒng)的存儲(chǔ)請(qǐng)求,依請(qǐng)求進(jìn)行相應(yīng)的存儲(chǔ)、訪問(wèn)及刪除操作,應(yīng)用系統(tǒng)通過(guò)數(shù)據(jù)記錄ID訪問(wèn)數(shù)據(jù)記錄。
18.如權(quán)利要求14所述的裝置,其特征在于索引存儲(chǔ)管理器進(jìn)一步包括數(shù)據(jù)記錄ID管理器,用于管理空閑記錄ID堆棧。
全文摘要
本發(fā)明公開了一種數(shù)據(jù)存儲(chǔ)的方法,為每條數(shù)據(jù)記錄分配一個(gè)ID,根據(jù)該ID映射變換得到該數(shù)據(jù)記錄的索引存儲(chǔ)區(qū)地址,將該數(shù)據(jù)記錄保存在一個(gè)被分割成許多簇的文件中,將存儲(chǔ)該數(shù)據(jù)記錄的頭一個(gè)簇的地址保存于所述索引存儲(chǔ)區(qū)內(nèi)。當(dāng)外部應(yīng)用系統(tǒng)訪問(wèn)數(shù)據(jù)記錄時(shí),通過(guò)該數(shù)據(jù)記錄對(duì)應(yīng)的ID進(jìn)行,進(jìn)而實(shí)現(xiàn)了該數(shù)據(jù)記錄的快速存儲(chǔ)、訪問(wèn)及刪除。
文檔編號(hào)H04L12/00GK1632779SQ200310121069
公開日2005年6月29日 申請(qǐng)日期2003年12月24日 優(yōu)先權(quán)日2003年12月24日
發(fā)明者方文, 李益民, 李大偉, 柏廣昌, 劉明海, 徐學(xué)濤, 趙毅 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
开远市| 凌海市| 绥滨县| 泽普县| 康乐县| 日照市| 马关县| 年辖:市辖区| 青海省| 梅州市| 东源县| 正蓝旗| 灵台县| 建宁县| 沙湾县| 德化县| 天柱县| 娱乐| 广灵县| 遵义县| 阿坝| 疏勒县| 诏安县| 台安县| 朔州市| 夏邑县| 玉环县| 五原县| 阿图什市| 邵阳市| 文登市| 河源市| 尉犁县| 河北区| 台江县| 子长县| 台江县| 突泉县| 蓝田县| 梁山县| 灵丘县|