国产精品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>

      全局標(biāo)識(shí)生成方法及裝置的制造方法

      文檔序號(hào):9396905閱讀:266來(lái)源:國(guó)知局
      全局標(biāo)識(shí)生成方法及裝置的制造方法
      【技術(shù)領(lǐng)域】
      [0001]本公開涉及數(shù)據(jù)存儲(chǔ)領(lǐng)域,特別涉及一種全局標(biāo)識(shí)生成方法及裝置。
      【背景技術(shù)】
      [0002]在高并發(fā)分布式系統(tǒng)中,系統(tǒng)所管理的數(shù)據(jù)庫(kù)中用于存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)表非常大,這種大數(shù)據(jù)表會(huì)導(dǎo)致數(shù)據(jù)庫(kù)的查詢性能非常低。
      [0003]為了提高查詢性能,通常利用分片標(biāo)識(shí)將大數(shù)據(jù)表拆分成很多的小數(shù)據(jù)表,這樣則容易導(dǎo)致同一個(gè)數(shù)據(jù)可能被一條條分別記錄在不同的小數(shù)據(jù)表中,此時(shí)則要求小數(shù)據(jù)表中的每條數(shù)據(jù)記錄的標(biāo)識(shí)必須是全局唯一的,因此,需要為每條數(shù)據(jù)記錄生成一個(gè)全局唯一標(biāo)識(shí)O

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

      [0004]本公開提供一種全局標(biāo)識(shí)生成方法及裝置。所述技術(shù)方案如下:
      [0005]根據(jù)本公開實(shí)施例的第一方面,提供一種全局標(biāo)識(shí)生成方法,應(yīng)用于當(dāng)前服務(wù)器中,所述方法包括:
      [0006]在為存儲(chǔ)至數(shù)據(jù)分片中的數(shù)據(jù)記錄生成全局標(biāo)識(shí)時(shí),獲取所述數(shù)據(jù)分片的分片標(biāo)識(shí);
      [0007]將上一次生成的增長(zhǎng)值加上預(yù)定步長(zhǎng),得到所述數(shù)據(jù)記錄的增長(zhǎng)值;
      [0008]為所述數(shù)據(jù)記錄生成全局標(biāo)識(shí),所述全局標(biāo)識(shí)包括生成所述全局標(biāo)識(shí)的生成時(shí)亥IJ、所述分片標(biāo)識(shí)和增長(zhǎng)序列,所述增長(zhǎng)序列中包含所述增長(zhǎng)值。
      [0009]上述技術(shù)方案實(shí)現(xiàn)的有益效果為:通過(guò)獲取數(shù)據(jù)片的分片標(biāo)識(shí),得到數(shù)據(jù)記錄的增長(zhǎng)值,將生成時(shí)刻、分片標(biāo)識(shí)和增長(zhǎng)序列生成該數(shù)據(jù)記錄的全局標(biāo)識(shí);由于在查詢某個(gè)數(shù)據(jù)記錄時(shí),可以利用該數(shù)據(jù)記錄的全局標(biāo)識(shí)中的生成時(shí)刻和分片標(biāo)識(shí)進(jìn)行查詢,然后在符合條件的全局標(biāo)識(shí)中再查詢?cè)摂?shù)據(jù)記錄全局標(biāo)識(shí)中的增長(zhǎng)序列,因此可以提高查詢的效率,解決了當(dāng)數(shù)據(jù)記錄非常多時(shí),查詢效率比較低的問(wèn)題;達(dá)到了生成的全局唯一標(biāo)識(shí)包含時(shí)間、分片標(biāo)識(shí)等豐富?目息,查詢效率提尚的效果。
      [0010]可選的,所述獲取所述數(shù)據(jù)分片的分片標(biāo)識(shí),包括:
      [0011]獲取用于標(biāo)識(shí)用戶的用戶標(biāo)識(shí),所述用戶標(biāo)識(shí)由數(shù)字組成;
      [0012]將所述用戶標(biāo)識(shí)除以預(yù)定值,將得到的余數(shù)結(jié)果確定為所述數(shù)據(jù)分片的分片標(biāo)識(shí),所述數(shù)據(jù)分片用于存儲(chǔ)具有相同余數(shù)結(jié)果的用戶標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù),所述預(yù)定值為用于存儲(chǔ)數(shù)據(jù)的服務(wù)器的數(shù)量。
      [0013]上述技術(shù)方案實(shí)現(xiàn)的有益效果為:通過(guò)將相同余數(shù)結(jié)果的用戶標(biāo)識(shí)劃分到一個(gè)分片標(biāo)識(shí)中,可以將同一個(gè)用戶的所有數(shù)據(jù)記錄均劃分到同一個(gè)分片中,在查詢同一個(gè)用戶的數(shù)據(jù)記錄時(shí),僅需要到該用戶所對(duì)應(yīng)的分片中查詢即可,因此提高了查詢效率,解決了當(dāng)數(shù)據(jù)記錄非常多時(shí),查詢效率比較低的問(wèn)題。
      [0014]可選的,所述將上一次生成的增長(zhǎng)值加上預(yù)定步長(zhǎng),得到所述數(shù)據(jù)記錄的增長(zhǎng)值,包括:
      [0015]檢測(cè)正常工作的服務(wù)器的數(shù)量是否發(fā)生變化,所述服務(wù)器為用于為數(shù)據(jù)記錄生成全局標(biāo)識(shí)的服務(wù)器;
      [0016]若正常工作的服務(wù)器的數(shù)量發(fā)生變化,則獲取發(fā)生故障的服務(wù)器的數(shù)量,將所述發(fā)生故障的服務(wù)器的數(shù)量記為第一數(shù)量,將上一次計(jì)算用的預(yù)定步長(zhǎng)減去所述第一數(shù)量,得到變化后的預(yù)定步長(zhǎng),將所述變化后的預(yù)定步長(zhǎng)記為第一變化步長(zhǎng);將上一次生成的增長(zhǎng)值加上所述第一變化步長(zhǎng),得到所述數(shù)據(jù)記錄的增長(zhǎng)值;
      [0017]或者,
      [0018]獲取恢復(fù)工作的服務(wù)器的數(shù)量,將所述恢復(fù)工作的服務(wù)器的數(shù)量記為第二數(shù)量,將上一次計(jì)算用的預(yù)定步長(zhǎng)加上所述第二數(shù)量,得到變化后的預(yù)定步長(zhǎng),將所述變化后的預(yù)定步長(zhǎng)記為第二變化步長(zhǎng);將上一次生成的增長(zhǎng)值加上所述第二變化步長(zhǎng),得到所述數(shù)據(jù)記錄的增長(zhǎng)值。
      [0019]上述技術(shù)方案實(shí)現(xiàn)的有益效果為:通過(guò)針對(duì)正常工作的服務(wù)器的數(shù)量對(duì)預(yù)定步長(zhǎng)做出實(shí)時(shí)更改,這樣在出現(xiàn)故障的服務(wù)器無(wú)法為數(shù)據(jù)記錄生成全局標(biāo)識(shí)時(shí),也可以利用這些出現(xiàn)故障的服務(wù)器所占用的增長(zhǎng)值,因此避免了因故障服務(wù)器造成對(duì)增長(zhǎng)值的浪費(fèi),達(dá)到了可以節(jié)約增長(zhǎng)值的效果。
      [0020]可選的,所述為所述數(shù)據(jù)記錄生成全局標(biāo)識(shí),包括:
      [0021]將用于標(biāo)識(shí)所述當(dāng)前服務(wù)器的標(biāo)識(shí)與所述數(shù)據(jù)記錄的增長(zhǎng)值進(jìn)行綁定,得到所述數(shù)據(jù)記錄的增長(zhǎng)序列;
      [0022]將生成所述全局標(biāo)識(shí)的生成時(shí)刻、所述分片標(biāo)識(shí)和所述數(shù)據(jù)記錄的增長(zhǎng)序列組合成所述數(shù)據(jù)記錄的全局標(biāo)識(shí)。
      [0023]上述技術(shù)方案實(shí)現(xiàn)的有益效果為:通過(guò)將全局標(biāo)識(shí)的生成時(shí)刻、分片標(biāo)識(shí)和數(shù)據(jù)記錄的增長(zhǎng)序列構(gòu)成全局標(biāo)識(shí),由于同一臺(tái)服務(wù)器在同一個(gè)生成時(shí)刻,僅能為一條數(shù)據(jù)記錄生成增長(zhǎng)值,因此通過(guò)上述三個(gè)元素構(gòu)成的全局標(biāo)識(shí)是全局唯一的,達(dá)到了可以保證為數(shù)據(jù)記錄生成的全局標(biāo)識(shí)是唯一的效果。
      [0024]可選的,所述方法還包括:
      [0025]接收通知指令,所述通知指令包含一個(gè)變量參數(shù),所述變量參數(shù)用于指示連續(xù)未成功生成全局標(biāo)識(shí)的次數(shù);
      [0026]在接收到所述通知指令后,將上一次生成的增長(zhǎng)值加上預(yù)定步長(zhǎng)后減去所述變量參數(shù),得到所述數(shù)據(jù)記錄的增長(zhǎng)值,執(zhí)行所述為所述數(shù)據(jù)記錄生成全局標(biāo)識(shí)的步驟。
      [0027]上述技術(shù)方案實(shí)現(xiàn)的有益效果為:利用變量參數(shù)用于指示連續(xù)未成功生成全局標(biāo)識(shí)的次數(shù),達(dá)到了節(jié)約全局標(biāo)識(shí)的效果。
      [0028]可選的,所述方法還包括:
      [0029]當(dāng)所述當(dāng)前服務(wù)器生成的一個(gè)全局標(biāo)識(shí)被注銷后,將所述全局標(biāo)識(shí)中的增長(zhǎng)序列分配到增長(zhǎng)序列池中;
      [0030]當(dāng)為所述數(shù)據(jù)記錄生成全局標(biāo)識(shí)時(shí),檢測(cè)所述增長(zhǎng)序列池中是否存在增長(zhǎng)序列;
      [0031]若所述增長(zhǎng)序列池中存在增長(zhǎng)序列,則將所述增長(zhǎng)序列池中的增長(zhǎng)序列分配給所述數(shù)據(jù)記錄。
      [0032]上述技術(shù)方案實(shí)現(xiàn)的有益效果為:通過(guò)增長(zhǎng)序列池實(shí)現(xiàn)將注銷后的全局標(biāo)識(shí)進(jìn)行回收利用,因此可以避免被注銷后的全局標(biāo)識(shí)的浪費(fèi),提高了全局標(biāo)識(shí)利用率的效果。
      [0033]根據(jù)本公開實(shí)施例的第二方面,提供一種全局標(biāo)識(shí)生成裝置,應(yīng)用于當(dāng)前服務(wù)器中,所述裝置包括:
      [0034]獲取模塊,被配置為在為存儲(chǔ)至數(shù)據(jù)分片中的數(shù)據(jù)記錄生成全局標(biāo)識(shí)時(shí),獲取所述數(shù)據(jù)分片的分片標(biāo)識(shí)
      [0035]第一計(jì)算模塊,被配置為將上一次生成的增長(zhǎng)值加上預(yù)定步長(zhǎng),得到所述數(shù)據(jù)記錄的增長(zhǎng)值;
      [0036]生成模塊,被配置為為所述數(shù)據(jù)記錄生成全局標(biāo)識(shí),所述全局標(biāo)識(shí)包括生成所述全局標(biāo)識(shí)的生成時(shí)刻、所述獲取模塊獲取的所述分片標(biāo)識(shí)和增長(zhǎng)序列,所述增長(zhǎng)序列中包含所述第一計(jì)算模塊計(jì)算得到的所述增長(zhǎng)值。
      [0037]上述裝置實(shí)現(xiàn)的有益效果為:通過(guò)獲取數(shù)據(jù)片的分片標(biāo)識(shí),得到數(shù)據(jù)記錄的增長(zhǎng)值,將生成時(shí)刻、分片標(biāo)識(shí)和增長(zhǎng)序列生成該數(shù)據(jù)記錄的全局標(biāo)識(shí);由于在查詢某個(gè)數(shù)據(jù)記錄時(shí),可以利用該數(shù)據(jù)記錄的全局標(biāo)識(shí)中的生成時(shí)刻和分片標(biāo)識(shí)進(jìn)行查詢,然后在符合條件的全局標(biāo)識(shí)中再查詢?cè)摂?shù)據(jù)記錄全局標(biāo)識(shí)中的增長(zhǎng)序列,因此可以提高查詢的效率,解決了當(dāng)數(shù)據(jù)記錄非常多時(shí),查詢效率比較低的問(wèn)題;達(dá)到了生成的全局唯一標(biāo)識(shí)包含時(shí)間、分片標(biāo)識(shí)等豐富信息,查詢效率提高的效果。
      [0038]可選的,所述獲取模塊,包括:
      [0039]獲取子模塊,被配置為獲取用于標(biāo)識(shí)用戶的用戶標(biāo)識(shí),所述用戶標(biāo)識(shí)由數(shù)字組成;
      [0040]取模子模塊,被配置為將所述獲取子模塊獲取的所述用戶標(biāo)識(shí)除以預(yù)定值,將得到的余數(shù)結(jié)果確定為所述數(shù)據(jù)分片的分片標(biāo)識(shí),所述數(shù)據(jù)分片用于存儲(chǔ)具有相同余數(shù)結(jié)果的用戶標(biāo)識(shí)所對(duì)應(yīng)的數(shù)據(jù),所述預(yù)定值為用于存儲(chǔ)數(shù)據(jù)的服務(wù)器的數(shù)量。
      [0041]上述裝置實(shí)現(xiàn)的有益效果為:通過(guò)將相同余數(shù)結(jié)果的用戶標(biāo)識(shí)劃分到一個(gè)分片標(biāo)識(shí)中,可以將同一個(gè)用戶的所有數(shù)據(jù)記錄均劃分到同一個(gè)分片中,在查詢同一個(gè)用戶的數(shù)據(jù)記錄時(shí),僅需要到該用戶所對(duì)應(yīng)的分片中查詢即可,因此提高了查詢效率,解決了當(dāng)數(shù)據(jù)記錄非常多時(shí),查詢效率比較低的問(wèn)題。
      [0042]可選的,所述第一計(jì)算模塊,包括:
      [0043]檢測(cè)子模塊,被配置為檢測(cè)正常工作的服務(wù)器的數(shù)量是否發(fā)生變化,所述服務(wù)器為用于為數(shù)據(jù)記錄生成全局標(biāo)識(shí)的服務(wù)器;
      [0044]第一計(jì)算子模塊,被配置為若所述檢測(cè)子模塊檢測(cè)出正常工作的服務(wù)器的數(shù)量發(fā)生變化,則獲取發(fā)生故障的服務(wù)器的數(shù)量,將所述發(fā)生故障的服務(wù)器的數(shù)量記為第一數(shù)量,將上一次計(jì)算用的預(yù)定步長(zhǎng)減去所述第一數(shù)量,得到變化后的預(yù)定步長(zhǎng),將所述變化后的預(yù)定步長(zhǎng)記為第一變化步長(zhǎng);將上一次生成的增長(zhǎng)值加上所述第一變化步長(zhǎng),得到所述數(shù)據(jù)記錄的增長(zhǎng)值;
      [0045]或者,
      [0046]第二計(jì)算子模塊,被配置為獲取恢復(fù)工作的服務(wù)器的數(shù)量,將所述恢復(fù)工作的服務(wù)器的數(shù)量記為第二數(shù)量,將上一次計(jì)算用的預(yù)定步長(zhǎng)加上所述第二數(shù)量,得到變化后的預(yù)定步長(zhǎng),將所述變化后的預(yù)定步長(zhǎng)記為第二變化步長(zhǎng);將上一次生成的增長(zhǎng)值加上變化后的所述第二變化步長(zhǎng),得到所述數(shù)據(jù)記錄的增長(zhǎng)值。
      [0047]上述裝置實(shí)現(xiàn)的有益效果為:通過(guò)針對(duì)正常工作的服務(wù)器的數(shù)量對(duì)預(yù)定步長(zhǎng)做出實(shí)時(shí)更改,這樣在出現(xiàn)故障的服務(wù)器無(wú)法為數(shù)據(jù)記錄生成全局標(biāo)識(shí)時(shí),也可以利用這些出現(xiàn)故障的服務(wù)器所占用的增長(zhǎng)值,因此避免了因故障服務(wù)器造成對(duì)增長(zhǎng)值的浪費(fèi),達(dá)到了可以節(jié)約增長(zhǎng)值的效果。
      [0048]可選的,所述生成模塊,包括:
      [0049]綁定子模塊,被配置為將用于標(biāo)識(shí)所述當(dāng)前服務(wù)器的標(biāo)識(shí)與所述數(shù)據(jù)記錄的增長(zhǎng)值進(jìn)行綁定,得到所述數(shù)據(jù)記錄的增長(zhǎng)序列;
      [0050]組合子模塊,被配置為將生成所述全局標(biāo)識(shí)的生成時(shí)刻、所述分片標(biāo)識(shí)和所述數(shù)據(jù)記錄的增長(zhǎng)序列組合成所述數(shù)據(jù)記錄的全局標(biāo)識(shí)。
      [0051]
      當(dāng)前第1頁(yè)1 2 3 4 5 
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1