aaa视频网站,国产最新进精品视频,国产主播一区二区,999热精品视频,а√天堂资源8在线官网在线,国产免费不卡av,麻豆国产视频

數(shù)據(jù)更新的方法及裝置的制造方法

文檔序號(hào):8430771閱讀:277來源:國知局
數(shù)據(jù)更新的方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及數(shù)據(jù)庫技術(shù)領(lǐng)域,特別涉及一種數(shù)據(jù)更新的方法及裝置。
【背景技術(shù)】
[0002] 隨著信息時(shí)代的到來,信息無處不在,對于信息的更新也無處不在,例如,用戶的 心情短語更新、用戶的積分變更、用戶的位置信息變更等。信息更新后數(shù)據(jù)庫中的信息同步 成為海量信息處理的基礎(chǔ)操作。由于,數(shù)據(jù)是構(gòu)成信息的基本單位,因此,數(shù)據(jù)同步的方法 直接影響信息同步的效率和準(zhǔn)確率。
[0003] 現(xiàn)有技術(shù)在數(shù)據(jù)同步時(shí),數(shù)據(jù)D1每更新一次,均需要訪問數(shù)據(jù)庫進(jìn)行數(shù)據(jù)庫同 步,因此,對于更新頻繁的應(yīng)用場景,會(huì)頻繁訪問數(shù)據(jù)庫,并給數(shù)據(jù)庫造成比較嚴(yán)重的文件 碎片,隨著時(shí)間的增長,該文件碎片會(huì)使數(shù)據(jù)庫性能下降。

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

