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

數(shù)據(jù)庫(kù)訪問(wèn)的實(shí)現(xiàn)方法

文檔序號(hào):6556844閱讀:219來(lái)源:國(guó)知局
專利名稱:數(shù)據(jù)庫(kù)訪問(wèn)的實(shí)現(xiàn)方法
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)數(shù)據(jù)庫(kù)系統(tǒng),尤其涉及一種數(shù)據(jù)庫(kù)訪問(wèn)的實(shí)現(xiàn)方法及應(yīng)用該方法的SCP(Service Control Point,業(yè)務(wù)控制點(diǎn))服務(wù)器。
背景技術(shù)
電信運(yùn)營(yíng)商提供的中小型增值業(yè)務(wù)系統(tǒng)中,包括為用戶提供的記帳卡業(yè)務(wù)。在開(kāi)通記帳卡業(yè)務(wù)后,用戶在電信運(yùn)營(yíng)商網(wǎng)絡(luò)內(nèi)的任何一部話機(jī)上撥接入碼,輸入記帳卡號(hào)、密碼,通過(guò)權(quán)限認(rèn)證后,就可以撥打電話,通話費(fèi)用實(shí)時(shí)從記帳卡扣除。
在運(yùn)營(yíng)商的網(wǎng)絡(luò)側(cè),對(duì)記帳卡業(yè)務(wù),在SCP上存放記帳卡號(hào)、密碼、話費(fèi)余額、有效期等業(yè)務(wù)數(shù)據(jù)。當(dāng)SSP(Service Switch Point,業(yè)務(wù)交換點(diǎn))將用戶輸入的記帳卡號(hào)、密碼等信息提交到SCP中,由SCP對(duì)卡號(hào)的有效性進(jìn)行檢查,在SCP驗(yàn)證卡號(hào)對(duì)應(yīng)的密碼正確、話費(fèi)尚有余額且尚未超過(guò)有效期時(shí),認(rèn)為該用戶通過(guò)權(quán)限認(rèn)證,指示SSP播放語(yǔ)音,提示用戶可以撥打電話。
記帳卡的業(yè)務(wù)數(shù)據(jù)的查詢和修改都在SCP的數(shù)據(jù)庫(kù)服務(wù)器中實(shí)現(xiàn)。SCP服務(wù)器通常采用PC(Personal Computer,個(gè)人計(jì)算機(jī))服務(wù)器,由于PC服務(wù)器的處理能力問(wèn)題,當(dāng)記帳卡的業(yè)務(wù)數(shù)據(jù)增加到一定程度時(shí),對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)需要耗費(fèi)相當(dāng)長(zhǎng)的時(shí)間,使用戶因等待而感到不適,嚴(yán)重時(shí)甚至?xí)斐上到y(tǒng)不可用。
現(xiàn)有技術(shù)中通常采用以下幾種方法來(lái)提高大容量數(shù)據(jù)庫(kù)的訪問(wèn)速度其一是選擇更優(yōu)的數(shù)據(jù)庫(kù)系統(tǒng);這種方法需要更換與高性能的數(shù)據(jù)庫(kù)系統(tǒng)相適應(yīng)的數(shù)據(jù)庫(kù)服務(wù)器,成本很高;其二是使用可以預(yù)先進(jìn)行編譯和優(yōu)化的視圖和存儲(chǔ)過(guò)程來(lái)提高數(shù)據(jù)庫(kù)的檢索效率;這種方法在PC服務(wù)器上受限于其處理能力,難以取得明顯的效果,仍舊需要與高性能的服務(wù)器同時(shí)使用才能提高訪問(wèn)效率;其三是在進(jìn)行數(shù)據(jù)庫(kù)的表設(shè)計(jì)時(shí)避免使用image(圖像)、text(文本)等數(shù)據(jù)量大的字段,而將這些數(shù)據(jù)以文件的形式存放在文件服務(wù)器上,在數(shù)據(jù)庫(kù)中只放置對(duì)相關(guān)文件的訪問(wèn)路徑,由文件服務(wù)器來(lái)承擔(dān)這些文件的輸入輸出服務(wù);使用這種方法需要配置專門(mén)的文件服務(wù)器,成本較高。
可見(jiàn),現(xiàn)有技術(shù)中都需要添加或更換硬件來(lái)提高數(shù)據(jù)庫(kù)的訪問(wèn)速度。

