国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種數(shù)據(jù)庫(kù)管理方法與裝置的制造方法

      文檔序號(hào):9810723閱讀:784來(lái)源:國(guó)知局
      一種數(shù)據(jù)庫(kù)管理方法與裝置的制造方法
      【技術(shù)領(lǐng)域】
      [0001 ]本發(fā)明涉及數(shù)據(jù)庫(kù)技術(shù)領(lǐng)域,特別是涉及一種數(shù)據(jù)庫(kù)管理方法與裝置。
      【背景技術(shù)】
      [0002]redis是一個(gè)key-value(即鍵值)存儲(chǔ)系統(tǒng)。它支持存儲(chǔ)的value類(lèi)型相對(duì)更多,包括string(字符串)、list(鏈表)、set(集合)、zset(sorted set—有序集合)和hash(哈希類(lèi)型)。這些數(shù)據(jù)類(lèi)型都支持增加鍵、刪除鍵、對(duì)鍵取交集并集等操作。無(wú)論哪種存儲(chǔ)的value類(lèi)型,在存儲(chǔ)時(shí)一個(gè)鍵均可包含多個(gè)成員。目前基于redis的數(shù)據(jù)庫(kù)基于其所支持存儲(chǔ)數(shù)據(jù)類(lèi)型的多樣性,已被廣泛使用。
      [0003]現(xiàn)有的數(shù)據(jù)庫(kù)管理方案,當(dāng)接收到對(duì)某一鍵的刪除操作后,需要服務(wù)器后臺(tái)管理線程即時(shí)訪問(wèn)數(shù)據(jù)庫(kù),依次從數(shù)據(jù)庫(kù)中刪除該鍵的各個(gè)成員,并且,每次訪問(wèn)數(shù)據(jù)庫(kù)僅能刪除一個(gè)成員。那么,若待刪除的鍵包含的成員數(shù)量非常多,則管理線程需要多次訪問(wèn)數(shù)據(jù)庫(kù)才能夠完成對(duì)待刪除鍵的刪除操作。不僅如此,整個(gè)刪除鍵的操作需要在服務(wù)器后臺(tái)進(jìn)行操作,導(dǎo)致服務(wù)器的負(fù)載增加。
      [0004]可見(jiàn),現(xiàn)有的數(shù)據(jù)庫(kù)管理方案在刪除鍵操作時(shí),不僅需要長(zhǎng)時(shí)間等待才能夠得到刪除成功的響應(yīng)結(jié)果,還需即時(shí)在服務(wù)器后臺(tái)執(zhí)行鍵刪除操作增加服務(wù)器的負(fù)載。

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

      [0005]鑒于現(xiàn)有的數(shù)據(jù)庫(kù)管理方案在刪除鍵時(shí)需要即時(shí)在服務(wù)器后臺(tái)執(zhí)行鍵刪除操作增加服務(wù)器負(fù)載的問(wèn)題,提出了本發(fā)明以便提供一種克服上述問(wèn)題的數(shù)據(jù)庫(kù)管理方法與裝置。
      [0006]依據(jù)本發(fā)明的一個(gè)方面,提供了一種數(shù)據(jù)庫(kù)管理方法,包括:查詢(xún)數(shù)據(jù)區(qū)中的鍵,所述鍵具有至少一個(gè)成員;判斷所述至少一個(gè)成員中是否存在待刪除的成員;若是,則依據(jù)判斷結(jié)果刪除所述待刪除的成員。
      [0007]優(yōu)選地,所述鍵具有對(duì)應(yīng)的鍵版本信息,所述成員具有對(duì)應(yīng)的成員版本信息,以及所述判斷所述至少一個(gè)成員中是否存在待刪除的成員具體包括:判斷所述成員對(duì)應(yīng)的成員版本信息是否與所述鍵的當(dāng)前鍵版本信息匹配,所述當(dāng)前鍵版本信息為所述鍵對(duì)應(yīng)的鍵版本信息中最新的鍵版本信息;若否,則確定所述成員為待刪除的成員。
      [0008]優(yōu)選地,判斷所述成員對(duì)應(yīng)的成員版本信息是否與所述鍵對(duì)應(yīng)的當(dāng)前鍵版本信息匹配具體包括:獲取所述鍵對(duì)應(yīng)的所有鍵版本信息;通過(guò)比較選出最新的鍵版本信息以作為所述當(dāng)前鍵版本信息;比較所述成員版本信息與所述當(dāng)前鍵版本信息;若比較結(jié)果顯示兩者一致,則判斷兩者匹配。
      [0009]優(yōu)選地,所述鍵版本信息存儲(chǔ)在與其對(duì)應(yīng)的鍵的元信息中。
      [0010]優(yōu)選地,當(dāng)一個(gè)數(shù)據(jù)區(qū)與另一數(shù)據(jù)區(qū)合并時(shí),對(duì)合并后的數(shù)據(jù)區(qū)執(zhí)行所述查詢(xún)數(shù)據(jù)區(qū)中的鍵的步驟。
      [0011 ]優(yōu)選地,當(dāng)接收到對(duì)所述數(shù)據(jù)區(qū)的數(shù)據(jù)清理請(qǐng)求時(shí),執(zhí)行所述查詢(xún)數(shù)據(jù)區(qū)中的鍵的步驟。
      [0012]優(yōu)選地,所述方法還包括:接收至少一個(gè)所述鍵,并將接收的所述鍵保存在所述數(shù)據(jù)區(qū)中,其中所述鍵具有對(duì)應(yīng)的第一鍵版本信息,所述成員具有對(duì)應(yīng)的第一成員版本信息,且對(duì)于每一個(gè)所述鍵,所述第一鍵版本信息與所述第一成員版本信息匹配。
      [0013]優(yōu)選地,所述方法還包括:若接收到對(duì)某一鍵的預(yù)刪除指示,則將該鍵對(duì)應(yīng)的第一鍵版本信息更新為較新的第二鍵版本信息,其中所述第二鍵版本信息與所述第一成員版本信息不匹配。
      [0014]優(yōu)選地,所述方法還包括:若接收到對(duì)某一鍵某一成員的預(yù)刪除指示,則將該鍵對(duì)應(yīng)的第一鍵版本信息更新為較新的第二鍵版本信息,并將該鍵的、除該成員外的其他成員的所述第一成員版本信息更新為較新的第二成員版本信息,其中所述第二鍵版本信息與所述第一成員版本信息不匹配且所述第二鍵版本信息與所述第二成員版本信息匹配。
      [0015]優(yōu)選地,所述方法還包括:若接收到對(duì)某一鍵的更新指示,則將該鍵對(duì)應(yīng)的第一鍵版本信息更新為較新的第二鍵版本信息,并將該鍵的成員對(duì)應(yīng)的所述第一成員版本信息更新為較新的第二成員版本信息,其中所述第二鍵版本信息與所述第二成員版本信息匹配。
      [0016]優(yōu)選地,所述對(duì)某一鍵的更新指示包括:對(duì)該鍵的已有成員的值進(jìn)行更新的指示,和/或?qū)υ撴I增加新成員的指示。
      [0017]依據(jù)本發(fā)明的另一個(gè)方面,提供了一種數(shù)據(jù)庫(kù)管理裝置,包括:查詢(xún)模塊,用于查詢(xún)數(shù)據(jù)區(qū)中的鍵,所述鍵具有至少一個(gè)成員;判斷模塊,用于判斷所述至少一個(gè)成員中是否存在待刪除的成員;執(zhí)行模塊,用于若所述判斷模塊的判斷結(jié)果為是時(shí),則依據(jù)判斷結(jié)果刪除所述待刪除的成員。
      [0018]優(yōu)選地,所述鍵具有對(duì)應(yīng)的鍵版本信息,所述成員具有對(duì)應(yīng)的成員版本信息,以及所述判斷模塊包括:版本信息判斷模塊,用于判斷所述成員對(duì)應(yīng)的成員版本信息是否與所述鍵的當(dāng)前鍵版本信息匹配,所述當(dāng)前鍵版本信息為所述鍵對(duì)應(yīng)的鍵版本信息中最新的鍵版本信息;待刪除成員確定模塊,用于若所述版本信息判斷模塊的判斷結(jié)果為否時(shí),則確定所述成員為待刪除的成員。
      [0019]優(yōu)選地,所述版本信息判斷模塊包括:版本信息獲取子模塊,用于獲取所述鍵對(duì)應(yīng)的所有鍵版本信息;最新版本信息確定子模塊,用于通過(guò)比較選出最新的鍵版本信息以作為所述當(dāng)前鍵版本信息;比較子模塊,用于比較所述成員版本信息與所述當(dāng)前鍵版本信息;確定子模塊,用于若比較結(jié)果顯示兩者一致,則判斷兩者匹配。
      [0020]優(yōu)選地,所述鍵版本信息存儲(chǔ)在與其對(duì)應(yīng)的鍵的元信息中。
      [0021]優(yōu)選地,當(dāng)一個(gè)數(shù)據(jù)區(qū)與另一數(shù)據(jù)區(qū)合并時(shí),調(diào)用所述查詢(xún)模塊對(duì)合并后的數(shù)據(jù)區(qū)執(zhí)行所述查詢(xún)數(shù)據(jù)區(qū)中的鍵的操作。
      [0022]優(yōu)選地,當(dāng)接收到對(duì)所述數(shù)據(jù)區(qū)的數(shù)據(jù)清理請(qǐng)求時(shí),調(diào)用所述查詢(xún)模塊執(zhí)行所述查詢(xún)數(shù)據(jù)區(qū)中的鍵的操作。
      [0023]優(yōu)選地,所述裝置還包括:鍵信息接收模塊,用于接收至少一個(gè)所述鍵,并將接收的所述鍵保存在所述數(shù)據(jù)區(qū)中,其中所述鍵具有對(duì)應(yīng)的第一鍵版本信息,所述成員具有對(duì)應(yīng)的第一成員版本信息,且對(duì)于每一個(gè)所述鍵,所述第一鍵版本信息與所述第一成員版本信息匹配。
      [0024]優(yōu)選地,所述裝置還包括:鍵預(yù)刪除指示接收模塊,用于若接收到對(duì)某一鍵的預(yù)刪除指示,則將該鍵對(duì)應(yīng)的第一鍵版本信息更新為較新的第二鍵版本信息,其中所述第二鍵版本信息與所述第一成員版本信息不匹配。
      [0025]優(yōu)選地,所述裝置還包括:成員預(yù)刪除指示接收模塊,用于若接收到對(duì)某一鍵某一成員的預(yù)刪除指示,則將該鍵對(duì)應(yīng)的第一鍵版本信息更新為較新的第二鍵版本信息,并將該鍵的、除該成員外的其他成員的所述第一成員版本信息更新為較新的第二成員版本信息,其中所述第二鍵版本信息與所述第一成員版本信息不匹配且所述第二鍵版本信息與所述第二成員版本信息匹配。
      [0026]優(yōu)選地,所述裝置還包括:鍵更新指示接收模塊,用于若接收到對(duì)某一鍵的更新指示,則將該鍵對(duì)應(yīng)的第一鍵版本信息更新為較新的第二鍵版本信息,并將該鍵的成員對(duì)應(yīng)的所述第一成員版本信息更新為較新的第二成員版本信息,其中所述第二鍵版本信息與所述第二成員版本信息匹配。
      [0027]優(yōu)選地,所述對(duì)某一鍵的更新指示包括:對(duì)該鍵的已有成員的值進(jìn)行更新的指示,和/或?qū)υ撴I增加新成員的指示。
      [0028]本發(fā)明實(shí)施例提供的數(shù)據(jù)庫(kù)管理方案,在接收到對(duì)數(shù)據(jù)庫(kù)中存儲(chǔ)的某鍵的操作時(shí),僅會(huì)在服務(wù)器前端對(duì)該鍵的版本信息進(jìn)行更新,對(duì)鍵的版本信息進(jìn)行更新后由于數(shù)據(jù)庫(kù)中存儲(chǔ)的鍵為未更新的鍵,所以再次訪問(wèn)該鍵時(shí)則無(wú)法得到數(shù)據(jù),變向?qū)崿F(xiàn)對(duì)鍵的刪除;相較于現(xiàn)有的需要逐個(gè)從數(shù)據(jù)庫(kù)中刪除鍵中成員的方案,本發(fā)明實(shí)施例能夠縮短鍵刪除成功的響應(yīng)時(shí)間。
      [0029]而本發(fā)明實(shí)施例具體地對(duì)數(shù)據(jù)庫(kù)中的鍵的成員進(jìn)行刪除操作時(shí),通過(guò)查詢(xún)數(shù)據(jù)區(qū)中的鍵,判斷成員對(duì)應(yīng)的成員版本信息是否與鍵的當(dāng)前鍵版本信息匹配,若不匹配,則確定該成員為待刪除的成員,將待刪除成員刪除。可見(jiàn),數(shù)據(jù)庫(kù)中鍵的成員的刪除操作時(shí)在數(shù)據(jù)庫(kù)底層進(jìn)行數(shù)據(jù)區(qū)合并時(shí)執(zhí)行的,并不會(huì)占用服務(wù)器的負(fù)載。
      [0030]綜上可知,本發(fā)明實(shí)施例提供的數(shù)據(jù)庫(kù)管理方案,既能夠縮短刪除成功的響應(yīng)時(shí)間,還不會(huì)為服
      當(dāng)前第1頁(yè)1 2 3 4 5 
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1