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

數(shù)據(jù)查詢方法和數(shù)據(jù)查詢系統(tǒng)的制作方法

文檔序號(hào):6514566閱讀:257來(lái)源:國(guó)知局
數(shù)據(jù)查詢方法和數(shù)據(jù)查詢系統(tǒng)的制作方法
【專利摘要】本發(fā)明提供了一種數(shù)據(jù)查詢方法和一種數(shù)據(jù)查詢系統(tǒng),其中,該數(shù)據(jù)查詢方法包括:根據(jù)接收到的標(biāo)識(shí)請(qǐng)求指令確定目標(biāo)數(shù)據(jù)標(biāo)識(shí);按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí),并加載到第一存儲(chǔ)區(qū)間,在第一存儲(chǔ)區(qū)間中查詢目標(biāo)數(shù)據(jù)標(biāo)識(shí),若查詢到目標(biāo)數(shù)據(jù)標(biāo)識(shí),則獲取目標(biāo)數(shù)據(jù)標(biāo)識(shí)并返回,并終止按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí);根據(jù)接收到的標(biāo)識(shí)選擇指令,在獲取到的目標(biāo)數(shù)據(jù)標(biāo)識(shí)中進(jìn)行選擇,并查詢與選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)。根據(jù)本申請(qǐng)的技術(shù)方案,能夠根據(jù)用戶需要將文章標(biāo)識(shí)分批加載到緩存中,從而避免在緩存中加載大量數(shù)據(jù)所浪費(fèi)的時(shí)間,以及對(duì)系統(tǒng)性能的影響。
【專利說(shuō)明】數(shù)據(jù)查詢方法和數(shù)據(jù)查詢系統(tǒng)

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)查詢【技術(shù)領(lǐng)域】,具體而言,涉及一種數(shù)據(jù)查詢方法和一種數(shù)據(jù)查詢系統(tǒng)。

【背景技術(shù)】
[0002]對(duì)于一般的應(yīng)用來(lái)講,文章通常是由一部分文字和多張圖片共同構(gòu)成的。在數(shù)據(jù)庫(kù)中文章的基本信息和文字通常是一起存儲(chǔ)在一個(gè)表中,而圖片這種二進(jìn)制的文件則是存在數(shù)據(jù)庫(kù)外部的文件系統(tǒng)中的,數(shù)據(jù)中僅存儲(chǔ)這些圖片的訪問方式。
[0003]對(duì)于上述存儲(chǔ)結(jié)構(gòu),通常,可以在數(shù)據(jù)訪問層先獲取一定數(shù)量的文章的基本信息實(shí)體,然后通過(guò)鏈接每個(gè)實(shí)體的圖片表獲取每個(gè)實(shí)體的所有圖片信息,最后返回所有的完整文章實(shí)體。然而這種邏輯思路并不適合現(xiàn)代互聯(lián)網(wǎng)移動(dòng)應(yīng)用的開發(fā)。因?yàn)槲恼逻@種復(fù)雜的實(shí)體,在數(shù)據(jù)達(dá)到十萬(wàn)條,百萬(wàn)條的時(shí)候,獲取指定數(shù)量的實(shí)體的速度是移動(dòng)物聯(lián)網(wǎng)應(yīng)用用戶不能忍受的,再加上移動(dòng)設(shè)備的網(wǎng)路接入帶寬的限制,速度相應(yīng)將會(huì)更加的緩慢。
[0004]相關(guān)技術(shù)中處理上述問題通常采用如下兩種方式:
[0005]1.在第一次打開應(yīng)用的時(shí)候,應(yīng)用程序通常會(huì)加載所有文章的實(shí)體到緩存當(dāng)中,在下次客戶端請(qǐng)求文章的時(shí)候,在緩存當(dāng)中直接分頁(yè)而快速響應(yīng)請(qǐng)求。
[0006]2.只加載所有文章的ID到緩存當(dāng)中,然后根據(jù)客戶端的請(qǐng)求在緩沖中分頁(yè)獲取一系列的文章ID,最后根據(jù)ID列表獲取其他詳細(xì)信息和圖片信息。
[0007]上述兩種方法在數(shù)據(jù)海量的情況下,都是一種非常緩慢的訪問機(jī)制。如圖1所示,由于需要加載所有文章的實(shí)體,或者加載所有文章的ID到緩存中,當(dāng)在圖片信息表中存在十萬(wàn)條文章,那么圖片表里就可能是成倍的數(shù)據(jù)量,在上百萬(wàn)的數(shù)據(jù)中尋找一條記錄或者若干記錄是一個(gè)耗時(shí)的操作。


【發(fā)明內(nèi)容】

