国产精品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ù)存儲方法及分布式數(shù)據(jù)集群系統(tǒng)的制作方法

      文檔序號:7822551閱讀:306來源:國知局
      分布式數(shù)據(jù)存儲方法及分布式數(shù)據(jù)集群系統(tǒng)的制作方法
      【專利摘要】本發(fā)明公開了一種分布式數(shù)據(jù)存儲方法及分布式數(shù)據(jù)集群系統(tǒng)。其中方法包括:接收待存儲的至少兩條數(shù)據(jù);將上述數(shù)據(jù)中的第一條數(shù)據(jù)的正本以及K份副本分別存儲到第一組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中;以及將上述數(shù)據(jù)中的第二條數(shù)據(jù)的正本以及K份副本分別存儲到第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中;其中,第一組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器不完全相同。利用本發(fā)明提供的方案,當(dāng)N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中任一個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器出現(xiàn)問題時,盡量由集群的其它數(shù)據(jù)節(jié)點(diǎn)服務(wù)器均衡地承擔(dān)服務(wù)壓力,以避免對某幾個特定的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器產(chǎn)生較大的影響。
      【專利說明】分布式數(shù)據(jù)存儲方法及分布式數(shù)據(jù)集群系統(tǒng)

      【技術(shù)領(lǐng)域】
      [0001] 本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò)【技術(shù)領(lǐng)域】,具體涉及一種分布式數(shù)據(jù)存儲方法及分布式數(shù) 據(jù)集群系統(tǒng)。

      【背景技術(shù)】
      [0002] 分布式數(shù)據(jù)存儲系統(tǒng)就是將數(shù)據(jù)分散存儲在多臺獨(dú)立的設(shè)備上。傳統(tǒng)的數(shù)據(jù)存儲 系統(tǒng)采用集中的存儲服務(wù)器存放所有數(shù)據(jù),存儲服務(wù)器成為系統(tǒng)性能的瓶頸,也是可靠性 和安全性的焦點(diǎn),不能滿足大規(guī)模存儲應(yīng)用的需要。分布式數(shù)據(jù)存儲系統(tǒng)采用可擴(kuò)展的系 統(tǒng)結(jié)構(gòu),利用多臺存儲服務(wù)器分擔(dān)存儲負(fù)荷,利用位置服務(wù)器定位存儲信息,它不但提高了 系統(tǒng)的可靠性、可用性和存取效率,還易于擴(kuò)展。
      [0003] 分布式數(shù)據(jù)存儲系統(tǒng)為具有很多數(shù)據(jù)節(jié)點(diǎn)的集群系統(tǒng),每個數(shù)據(jù)節(jié)點(diǎn)可以理解為 一個數(shù)據(jù)存儲服務(wù)器。例如,集群系統(tǒng)具有6個數(shù)據(jù)節(jié)點(diǎn),每個數(shù)據(jù)節(jié)點(diǎn)相當(dāng)于一個物理的 服務(wù)器,本文稱為數(shù)據(jù)節(jié)點(diǎn)服務(wù)器。在做數(shù)據(jù)存儲時,將若干條數(shù)據(jù)存儲到對應(yīng)的數(shù)據(jù)節(jié)點(diǎn) 中,這是分布式數(shù)據(jù)存儲系統(tǒng)核心的概念。
      [0004] 在分布式數(shù)據(jù)存儲技術(shù)中還有復(fù)制的概念。集群系統(tǒng)作為一個整體,對外要保證 其高可用性,集群中某些數(shù)據(jù)節(jié)點(diǎn)的損壞不會影響對外的服務(wù)。為了滿足高可用性的目的, 需要做復(fù)制。將一條數(shù)據(jù)在集群中放置多份,即多份冗余。當(dāng)某一份數(shù)據(jù)出現(xiàn)問題或某個 數(shù)據(jù)節(jié)點(diǎn)出現(xiàn)問題時,可以采用其它的份來補(bǔ)足,使得這個服務(wù)能繼續(xù)進(jìn)行。
      [0005] 現(xiàn)有的分布式數(shù)據(jù)存儲策略是,當(dāng)接收到多條數(shù)據(jù)時,將這些數(shù)據(jù)全部存儲到某 一個數(shù)據(jù)節(jié)點(diǎn)上,并將這些數(shù)據(jù)的其它備份分別存儲到其它數(shù)據(jù)節(jié)點(diǎn)上。舉例來說,對于 數(shù)據(jù)節(jié)點(diǎn)Node_l,Node_2和Node_3,復(fù)制是將Node_l中多條數(shù)據(jù)分別鏡像到Node_2和 Node_3, Node_l,Node_2和Node_3的數(shù)據(jù)具有相關(guān)性。若Node_3出現(xiàn)問題,需要Node_l, Node_2來進(jìn)行替換,幫助Node_3完成它需要完成的工作。由于數(shù)據(jù)具有相關(guān)性,Node_3 的工作都分?jǐn)偨o了 Node_l和Node_2,這樣所出現(xiàn)的問題是:當(dāng)Node_3巖機(jī)時,Node_4, Node_5和Node_6感覺不到Node_3宕機(jī),只有Node_l和Node_2具有這個壓力。


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

      [0006] 鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上 述問題的分布式數(shù)據(jù)集群系統(tǒng)和相應(yīng)的分布式數(shù)據(jù)存儲方法。
      [0007] 根據(jù)本發(fā)明的一個方面,提供了一種分布式數(shù)據(jù)存儲方法,包括:
      [0008] 接收待存儲的至少兩條數(shù)據(jù);
      [0009] 將所述至少兩條數(shù)據(jù)中的第一條數(shù)據(jù)的正本以及K份副本分別存儲到N個數(shù)據(jù)節(jié) 點(diǎn)服務(wù)器中的第一組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,其中所述第一組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中 每一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲所述第一條數(shù)據(jù)的正本以及K份副本其中之一;以及
      [0010] 將所述至少兩條數(shù)據(jù)中的第二條數(shù)據(jù)的正本以及K份副本分別存儲到所述N個數(shù) 據(jù)節(jié)點(diǎn)服務(wù)器中的第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,其中所述第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù) 器中每一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲所述第二條數(shù)據(jù)的正本以及K份副本其中之一;
      [0011] 其中,所述第一組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與所述第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器不 完全相同,K為大于或等于1的整數(shù),N為大于K+1的整數(shù)。
      [0012] 根據(jù)本發(fā)明的另一方面,提供了一種分布式數(shù)據(jù)存儲方法,包括:
      [0013] 接收待存儲的M條數(shù)據(jù),M為大于1的整數(shù);
      [0014] 將M條數(shù)據(jù)分為N組數(shù)據(jù),將所述N組數(shù)據(jù)的正本分別存儲到N個數(shù)據(jù)節(jié)點(diǎn)服務(wù) 器中,N為大于1的整數(shù),且每一組數(shù)據(jù)的正本僅存儲在一個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中;
      [0015] 對于存儲第i組數(shù)據(jù)的正本的第i個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器,i e [1,N],將所述第i組 數(shù)據(jù)分為D個分組的數(shù)據(jù),D為大于或等于1的整數(shù),將每個分組中所有數(shù)據(jù)的K份副本分 別存儲到所述N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中除了第i個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器以外的任意L個數(shù)據(jù)節(jié)點(diǎn) 服務(wù)器中,且分組中每一條數(shù)據(jù)的任意兩份副本不在同一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,K為大于或等 于1的整數(shù),L不小于K,且N不小于K+1。
      [0016] 根據(jù)本發(fā)明的另一方面,提供了一種分布式數(shù)據(jù)集群系統(tǒng),包括:多個數(shù)據(jù)節(jié)點(diǎn)服 務(wù)器;以及
      [0017] 數(shù)據(jù)接收器,適于接收待存儲的至少兩條數(shù)據(jù);
      [0018] 存儲器,適于將所述至少兩條數(shù)據(jù)中的第一條數(shù)據(jù)的正本以及K份副本分別存儲 到N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中的第一組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,其中所述第一組K+1個數(shù)據(jù) 節(jié)點(diǎn)服務(wù)器中每一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲所述第一條數(shù)據(jù)的正本以及K份副本其中之一;以 及將所述至少兩條數(shù)據(jù)中的第二條數(shù)據(jù)的正本以及K份副本分別存儲到所述N個數(shù)據(jù)節(jié)點(diǎn) 服務(wù)器中的第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,其中所述第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中每 一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲所述第二條數(shù)據(jù)的正本以及K份副本其中之一;其中,所述第一組 K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與所述第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器不完全相同,K為大于或等于1 的整數(shù),N為大于K+1的整數(shù)。
      [0019] 本發(fā)明提供的分布式數(shù)據(jù)存儲方法及分布式數(shù)據(jù)集群系統(tǒng)的數(shù)據(jù)存儲策略的核 心思想是盡量破壞現(xiàn)有技術(shù)中數(shù)據(jù)的正本及其副本存儲的相關(guān)性,對于其中兩條數(shù)據(jù)來 說,其正本及其副本所存儲的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器不完全相同。當(dāng)N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中任一 個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器出現(xiàn)問題時,盡量由集群的其它數(shù)據(jù)節(jié)點(diǎn)服務(wù)器均衡地承擔(dān)服務(wù)壓力, 以避免對某幾個特定的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器產(chǎn)生較大的影響。
      [0020] 上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段, 而可依照說明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠 更明顯易懂,以下特舉本發(fā)明的【具體實(shí)施方式】。

      【專利附圖】

      【附圖說明】
      [0021] 通過閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對于本領(lǐng)域普通 技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對本發(fā)明 的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
      [0022] 圖1示出了根據(jù)本發(fā)明一個實(shí)施例的分布式數(shù)據(jù)存儲方法的流程圖;
      [0023] 圖2示出了根據(jù)本發(fā)明另一個實(shí)施例的分布式數(shù)據(jù)存儲方法的流程圖;
      [0024] 圖3示出了根據(jù)本發(fā)明一個實(shí)施例的分布式數(shù)據(jù)集群系統(tǒng)的功能結(jié)構(gòu)框圖。

      【具體實(shí)施方式】
      [0025] 下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開 的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例 所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍 完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
      [0026] 圖1示出了根據(jù)本發(fā)明一個實(shí)施例的分布式數(shù)據(jù)存儲方法的流程圖。如圖1所示, 該方法包括如下步驟:
      [0027] 步驟S101,接收待存儲的至少兩條數(shù)據(jù)。
      [0028] 本發(fā)明的分布式數(shù)據(jù)集群系統(tǒng)在接收到待存儲的數(shù)據(jù)之后,以條為單位將數(shù)據(jù)存 儲到某一存儲空間中作為數(shù)據(jù)。本文中用M來表示接收到的待存儲數(shù)據(jù)的條數(shù)??蛇x地, 本方法可以根據(jù)至少兩條數(shù)據(jù)的數(shù)據(jù)量大小,從多個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中選取N個數(shù)據(jù)節(jié)點(diǎn) 服務(wù)器作為存儲這些數(shù)據(jù)的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器。
      [0029] 對于不同的集群系統(tǒng)來說,數(shù)據(jù)節(jié)點(diǎn)服務(wù)器的總數(shù)是不限定的,有的集群系統(tǒng)的 規(guī)模很大,數(shù)據(jù)節(jié)點(diǎn)也很多;而有的集群系統(tǒng)的規(guī)模較小,數(shù)據(jù)節(jié)點(diǎn)相對較少。而對于接收 到的數(shù)據(jù)來說,其數(shù)據(jù)量也是不定的。一般來說,如果接收到的數(shù)據(jù)量比較大,則應(yīng)選擇較 多的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲這些數(shù)據(jù),如果接收到的數(shù)據(jù)量比較小,則應(yīng)選擇較少的數(shù)據(jù)節(jié) 點(diǎn)服務(wù)器存儲這些數(shù)據(jù)。因此,本方法可根據(jù)數(shù)據(jù)量大小來選擇存儲這些數(shù)據(jù)的數(shù)據(jù)節(jié)點(diǎn) 服務(wù)器的個數(shù),本文中用N來表示存儲這些數(shù)據(jù)的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器的個數(shù)。
      [0030] 步驟S102,將上述至少兩條數(shù)據(jù)中的第一條數(shù)據(jù)的正本以及K份副本分別存儲到 N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中的第一組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,其中第一組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù) 器中每一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲第一條數(shù)據(jù)的正本以及K份副本其中之一。
      [0031] 步驟S103,將上述至少兩條數(shù)據(jù)中的第二條數(shù)據(jù)的正本以及K份副本分別存儲到 N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中的第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,其中第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù) 器中每一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲第二條數(shù)據(jù)的正本以及K份副本其中之一。
      [0032] 在上述步驟S102和步驟S103中,第一組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與第二組K+1個 數(shù)據(jù)節(jié)點(diǎn)服務(wù)器不完全相同,K為大于或等于1的整數(shù),N為大于K+1的整數(shù)。
      [0033] 在存儲M條數(shù)據(jù)時,可以依照排序依次存儲每條數(shù)據(jù),也可以分組后依次存儲各 個組的數(shù)據(jù),還可以同時存儲這M條數(shù)據(jù)。上述步驟S102和步驟S103用于說明M條數(shù)據(jù) 中其中兩條數(shù)據(jù)的存儲方式,這兩個步驟的執(zhí)行順序可不分先后。而且,上述第一條數(shù)據(jù)和 第二條數(shù)據(jù)并非特指M條數(shù)據(jù)中排位靠前的兩條數(shù)據(jù),而是指的是M條數(shù)據(jù)中的兩條數(shù)據(jù), 可以為任意的兩條數(shù)據(jù)。
      [0034] 具體地,在步驟S102中,將第一條數(shù)據(jù)的正本以及K份副本分別存儲到第一組K+1 個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中。對于第一條數(shù)據(jù)來說,其正本與K份副本加起來共存儲K+1份,第一 組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中的每一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器用于存儲其中的一份。在步驟S103中, 將第二條數(shù)據(jù)的正本以及K份副本分別存儲到第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中。對于第二 條數(shù)據(jù)來說,其正本與K份副本加起來共存儲K+1份,第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中的每 一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器用于存儲其中的一份。
      [0035] 作為一種實(shí)施方式,第一條數(shù)據(jù)的正本和第二條數(shù)據(jù)的正本被存儲到相同的數(shù)據(jù) 節(jié)點(diǎn)服務(wù)器中,以及存儲第二條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與存儲第一條數(shù)據(jù) 的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器完全不同。舉例來說,若N = 6, K = 2,第一條數(shù)據(jù)的正 本和第二條數(shù)據(jù)的正本被存儲到Node_l中,如果第一條數(shù)據(jù)的2份副本被存儲到Node_2 和Node_3中,那么第二條數(shù)據(jù)的2份副本只能被存儲到Node_4, Node_5和Node_6中的任 兩個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中。在現(xiàn)有技術(shù)中,如果第一條數(shù)據(jù)的正本和第二條數(shù)據(jù)的正本被存 儲到Node_l中,第一條數(shù)據(jù)的2份副本被存儲到Node_2和Node_3中,必然第二條數(shù)據(jù)的2 份副本也被存儲到Node_2和Node_3中。本方式破壞了現(xiàn)有技術(shù)中數(shù)據(jù)存儲的相關(guān)性,使 得存儲第二條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與存儲第一條數(shù)據(jù)的K份副本的K個 數(shù)據(jù)節(jié)點(diǎn)服務(wù)器完全不同。當(dāng)一個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器出現(xiàn)問題時,由集群的盡可能多的其它 數(shù)據(jù)節(jié)點(diǎn)服務(wù)器共同來承擔(dān)服務(wù)壓力,避免對某幾個特定的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器產(chǎn)生較大的影 響。
      [0036] 作為另一種實(shí)施方式,第一條數(shù)據(jù)的正本和第二條數(shù)據(jù)的正本被存儲到相同的數(shù) 據(jù)節(jié)點(diǎn)服務(wù)器中,以及存儲第二條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與存儲第一條數(shù) 據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器部分不同。舉例來說,若N = 6,K = 2,第一條數(shù)據(jù)的 正本和第二條數(shù)據(jù)的正本被存儲到Node_l中,如果第一條數(shù)據(jù)的2份副本被存儲到Node_2 和Node_3中,那么第二條數(shù)據(jù)的2份副本可選擇存儲到與Node_2和Node_3部分不同的數(shù) 據(jù)節(jié)點(diǎn)服務(wù)器中,如Node_2與Node_4, Node_5和Node_6中的任一個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器,或者 Node_3與Node_4,Node_5和Node_6中的任一個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器。本方式也在一定程度上 破壞了現(xiàn)有技術(shù)中數(shù)據(jù)存儲的相關(guān)性,使得存儲第二條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服 務(wù)器與存儲第一條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器部分不同。當(dāng)一個數(shù)據(jù)節(jié)點(diǎn)服務(wù) 器出現(xiàn)問題時,由集群的盡可能多的其它數(shù)據(jù)節(jié)點(diǎn)服務(wù)器共同來承擔(dān)服務(wù)壓力,避免對某 幾個特定的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器產(chǎn)生較大的影響。
      [0037] 作為另一種實(shí)施方式,第一條數(shù)據(jù)的正本和第二條數(shù)據(jù)的正本被存儲到不同的數(shù) 據(jù)節(jié)點(diǎn)服務(wù)器中,以及存儲第二條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與存儲第一條數(shù) 據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器完全不同。舉例來說,若N = 6,K = 2,第一條數(shù)據(jù)的 正本被存儲到Node_l中,第一條數(shù)據(jù)的2份副本被存儲到Node_2和Node_3中,那么第二 條數(shù)據(jù)的正本則被存儲到除Node_l以外的其它任一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,第二條數(shù)據(jù)的2份 副本則被存儲到除Node_2和Node_3、以及其正本所存儲的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器以外的其它任 兩個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中。這種方式破壞了兩條數(shù)據(jù)的正本必須存儲到同一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器 的規(guī)定以及數(shù)據(jù)存儲的相關(guān)性,當(dāng)一個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器出現(xiàn)問題時,由集群的盡可能多的 其它數(shù)據(jù)節(jié)點(diǎn)服務(wù)器共同來承擔(dān)服務(wù)壓力,避免對某幾個特定的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器產(chǎn)生較大 的影響。
      [0038] 作為另一種實(shí)施方式,第一條數(shù)據(jù)的正本和第二條數(shù)據(jù)的正本被存儲到不同的數(shù) 據(jù)節(jié)點(diǎn)服務(wù)器中,以及存儲第二條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與存儲第一條數(shù) 據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器部分不同。若N = 6, K = 2,第一條數(shù)據(jù)的正本被存 儲到Node_l中,第一條數(shù)據(jù)的2份副本被存儲到Node_2和Node_3中,那么第二條數(shù)據(jù)的 正本則被存儲到除Node_l以外的其它任一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,第二條數(shù)據(jù)的2份副本則被 存儲到除其正本所存儲的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器以外的與Node_2和Node_3不完全相同的兩個數(shù) 據(jù)節(jié)點(diǎn)服務(wù)器中。這種方式也破壞了兩條數(shù)據(jù)的正本必須存儲到同一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器的規(guī) 定以及數(shù)據(jù)存儲的相關(guān)性,當(dāng)一個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器出現(xiàn)問題時,由集群的盡可能多的其它 數(shù)據(jù)節(jié)點(diǎn)服務(wù)器共同來承擔(dān)服務(wù)壓力,避免對某幾個特定的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器產(chǎn)生較大的影 響。
      [0039] 在本實(shí)施例提供的上述各種實(shí)施方式中,均利用位置服務(wù)器記錄和定位所有數(shù)據(jù) 的存儲位置信息,保證系統(tǒng)的可用性。
      [0040] 由上述內(nèi)容可知,本實(shí)施例提供的分布式數(shù)據(jù)存儲方法的核心思想是盡量破壞現(xiàn) 有技術(shù)中數(shù)據(jù)的正本及其副本存儲的相關(guān)性,對于其中兩條數(shù)據(jù)來說,其正本及其副本所 存儲的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器不完全相同。如果進(jìn)一步提升本方法的技術(shù)效果,可使盡可能多的 數(shù)據(jù)正本及其副本所存儲的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器不完全相同,即盡量使數(shù)據(jù)的存儲在多個數(shù)據(jù) 節(jié)點(diǎn)服務(wù)器中做均衡。一種最優(yōu)選的實(shí)施方式的技術(shù)效果就是,當(dāng)N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中 任一個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器出現(xiàn)問題時,都由集群的其它N-1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器共同來承擔(dān)服 務(wù)壓力,以避免對某幾個特定的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器產(chǎn)生較大的影響。
      [0041] 圖2示出了根據(jù)本發(fā)明另一個實(shí)施例的分布式數(shù)據(jù)存儲方法的流程圖。如圖2所 示,該方法包括如下步驟:
      [0042] 步驟S201,接收待存儲的M條數(shù)據(jù),M為大于1的整數(shù)。
      [0043] 本發(fā)明的分布式數(shù)據(jù)集群系統(tǒng)在接收到待存儲的數(shù)據(jù)之后,以條為單位將數(shù)據(jù)存 儲到某一存儲空間中作為數(shù)據(jù)。本文中用M來表示接收到的待存儲數(shù)據(jù)的條數(shù)??蛇x地, 本方法還可以根據(jù)M條數(shù)據(jù)的數(shù)據(jù)量大小,從多個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中選取N個數(shù)據(jù)節(jié)點(diǎn)服 務(wù)器作為存儲這些數(shù)據(jù)的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器。
      [0044] 對于不同的集群系統(tǒng)來說,數(shù)據(jù)節(jié)點(diǎn)服務(wù)器的總數(shù)是不限定的,有的集群系統(tǒng)的 規(guī)模很大,數(shù)據(jù)節(jié)點(diǎn)也很多;而有的集群系統(tǒng)的規(guī)模較小,數(shù)據(jù)節(jié)點(diǎn)相對較少。而對于接收 到的數(shù)據(jù)來說,其數(shù)據(jù)量也是不定的。一般來說,如果接收到的數(shù)據(jù)數(shù)據(jù)量比較大,則應(yīng)選 擇較多的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲這些數(shù)據(jù),如果接收到的數(shù)據(jù)數(shù)據(jù)量比較小,則應(yīng)選擇較少 的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲這些數(shù)據(jù)。因此,本方法可根據(jù)數(shù)據(jù)量大小來選擇存儲這些數(shù)據(jù)的 數(shù)據(jù)節(jié)點(diǎn)服務(wù)器的個數(shù),本文中用N來表示存儲這些數(shù)據(jù)的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器的個數(shù)。
      [0045] 步驟S202,將M條數(shù)據(jù)分為N組數(shù)據(jù),將N組數(shù)據(jù)的正本分別存儲到N個數(shù)據(jù)節(jié)點(diǎn) 服務(wù)器中,N為大于1的整數(shù),且每一組數(shù)據(jù)的正本僅存儲在一個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中。
      [0046] 本步驟將M條數(shù)據(jù)分為N組,如果M是N的倍數(shù),則優(yōu)選地將M條數(shù)據(jù)分別等分為 N組。舉例來說,若M = 1000, N = 10,則將這1000條數(shù)據(jù)等分為10組,每組有100條數(shù) 據(jù)。
      [0047] 如果M不是N的倍數(shù),則可將M條數(shù)據(jù)分為N組,且每兩組數(shù)據(jù)的條數(shù)差值小于或 等于預(yù)設(shè)值,該預(yù)設(shè)值可根據(jù)實(shí)際情況靈活設(shè)置,其目的是盡量使每個組的數(shù)據(jù)的數(shù)量相 差不多。舉例來說,若M= 1024, N = 6,則將這1024條數(shù)據(jù)分為6組,其中2組有170條 數(shù)據(jù),4組有171條數(shù)據(jù),每兩組的數(shù)據(jù)的條數(shù)差值小于或等于預(yù)設(shè)值1。
      [0048] 在將數(shù)據(jù)分組之后,將N組數(shù)據(jù)的正本分別存儲到N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,每個數(shù) 據(jù)節(jié)點(diǎn)服務(wù)器存儲一組數(shù)據(jù)的正本。
      [0049] 步驟S203,對于存儲第i組數(shù)據(jù)的正本的第i個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器,i e [1,N],將 第i組數(shù)據(jù)分為D個分組的數(shù)據(jù),D為大于或等于1的整數(shù),將每個分組中所有數(shù)據(jù)的K份 副本分別存儲到N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中除了第i個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器以外的任意L個數(shù)據(jù)節(jié) 點(diǎn)服務(wù)器中,且分組中每一條數(shù)據(jù)的任意兩份副本不在同一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,K為大于或 等于1的整數(shù),L不小于K,且N不小于K+1。
      [0050] 在將每組數(shù)據(jù)的正本存儲到對應(yīng)的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器之后,采用步驟S203完成各 組數(shù)據(jù)的K份副本的存儲。具體地,以第1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器為例,該數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲 了第1組數(shù)據(jù),本步驟將第1組數(shù)據(jù)分為D個分組的數(shù)據(jù),然后將每個分組的所有數(shù)據(jù)的K 份副本存儲到N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中除了第i個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器以外的任意L個數(shù)據(jù)節(jié)點(diǎn) 服務(wù)器中。除第1組數(shù)據(jù)以外的其它組數(shù)據(jù)也采取上述方式存儲副本。在將每個分組的所 有數(shù)據(jù)的K份副本存儲完之后,可再進(jìn)行調(diào)整,使得分組中每一條數(shù)據(jù)的任意兩份副本不 在同一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中。
      [0051] 作為一種實(shí)施方式,對應(yīng)于不同分組的、存儲數(shù)據(jù)的副本的L個數(shù)據(jù)節(jié)點(diǎn)服務(wù) 器完全不同。對于任一組數(shù)據(jù),將其進(jìn)一步分為D個分組之后,不同分組的數(shù)據(jù)的副 本所存儲的L個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器完全不同。具體地,可將任一組數(shù)據(jù)分為D組,例如 £> = [(/V - 1)/&」,然后將每個分組的數(shù)據(jù)的副本存儲到L個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,不同分組 的數(shù)據(jù)的副本所存儲的L個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器完全不同。
      [0052] 舉例來說,若M = 1000, N = 10, K = 2,則首先將這1000條數(shù)據(jù)等分為10組,每 組有1〇〇條數(shù)據(jù)。對于其中任一組的1〇〇條數(shù)據(jù),將其進(jìn)一步分為d = U1〇-i)/2」= 4個分 組,優(yōu)選地將這100條數(shù)據(jù)等分4個分組,得到每個分組的25條數(shù)據(jù)。對于任一個分組的 數(shù)據(jù),在除了其正本所存儲的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器以外的9個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中選取L = 2個 數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲該分組的數(shù)據(jù)的2份副本,并且不同分組的數(shù)據(jù)的副本所存儲的2個 數(shù)據(jù)節(jié)點(diǎn)服務(wù)器完全不同,同一分組中每一條數(shù)據(jù)的任意兩份副本不在同一數(shù)據(jù)節(jié)點(diǎn)服務(wù) 器中。
      [0053] 作為另一種實(shí)施方式,對應(yīng)于不同分組的、存儲數(shù)據(jù)的副本的L個數(shù)據(jù)節(jié)點(diǎn)服務(wù) 器部分不同。對于任一組數(shù)據(jù),將其進(jìn)一步分為D個分組之后,不同分組的數(shù)據(jù)的副本所存 儲的L個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器部分不同。具體地,可將任一組數(shù)據(jù)分為I) = Cli,然后將每個分 組的數(shù)據(jù)的副本存儲到L個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,不同分組的數(shù)據(jù)的副本所存儲的L個數(shù)據(jù) 節(jié)點(diǎn)服務(wù)器部分不同。
      [0054] 舉例來說,若M = 1024, N = 6, K = 2,則首先將這1024條數(shù)據(jù)分為6組,每組有 170或171條數(shù)據(jù)。對于其中任一組的數(shù)據(jù),將其進(jìn)一步分為D = = 10個分組,得到 每個分組約為17條左右的數(shù)據(jù)。對于任一個分組的數(shù)據(jù),在除了其正本所存儲的數(shù)據(jù)節(jié)點(diǎn) 服務(wù)器以外的5個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中選取L = 2個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲該分組的數(shù)據(jù)的 2份副本,一共有10種選法,每個分組擇取其中一種選法進(jìn)行存儲,使得不同分組的數(shù)據(jù)的 副本所存儲的2個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器不完全相同,同一分組中每一條數(shù)據(jù)的任意兩份副本不 在同一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中。
      [0055] 需要說明的是,本發(fā)明中D的確定不僅限于上述兩個公式,D = L(.V-1)/K」和 = ,D的值可根據(jù)數(shù)據(jù)節(jié)點(diǎn)服務(wù)器的數(shù)量進(jìn)行合理設(shè)置,只要保證本發(fā)明的存儲策 略可實(shí)施即可。
      [0056] 在本實(shí)施例提供的上述各種實(shí)施方式中,均利用位置服務(wù)器記錄和定位所有數(shù)據(jù) 的存儲位置信息,保證系統(tǒng)的可用性。
      [0057] 根據(jù)本實(shí)施例提供的分布式數(shù)據(jù)存儲方法,將M條數(shù)據(jù)分為N組數(shù)據(jù),將N組數(shù)據(jù) 的正本分別存儲到N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中;然后,將每個組的數(shù)據(jù)進(jìn)一步分為D個分組的數(shù) 據(jù),將每個分組的數(shù)據(jù)的K份副本存儲到N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中除了其正本所存儲的數(shù)據(jù) 節(jié)點(diǎn)服務(wù)器以外的任意L個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,且分組中每一條數(shù)據(jù)的任意兩份副本不在 同一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中。通過該方法破壞現(xiàn)有技術(shù)中數(shù)據(jù)的正本及其副本存儲的相關(guān)性, 可使盡可能多的數(shù)據(jù)正本及其副本所存儲的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器不完全相同,即盡量使數(shù)據(jù)的 存儲在多個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中做均衡。當(dāng)N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中任一個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器出 現(xiàn)問題時,都由集群的其它N-1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器共同來承擔(dān)服務(wù)壓力,以避免對某幾個 特定的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器產(chǎn)生較大的影響。
      [0058] 圖3示出了根據(jù)本發(fā)明一個實(shí)施例的分布式數(shù)據(jù)集群系統(tǒng)的功能結(jié)構(gòu)框圖。如圖 3所示,該分布式數(shù)據(jù)集群系統(tǒng)包括:多個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器310以及數(shù)據(jù)接收器320、存儲器 330 ;可選地,還包括:選擇器340。
      [0059] 數(shù)據(jù)接收器320適于接收待存儲的至少兩條數(shù)據(jù)。
      [0060] 選擇器340適于根據(jù)至少兩條數(shù)據(jù)的數(shù)據(jù)量大小,從多個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中選取 N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器作為存儲數(shù)據(jù)的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器。
      [0061] 對于不同的集群系統(tǒng)來說,數(shù)據(jù)節(jié)點(diǎn)服務(wù)器的總數(shù)是不限定的,有的集群系統(tǒng)的 規(guī)模很大,數(shù)據(jù)節(jié)點(diǎn)也很多;而有的集群系統(tǒng)的規(guī)模較小,數(shù)據(jù)節(jié)點(diǎn)相對較少。而對于接收 到的數(shù)據(jù)來說,其數(shù)據(jù)量也是不定的。一般來說,如果接收到的數(shù)據(jù)量比較大,則應(yīng)選擇較 多的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲這些數(shù)據(jù),如果接收到的數(shù)據(jù)比較小,則應(yīng)選擇較少的數(shù)據(jù)節(jié)點(diǎn) 服務(wù)器存儲這些數(shù)據(jù)。因此,集群系統(tǒng)中可包括選擇器340,用于根據(jù)接收到的至少兩條數(shù) 據(jù)的數(shù)據(jù)量大小來選擇存儲這些數(shù)據(jù)的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器的個數(shù)。
      [0062] 存儲器330適于將上述至少兩條數(shù)據(jù)中的第一條數(shù)據(jù)的正本以及K份副本分別 存儲到多個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器310中的第一組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,其中第一組K+1個 數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中每一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲第一條數(shù)據(jù)的正本以及K份副本其中之一;以 及,將上述至少兩條數(shù)據(jù)中的第二條數(shù)據(jù)的正本以及K份副本分別存儲到多個數(shù)據(jù)節(jié)點(diǎn)服 務(wù)器310中的第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,其中第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中每一 數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲第二條數(shù)據(jù)的正本以及K份副本其中之一;其中,第一組K+1個數(shù)據(jù)節(jié) 點(diǎn)服務(wù)器與第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器不完全相同,K為大于或等于1的整數(shù),且多個數(shù) 據(jù)節(jié)點(diǎn)服務(wù)器的個數(shù)大于K+1。
      [0063] 可選地,存儲器330具體適于:將第一條數(shù)據(jù)的正本和第二條數(shù)據(jù)的正本存儲到 相同的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,以及存儲第二條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與存儲 第一條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器完全不同。
      [0064] 可選地,存儲器330具體適于:將第一條數(shù)據(jù)的正本和第二條數(shù)據(jù)的正本存儲到 相同的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,以及存儲第二條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與存儲 第一條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器部分不同。
      [0065] 可選地,存儲器330具體適于:將第一條數(shù)據(jù)的正本和第二條數(shù)據(jù)的正本存儲到 不同的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,以及存儲第二條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與存儲 第一條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器完全不同。
      [0066] 可選地,存儲器330具體適于:將第一條數(shù)據(jù)的正本和第二條數(shù)據(jù)的正本存儲到 不同的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,以及存儲第二條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與存儲 第一條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器部分不同。
      [0067] 可選地,存儲器330還適于:
      [0068] 將M條數(shù)據(jù)分為N組數(shù)據(jù),將N組數(shù)據(jù)的正本分別存儲到N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中, N為大于1的整數(shù),且每一組數(shù)據(jù)的正本僅存儲在一個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中;
      [0069] 對于存儲第i組數(shù)據(jù)的正本的第i個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器,i e [1,N],將第i組數(shù)據(jù) 分為D個分組的數(shù)據(jù),D為大于或等于1的整數(shù),將每個分組中所有數(shù)據(jù)的K份副本分別存 儲到N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中除了第i個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器以外的任意L個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器 中,且分組中每一條數(shù)據(jù)的任意兩份副本不在同一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,K為大于或等于1的 整數(shù),L不小于K,且N不小于K+1。
      [0070] 具體地,對應(yīng)于不同分組的、存儲數(shù)據(jù)的副本的L個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器完全不同; 或者,對應(yīng)于不同分組的、存儲數(shù)據(jù)的副本的L個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器部分不同。優(yōu)選地,

      【權(quán)利要求】
      1. 一種分布式數(shù)據(jù)存儲方法,包括: 接收待存儲的至少兩條數(shù)據(jù); 將所述至少兩條數(shù)據(jù)中的第一條數(shù)據(jù)的正本W(wǎng)及K份副本分別存儲到N個數(shù)據(jù)節(jié)點(diǎn)服 務(wù)器中的第一組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,其中所述第一組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中每一 數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲所述第一條數(shù)據(jù)的正本W(wǎng)及K份副本其中之一;W及 將所述至少兩條數(shù)據(jù)中的第二條數(shù)據(jù)的正本W(wǎng)及K份副本分別存儲到所述N個數(shù)據(jù)節(jié) 點(diǎn)服務(wù)器中的第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,其中所述第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中 每一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲所述第二條數(shù)據(jù)的正本W(wǎng)及K份副本其中之一; 其中,所述第一組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與所述第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器不完全 相同,K為大于或等于1的整數(shù),N為大于K+1的整數(shù)。
      2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述第一條數(shù)據(jù)的正本和所述第二條數(shù) 據(jù)的正本被存儲到相同的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,W及存儲所述第二條數(shù)據(jù)的K份副本的K個 數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與存儲所述第一條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器完全不同。
      3. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述第一條數(shù)據(jù)的正本和所述第二條數(shù) 據(jù)的正本被存儲到相同的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,W及存儲所述第二條數(shù)據(jù)的K份副本的K個 數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與存儲所述第一條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器部分不同。
      4. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述第一條數(shù)據(jù)的正本和所述第二條數(shù) 據(jù)的正本被存儲到不同的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,W及存儲所述第二條數(shù)據(jù)的K份副本的K個 數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與存儲所述第一條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器完全不同。
      5. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述第一條數(shù)據(jù)的正本和所述第二條數(shù) 據(jù)的正本被存儲到不同的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,W及存儲所述第二條數(shù)據(jù)的K份副本的K個 數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與存儲所述第一條數(shù)據(jù)的K份副本的K個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器部分不同。
      6. 根據(jù)權(quán)利要求1-5任一項(xiàng)所述的方法,其特征在于,還包括: 根據(jù)所述至少兩條數(shù)據(jù)的數(shù)據(jù)量大小,從多個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中選取N個數(shù)據(jù)節(jié)點(diǎn)服 務(wù)器作為存儲所述至少兩條數(shù)據(jù)的數(shù)據(jù)節(jié)點(diǎn)服務(wù)器。
      7. -種分布式數(shù)據(jù)存儲方法,包括: 接收待存儲的M條數(shù)據(jù),M為大于1的整數(shù); 將M條數(shù)據(jù)分為N組數(shù)據(jù),將所述N組數(shù)據(jù)的正本分別存儲到N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中, N為大于1的整數(shù),且每一組數(shù)據(jù)的正本僅存儲在一個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中; 對于存儲第i組數(shù)據(jù)的正本的第i個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器,i G [1,閑,將所述第i組數(shù)據(jù) 分為D個分組的數(shù)據(jù),D為大于或等于1的整數(shù),將每個分組中所有數(shù)據(jù)的K份副本分別存 儲到所述N個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中除了第i個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器W外的任意L個數(shù)據(jù)節(jié)點(diǎn)服務(wù) 器中,且分組中每一條數(shù)據(jù)的任意兩份副本不在同一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,K為大于或等于1 的整數(shù),L不小于K,且N不小于K+1。
      8. 根據(jù)權(quán)利要求7所述的方法,其特征在于,對應(yīng)于所述不同分組的、存儲數(shù)據(jù)的副本 的L個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器完全不同。
      9. 根據(jù)權(quán)利要求7所述的方法,其特征在于,對應(yīng)于所述不同分組的、存儲數(shù)據(jù)的副本 的L個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器部分不同。
      10. -種分布式數(shù)據(jù)集群系統(tǒng),包括:多個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器;W及 數(shù)據(jù)接收器,適于接收待存儲的至少兩條數(shù)據(jù); 存儲器,適于將所述至少兩條數(shù)據(jù)中的第一條數(shù)據(jù)的正本W(wǎng)及K份副本分別存儲到N 個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中的第一組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,其中所述第一組K+1個數(shù)據(jù)節(jié)點(diǎn) 服務(wù)器中每一數(shù)據(jù)節(jié)點(diǎn)服務(wù)器存儲所述第一條數(shù)據(jù)的正本W(wǎng)及K份副本其中之一;W及將 所述至少兩條數(shù)據(jù)中的第二條數(shù)據(jù)的正本W(wǎng)及K份副本分別存儲到所述N個數(shù)據(jù)節(jié)點(diǎn)服務(wù) 器中的第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中,其中所述第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器中每一數(shù) 據(jù)節(jié)點(diǎn)服務(wù)器存儲所述第二條數(shù)據(jù)的正本W(wǎng)及K份副本其中之一;其中,所述第一組K+1個 數(shù)據(jù)節(jié)點(diǎn)服務(wù)器與所述第二組K+1個數(shù)據(jù)節(jié)點(diǎn)服務(wù)器不完全相同,K為大于或等于1的整 數(shù),N為大于K+1的整數(shù)。
      【文檔編號】H04L29/08GK104468793SQ201410756734
      【公開日】2015年3月25日 申請日期:2014年12月10日 優(yōu)先權(quán)日:2014年12月10日
      【發(fā)明者】陳磊, 王超, 陳營, 陳宗志, 李明昊 申請人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1