[0004] 為了解決現(xiàn)有技術(shù)的問題,本發(fā)明實(shí)施例提供了一種數(shù)據(jù)更新的方法及裝置。所 述技術(shù)方案如下:
[0005] -方面,提供了一種數(shù)據(jù)更新的方法,所述方法包括:
[0006] 獲取數(shù)據(jù)更新請求,所述數(shù)據(jù)更新請求中攜帶有待更新的第一數(shù)據(jù)標(biāo)識(shí)及所述第 一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的更新數(shù)據(jù);
[0007] 查詢內(nèi)存中是否存儲(chǔ)有所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù);
[0008] 如果內(nèi)存中存儲(chǔ)有所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù),則根據(jù)所述更新數(shù)據(jù)更新 內(nèi)存中存儲(chǔ)的所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù),記錄更新時(shí)間,并將所述第一數(shù)據(jù)標(biāo)識(shí) 對應(yīng)的更新狀態(tài)更新為未更新到數(shù)據(jù)庫狀態(tài);
[0009] 每隔預(yù)設(shè)周期將內(nèi)存中存儲(chǔ)的更新時(shí)間與當(dāng)前時(shí)間的差值達(dá)到閾值且更新狀態(tài) 為未更新到數(shù)據(jù)庫狀態(tài)的數(shù)據(jù)更新至數(shù)據(jù)庫。
[0010] 進(jìn)一步地,所述查詢內(nèi)存中是否存儲(chǔ)有所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù)之后, 還包括:
[0011] 如果內(nèi)存中未存儲(chǔ)所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù),則從數(shù)據(jù)庫中獲取所述第 一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù);
[0012] 將從數(shù)據(jù)庫中獲取到的所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù)存儲(chǔ)至內(nèi)存,并執(zhí)行根 據(jù)所述更新數(shù)據(jù)更新內(nèi)存中存儲(chǔ)的所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù)的步驟及后續(xù)步驟。
[0013] 進(jìn)一步地,所述方法還包括:
[0014] 獲取數(shù)據(jù)讀取請求,所述數(shù)據(jù)讀取請求中攜帶有第二數(shù)據(jù)標(biāo)識(shí);
[0015] 查詢內(nèi)存中是否存儲(chǔ)有所述第二數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù);
[0016] 如果內(nèi)存中存儲(chǔ)有所述第二數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù),則從內(nèi)存中讀取所述第二 數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù);
[0017] 如果內(nèi)存中未存儲(chǔ)所述第二數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù),則從數(shù)據(jù)庫中讀取所述第 二數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù)。
[0018] 進(jìn)一步地,所述方法還包括:
[0019] 獲取數(shù)據(jù)庫中已存儲(chǔ)的數(shù)據(jù)對應(yīng)的數(shù)據(jù)標(biāo)識(shí),并預(yù)先設(shè)置至少兩個(gè)數(shù)據(jù)標(biāo)識(shí)列 表,將獲取到的每個(gè)數(shù)據(jù)標(biāo)識(shí)分別存儲(chǔ)至對應(yīng)的數(shù)據(jù)標(biāo)識(shí)列表中;
[0020] 所述查詢內(nèi)存中是否存儲(chǔ)有所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù)之前,還包括:
[0021] 確定所述第一數(shù)據(jù)標(biāo)識(shí)所在的數(shù)據(jù)標(biāo)識(shí)列表,并在所述第一數(shù)據(jù)標(biāo)識(shí)所在的數(shù)據(jù) 標(biāo)識(shí)列表中查詢所述第一數(shù)據(jù)標(biāo)識(shí);
[0022] 如果查詢到所述第一數(shù)據(jù)標(biāo)識(shí),則執(zhí)行查詢內(nèi)存中是否存儲(chǔ)有所述第一數(shù)據(jù)標(biāo)識(shí) 對應(yīng)的歷史數(shù)據(jù)的步驟;
[0023] 如果未查詢到所述第一數(shù)據(jù)標(biāo)識(shí),則將所述第一數(shù)據(jù)標(biāo)識(shí)及所述第一數(shù)據(jù)標(biāo)識(shí)對 應(yīng)的更新數(shù)據(jù)存儲(chǔ)至內(nèi)存,執(zhí)行記錄更新時(shí)間,并將所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的更新狀態(tài)更 新為未更新到數(shù)據(jù)庫狀態(tài)的步驟及后續(xù)步驟。
[0024] 進(jìn)一步地,所述查詢內(nèi)存中是否存儲(chǔ)有所述第二數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù)之前, 還包括:
[0025] 確定所述第二數(shù)據(jù)標(biāo)識(shí)所在的數(shù)據(jù)標(biāo)識(shí)列表,并在所述第二數(shù)據(jù)標(biāo)識(shí)所在的數(shù)據(jù) 標(biāo)識(shí)列表中查詢所述第二數(shù)據(jù)標(biāo)識(shí);
[0026] 如果查詢到所述第二數(shù)據(jù)標(biāo)識(shí),則執(zhí)行查詢內(nèi)存中是否存儲(chǔ)有所述第二數(shù)據(jù)標(biāo)識(shí) 對應(yīng)的歷史數(shù)據(jù)的步驟。
[0027] 如果未查詢到所述第二數(shù)據(jù)標(biāo)識(shí),則返回空值。
[0028] 另一方面,提供了一種數(shù)據(jù)更新的裝置,所述裝置包括:
[0029] 第一獲取模塊,用于獲取數(shù)據(jù)更新請求,所述數(shù)據(jù)更新請求中攜帶有待更新的第 一數(shù)據(jù)標(biāo)識(shí)及所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的更新數(shù)據(jù);
[0030] 查詢模塊,用于查詢內(nèi)存中是否存儲(chǔ)有所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù);
[0031] 第一更新模塊,用于當(dāng)內(nèi)存中存儲(chǔ)有所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù)時(shí),根據(jù) 所述更新數(shù)據(jù)更新內(nèi)存中存儲(chǔ)的所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù);
[0032] 第二更新模塊,用于記錄更新時(shí)間,并將所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的更新狀態(tài)更新 為未更新到數(shù)據(jù)庫狀態(tài);
[0033] 第三更新模塊,用于每隔預(yù)設(shè)周期將內(nèi)存中存儲(chǔ)的更新時(shí)間與當(dāng)前時(shí)間的差值達(dá) 到閾值且更新狀態(tài)為未更新到數(shù)據(jù)庫狀態(tài)的數(shù)據(jù)更新至數(shù)據(jù)庫。
[0034] 進(jìn)一步地,所述裝置,還包括:
[0035] 第二獲取模塊,用于當(dāng)內(nèi)存中未存儲(chǔ)所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù)時(shí),從數(shù) 據(jù)庫中獲取所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù);
[0036] 第一存儲(chǔ)模塊,用于將從數(shù)據(jù)庫中獲取到的所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù)存 儲(chǔ)至內(nèi)存。
[0037] 進(jìn)一步地,所述裝置還包括:
[0038] 第三獲取模塊,用于獲取數(shù)據(jù)讀取請求,所述數(shù)據(jù)讀取請求中攜帶有第二數(shù)據(jù)標(biāo) 識(shí);
[0039] 所述查詢模塊,還用于查詢內(nèi)存中是否存儲(chǔ)有所述第二數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù) 據(jù);
[0040] 第一讀取模塊,用于當(dāng)內(nèi)存中存儲(chǔ)有所述第二數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù)時(shí),從內(nèi) 存中讀取所述第二數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù);
[0041] 第二讀取模塊,用于當(dāng)內(nèi)存中未存儲(chǔ)所述第二數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù)時(shí),從數(shù) 據(jù)庫中讀取所述第二數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù)。
[0042] 進(jìn)一步地,所述裝置,還包括:
[0043] 第四獲取模塊,用于獲取數(shù)據(jù)庫中已存儲(chǔ)的數(shù)據(jù)對應(yīng)的數(shù)據(jù)標(biāo)識(shí);
[0044] 第二存儲(chǔ)模塊,用于將獲取到的每個(gè)數(shù)據(jù)標(biāo)識(shí)分別存儲(chǔ)至對應(yīng)的數(shù)據(jù)標(biāo)識(shí)列表 中;
[0045] 所述查詢模塊,還用于確定所述第一數(shù)據(jù)標(biāo)識(shí)所在的數(shù)據(jù)標(biāo)識(shí)列表,并在所述第 一數(shù)據(jù)標(biāo)識(shí)所在的數(shù)據(jù)標(biāo)識(shí)列表中查詢所述第一數(shù)據(jù)標(biāo)識(shí);當(dāng)查詢到所述第一數(shù)據(jù)標(biāo)識(shí) 時(shí),執(zhí)行查詢內(nèi)存中是否存儲(chǔ)有所述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù)的步驟;
[0046] 第三存儲(chǔ)模塊,用于當(dāng)未查詢到所述第一數(shù)據(jù)標(biāo)識(shí)時(shí),將所述第一數(shù)據(jù)標(biāo)識(shí)及所 述第一數(shù)據(jù)標(biāo)識(shí)對應(yīng)的更新數(shù)據(jù)存儲(chǔ)至內(nèi)存;
[0047] 進(jìn)一步地,所述查詢模塊,還用于確定所述第二數(shù)據(jù)標(biāo)識(shí)所在的數(shù)據(jù)標(biāo)識(shí)列表,并 在所述第二數(shù)據(jù)標(biāo)識(shí)所在的數(shù)據(jù)標(biāo)識(shí)列表中查詢所述第二數(shù)據(jù)標(biāo)識(shí);當(dāng)查詢到所述第二數(shù) 據(jù)標(biāo)識(shí)時(shí),執(zhí)行查詢內(nèi)存中是否存儲(chǔ)有所述第二數(shù)據(jù)標(biāo)識(shí)對應(yīng)的歷史數(shù)據(jù)的步驟。
[0048] 所述裝置,還包括:
[0049] 返回模塊,用于當(dāng)未查詢到所述第二數(shù)據(jù)標(biāo)識(shí)時(shí),返回空值。
[0050] 本發(fā)明實(shí)施例提供的技術(shù)方案帶來的有益效果是:
[0051] 通過獲取數(shù)據(jù)更新請求后,先將其更新至內(nèi)存中,再每隔預(yù)設(shè)時(shí)間將內(nèi)存中的數(shù) 據(jù)同步至數(shù)據(jù)庫中;同時(shí),獲取數(shù)據(jù)讀取請求后,先確定是否存儲(chǔ)有待獲取的數(shù)據(jù),如果有, 再確定待獲取的數(shù)據(jù)的存儲(chǔ)位置,并在該位置獲取待獲取的數(shù)據(jù),避免在更新頻繁的應(yīng)用 場景中,頻繁訪問數(shù)據(jù)庫,而給數(shù)據(jù)庫造成比較嚴(yán)重的文件碎片,提高數(shù)據(jù)庫性能。
【附圖說明】
[0052] 為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要使 用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于 本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其它 的附圖。
[0053] 圖1是本發(fā)明實(shí)施例提供的數(shù)據(jù)更新的實(shí)施環(huán)境示意圖;
[0054] 圖2是本發(fā)明實(shí)施例一提供的一種數(shù)據(jù)更新的方法流程圖;
[0055] 圖3是本發(fā)明實(shí)施例二提供的一種數(shù)據(jù)更新的方法流程圖;
[0056] 圖4是本發(fā)明實(shí)施例二提供的一種數(shù)據(jù)更新的交互示意圖;
[0057] 圖5是本發(fā)明實(shí)施例三提供的一種數(shù)據(jù)更新的方法流程圖;
[0058] 圖6是本發(fā)明實(shí)施例三提供的一種數(shù)據(jù)更新的交互示意圖;
[0059] 圖7是本發(fā)明實(shí)施例四提供的第一種數(shù)據(jù)更新的裝置結(jié)構(gòu)示意圖;
[0060] 圖8是本發(fā)明實(shí)施例四提供的第二種數(shù)據(jù)更新的裝置結(jié)構(gòu)示意圖;
[0061]圖9是本發(fā)明實(shí)施例四提供的第三種數(shù)據(jù)更
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1