[0008]本發(fā)明正是基于上述問題,提出了一種數(shù)據(jù)查詢技術(shù),能夠根據(jù)用戶需要將文章標(biāo)識(shí)分批加載到緩存中,從而避免在緩存中加載大量數(shù)據(jù)所浪費(fèi)的時(shí)間,以及對(duì)系統(tǒng)性能的影響。
[0009]有鑒于此,本發(fā)明提出了一種數(shù)據(jù)查詢方法,包括:根據(jù)接收到的標(biāo)識(shí)請(qǐng)求指令確定目標(biāo)數(shù)據(jù)標(biāo)識(shí);按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí),并加載到第一存儲(chǔ)區(qū)間,在所述第一存儲(chǔ)區(qū)間中查詢所述目標(biāo)數(shù)據(jù)標(biāo)識(shí),若查詢到所述目標(biāo)數(shù)據(jù)標(biāo)識(shí),則獲取所述目標(biāo)數(shù)據(jù)標(biāo)識(shí)并返回,并終止按照所述預(yù)設(shè)時(shí)間順序逐批從所述數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí);根據(jù)接收到的標(biāo)識(shí)選擇指令,在獲取到的目標(biāo)數(shù)據(jù)標(biāo)識(shí)中進(jìn)行選擇,并查詢與選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)。
[0010]在該技術(shù)方案中,用戶在瀏覽新聞時(shí),網(wǎng)站呈獻(xiàn)給用戶的是多頁(yè)標(biāo)題,用戶可以根據(jù)需要翻頁(yè)確定需要瀏覽的新聞標(biāo)題(即用戶發(fā)出標(biāo)識(shí)請(qǐng)求指令),網(wǎng)站首先從數(shù)據(jù)庫(kù)中獲取一定量的最新新聞的標(biāo)題加載到緩存中,然后在緩存中查詢是否存在用戶所需的新聞標(biāo)題,若不存在,則繼續(xù)在數(shù)據(jù)庫(kù)中獲取上(相對(duì)于最新新聞)一個(gè)時(shí)間段的一定量的新聞加載到緩存中,并再次從緩存中查詢是否存在用戶所需的新聞標(biāo)題,依此類推,支持查詢到用戶所需的新聞標(biāo)題位置。由于一般情況下,絕大多數(shù)用戶想看的新聞都是趨于最新的幾條新聞,因此在緩存中只需加載最新的部分新聞標(biāo)題就可以滿足絕大多數(shù)用戶的需求,而且,在用戶需要瀏覽較長(zhǎng)時(shí)間之前的新聞時(shí),也可以從數(shù)據(jù)庫(kù)中提取相應(yīng)的新聞標(biāo)題給用戶,從而也滿足了有特殊需要的用戶的需求。同時(shí),由于在緩存中每次只加載部分新聞標(biāo)識(shí),極大程度上緩解了緩存的壓力,提高了新聞標(biāo)識(shí)的讀取速度和加載速度。
[0011]在上述技術(shù)方案中,優(yōu)選地,按照所述預(yù)設(shè)時(shí)間順序逐批從所述數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)的步驟包括:獲取所述數(shù)據(jù)庫(kù)中每個(gè)數(shù)據(jù)標(biāo)識(shí)的寫入時(shí)間中的最遠(yuǎn)寫入時(shí)間和最近寫入時(shí)間,從所述最近寫入時(shí)間所對(duì)應(yīng)的數(shù)據(jù)標(biāo)識(shí)到所述最遠(yuǎn)寫入時(shí)間所對(duì)應(yīng)的數(shù)據(jù)標(biāo)識(shí),逐批獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)。
[0012]在該技術(shù)方案中,每次獲取一定量的新聞標(biāo)識(shí),可以按照時(shí)間從最新的新聞標(biāo)題向舊的新聞標(biāo)題獲取,從而提高用戶查詢新聞標(biāo)題的命中率。
[0013]在上述技術(shù)方案中,優(yōu)選地,在按所述照預(yù)設(shè)時(shí)間順序逐批從所述數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)時(shí),在所述數(shù)據(jù)庫(kù)中查詢所述預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù),并將所述預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù)加載至第二存儲(chǔ)區(qū)間。
[0014]在該技術(shù)方案中,在從數(shù)據(jù)庫(kù)中提取新聞標(biāo)識(shí)時(shí),同時(shí)還可以提取新聞標(biāo)識(shí)所對(duì)應(yīng)的實(shí)體內(nèi)容,并將其加載到另一個(gè)緩存中,從而避免了提取實(shí)體內(nèi)容和提取標(biāo)題時(shí)可能產(chǎn)生的干擾。
[0015]在上述技術(shù)方案中,優(yōu)選地,在獲取到目標(biāo)數(shù)據(jù)標(biāo)識(shí)后,還包括:根據(jù)獲取到的目標(biāo)數(shù)據(jù)標(biāo)識(shí)中的每個(gè)數(shù)據(jù)標(biāo)識(shí),在所述第二存儲(chǔ)區(qū)間中查詢與所述每個(gè)目標(biāo)數(shù)據(jù)標(biāo)識(shí)分別對(duì)應(yīng)的數(shù)據(jù),并將查詢到的數(shù)據(jù)加載至待用列表中,以及,將未查詢到對(duì)應(yīng)的數(shù)據(jù)的數(shù)據(jù)標(biāo)識(shí)存儲(chǔ)至預(yù)設(shè)列表;根據(jù)所述預(yù)設(shè)列表中的每個(gè)數(shù)據(jù)標(biāo)識(shí),從所述數(shù)據(jù)庫(kù)中提取與所述預(yù)設(shè)列表中的每個(gè)數(shù)據(jù)標(biāo)識(shí)分別對(duì)應(yīng)的數(shù)據(jù),并將提取出的數(shù)據(jù)加載至所述待用列表中;則在接收到所述標(biāo)識(shí)選擇指令時(shí),從所述待用列表中查詢與所述選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)。
[0016]在該技術(shù)方案中,對(duì)于未查詢到對(duì)應(yīng)數(shù)據(jù)的標(biāo)識(shí),可以統(tǒng)一存儲(chǔ)在一個(gè)列表中,待將可以查詢到對(duì)應(yīng)數(shù)據(jù)的標(biāo)識(shí)處理完畢后,再根據(jù)列表中的標(biāo)識(shí)從數(shù)據(jù)庫(kù)中一次性提取對(duì)應(yīng)數(shù)據(jù),而無(wú)需每遇到一個(gè)在另一緩存中查詢不到對(duì)應(yīng)數(shù)據(jù)的標(biāo)識(shí)就返回?cái)?shù)據(jù)庫(kù)提取相應(yīng)的數(shù)據(jù),提高了數(shù)據(jù)查詢和提取的效率。
[0017]在上述任一技術(shù)方案中,優(yōu)選地,在按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)時(shí),判斷所述預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù)中是否存在圖片,若存在,則獲取所述圖片的屬性信息,根據(jù)所述屬性信息將所述圖片存儲(chǔ)至預(yù)設(shè)文件,并在所述對(duì)應(yīng)的數(shù)據(jù)中保留所述屬性信息;以及在查詢到與所述選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)后,判斷與所述選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)中否存在圖片的屬性信息,若存在,則根據(jù)所述屬性信息從所述預(yù)設(shè)文件中獲取圖片,并添加至與所述選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)中。
[0018]在該技術(shù)方案中,在從數(shù)據(jù)庫(kù)中提取新聞標(biāo)題的過(guò)程中,若標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù)中包含有圖片,則可以根據(jù)圖片的屬性信息將圖片存儲(chǔ)在指定的文件中,同時(shí)將圖片的屬性信息保留在對(duì)應(yīng)的數(shù)據(jù)中。當(dāng)用戶選中某個(gè)新聞標(biāo)題時(shí),若該新聞標(biāo)題所對(duì)應(yīng)的數(shù)據(jù)中包含有圖片的屬性信息,就可以直接根據(jù)該屬性信息所構(gòu)成的路徑在指定文件中獲取到相應(yīng)的圖片,降低了通過(guò)鏈接的方式存儲(chǔ)圖片,而在提取圖片時(shí)解析鏈接所消耗的時(shí)間。
[0019]本申請(qǐng)還提出了一種數(shù)據(jù)查詢系統(tǒng),包括:標(biāo)識(shí)確定單元,用于根據(jù)接收到的標(biāo)識(shí)請(qǐng)求指令確定目標(biāo)數(shù)據(jù)標(biāo)識(shí);加載單元,按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí),并加載到第一存儲(chǔ)區(qū)間;標(biāo)識(shí)查詢單元,用于在所述第一存儲(chǔ)區(qū)間中查詢所述目標(biāo)數(shù)據(jù)標(biāo)識(shí),若查詢到所述目標(biāo)數(shù)據(jù)標(biāo)識(shí),則獲取所述目標(biāo)數(shù)據(jù)標(biāo)識(shí)并返回,并終止所述加載單元按照所述預(yù)設(shè)時(shí)間順序逐批從所述數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí);數(shù)據(jù)查詢單元,用于根據(jù)接收到的標(biāo)識(shí)選擇指令,在獲取到的目標(biāo)數(shù)據(jù)標(biāo)識(shí)中進(jìn)行選擇,并查詢與選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)。
[0020]在該技術(shù)方案中,用戶在瀏覽新聞時(shí),網(wǎng)站呈獻(xiàn)給用戶的是多頁(yè)標(biāo)題,用戶可以根據(jù)需要翻頁(yè)確定需要瀏覽的新聞標(biāo)題(即用戶發(fā)出標(biāo)識(shí)請(qǐng)求指令),網(wǎng)站首先從數(shù)據(jù)庫(kù)中獲取一定量的最新新聞的標(biāo)題加載到緩存中,然后在緩存中查詢是否存在用戶所需的新聞標(biāo)題,若不存在,則繼續(xù)在數(shù)據(jù)庫(kù)中獲取上(相對(duì)于最新新聞)一個(gè)時(shí)間段的一定量的新聞加載到緩存中,并再次從緩存中查詢是否存在用戶所需的新聞標(biāo)題,依此類推,支持查詢到用戶所需的新聞標(biāo)題位置。由于一般情況下,絕大多數(shù)用戶想看的新聞都是趨于最新的幾條新聞,因此在緩存中只需加載最新的部分新聞標(biāo)題就可以滿足絕大多數(shù)用戶的需求,而且,在用戶需要瀏覽較長(zhǎng)時(shí)間之前的新聞時(shí),也可以從數(shù)據(jù)庫(kù)中提取相應(yīng)的新聞標(biāo)題給用戶,從而也滿足了有特殊需要的用戶的需求。同時(shí),由于在緩存中每次只加載部分新聞標(biāo)識(shí),極大程度上緩解了緩存的壓力,提高了新聞標(biāo)識(shí)的讀取速度和加載速度。
[0021 ] 在上述技術(shù)方案中,優(yōu)選地,所述加載單元包括:時(shí)間獲取單元,用于獲取所述數(shù)據(jù)庫(kù)中每個(gè)數(shù)據(jù)標(biāo)識(shí)的寫入時(shí)間中的最遠(yuǎn)寫入時(shí)間和最近寫入時(shí)間;標(biāo)識(shí)獲取單元,用于從所述最近寫入時(shí)間所對(duì)應(yīng)的數(shù)據(jù)標(biāo)識(shí)到所述最遠(yuǎn)寫入時(shí)間所對(duì)應(yīng)的數(shù)據(jù)標(biāo)識(shí),逐批獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)。
[0022]在該技術(shù)方案中,每次獲取一定量的新聞標(biāo)識(shí),可以按照時(shí)間從最新的新聞標(biāo)題向舊的新聞標(biāo)題獲取,從而提高用戶查詢新聞標(biāo)題的命中率。
[0023]在上述技術(shù)方案中,優(yōu)選地,所述加載單元還用于,在按所述照預(yù)設(shè)時(shí)間順序逐批從所述數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)時(shí),在所述數(shù)據(jù)庫(kù)中查詢所述預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù),并將所述預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù)加載至第二存儲(chǔ)區(qū)間。
[0024]在該技術(shù)方案中,在從數(shù)據(jù)庫(kù)中提取新聞標(biāo)識(shí)時(shí),同時(shí)還可以提取新聞標(biāo)識(shí)所對(duì)應(yīng)的實(shí)體內(nèi)容,并將其加載到另一個(gè)緩存中,從而避免了提取實(shí)體內(nèi)容和提取標(biāo)題時(shí)可能產(chǎn)生的干擾。
[0025]在上述技術(shù)方案中,優(yōu)選地,還包括:提取單元,其中,所述數(shù)據(jù)查詢單元還用于根據(jù)獲取到的目標(biāo)數(shù)據(jù)標(biāo)識(shí)中的每個(gè)數(shù)據(jù)標(biāo)識(shí),在所述第二存儲(chǔ)區(qū)間中查詢與所述每個(gè)目標(biāo)數(shù)據(jù)標(biāo)識(shí)分別對(duì)應(yīng)的數(shù)據(jù);所述加載單元還用于將查詢到的數(shù)據(jù)加載至待用列表中,以及,將未查詢到對(duì)應(yīng)的數(shù)據(jù)的數(shù)據(jù)標(biāo)識(shí)存儲(chǔ)至預(yù)設(shè)列表;所述提取單元用于根據(jù)所述預(yù)設(shè)列表中的每個(gè)數(shù)據(jù)標(biāo)識(shí),從所述數(shù)據(jù)庫(kù)中提取與所述預(yù)設(shè)列表中的每個(gè)數(shù)據(jù)標(biāo)識(shí)分別對(duì)應(yīng)的數(shù)據(jù),并將提取出的數(shù)據(jù)加載至所述待用列表中;以及所述數(shù)據(jù)查詢單元在接收到所述標(biāo)識(shí)選擇指令時(shí),從所述待用列表中查詢與所述選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)。
[0026]在該技術(shù)方案中,對(duì)于未查詢到對(duì)應(yīng)數(shù)據(jù)的標(biāo)識(shí),可以統(tǒng)一存儲(chǔ)在一個(gè)列表中,待將可以查詢到對(duì)應(yīng)數(shù)據(jù)的標(biāo)識(shí)處理完畢后,再根據(jù)列表中的標(biāo)識(shí)從數(shù)據(jù)庫(kù)中一次性提取對(duì)應(yīng)數(shù)據(jù),而無(wú)需每遇到一個(gè)在另一緩存中查詢不到對(duì)應(yīng)數(shù)據(jù)的標(biāo)識(shí)就返回?cái)?shù)據(jù)庫(kù)提取相應(yīng)的數(shù)據(jù),提高了數(shù)據(jù)查詢和提取的效率。
[0027]在上述技術(shù)方案中,優(yōu)選地,還包括:圖片存儲(chǔ)單元,在所述加載單元按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)時(shí),判斷所述預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù)中是否存在圖片,若存在,則獲取所述圖片的屬性信息,根據(jù)所述屬性信息將所述圖片存儲(chǔ)至預(yù)設(shè)文件,并在所述對(duì)應(yīng)的數(shù)據(jù)中保留所述屬性信息;判斷單元,用于在所述數(shù)據(jù)查詢單元在查詢到與所述選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)后,判斷與所述選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)中否存在圖片的屬性信息,若存在,則根據(jù)所述屬性信息從所述預(yù)設(shè)文件中獲取圖片,并添加至與所述選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)中。
[0028]在該技術(shù)方案中,在從數(shù)據(jù)庫(kù)中提取新聞標(biāo)題的過(guò)程中,若標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù)中包含有圖片,則可以根據(jù)圖片的屬性信息將圖片存儲(chǔ)在指定的文件中,同時(shí)將圖片的屬性信息保留在對(duì)應(yīng)的數(shù)據(jù)中。當(dāng)用戶選中某個(gè)新聞標(biāo)題時(shí),若該新聞標(biāo)題所對(duì)應(yīng)的數(shù)據(jù)中包含有圖片的屬性信息,就可以直接根據(jù)該屬性信息所構(gòu)成的路徑在指定文件中獲取到相應(yīng)的圖片,降低了通過(guò)鏈接的方式存儲(chǔ)圖片,而在提取圖片時(shí)解析鏈接所消耗的時(shí)間。
[0029]通過(guò)以上技術(shù)方案,可以根據(jù)用戶需要將文章標(biāo)識(shí)分批加載到緩存中,從而避免在緩存中加載大量數(shù)據(jù)所浪費(fèi)的時(shí)間,以及對(duì)系統(tǒng)性能的影響。