發(fā)明內(nèi)容
本發(fā)明要解決的是現(xiàn)有技術(shù)中提高數(shù)據(jù)庫(kù)的訪問(wèn)速度需要改良硬件造成成本過(guò)高的問(wèn)題。
本發(fā)明所述數(shù)據(jù)庫(kù)訪問(wèn)的實(shí)現(xiàn)方法包括以下步驟將數(shù)據(jù)庫(kù)中待訪問(wèn)的數(shù)據(jù)從硬盤(pán)鏡像到內(nèi)存中;數(shù)據(jù)庫(kù)訪問(wèn)進(jìn)程通過(guò)內(nèi)存鏡像數(shù)據(jù)進(jìn)行對(duì)所述數(shù)據(jù)的訪問(wèn)操作;根據(jù)內(nèi)存鏡像數(shù)據(jù)的變化進(jìn)行硬盤(pán)數(shù)據(jù)的同步。
優(yōu)選地,所述數(shù)據(jù)庫(kù)訪問(wèn)進(jìn)程包括內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程;內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程對(duì)所述數(shù)據(jù)的訪問(wèn)操作具體為由內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程直接對(duì)內(nèi)存鏡像數(shù)據(jù)進(jìn)行讀寫(xiě)操作。
優(yōu)選地,所述數(shù)據(jù)庫(kù)訪問(wèn)進(jìn)程還包括硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程;硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程對(duì)所述數(shù)據(jù)的訪問(wèn)操作具體為為內(nèi)存鏡像數(shù)據(jù)在內(nèi)存中設(shè)置寫(xiě)同步區(qū);硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程將對(duì)內(nèi)存鏡像數(shù)據(jù)的變更指示寫(xiě)入寫(xiě)同步區(qū);內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程根據(jù)寫(xiě)同步區(qū)中的變更指示進(jìn)行內(nèi)存鏡像數(shù)據(jù)的寫(xiě)操作。
優(yōu)選地,所述方法還包括硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程通過(guò)硬盤(pán)數(shù)據(jù)進(jìn)行對(duì)數(shù)據(jù)庫(kù)的讀操作。
優(yōu)選地,所述待訪問(wèn)數(shù)據(jù)包括至少一個(gè)表;所述為內(nèi)存鏡像數(shù)據(jù)設(shè)置寫(xiě)同步區(qū)具體為為需要被硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程修改的表中字段設(shè)置寫(xiě)同步字段;所述將對(duì)內(nèi)存鏡像數(shù)據(jù)的變更指示寫(xiě)入寫(xiě)同步區(qū)具體為硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程將對(duì)表中數(shù)據(jù)的變更指示寫(xiě)入該數(shù)據(jù)所在表項(xiàng)的寫(xiě)同步字段;所述根據(jù)變更指示進(jìn)行內(nèi)存鏡像數(shù)據(jù)的寫(xiě)操作具體為內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程當(dāng)寫(xiě)同步字段中寫(xiě)入變更指示后,根據(jù)變更指示進(jìn)行其所在表項(xiàng)對(duì)應(yīng)數(shù)據(jù)的寫(xiě)操作,之后清除該變更指示。
優(yōu)選地,所述數(shù)據(jù)庫(kù)為記帳卡業(yè)務(wù)數(shù)據(jù)庫(kù);所述表中包括記帳卡卡號(hào)字段,每個(gè)表中各表項(xiàng)的記帳卡卡號(hào)具有相同的特征值。
優(yōu)選地,所述方法在將待訪問(wèn)的數(shù)據(jù)從硬盤(pán)鏡像到內(nèi)存中之后還包括以記帳卡卡號(hào)的哈希值作為索引組織每個(gè)表的內(nèi)存鏡像數(shù)據(jù)。
優(yōu)選地,所述方法在對(duì)記帳卡數(shù)據(jù)庫(kù)的數(shù)據(jù)進(jìn)行訪問(wèn)操作前還包括根據(jù)記帳卡卡號(hào)的特征值確定一個(gè)表作為執(zhí)行訪問(wèn)操作的對(duì)象。
優(yōu)選地,所述記帳卡卡號(hào)根據(jù)偽隨機(jī)算法生成,具有平均分布的特征值。
優(yōu)選地,所述表還包括密碼字段和余額字段,分別用來(lái)存儲(chǔ)記帳卡的密碼和余額。
本發(fā)明將被頻繁訪問(wèn)數(shù)據(jù)由硬盤(pán)鏡像至內(nèi)存中,通過(guò)內(nèi)存而不是硬盤(pán)完成這些數(shù)據(jù)的訪問(wèn),同時(shí)將數(shù)據(jù)變化實(shí)時(shí)同步到硬盤(pán)中,在現(xiàn)有的硬件條件下極大地提高了訪問(wèn)速度;進(jìn)一步地,本發(fā)明通過(guò)為內(nèi)存鏡像數(shù)據(jù)設(shè)置寫(xiě)同步區(qū),硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程只能通過(guò)內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程對(duì)內(nèi)存鏡像數(shù)據(jù)進(jìn)行修改,避免了可能的數(shù)據(jù)寫(xiě)操作沖突,實(shí)現(xiàn)了對(duì)內(nèi)存鏡像數(shù)據(jù)的靈活訪問(wèn)。