【專利附圖】

【附圖說(shuō)明】
[0030]圖1示出了相關(guān)技術(shù)中存儲(chǔ)數(shù)據(jù)的示意圖;
[0031]圖2示出了根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)查詢方法的示意流程圖;
[0032]圖3示出了根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)查詢系統(tǒng)的示意框圖;
[0033]圖4示出了根據(jù)本發(fā)明的實(shí)施例的存儲(chǔ)數(shù)據(jù)的示意圖;
[0034]圖5示出了根據(jù)本發(fā)明的實(shí)施例的存儲(chǔ)圖片的示意圖。

【具體實(shí)施方式】
[0035]為了能夠更清楚地理解本發(fā)明的上述目的、特征和優(yōu)點(diǎn),下面結(jié)合附圖和【具體實(shí)施方式】對(duì)本發(fā)明進(jìn)行進(jìn)一步的詳細(xì)描述。需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)的實(shí)施例及實(shí)施例中的特征可以相互組合。
[0036]在下面的描述中闡述了很多具體細(xì)節(jié)以便于充分理解本發(fā)明,但是,本發(fā)明還可以采用其他不同于在此描述的其他方式來(lái)實(shí)施,因此,本發(fā)明的保護(hù)范圍并不受下面公開的具體實(shí)施例的限制。
[0037]圖2示出了根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)查詢方法的示意流程圖。
[0038]如圖2所示,根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)查詢方法包括:步驟102,根據(jù)接收到的標(biāo)識(shí)請(qǐng)求指令確定目標(biāo)數(shù)據(jù)標(biāo)識(shí);步驟104,按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí),并加載到第一存儲(chǔ)區(qū)間,在第一存儲(chǔ)區(qū)間中查詢目標(biāo)數(shù)據(jù)標(biāo)識(shí),若查詢到目標(biāo)數(shù)據(jù)標(biāo)識(shí),則獲取目標(biāo)數(shù)據(jù)標(biāo)識(shí)并返回,并終止按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí);步驟106,根據(jù)接收到的標(biāo)識(shí)選擇指令,在獲取到的目標(biāo)數(shù)據(jù)標(biāo)識(shí)中進(jìn)行選擇,并查詢與選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)。
[0039]用戶在瀏覽新聞時(shí),網(wǎng)站呈獻(xiàn)給用戶的是多頁(yè)標(biāo)題,用戶可以根據(jù)需要翻頁(yè)確定需要瀏覽的新聞標(biāo)題(即用戶發(fā)出標(biāo)識(shí)請(qǐng)求指令),網(wǎng)站首先從數(shù)據(jù)庫(kù)中獲取一定量的最新新聞的標(biāo)題加載到緩存中,然后在緩存中查詢是否存在用戶所需的新聞標(biāo)題,若不存在,則繼續(xù)在數(shù)據(jù)庫(kù)中獲取上(相對(duì)于最新新聞)一個(gè)時(shí)間段的一定量的新聞加載到緩存中,并再次從緩存中查詢是否存在用戶所需的新聞標(biāo)題,依此類推,支持查詢到用戶所需的新聞標(biāo)題位置。由于一般情況下,絕大多數(shù)用戶想看的新聞都是趨于最新的幾條新聞,因此在緩存中只需加載最新的部分新聞標(biāo)題就可以滿足絕大多數(shù)用戶的需求,而且,在用戶需要瀏覽較長(zhǎng)時(shí)間之前的新聞時(shí),也可以從數(shù)據(jù)庫(kù)中提取相應(yīng)的新聞標(biāo)題給用戶,從而也滿足了有特殊需要的用戶的需求。同時(shí),由于在緩存中每次只加載部分新聞標(biāo)識(shí),極大程度上緩解了緩存的壓力,提高了新聞標(biāo)識(shí)的讀取速度和加載速度。
[0040]優(yōu)選地,步驟104包括:獲取數(shù)據(jù)庫(kù)中每個(gè)數(shù)據(jù)標(biāo)識(shí)的寫入時(shí)間中的最遠(yuǎn)寫入時(shí)間和最近寫入時(shí)間,從最近寫入時(shí)間所對(duì)應(yīng)的數(shù)據(jù)標(biāo)識(shí)到最遠(yuǎn)寫入時(shí)間所對(duì)應(yīng)的數(shù)據(jù)標(biāo)識(shí),逐批獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)。
[0041]每次獲取一定量的新聞標(biāo)識(shí),可以按照時(shí)間從最新的新聞標(biāo)題向舊的新聞標(biāo)題獲取,從而提聞?dòng)脩舨樵冃侣剺?biāo)題的命中率。
[0042]優(yōu)選地,在按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)時(shí),在數(shù)據(jù)庫(kù)中查詢預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù),并將預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù)加載至第二存儲(chǔ)區(qū)間。
[0043]在從數(shù)據(jù)庫(kù)中提取新聞標(biāo)識(shí)時(shí),同時(shí)還可以提取新聞標(biāo)識(shí)所對(duì)應(yīng)的實(shí)體內(nèi)容,并將其加載到另一個(gè)緩存中,從而避免了提取實(shí)體內(nèi)容和提取標(biāo)題時(shí)可能產(chǎn)生的干擾。
[0044]優(yōu)選地,在獲取到目標(biāo)數(shù)據(jù)標(biāo)識(shí)后,還包括:根據(jù)獲取到的目標(biāo)數(shù)據(jù)標(biāo)識(shí)中的每個(gè)數(shù)據(jù)標(biāo)識(shí),在第二存儲(chǔ)區(qū)間中查詢與每個(gè)目標(biāo)數(shù)據(jù)標(biāo)識(shí)分別對(duì)應(yīng)的數(shù)據(jù),并將查詢到的數(shù)據(jù)加載至待用列表中,以及,將未查詢到對(duì)應(yīng)的數(shù)據(jù)的數(shù)據(jù)標(biāo)識(shí)存儲(chǔ)至預(yù)設(shè)列表;根據(jù)預(yù)設(shè)列表中的每個(gè)數(shù)據(jù)標(biāo)識(shí),從數(shù)據(jù)庫(kù)中提取與預(yù)設(shè)列表中的每個(gè)數(shù)據(jù)標(biāo)識(shí)分別對(duì)應(yīng)的數(shù)據(jù),并將提取出的數(shù)據(jù)加載至待用列表中;則在接收到標(biāo)識(shí)選擇指令時(shí),從待用列表中查詢與選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)。
[0045]對(duì)于未查詢到對(duì)應(yīng)數(shù)據(jù)的標(biāo)識(shí),可以統(tǒng)一存儲(chǔ)在一個(gè)列表中,待將可以查詢到對(duì)應(yīng)數(shù)據(jù)的標(biāo)識(shí)處理完畢后,再根據(jù)列表中的標(biāo)識(shí)從數(shù)據(jù)庫(kù)中一次性提取對(duì)應(yīng)數(shù)據(jù),而無(wú)需每遇到一個(gè)在另一緩存中查詢不到對(duì)應(yīng)數(shù)據(jù)的標(biāo)識(shí)就返回?cái)?shù)據(jù)庫(kù)提取相應(yīng)的數(shù)據(jù),提高了數(shù)據(jù)查詢和提取的效率。
[0046]優(yōu)選地,在按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)時(shí),判斷預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù)中是否存在圖片,若存在,則獲取圖片的屬性信息,根據(jù)屬性信息將圖片存儲(chǔ)至預(yù)設(shè)文件,并在對(duì)應(yīng)的數(shù)據(jù)中保留屬性信息;以及在查詢到與選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)后,判斷與選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)中否存在圖片的屬性信息,若存在,則根據(jù)屬性信息從預(yù)設(shè)文件中獲取圖片,并添加至與選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)中。
[0047]在從數(shù)據(jù)庫(kù)中提取新聞標(biāo)題的過(guò)程中,若標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù)中包含有圖片,則可以根據(jù)圖片的屬性信息將圖片存儲(chǔ)在指定的文件中,同時(shí)將圖片的屬性信息保留在對(duì)應(yīng)的數(shù)據(jù)中。當(dāng)用戶選中某個(gè)新聞標(biāo)題時(shí),若該新聞標(biāo)題所對(duì)應(yīng)的數(shù)據(jù)中包含有圖片的屬性信息,就可以直接根據(jù)該屬性信息所構(gòu)成的路徑在指定文件中獲取到相應(yīng)的圖片,降低了通過(guò)鏈接的方式存儲(chǔ)圖片,而在提取圖片時(shí)解析鏈接所消耗的時(shí)間。
[0048]圖3示出了根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)查詢系統(tǒng)的示意框圖。
[0049]如圖3所示,根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)查詢系統(tǒng)200包括:標(biāo)識(shí)確定單元202,用于根據(jù)接收到的標(biāo)識(shí)請(qǐng)求指令確定目標(biāo)數(shù)據(jù)標(biāo)識(shí);加載單元204,按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí),并加載到第一存儲(chǔ)區(qū)間;標(biāo)識(shí)查詢單元206,用于在第一存儲(chǔ)區(qū)間中查詢目標(biāo)數(shù)據(jù)標(biāo)識(shí),若查詢到目標(biāo)數(shù)據(jù)標(biāo)識(shí),則獲取目標(biāo)數(shù)據(jù)標(biāo)識(shí)并返回,并終止加載單元204按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí);數(shù)據(jù)查詢單元208,用于根據(jù)接收到的標(biāo)識(shí)選擇指令,在獲取到的目標(biāo)數(shù)據(jù)標(biāo)識(shí)中進(jìn)行選擇,并查詢與選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)。
[0050]用戶在瀏覽新聞時(shí),網(wǎng)站呈獻(xiàn)給用戶的是多頁(yè)標(biāo)題,用戶可以根據(jù)需要翻頁(yè)確定需要瀏覽的新聞標(biāo)題(即用戶發(fā)出標(biāo)識(shí)請(qǐng)求指令),網(wǎng)站首先從數(shù)據(jù)庫(kù)中獲取一定量的最新新聞的標(biāo)題加載到緩存中,然后在緩存中查詢是否存在用戶所需的新聞標(biāo)題,若不存在,則繼續(xù)在數(shù)據(jù)庫(kù)中獲取上(相對(duì)于最新新聞)一個(gè)時(shí)間段的一定量的新聞加載到緩存中,并再次從緩存中查詢是否存在用戶所需的新聞標(biāo)題,依此類推,支持查詢到用戶所需的新聞標(biāo)題位置。由于一般情況下,絕大多數(shù)用戶想看的新聞都是趨于最新的幾條新聞,因此在緩存中只需加載最新的部分新聞標(biāo)題就可以滿足絕大多數(shù)用戶的需求,而且,在用戶需要瀏覽較長(zhǎng)時(shí)間之前的新聞時(shí),也可以從數(shù)據(jù)庫(kù)中提取相應(yīng)的新聞標(biāo)題給用戶,從而也滿足了有特殊需要的用戶的需求。同時(shí),由于在緩存中每次只加載部分新聞標(biāo)識(shí),極大程度上緩解了緩存的壓力,提高了新聞標(biāo)識(shí)的讀取速度和加載速度。
[0051]優(yōu)選地,加載單元204包括:時(shí)間獲取單元2042,用于獲取數(shù)據(jù)庫(kù)中每個(gè)數(shù)據(jù)標(biāo)識(shí)的寫入時(shí)間中的最遠(yuǎn)寫入時(shí)間和最近寫入時(shí)間;標(biāo)識(shí)獲取單元2044,用于從最近寫入時(shí)間所對(duì)應(yīng)的數(shù)據(jù)標(biāo)識(shí)到最遠(yuǎn)寫入時(shí)間所對(duì)應(yīng)的數(shù)據(jù)標(biāo)識(shí),逐批獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)。
[0052]每次獲取一定量的新聞標(biāo)識(shí),可以按照時(shí)間從最新的新聞標(biāo)題向舊的新聞標(biāo)題獲取,從而提聞?dòng)脩舨樵冃侣剺?biāo)題的命中率。
[0053]優(yōu)選地,加載單元204還用于,在按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)時(shí),在數(shù)據(jù)庫(kù)中查詢預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù),并將預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù)加載至第二存儲(chǔ)區(qū)間。
[0054]在從數(shù)據(jù)庫(kù)中提取新聞標(biāo)識(shí)時(shí),同時(shí)還可以提取新聞標(biāo)識(shí)所對(duì)應(yīng)的實(shí)體內(nèi)容,并將其加載到另一個(gè)緩存中,從而避免了提取實(shí)體內(nèi)容和提取標(biāo)題時(shí)可能產(chǎn)生的干擾。
[0055]優(yōu)選地,還包括:提取單元210,其中,數(shù)據(jù)查詢單元208還用于根據(jù)獲取到的目標(biāo)數(shù)據(jù)標(biāo)識(shí)中的每個(gè)數(shù)據(jù)標(biāo)識(shí),在第二存儲(chǔ)區(qū)間中查詢與每個(gè)目標(biāo)數(shù)據(jù)標(biāo)識(shí)分別對(duì)應(yīng)的數(shù)據(jù);加載單元204還用于將查詢到的數(shù)據(jù)加載至待用列表中,以及,將未查詢到對(duì)應(yīng)的數(shù)據(jù)的數(shù)據(jù)標(biāo)識(shí)存儲(chǔ)至預(yù)設(shè)列表;提取單元210用于根據(jù)預(yù)設(shè)列表中的每個(gè)數(shù)據(jù)標(biāo)識(shí),從數(shù)據(jù)庫(kù)中提取與預(yù)設(shè)列表中的每個(gè)數(shù)據(jù)標(biāo)識(shí)分別對(duì)應(yīng)的數(shù)據(jù),并將提取出的數(shù)據(jù)加載至待用列表中;以及數(shù)據(jù)查詢單元208在接收到標(biāo)識(shí)選擇指令時(shí),從待用列表中查詢與選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)。
[0056]對(duì)于未查詢到對(duì)應(yīng)數(shù)據(jù)的標(biāo)識(shí),可以統(tǒng)一存儲(chǔ)在一個(gè)列表中,待將可以查詢到對(duì)應(yīng)數(shù)據(jù)的標(biāo)識(shí)處理完畢后,再根據(jù)列表中的標(biāo)識(shí)從數(shù)據(jù)庫(kù)中一次性提取對(duì)應(yīng)數(shù)據(jù),而無(wú)需每遇到一個(gè)在另一緩存中查詢不到對(duì)應(yīng)數(shù)據(jù)的標(biāo)識(shí)就返回?cái)?shù)據(jù)庫(kù)提取相應(yīng)的數(shù)據(jù),提高了數(shù)據(jù)查詢和提取的效率。
[0057]優(yōu)選地,還包括:圖片存儲(chǔ)單元212,在加載單元204按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)時(shí),判斷預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù)中是否存在圖片,若存在,則獲取圖片的屬性信息,根據(jù)屬性信息將圖片存儲(chǔ)至預(yù)設(shè)文件,并在對(duì)應(yīng)的數(shù)據(jù)中保留屬性信息;判斷單元214,用于在數(shù)據(jù)查詢單元208在查詢到與選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)后,判斷與選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)中否存在圖片的屬性信息,若存在,則根據(jù)屬性信息從預(yù)設(shè)文件中獲取圖片,并添加至與選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)中。
[0058]在從數(shù)據(jù)庫(kù)中提取新聞標(biāo)題的過(guò)程中,若標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù)中包含有圖片,則可以根據(jù)圖片的屬性信息將圖片存儲(chǔ)在指定的文件中,同時(shí)將圖片的屬性信息保留在對(duì)應(yīng)的數(shù)據(jù)中。當(dāng)用戶選中某個(gè)新聞標(biāo)題時(shí),若該新聞標(biāo)題所對(duì)應(yīng)的數(shù)據(jù)中包含有圖片的屬性信息,就可以直接根據(jù)該屬性信息所構(gòu)成的路徑在指定文件中獲取到相應(yīng)的圖片,降低了通過(guò)鏈接的方式存儲(chǔ)圖片,而在提取圖片時(shí)解析鏈接所消耗的時(shí)間。
[0059]需要說(shuō)明的是,上述第一存儲(chǔ)區(qū)間和第二存儲(chǔ)區(qū)間,除了包括緩存,還可以是其他類型的存儲(chǔ)區(qū)間,比如R0M,閃存等。并且,上述數(shù)據(jù)標(biāo)識(shí)除了包括新聞標(biāo)題,還可以包括各種其他類型的數(shù)據(jù)標(biāo)識(shí),比如文章的標(biāo)題,書籍中每個(gè)章節(jié)的標(biāo)題等。
[0060]圖4示出了根據(jù)本發(fā)明的實(shí)施例的存儲(chǔ)數(shù)據(jù)的示意圖。
[0061]如圖4所示,在用戶第一次打開應(yīng)用時(shí),比如打開具有如圖2所示的數(shù)據(jù)查詢系統(tǒng)200網(wǎng)站時(shí),網(wǎng)站可以分析用戶的終端的屏幕信息,比如該用戶使用手機(jī),對(duì)于字號(hào)為11的新聞標(biāo)識(shí)最多能容納20個(gè),那么網(wǎng)站可以從數(shù)據(jù)庫(kù)中獲取100個(gè)新聞標(biāo)識(shí),并加載到存儲(chǔ)區(qū)間中,然后從存儲(chǔ)區(qū)間中獲取最新的20個(gè)新聞標(biāo)識(shí)展現(xiàn)給用戶,用戶可以根據(jù)需要向后翻頁(yè),比如用戶需要瀏覽第三頁(yè)新聞標(biāo)識(shí),即第41至第60個(gè)新聞標(biāo)識(shí),那么網(wǎng)站可以快速?gòu)拇鎯?chǔ)區(qū)間中提取出第41至第60新聞標(biāo)識(shí)展現(xiàn)給用戶。對(duì)于用戶在前5頁(yè)的翻頁(yè)操作,網(wǎng)站都可以從存儲(chǔ)區(qū)間中快速提取出相應(yīng)的新聞標(biāo)識(shí)展現(xiàn)給用戶。
[0062]而在用戶查詢第5頁(yè)之后的新聞標(biāo)識(shí)時(shí),比如查詢第12頁(yè)的新聞標(biāo)識(shí),那么網(wǎng)站可以從數(shù)據(jù)庫(kù)中提取與上述100個(gè)新聞標(biāo)識(shí)寫入數(shù)據(jù)庫(kù)的時(shí)間相鄰,且寫入數(shù)據(jù)庫(kù)的時(shí)間早于上述100個(gè)新聞標(biāo)識(shí)的另外100個(gè)新聞標(biāo)識(shí)。比如最新的新聞標(biāo)識(shí)序號(hào)為1,那么網(wǎng)站最初僅加載序號(hào)從I到100的新聞標(biāo)識(shí)到存儲(chǔ)區(qū)間中,當(dāng)用戶查詢第12頁(yè)的新聞標(biāo)識(shí)時(shí),就可以從數(shù)據(jù)庫(kù)中提取序號(hào)從101到200的新聞標(biāo)識(shí),加載到存儲(chǔ)區(qū)間中,由于第12也的新聞標(biāo)識(shí)對(duì)應(yīng)于序號(hào)從221至240的新聞標(biāo)識(shí),在序號(hào)從101到200的新聞標(biāo)識(shí)中無(wú)法查詢到相應(yīng)的新聞標(biāo)識(shí),則繼續(xù)在數(shù)據(jù)庫(kù)中提取序號(hào)從201至300的數(shù)據(jù)標(biāo)識(shí),并加載到存儲(chǔ)區(qū)間中,則可以在存儲(chǔ)區(qū)間中查詢出用戶所需的數(shù)據(jù)標(biāo)識(shí)。
[0063]由于一般情況下,大多數(shù)用戶僅對(duì)最新(即距離當(dāng)前時(shí)間點(diǎn)最近)的新聞感興趣,若將數(shù)據(jù)庫(kù)中的所有新聞標(biāo)識(shí)都加載到存儲(chǔ)區(qū)間中,對(duì)于存儲(chǔ)區(qū)間中的新聞標(biāo)識(shí),用戶可能只會(huì)查閱極少的一部分,從而對(duì)存儲(chǔ)區(qū)間資源造成了極大地浪費(fèi)。因此可以僅加載最新的若干個(gè)新聞標(biāo)識(shí)到存儲(chǔ)區(qū)間中,而無(wú)需將數(shù)據(jù)庫(kù)中的所有新聞標(biāo)識(shí)都加載到存儲(chǔ)區(qū)間中,一方面滿足大多數(shù)用戶的需求,提高用戶通過(guò)終端查詢新聞標(biāo)識(shí),另一方面可以避免網(wǎng)站的存儲(chǔ)區(qū)間資源被過(guò)多的占用。
[0064]即存儲(chǔ)區(qū)間的大小是根據(jù)需要?jiǎng)討B(tài)變化的。X代表存儲(chǔ)區(qū)間每次增加的步長(zhǎng),X根據(jù)分頁(yè)中頁(yè)面大小取合適的數(shù)據(jù),一般不應(yīng)太大。這種動(dòng)態(tài)大小的存儲(chǔ)區(qū)間可以有效的保證對(duì)客戶端請(qǐng)求的快速相應(yīng),并且它可以保證速度不受數(shù)據(jù)總量的增加帶來(lái)的影響,適合應(yīng)用的長(zhǎng)期發(fā)展。另一方面,對(duì)于步驟A中的存儲(chǔ)區(qū)間大小X的取值,需要保證X條數(shù)據(jù)的存儲(chǔ)區(qū)間能夠滿足大多數(shù)情況下客戶端的需求,減少請(qǐng)求數(shù)據(jù)庫(kù)增加存儲(chǔ)區(qū)間大小的次數(shù)。
[0065]在將新聞標(biāo)識(shí)加載到存儲(chǔ)區(qū)間中時(shí),還可以將每個(gè)新聞標(biāo)識(shí)對(duì)應(yīng)的文章實(shí)體加載到另一個(gè)存儲(chǔ)區(qū)間(即第二存儲(chǔ)區(qū)間)中,從而在查詢到用戶所需的新聞標(biāo)識(shí)后,可以將這些標(biāo)識(shí)所對(duì)應(yīng)的文章實(shí)體從另一個(gè)存儲(chǔ)區(qū)間提取到已知文章列表中待用,當(dāng)用戶選中某個(gè)新聞標(biāo)識(shí)時(shí),就可以從另一個(gè)存儲(chǔ)區(qū)間中快速提取出選中的標(biāo)識(shí)對(duì)應(yīng)的文章實(shí)體展現(xiàn)給用戶,由于文章實(shí)體加載在另一個(gè)存儲(chǔ)區(qū)間中,避免了在提取標(biāo)識(shí)和實(shí)體時(shí)可能產(chǎn)生的干擾。
[0066]在根據(jù)數(shù)據(jù)標(biāo)識(shí)查詢對(duì)應(yīng)的數(shù)據(jù)(實(shí)體)時(shí),可能能夠查詢到,也可能查詢不到,對(duì)于無(wú)法查詢對(duì)應(yīng)的數(shù)據(jù)的標(biāo)識(shí),可以將其存儲(chǔ)至未知文章ID列表(即預(yù)設(shè)列表)中,然后再處理完所有的數(shù)據(jù)標(biāo)識(shí)后,所有無(wú)法查詢到對(duì)應(yīng)的數(shù)據(jù)的數(shù)據(jù)標(biāo)識(shí)就都存儲(chǔ)在未知文章ID列表中,進(jìn)而再根據(jù)列表中的數(shù)據(jù)標(biāo)識(shí)統(tǒng)一從數(shù)據(jù)庫(kù)中提取對(duì)應(yīng)的數(shù)據(jù),避免了循環(huán)查詢的每一個(gè)未知文章ID來(lái)從數(shù)據(jù)庫(kù)中提取文章實(shí)體,而是通過(guò)一個(gè)未知文章ID列表一次性查詢數(shù)據(jù)庫(kù)獲取一個(gè)文章實(shí)體列表,提高了數(shù)據(jù)查詢和提取的效率,減少了數(shù)據(jù)庫(kù)的查詢次數(shù)。
[0067]為了簡(jiǎn)化圖片存儲(chǔ)方式,可以采用了固定文件目錄(即預(yù)設(shè)文件)存儲(chǔ)圖片文件,使用文章和/或圖片的某些屬性命名這些圖片文件形成路徑。從而在獲取圖片時(shí),就可以在獲取文章的基本信息之后就,根據(jù)代碼中直接通過(guò)I/o訪問需要的圖片。比如,圖片的可以以下列模式命名:
[0068][文章ID]_[寬]_[高]_[欄目 ID]_[密鑰].Jpg
[0069]其中的[文章ID]和[欄目ID]可以是圖片所在文章的屬性信息,也可以是圖片自身的屬性信息(即圖片所屬文章的ID和所述文章所在欄目的ID),其中的[寬]和[高]可以是指圖片在文章中的位置信息,也可以是指文章自身的屬性信息,其中[密鑰]部分是存儲(chǔ)在文章基本信息表中的一個(gè)隨機(jī)生成的字符串,它只存儲(chǔ)在后天數(shù)據(jù)庫(kù)中給服務(wù)器端應(yīng)用程序使用,不會(huì)暴露給用戶終端,以此用來(lái)保護(hù)圖片的安全訪問,避免由這種固定命名規(guī)則帶來(lái)的安全問題。另一方面,關(guān)于圖片本身的信息可以直接存儲(chǔ)在圖片的元信息域中。數(shù)字圖片除了存儲(chǔ)了像素信息外,還可以添加一些附加信息,比如圖片的標(biāo)圖,描述,作者,創(chuàng)建時(shí)間等。在應(yīng)用中,通過(guò)相關(guān)API可以很方面的定制和訪問這些信息,而不需要在數(shù)據(jù)庫(kù)中使用單獨(dú)的一張表中存儲(chǔ)這些信息,以及解析文章中的鏈接來(lái)獲取圖片。
[0070]通過(guò)上述方式來(lái)存儲(chǔ)圖片,減少了訪問數(shù)據(jù)的次數(shù)和在一張包含海量圖片信息的表中索引一張或者多張圖片信息所花費(fèi)的時(shí)間。通過(guò)某些唯一的屬性,可以在文件系統(tǒng)中把圖片分成若干目錄,如圖5所示,比如一個(gè)欄目ID命名的目錄存儲(chǔ)所有的在這個(gè)欄目下的文章產(chǎn)生的圖片,以1000_10000命名的目錄只存儲(chǔ)文章ID在1000到10000之間的圖片,這些方式結(jié)合使用可以大大減少搜索一張圖片的速度。
[0071]最后,將從第二存儲(chǔ)區(qū)間提取出的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù),和根據(jù)預(yù)設(shè)列表中的數(shù)據(jù)標(biāo)識(shí)統(tǒng)一從數(shù)據(jù)庫(kù)中查詢到的數(shù)據(jù)合并到待用列表中,并且根據(jù)最初從數(shù)據(jù)庫(kù)中獲取時(shí)每個(gè)數(shù)據(jù)所對(duì)應(yīng)的順序ID對(duì)待用列表中的數(shù)據(jù)進(jìn)行排序,以保證文章實(shí)體在用戶終端進(jìn)行正確顯示。
[0072]以上結(jié)合附圖詳細(xì)說(shuō)明了本發(fā)明的技術(shù)方案,考慮到相關(guān)技術(shù)中,當(dāng)用戶進(jìn)入網(wǎng)站瀏覽數(shù)據(jù)時(shí),網(wǎng)站會(huì)將所有的數(shù)據(jù)標(biāo)識(shí)或所有的數(shù)據(jù)實(shí)體加載到緩存中,而實(shí)際上用戶所需的只是寫入時(shí)間最新的極小部分內(nèi)容,因此會(huì)造成緩存資源的浪費(fèi),以及系統(tǒng)運(yùn)行速度降低。通過(guò)本申請(qǐng)的技術(shù)方案,能夠根據(jù)用戶需要將文章標(biāo)識(shí)分批加載到緩存中,從而避免在緩存中加載大量數(shù)據(jù)所浪費(fèi)的時(shí)間,以及對(duì)系統(tǒng)性能的影響。
[0073]本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器、CD-ROM、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
[0074]本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來(lái)描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合。可提供這些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過(guò)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
[0075]這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。
[0076]這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
[0077]在本發(fā)明中,術(shù)語(yǔ)“第一”、“第二”僅用于描述目的,而不能理解為指示或暗示相對(duì)重要性。術(shù)語(yǔ)“多個(gè)”指兩個(gè)或兩個(gè)以上,除非另有明確的限定。
[0078]以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對(duì)于本領(lǐng)域的技術(shù)人員來(lái)說(shuō),本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種數(shù)據(jù)查詢方法,其特征在于,包括: 根據(jù)接收到的標(biāo)識(shí)請(qǐng)求指令確定目標(biāo)數(shù)據(jù)標(biāo)識(shí); 按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí),并加載到第一存儲(chǔ)區(qū)間,在所述第一存儲(chǔ)區(qū)間中查詢所述目標(biāo)數(shù)據(jù)標(biāo)識(shí),若查詢到所述目標(biāo)數(shù)據(jù)標(biāo)識(shí),則獲取所述目標(biāo)數(shù)據(jù)標(biāo)識(shí)并返回,并終止按照所述預(yù)設(shè)時(shí)間順序逐批從所述數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí); 根據(jù)接收到的標(biāo)識(shí)選擇指令,在獲取到的目標(biāo)數(shù)據(jù)標(biāo)識(shí)中進(jìn)行選擇,并查詢與選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)查詢方法,其特征在于,按照所述預(yù)設(shè)時(shí)間順序逐批從所述數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)的步驟包括: 獲取所述數(shù)據(jù)庫(kù)中每個(gè)數(shù)據(jù)標(biāo)識(shí)的寫入時(shí)間中的最遠(yuǎn)寫入時(shí)間和最近寫入時(shí)間,從所述最近寫入時(shí)間所對(duì)應(yīng)的數(shù)據(jù)標(biāo)識(shí)到所述最遠(yuǎn)寫入時(shí)間所對(duì)應(yīng)的數(shù)據(jù)標(biāo)識(shí),逐批獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)。
3.根據(jù)權(quán)利要求1所述的數(shù)據(jù)查詢方法,其特征在于,在按所述照預(yù)設(shè)時(shí)間順序逐批從所述數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)時(shí),在所述數(shù)據(jù)庫(kù)中查詢所述預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù),并將所述預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù)加載至第二存儲(chǔ)區(qū)間。
4.根據(jù)權(quán)利要求3所述的數(shù)據(jù)查詢方法,其特征在于,在獲取到目標(biāo)數(shù)據(jù)標(biāo)識(shí)后,還包括: 根據(jù)獲取到的目標(biāo)數(shù)據(jù)標(biāo)識(shí)中的每個(gè)數(shù)據(jù)標(biāo)識(shí),在所述第二存儲(chǔ)區(qū)間中查詢與所述每個(gè)目標(biāo)數(shù)據(jù)標(biāo)識(shí)分別對(duì)應(yīng)的數(shù)據(jù),并將查詢到的數(shù)據(jù)加載至待用列表中,以及,將未查詢到對(duì)應(yīng)的數(shù)據(jù)的數(shù)據(jù)標(biāo)識(shí)存儲(chǔ)至預(yù)設(shè)列表; 根據(jù)所述預(yù)設(shè)列表中的每個(gè)數(shù)據(jù)標(biāo)識(shí),從所述數(shù)據(jù)庫(kù)中提取與所述預(yù)設(shè)列表中的每個(gè)數(shù)據(jù)標(biāo)識(shí)分別對(duì)應(yīng)的數(shù)據(jù),并將提取出的數(shù)據(jù)加載至所述待用列表中;則 在接收到所述標(biāo)識(shí)選擇指令時(shí),從所述待用列表中查詢與所述選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)。
5.根據(jù)權(quán)利要求1至4中任一項(xiàng)所述的數(shù)據(jù)查詢方法,其特征在于,在按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)時(shí),判斷所述預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù)中是否存在圖片,若存在,則獲取所述圖片的屬性信息,根據(jù)所述屬性信息將所述圖片存儲(chǔ)至預(yù)設(shè)文件,并在所述對(duì)應(yīng)的數(shù)據(jù)中保留所述屬性信息;以及 在查詢到與所述選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)后,判斷與所述選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)中否存在圖片的屬性信息,若存在,則根據(jù)所述屬性信息從所述預(yù)設(shè)文件中獲取圖片,并添加至與所述選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)中。
6.一種數(shù)據(jù)查詢系統(tǒng),其特征在于,包括: 標(biāo)識(shí)確定單元,用于根據(jù)接收到的標(biāo)識(shí)請(qǐng)求指令確定目標(biāo)數(shù)據(jù)標(biāo)識(shí); 加載單元,按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí),并加載到第一存儲(chǔ)區(qū)間; 標(biāo)識(shí)查詢單元,用于在所述第一存儲(chǔ)區(qū)間中查詢所述目標(biāo)數(shù)據(jù)標(biāo)識(shí),若查詢到所述目標(biāo)數(shù)據(jù)標(biāo)識(shí),則獲取所述目標(biāo)數(shù)據(jù)標(biāo)識(shí)并返回,并終止所述加載單元按照所述預(yù)設(shè)時(shí)間順序逐批從所述數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí); 數(shù)據(jù)查詢單元,用于根據(jù)接收到的標(biāo)識(shí)選擇指令,在獲取到的目標(biāo)數(shù)據(jù)標(biāo)識(shí)中進(jìn)行選擇,并查詢與選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)。
7.根據(jù)權(quán)利要求6所述的數(shù)據(jù)查詢系統(tǒng),其特征在于,所述加載單元包括: 時(shí)間獲取單元,用于獲取所述數(shù)據(jù)庫(kù)中每個(gè)數(shù)據(jù)標(biāo)識(shí)的寫入時(shí)間中的最遠(yuǎn)寫入時(shí)間和最近與入時(shí)間; 標(biāo)識(shí)獲取單元,用于從所述最近寫入時(shí)間所對(duì)應(yīng)的數(shù)據(jù)標(biāo)識(shí)到所述最遠(yuǎn)寫入時(shí)間所對(duì)應(yīng)的數(shù)據(jù)標(biāo)識(shí),逐批獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)。
8.根據(jù)權(quán)利要求6所述的數(shù)據(jù)查詢系統(tǒng),其特征在于,所述加載單元還用于,在按所述照預(yù)設(shè)時(shí)間順序逐批從所述數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)時(shí),在所述數(shù)據(jù)庫(kù)中查詢所述預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù),并將所述預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù)加載至第二存儲(chǔ)區(qū)間。
9.根據(jù)權(quán)利要求8所述的數(shù)據(jù)查詢系統(tǒng),其特征在于,還包括: 提取單元,其中,所述數(shù)據(jù)查詢單元還用于根據(jù)獲取到的目標(biāo)數(shù)據(jù)標(biāo)識(shí)中的每個(gè)數(shù)據(jù)標(biāo)識(shí),在所述第二存儲(chǔ)區(qū)間中查詢與所述每個(gè)目標(biāo)數(shù)據(jù)標(biāo)識(shí)分別對(duì)應(yīng)的數(shù)據(jù); 所述加載單元還用于將查詢到的數(shù)據(jù)加載至待用列表中,以及,將未查詢到對(duì)應(yīng)的數(shù)據(jù)的數(shù)據(jù)標(biāo)識(shí)存儲(chǔ)至預(yù)設(shè)列表; 所述提取單元用于根據(jù)所述預(yù)設(shè)列表中的每個(gè)數(shù)據(jù)標(biāo)識(shí),從所述數(shù)據(jù)庫(kù)中提取與所述預(yù)設(shè)列表中的每個(gè)數(shù)據(jù)標(biāo)識(shí)分別對(duì)應(yīng)的數(shù)據(jù),并將提取出的數(shù)據(jù)加載至所述待用列表中;以及 所述數(shù)據(jù)查詢單元在接收到所述標(biāo)識(shí)選擇指令時(shí),從所述待用列表中查詢與所述選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)。
10.根據(jù)權(quán)利要求6至9中任一項(xiàng)所述的數(shù)據(jù)查詢系統(tǒng),其特征在于,還包括: 圖片存儲(chǔ)單元,在所述加載單元按照預(yù)設(shè)時(shí)間順序逐批從數(shù)據(jù)庫(kù)中獲取預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)時(shí),判斷所述預(yù)設(shè)量的數(shù)據(jù)標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù)中是否存在圖片,若存在,則獲取所述圖片的屬性信息,根據(jù)所述屬性信息將所述圖片存儲(chǔ)至預(yù)設(shè)文件,并在所述對(duì)應(yīng)的數(shù)據(jù)中保留所述屬性信息; 判斷單元,用于在所述數(shù)據(jù)查詢單元在查詢到與所述選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)后,判斷與所述選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)中否存在圖片的屬性信息,若存在,則根據(jù)所述屬性信息從所述預(yù)設(shè)文件中獲取圖片,并添加至與所述選中的數(shù)據(jù)標(biāo)識(shí)相對(duì)應(yīng)的數(shù)據(jù)中。
【文檔編號(hào)】G06F17/30GK104516920SQ201310463740
【公開日】2015年4月15日 申請(qǐng)日期:2013年10月8日 優(yōu)先權(quán)日:2013年10月8日
【發(fā)明者】胡哲 申請(qǐng)人:北大方正集團(tuán)有限公司, 北京北大方正電子有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
改则县| 明光市| 连州市| 丹阳市| 毕节市| 延边| 三穗县| 郁南县| 津南区| 长治市| 静宁县| 梅河口市| 元氏县| 中卫市| 许昌市| 和静县| 铁力市| 盐津县| 科尔| 南木林县| 阜阳市| 沙湾县| 贺州市| 青阳县| 麟游县| 嘉定区| 东城区| 余姚市| 得荣县| 海晏县| 县级市| 乌鲁木齐县| 美姑县| 上犹县| 白玉县| 长阳| 宁远县| 牡丹江市| 蓬莱市| 阳西县| 石阡县|