圖1為本發(fā)明所述數(shù)據(jù)庫(kù)訪問(wèn)實(shí)現(xiàn)方法的流程圖;圖2為本發(fā)明所述數(shù)據(jù)庫(kù)訪問(wèn)實(shí)現(xiàn)方法應(yīng)用示例的流程圖。
具體實(shí)施例方式
對(duì)數(shù)據(jù)庫(kù)進(jìn)行訪問(wèn)的客戶端,如記帳卡用戶而言,對(duì)操作時(shí)的延時(shí)更為敏感,需要盡快得到系統(tǒng)的回復(fù),而對(duì)系統(tǒng)何時(shí)更新數(shù)據(jù)庫(kù)則并不關(guān)心。DBMS(DataBase Manage System,數(shù)據(jù)庫(kù)管理系統(tǒng))在內(nèi)存中開(kāi)設(shè)數(shù)據(jù)緩沖區(qū),用來(lái)存放當(dāng)前被訪問(wèn)的數(shù)據(jù),當(dāng)數(shù)據(jù)庫(kù)訪問(wèn)進(jìn)程要訪問(wèn)的數(shù)據(jù)不在緩沖區(qū)中時(shí),DBMS需要將其從硬盤(pán)中調(diào)入緩沖區(qū)。也就是說(shuō),如果客戶端訪問(wèn)的數(shù)據(jù)在內(nèi)存中,就能很快得到結(jié)果,而如果不在內(nèi)存中,就會(huì)需要較長(zhǎng)時(shí)間。
因此,可以在內(nèi)存中保留時(shí)延敏感的進(jìn)程所訪問(wèn)數(shù)據(jù)的鏡像,這些進(jìn)程通過(guò)內(nèi)存鏡像數(shù)據(jù)完成對(duì)數(shù)據(jù)庫(kù)訪問(wèn)操作,這樣客戶端可以在很短的時(shí)間內(nèi)得到訪問(wèn)結(jié)果;同時(shí),將這些進(jìn)程對(duì)內(nèi)存鏡像數(shù)據(jù)的修改實(shí)時(shí)同步到硬盤(pán)中,以保持?jǐn)?shù)據(jù)的完整性。
如果同時(shí)還有對(duì)時(shí)延不敏感的進(jìn)程也需要訪問(wèn)相同的數(shù)據(jù),既可以同樣訪問(wèn)內(nèi)存鏡像數(shù)據(jù),也可以訪問(wèn)硬盤(pán)數(shù)據(jù)以便更好地保證時(shí)延敏感進(jìn)程的響應(yīng)時(shí)間。而由不同的進(jìn)程分別對(duì)內(nèi)存鏡像數(shù)據(jù)和對(duì)硬盤(pán)數(shù)據(jù)進(jìn)行訪問(wèn)操作可能造成訪問(wèn)沖突,因而可以只對(duì)鏡像到內(nèi)存中的數(shù)據(jù)進(jìn)行修改,再同步修改的結(jié)果。
本文中將通過(guò)內(nèi)存鏡像數(shù)據(jù)進(jìn)行數(shù)據(jù)庫(kù)訪問(wèn)的進(jìn)程稱之為內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程,將通過(guò)硬盤(pán)來(lái)訪問(wèn)鏡像到內(nèi)存中的數(shù)據(jù)的進(jìn)程稱為硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程。
本發(fā)明所述數(shù)據(jù)庫(kù)訪問(wèn)實(shí)現(xiàn)方法的流程如圖1所示。在步驟S110,將內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程所訪問(wèn)的數(shù)據(jù)鏡像到內(nèi)存中。鏡像到內(nèi)存中的數(shù)據(jù)可以是數(shù)據(jù)庫(kù)中的所有數(shù)據(jù),也可以是部分?jǐn)?shù)據(jù)。
如果有硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程需要同時(shí)訪問(wèn)鏡像的數(shù)據(jù),執(zhí)行步驟S120,在內(nèi)存中為內(nèi)存鏡像數(shù)據(jù)設(shè)置寫(xiě)同步區(qū)。寫(xiě)同步區(qū)為內(nèi)存中一段由內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程和硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程共同使用的地址空間,用來(lái)避免可能的數(shù)據(jù)寫(xiě)操作沖突。
當(dāng)內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程訪問(wèn)數(shù)據(jù)時(shí),執(zhí)行步驟S130,直接對(duì)內(nèi)存鏡像數(shù)據(jù)進(jìn)行讀寫(xiě)操作,轉(zhuǎn)步驟S170。
當(dāng)硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程對(duì)鏡像數(shù)據(jù)進(jìn)行寫(xiě)操作時(shí),不能直接修改硬盤(pán)中的數(shù)據(jù),而是執(zhí)行步驟S140,將對(duì)內(nèi)存鏡像數(shù)據(jù)的變更指示寫(xiě)入寫(xiě)同步區(qū)。變更指示的實(shí)現(xiàn)可以由用戶根據(jù)具體應(yīng)用情況確定,例如,可以按照類似于可執(zhí)行語(yǔ)句的方式將能夠定位要變更的數(shù)據(jù)的信息、如何變更寫(xiě)入寫(xiě)同步區(qū),采用這種方法的寫(xiě)同步區(qū)只需要占用相當(dāng)少的地址空間就可以為大量的數(shù)據(jù)實(shí)現(xiàn)單向的寫(xiě)操作;再如,還可以為需要同時(shí)由硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程和內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程進(jìn)行寫(xiě)操作的每個(gè)數(shù)據(jù)設(shè)置一個(gè)專用的寫(xiě)同步區(qū),則硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程只需在該專用的寫(xiě)同步區(qū)中寫(xiě)入如何變更的信息即可,這種方法需要較大的地址空間但可以提高寫(xiě)操作的效率。
在步驟S150,內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程按照寫(xiě)同步區(qū)的變更指示進(jìn)行內(nèi)存鏡像數(shù)據(jù)的寫(xiě)操作。在寫(xiě)同步區(qū)寫(xiě)入了變更指示后,內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程按照變更指示對(duì)相應(yīng)的內(nèi)存鏡像數(shù)據(jù)做對(duì)應(yīng)的修改,轉(zhuǎn)步驟S170。
在步驟S160,當(dāng)硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程進(jìn)行讀操作時(shí),執(zhí)行步驟S160,通過(guò)硬盤(pán)數(shù)據(jù)直接進(jìn)行讀操作。
在步驟S170,在內(nèi)存鏡像數(shù)據(jù)發(fā)生變化時(shí),將內(nèi)存鏡像數(shù)據(jù)的變化同步到硬盤(pán)上。
對(duì)不包括硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程的應(yīng)用情況,步驟S140、S150和S160可以省略。如果鏡像到內(nèi)存中的是數(shù)據(jù)庫(kù)的一部分,對(duì)未進(jìn)行鏡像部分的訪問(wèn)與現(xiàn)有技術(shù)中的實(shí)現(xiàn)方法相同,此處不再贅述。
以下以電信增值業(yè)務(wù)系統(tǒng)中的對(duì)記帳卡業(yè)務(wù)數(shù)據(jù)庫(kù)的訪問(wèn)為例,來(lái)說(shuō)明本發(fā)明的具體應(yīng)用。在記帳卡業(yè)務(wù)系統(tǒng)中,與用戶直接相關(guān)的數(shù)據(jù)庫(kù)訪問(wèn)操作都以內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程進(jìn)行,以確保響應(yīng)時(shí)間,其他與數(shù)據(jù)庫(kù)的訪問(wèn)操作以硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程進(jìn)行。
記帳卡業(yè)務(wù)數(shù)據(jù)庫(kù)訪問(wèn)實(shí)現(xiàn)方法的流程如圖2所示。在步驟S201,按照偽隨機(jī)算法生成記帳卡卡號(hào),選擇偽隨機(jī)算法的條件是使得隨機(jī)生成的卡號(hào)具有平均分布的特征值??紤]到訪問(wèn)記帳卡業(yè)務(wù)數(shù)據(jù)庫(kù)的便利性,最好選擇卡號(hào)或卡號(hào)的一部分作為特征值,例如,以卡號(hào)的末位作為特征值,可以將記帳卡業(yè)務(wù)數(shù)據(jù)庫(kù)拆分為10個(gè)表,分別對(duì)應(yīng)于記帳卡卡號(hào)末位的0到9。
在步驟S202,根據(jù)特征值將記帳卡業(yè)務(wù)數(shù)據(jù)庫(kù)分成至少兩個(gè)表。這樣,在訪問(wèn)數(shù)據(jù)庫(kù)時(shí),可以以特征值為索引訪問(wèn)不同的表,從而提高數(shù)據(jù)查詢的速度。
在步驟S203,將各個(gè)表或各個(gè)表中需要被內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程訪問(wèn)的部分鏡像到內(nèi)存中,其中包括記帳卡卡號(hào)字段,以及密碼字段和余額字段。
在步驟S204,以記帳卡卡號(hào)的哈希值為索引組織每個(gè)表的內(nèi)存鏡像數(shù)據(jù)。以表中某個(gè)字段的哈希值為索引來(lái)實(shí)現(xiàn)對(duì)表項(xiàng)的快速查詢?cè)诂F(xiàn)有技術(shù)中已有多種實(shí)現(xiàn)方法,本發(fā)明中不再贅述。
仍以卡號(hào)末位作為特征值的情況為例,在內(nèi)存中建立10個(gè)哈希表來(lái)存放記帳卡業(yè)務(wù)數(shù)據(jù)庫(kù)的10個(gè)表的數(shù)據(jù),將10個(gè)表的數(shù)據(jù)鏡像到內(nèi)存中,以卡號(hào)對(duì)表中的數(shù)據(jù)定址。
在步驟S205,為內(nèi)存鏡像數(shù)據(jù)中需要被硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程修改的表中字段設(shè)置寫(xiě)同步字段。每個(gè)寫(xiě)同步字段對(duì)應(yīng)于同一個(gè)表中一個(gè)需要被硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程修改的字段。
在步驟S206,在訪問(wèn)記帳卡業(yè)務(wù)數(shù)據(jù)庫(kù)時(shí),無(wú)論通過(guò)內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程還是通過(guò)硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程,都先根據(jù)記帳卡卡號(hào)的特征值為索引確定一個(gè)表作為對(duì)象來(lái)進(jìn)行訪問(wèn)操作。
對(duì)內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程,執(zhí)行步驟S207,以記帳卡卡號(hào)的哈希值為索引對(duì)表中的數(shù)據(jù)進(jìn)行讀寫(xiě)操作,轉(zhuǎn)步驟S211。
對(duì)硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程的寫(xiě)操作,執(zhí)行步驟S208,硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程以記帳卡卡號(hào)為索引查找到表中的數(shù)據(jù),將對(duì)表中數(shù)據(jù)的變更指示寫(xiě)入該數(shù)據(jù)所在表項(xiàng)的寫(xiě)同步字段。由于每個(gè)表項(xiàng)的寫(xiě)同步字段都有與其對(duì)應(yīng)的表中字段,硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程只需將變更指示寫(xiě)入該寫(xiě)同步字段即可。
在步驟S209,內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程按照變更指示及寫(xiě)入變更指示的同步字段,修改該表項(xiàng)中對(duì)應(yīng)的數(shù)據(jù)字段,并在數(shù)據(jù)字段修改完成后清除該變更指示;之后轉(zhuǎn)步驟S211。
對(duì)硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程的讀操作,執(zhí)行步驟S210,以記帳卡卡號(hào)為索引對(duì)硬盤(pán)上的各個(gè)表進(jìn)行讀操作。
在步驟S211,對(duì)內(nèi)存鏡像數(shù)據(jù)中發(fā)生的變化,將其同步到硬盤(pán)上對(duì)應(yīng)的表中。
這樣,用戶對(duì)記帳卡業(yè)務(wù)數(shù)據(jù)庫(kù)的訪問(wèn)操作都通過(guò)內(nèi)存鏡像的表來(lái)進(jìn)行,這些訪問(wèn)操作包括記帳卡業(yè)務(wù)系統(tǒng)對(duì)用戶進(jìn)行權(quán)限認(rèn)證和余額查詢,以及用戶直接進(jìn)行的訪問(wèn)。當(dāng)用戶修改密碼或者通話完畢查詢余額時(shí),由于內(nèi)存鏡像數(shù)據(jù)由內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程直接更新,因此既使用戶可以無(wú)延遲地進(jìn)行通話,又可以實(shí)時(shí)感覺(jué)到話費(fèi)余額或密碼的變化。
在本發(fā)明中,將記帳卡數(shù)據(jù)按照特征值分成多個(gè)表,在對(duì)數(shù)據(jù)庫(kù)查詢和更新時(shí),可以直接定位到具體的小表上,從而提高大容量數(shù)據(jù)庫(kù)的訪問(wèn)速度;在內(nèi)存中建立數(shù)據(jù)鏡像,使低配置PC Server訪問(wèn)大容量數(shù)據(jù)庫(kù)時(shí)的延遲對(duì)用戶透明,降低系統(tǒng)建設(shè)成本;對(duì)內(nèi)存鏡像數(shù)據(jù)和硬盤(pán)數(shù)據(jù)進(jìn)行同步,可以保證內(nèi)存數(shù)據(jù)與硬盤(pán)數(shù)據(jù)的一致,而且同步可以在后臺(tái)進(jìn)行,大大提高對(duì)低成本PC Server的利用效率;通過(guò)對(duì)表中字段規(guī)定由內(nèi)存到硬盤(pán)的同步方向,可以避免內(nèi)存數(shù)據(jù)與硬盤(pán)數(shù)據(jù)的操作沖突;對(duì)硬件配置要求低,使普通的PCServer可以勝任通常情況下小型機(jī)完成的工作。
應(yīng)用本發(fā)明后,對(duì)相同配置的PC Server上的1000萬(wàn)張記帳卡數(shù)據(jù)進(jìn)行查詢,可以將查詢時(shí)間由秒級(jí)提高到毫秒級(jí)。
以上所述的本發(fā)明實(shí)施方式,并不構(gòu)成對(duì)本發(fā)明保護(hù)范圍的限定。任何在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的權(quán)利要求保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種數(shù)據(jù)庫(kù)訪問(wèn)的實(shí)現(xiàn)方法,其特征在于,包括以下步驟將數(shù)據(jù)庫(kù)中待訪問(wèn)的數(shù)據(jù)從硬盤(pán)鏡像到內(nèi)存中;數(shù)據(jù)庫(kù)訪問(wèn)進(jìn)程通過(guò)內(nèi)存鏡像數(shù)據(jù)進(jìn)行對(duì)所述數(shù)據(jù)的訪問(wèn)操作;根據(jù)內(nèi)存鏡像數(shù)據(jù)的變化進(jìn)行硬盤(pán)數(shù)據(jù)的同步。
2.如權(quán)利要求1所述數(shù)據(jù)庫(kù)訪問(wèn)的實(shí)現(xiàn)方法,其特征在于所述數(shù)據(jù)庫(kù)訪問(wèn)進(jìn)程包括內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程;內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程對(duì)所述數(shù)據(jù)的訪問(wèn)操作具體為由內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程直接對(duì)內(nèi)存鏡像數(shù)據(jù)進(jìn)行讀寫(xiě)操作。
3.如權(quán)利要求2所述數(shù)據(jù)庫(kù)訪問(wèn)的實(shí)現(xiàn)方法,其特征在于所述數(shù)據(jù)庫(kù)訪問(wèn)進(jìn)程還包括硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程;硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程對(duì)所述數(shù)據(jù)的訪問(wèn)操作具體為為內(nèi)存鏡像數(shù)據(jù)在內(nèi)存中設(shè)置寫(xiě)同步區(qū);硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程將對(duì)內(nèi)存鏡像數(shù)據(jù)的變更指示寫(xiě)入寫(xiě)同步區(qū);內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程根據(jù)寫(xiě)同步區(qū)中的變更指示進(jìn)行內(nèi)存鏡像數(shù)據(jù)的寫(xiě)操作。
4.如權(quán)利要求3所述數(shù)據(jù)庫(kù)訪問(wèn)的實(shí)現(xiàn)方法,其特征在于所述方法還包括硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程通過(guò)硬盤(pán)數(shù)據(jù)進(jìn)行對(duì)數(shù)據(jù)庫(kù)的讀操作。
5.如權(quán)利要求3或4所述數(shù)據(jù)庫(kù)訪問(wèn)的實(shí)現(xiàn)方法,其特征在于所述待訪問(wèn)數(shù)據(jù)包括至少一個(gè)表;所述為內(nèi)存鏡像數(shù)據(jù)設(shè)置寫(xiě)同步區(qū)具體為為需要被硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程修改的表中字段設(shè)置寫(xiě)同步字段;所述將對(duì)內(nèi)存鏡像數(shù)據(jù)的變更指示寫(xiě)入寫(xiě)同步區(qū)具體為硬盤(pán)數(shù)據(jù)訪問(wèn)進(jìn)程將對(duì)表中數(shù)據(jù)的變更指示寫(xiě)入該數(shù)據(jù)所在表項(xiàng)的寫(xiě)同步字段;所述根據(jù)變更指示進(jìn)行內(nèi)存鏡像數(shù)據(jù)的寫(xiě)操作具體為內(nèi)存數(shù)據(jù)訪問(wèn)進(jìn)程當(dāng)寫(xiě)同步字段中寫(xiě)入變更指示后,根據(jù)變更指示進(jìn)行其所在表項(xiàng)對(duì)應(yīng)數(shù)據(jù)的寫(xiě)操作,之后清除該變更指示。
6.如權(quán)利要求5所述數(shù)據(jù)庫(kù)的訪問(wèn)方法,其特征在于所述數(shù)據(jù)庫(kù)為記帳卡業(yè)務(wù)數(shù)據(jù)庫(kù);所述表中包括記帳卡卡號(hào)字段,每個(gè)表中各表項(xiàng)的記帳卡卡號(hào)具有相同的特征值。
7.如權(quán)利要求6所述數(shù)據(jù)庫(kù)的訪問(wèn)方法,其特征在于,所述方法在將待訪問(wèn)的數(shù)據(jù)從硬盤(pán)鏡像到內(nèi)存中之后還包括以記帳卡卡號(hào)的哈希值作為索引組織每個(gè)表的內(nèi)存鏡像數(shù)據(jù)。
8.如權(quán)利要求6所述數(shù)據(jù)庫(kù)的訪問(wèn)方法,其特征在于,所述方法在對(duì)記帳卡數(shù)據(jù)庫(kù)的數(shù)據(jù)進(jìn)行訪問(wèn)操作前還包括根據(jù)記帳卡卡號(hào)的特征值確定一個(gè)表作為執(zhí)行訪問(wèn)操作的對(duì)象。
9.如權(quán)利要求6所述數(shù)據(jù)庫(kù)的訪問(wèn)方法,其特征在于所述記帳卡卡號(hào)根據(jù)偽隨機(jī)算法生成,具有平均分布的特征值。
10.如權(quán)利要求6所述數(shù)據(jù)庫(kù)的訪問(wèn)方法,其特征在于所述表還包括密碼字段和余額字段,分別用來(lái)存儲(chǔ)記帳卡的密碼和余額。
全文摘要
本發(fā)明公開(kāi)了一種數(shù)據(jù)庫(kù)訪問(wèn)的實(shí)現(xiàn)方法,包括將數(shù)據(jù)庫(kù)中待訪問(wèn)的數(shù)據(jù)從硬盤(pán)鏡像到內(nèi)存中;數(shù)據(jù)庫(kù)訪問(wèn)進(jìn)程通過(guò)內(nèi)存鏡像數(shù)據(jù)進(jìn)行對(duì)所述數(shù)據(jù)的訪問(wèn)操作;根據(jù)內(nèi)存鏡像數(shù)據(jù)的變化進(jìn)行硬盤(pán)數(shù)據(jù)的同步。本發(fā)明能夠在現(xiàn)有的硬件條件下極大地提高訪問(wèn)速度,并且本發(fā)明通過(guò)為內(nèi)存鏡像數(shù)據(jù)設(shè)置寫(xiě)同步區(qū),支持對(duì)數(shù)據(jù)的雙向訪問(wèn),避免了可能的數(shù)據(jù)寫(xiě)操作沖突,實(shí)現(xiàn)了對(duì)內(nèi)存鏡像數(shù)據(jù)的靈活訪問(wèn)。
文檔編號(hào)G06F17/30GK1851711SQ200610058198
公開(kāi)日2006年10月25日 申請(qǐng)日期2006年3月10日 優(yōu)先權(quán)日2006年3月10日
發(fā)明者于洪濤, 衛(wèi)紅權(quán), 趙東升, 郭云飛, 徐靜波 申請(qǐng)人:中國(guó)人民解放軍信息工程大學(xué)
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
龙门县| 渑池县| 镇巴县| 七台河市| 咸丰县| 万山特区| 涪陵区| 佛学| 惠水县| 皋兰县| 营口市| 江川县| 彭州市| 宜兴市| 通化市| 康平县| 甘孜| 邛崃市| 聊城市| 高淳县| 册亨县| 高安市| 汉中市| 丰县| 江陵县| 华宁县| 阿坝县| 称多县| 松江区| 肥东县| 沅陵县| 徐汇区| 共和县| 治县。| 桦南县| 任丘市| 濮阳县| 巫溪县| 监利县| 林西县| 张家港市|