国产精品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ù)存儲方法和裝置制造方法

      文檔序號:6518343閱讀:183來源:國知局
      數(shù)據(jù)存儲方法和裝置制造方法
      【專利摘要】本發(fā)明公開了一種數(shù)據(jù)存儲方法和裝置,其中,該方法包括獲取待存儲的數(shù)據(jù)的標(biāo)識;根據(jù)該標(biāo)識確定用于存儲該數(shù)據(jù)的目錄分支;根據(jù)確定的所述目錄分支,將該數(shù)據(jù)存儲到該分布式文件系統(tǒng)中,其中目錄分支位于分布式文件系統(tǒng)中。通過本發(fā)明,解決了無法將海量用戶數(shù)據(jù)均勻存儲到分布式文件結(jié)構(gòu)中的問題,實現(xiàn)了數(shù)據(jù)在分布式存儲結(jié)構(gòu)中的均勻存儲。
      【專利說明】數(shù)據(jù)存儲方法和裝置

      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及數(shù)據(jù)處理領(lǐng)域,具體而言,涉及數(shù)據(jù)存儲方法和裝置。

      【背景技術(shù)】
      [0002]目前在對于大數(shù)據(jù)量的用戶信息存儲時,若使用關(guān)系數(shù)據(jù)庫存儲,不僅存儲結(jié)構(gòu)比較復(fù)雜,并且在對關(guān)系數(shù)據(jù)庫中的數(shù)據(jù)進行查詢時效率也比較低。
      [0003]在相關(guān)技術(shù)中,在存儲數(shù)據(jù)時還可以使用非關(guān)系數(shù)據(jù)庫,例如,通過noSQL技術(shù)進行大量用戶信息已經(jīng)被大量使用。目前在處理海量數(shù)據(jù)文件儲存的處理方法,大多數(shù)都用到了分布式文件系統(tǒng)進行文件存儲,但是當(dāng)數(shù)據(jù)量很大時,一個分布式文件結(jié)構(gòu)都有它的存儲極限,因此需要將用戶數(shù)據(jù)分布到多個分布式文件結(jié)構(gòu)中。
      [0004]因此,如何將大規(guī)模的數(shù)據(jù)信息能夠合理的部署在分布式文件系統(tǒng)中,將成為海量信息分布式存儲的關(guān)鍵。
      [0005]針對相關(guān)技術(shù)中無法將海量用戶數(shù)據(jù)均勻存儲到分布式文件結(jié)構(gòu)中的問題,目前尚未提出有效的解決方案。


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

      [0006]本發(fā)明提供了數(shù)據(jù)存儲方法和裝置,以至少解決相關(guān)技術(shù)中無法將海量用戶數(shù)據(jù)均勻存儲到分布式文件結(jié)構(gòu)中的問題。
      [0007]根據(jù)本發(fā)明的一個方面,提供了一種數(shù)據(jù)存儲方法,包括:獲取待存儲的數(shù)據(jù)的標(biāo)識;根據(jù)所述標(biāo)識,確定用于存儲所述數(shù)據(jù)的目錄分支,其中,所述目錄分支位于分布式文件系統(tǒng)中;根據(jù)確定的所述目錄分支,將所述數(shù)據(jù)存儲到所述分布式文件系統(tǒng)中。
      [0008]優(yōu)選地,根據(jù)所述標(biāo)識確定所述目錄分支包括:根據(jù)預(yù)定的哈希算法,對所述標(biāo)識進行處理;根據(jù)處理得到的所述哈希值,確定用于存儲所述數(shù)據(jù)的所述目錄分支。
      [0009]優(yōu)選地,根據(jù)所述哈希值確定所述目錄分支包括:確定可用于存儲所述數(shù)據(jù)的目錄分支的數(shù)目;根據(jù)所述目錄分支的數(shù)目和所述哈希值,確定所述目錄分支。
      [0010]優(yōu)選地,在所述標(biāo)識包括多個字符值的情況下,根據(jù)預(yù)定的所述哈希算法對所述標(biāo)識進行處理包括:根據(jù)預(yù)定的所述哈希算法,對所述標(biāo)識的多個字符值進行處理。
      [0011]優(yōu)選地,所述標(biāo)識為A1A2-An,n ^ 2,其中An表示所述標(biāo)識的多個字符值中的第η個字符值,所述哈希算法包括下列算式=(A1XMlri)+ (Α2ΧΜη_2)+…+ (AlriXM1)+An,其中,M為正整數(shù),所述算式的結(jié)果為所述哈希值。
      [0012]優(yōu)選地,根據(jù)所述哈希值確定所述目錄分支包括:根據(jù)η=Ν時所述算式的結(jié)果,確定存儲所述數(shù)據(jù)的第N級的目錄號,其中I < N < η ;根據(jù)確定的η個所述目錄號,確定所述目錄分支。
      [0013]優(yōu)選地,所述分布式文件系統(tǒng)包括:輕量級目錄訪問協(xié)議LDAP文件系統(tǒng)。
      [0014]根據(jù)本發(fā)明的另一個方面,還提供了一種數(shù)據(jù)存儲裝置,包括:獲取模塊,用于獲取待存儲的數(shù)據(jù)的標(biāo)識;確定模塊,用于根據(jù)所述標(biāo)識,確定用于存儲所述數(shù)據(jù)的目錄分支,其中,所述目錄分支位于分布式文件系統(tǒng)中;存儲模塊,用于根據(jù)確定的所述目錄分支,將所述數(shù)據(jù)存儲到所述分布式文件系統(tǒng)中。
      [0015]優(yōu)選地,所述確定模塊包括:處理單元,用于根據(jù)預(yù)定的哈希算法,對所述標(biāo)識進行處理;確定單元,用于根據(jù)處理得到的所述哈希值,確定用于存儲所述數(shù)據(jù)的所述目錄分支。
      [0016]優(yōu)選地,所述確定單元包括:第一確定子單元,用于確定可用于存儲所述數(shù)據(jù)的目錄分支的數(shù)目;第二確定子單元,用于根據(jù)所述目錄分支的數(shù)目和所述哈希值,確定所述目錄分支。
      [0017]通過本發(fā)明,采用獲取待存儲的數(shù)據(jù)的標(biāo)識;根據(jù)該標(biāo)識確定用于存儲該數(shù)據(jù)的目錄分支;根據(jù)確定的所述目錄分支,將該數(shù)據(jù)存儲到該分布式文件系統(tǒng)中,其中目錄分支位于分布式文件系統(tǒng)中。通過本發(fā)明,解決了無法將海量用戶數(shù)據(jù)均勻存儲到分布式文件結(jié)構(gòu)中的問題,實現(xiàn)了數(shù)據(jù)在分布式存儲結(jié)構(gòu)中的均勻存儲。

      【專利附圖】

      【附圖說明】
      [0018]此處所說明的附圖用來提供對本發(fā)明的進一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:
      [0019]圖1是根據(jù)本發(fā)明實施例的數(shù)據(jù)存儲方法的流程示意圖;
      [0020]圖2是根據(jù)本發(fā)明實施例的數(shù)據(jù)存儲裝置的結(jié)構(gòu)框圖;
      [0021]圖3是根據(jù)本發(fā)明實施例的數(shù)據(jù)存儲裝置的優(yōu)選結(jié)構(gòu)框圖一;
      [0022]圖4是根據(jù)本發(fā)明實施例的數(shù)據(jù)存儲裝置的優(yōu)選結(jié)構(gòu)框圖二 ;
      [0023]圖5是根據(jù)本發(fā)明實施例的數(shù)據(jù)存儲裝置的優(yōu)選結(jié)構(gòu)框圖三;
      [0024]圖6是根據(jù)本發(fā)明優(yōu)選實施例的文件目錄結(jié)構(gòu)樹示意圖;
      [0025]圖7是根據(jù)本發(fā)明優(yōu)選實施例的數(shù)據(jù)目錄配置文件示意圖;
      [0026]圖8是根據(jù)本發(fā)明優(yōu)選實施例的通過規(guī)則引擎查詢數(shù)據(jù)的示意圖。

      【具體實施方式】
      [0027]需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。下面將參考附圖并結(jié)合實施例來詳細說明本發(fā)明。
      [0028]需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的計算機系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
      [0029]本發(fā)明實施例提供了一種數(shù)據(jù)存儲方法,圖1是根據(jù)本發(fā)明實施例的數(shù)據(jù)存儲方法的流程示意圖,如圖1所示,該流程可以包括如下的步驟:
      [0030]步驟S102,獲取待存儲的數(shù)據(jù)的標(biāo)識;
      [0031 ] 步驟S104,根據(jù)該標(biāo)識,確定用于存儲該數(shù)據(jù)的目錄分支,其中,該目錄分支位于分布式文件系統(tǒng)中;
      [0032]步驟S106,根據(jù)確定的目錄分支,將該數(shù)據(jù)存儲到分布式文件系統(tǒng)中。
      [0033]通過上述步驟,提供了一種根據(jù)待存儲的數(shù)據(jù)的標(biāo)識將數(shù)據(jù)存儲到分布式文件系統(tǒng)中的方式,從而提供了對分布式文件系統(tǒng)的支持,并且,使用上述方式由于根據(jù)數(shù)據(jù)的標(biāo)識確定存儲的目錄分支,實現(xiàn)了數(shù)據(jù)在多個目錄分支中的均勻存儲。采用上述的存儲方法之后,在一個優(yōu)選實施方式中,在用戶需要查詢數(shù)據(jù)時,可以直接通過數(shù)據(jù)的標(biāo)識查詢到數(shù)據(jù)存儲的目錄分支的位置。這相對于相關(guān)技術(shù)中采用分表方式的存儲方法而言,本實施例不再需要通過關(guān)系數(shù)據(jù)庫中復(fù)雜的查詢算法在多個節(jié)點中查詢數(shù)據(jù),從而對高效率的查詢提供了支持。通過本實施例,解決了無法將海量用戶數(shù)據(jù)均勻存儲到分布式文件結(jié)構(gòu)中的問題,進而實現(xiàn)了數(shù)據(jù)在分布式文件系統(tǒng)中的均勻存儲。
      [0034]優(yōu)選地,上述的分布式文件系統(tǒng)包括多個分布式文件結(jié)構(gòu),這些分布式文件結(jié)構(gòu)的位置可以用目錄分支進行表示。
      [0035]優(yōu)選地,上述步驟S104可以包括:根據(jù)預(yù)定的哈希算法對標(biāo)識進行處理,并根據(jù)處理得到的哈希值,確定用于存儲數(shù)據(jù)的目錄分支。需要說明的是,根據(jù)標(biāo)識存儲數(shù)據(jù)的方式是可以有多種的,在一些優(yōu)選的實施例中,采用了上述的對標(biāo)識進行哈希運算,以將各個標(biāo)識對應(yīng)的數(shù)據(jù)散列到各個目錄分支中進行存儲。在存儲數(shù)據(jù)之后,就可以根據(jù)數(shù)據(jù)對應(yīng)的標(biāo)識,結(jié)合散列算法(即哈希算法)定位到對應(yīng)的分支目錄進行查詢等數(shù)據(jù)操作。采用上述的哈希算法能實現(xiàn)壓縮映射的功能,把一個大范圍映射到一個小范圍,并且,哈希值的空間通常遠小于輸入的空間,節(jié)省了存儲空間,便于數(shù)據(jù)的保存。
      [0036]優(yōu)選地,在確定用于存儲數(shù)據(jù)的目錄分支的情況下,可以根據(jù)確定的可用于存儲數(shù)據(jù)的目錄分支的數(shù)目和經(jīng)過哈希運算得到的哈希值,確定這些可用于存儲數(shù)據(jù)的目錄分支中的某一個目錄分支,并使用這一個目錄分支存儲該數(shù)據(jù)。優(yōu)選地,采用哈希值(P)模以可用于存儲數(shù)據(jù)的目錄分支的數(shù)目(Q),即P%Q,則可以確定這Q個目錄分支中的第(P%Q)+1個目錄分支用于存儲該哈希值對應(yīng)的數(shù)據(jù)。
      [0037]優(yōu)選地,確定將該哈希值對應(yīng)的數(shù)據(jù)存儲到對應(yīng)的目錄分支中之后,該數(shù)據(jù)在該目錄分支中還可以具有其他的數(shù)據(jù)存儲結(jié)構(gòu),或者在該目錄分支下的存儲還可以通過該數(shù)據(jù)的標(biāo)識進一步確定存儲的目錄分支的子目錄分支。在本發(fā)明實施例中對數(shù)據(jù)在目錄分支中的存儲結(jié)構(gòu)并不做限定。
      [0038]在一個優(yōu)選的實施例中,采用了一種對包含多個字符值的標(biāo)識通過哈希算法進行處理的方式,該方式可以包括:根據(jù)預(yù)定的哈希算法,對標(biāo)識的多個字符值進行處理。
      [0039]優(yōu)選地,假設(shè)標(biāo)識為A1A2…Αη,η ^ 2,其中An表示標(biāo)識的多個字符值中的第η個字值符,該哈希算法包括下列算式=(A1XMlri)+ (Α2ΧΜη_2)+…+ (AlriXM1)+An,其中,M為正整數(shù),算式的結(jié)果為用于確定目錄分支的哈希值。
      [0040]需要說明的是,上述的算式可以有多種變形形式,例如:
      [0041]在η=2時,該算式也可以寫成=AfI^A2 ;
      [0042]在η=3時,該算式也可以寫成:(AfM+Ad *M+A3 ;
      [0043]在η大于3時,以此類推。
      [0044]下面使用一個更具體的實例進行說明:假設(shè)上述的用戶標(biāo)識是4523,則第一個字符值是4,第二個字符值是5,第三個字符是2,第四個字符是3,預(yù)定放大倍數(shù)為597,則可以進行下列處理得到哈希值:
      [0045]步驟1,先將4放大597倍,然后與第二個字符值5相加,即4*597+5=2393 ;
      [0046]步驟2,先將步驟I的處理結(jié)果2393放大597倍,然后與第三個字符值2相加,即2393*597+2=1428623 ;
      [0047]步驟3,先將步驟2的處理結(jié)果1428623放大597倍,然后與第四個字符值3相加,即1428623*597+3=852887934,最后得到的結(jié)果即為用于確定目錄分支的哈希值。
      [0048]優(yōu)選地,在根據(jù)哈希值確定目錄分支時,還可以采用根據(jù)由標(biāo)識中的多個字符值中的一個或多個字符值分別確定目錄分支的每一級目錄的目錄號,并根據(jù)這些目錄號確定該目錄分支。例如:根據(jù)n=N時算式的結(jié)果,確定存儲數(shù)據(jù)的第N級的目錄號,其中
      I^ N ^ η ;根據(jù)確定的η個目錄號,確定目錄分支。
      [0049]下面使用一個優(yōu)選的實施例進行說明:以上述步驟1、步驟2、步驟3為例,通過步驟I得到的2393確定第一級目錄的目錄號,通過步驟2得到的1428623確定第二級目錄的目錄號,通過步驟3得到的852887934確定第三級目錄的目錄號,最后根據(jù)這三個目錄號確定該數(shù)據(jù)存儲的目錄分支。
      [0050]優(yōu)選地,上述的分布式文件系統(tǒng)包括:輕量級目錄訪問協(xié)議(LightweightDirectory AccessProtocol,簡稱為LDAP)文件系統(tǒng)。LDAP是為了使每個人能定位組織、個體和其他諸如網(wǎng)絡(luò)中的文件和設(shè)備等資源的軟件協(xié)議,不論是在公共的互聯(lián)網(wǎng)或者在同一個公司的內(nèi)部網(wǎng)里。
      [0051]本發(fā)明實施例還提供了一種數(shù)據(jù)存儲裝置,該裝置用于實現(xiàn)上述數(shù)據(jù)存儲的方法。并且在該裝置中涉及的對應(yīng)功能也能結(jié)合上述方法所對應(yīng)的描述進行結(jié)合描述和說明,在下面的裝置實施例中將不再贅述。
      [0052]圖2是根據(jù)本發(fā)明實施例的數(shù)據(jù)存儲裝置的結(jié)構(gòu)框圖,如圖2所示,該裝置可以包括:獲取模塊22、確定模塊24和存儲模塊26,其中,獲取模塊22,用于獲取待存儲的數(shù)據(jù)的標(biāo)識;確定模塊24耦合至獲取模塊22,用于根據(jù)標(biāo)識,確定用于存儲數(shù)據(jù)的目錄分支,其中,目錄分支位于分布式文件系統(tǒng)中;存儲模塊26耦合至確定模塊24,用于根據(jù)確定的目錄分支,將數(shù)據(jù)存儲到分布式文件系統(tǒng)中。
      [0053]通過上述裝置,解決了無法將海量用戶數(shù)據(jù)均勻存儲到分布式文件結(jié)構(gòu)中的問題,實現(xiàn)了數(shù)據(jù)在分布式存儲結(jié)構(gòu)中的均勻存儲。
      [0054]本實施例中所涉及到的模塊、單元可以通過軟件的方式實現(xiàn),也可以通過硬件的方式來實現(xiàn)。本實施例中的所描述的模塊、單元也可以設(shè)置在處理器中,例如,可以描述為:一種處理器包括獲取模塊22、確定模塊24和存儲模塊26。其中,這些模塊的名稱在某種情況下并不構(gòu)成對該模塊本身的限定,例如,獲取模塊還可以被描述為“用于獲取待存儲的數(shù)據(jù)的標(biāo)識的模塊”。
      [0055]需要說明的是,下文中提到的“第一確定子單元”、“第二確定子單元”等類似描述中的“第一”、“第二”等描述僅用于對該模塊或者單元的標(biāo)識,并不應(yīng)理解為這些單元或者模塊之間存在順序方面的限定。
      [0056]圖3是根據(jù)本發(fā)明實施例的數(shù)據(jù)存儲裝置的優(yōu)選結(jié)構(gòu)框圖一,如圖3所示,優(yōu)選地,確定模塊24包括:處理單元242,用于根據(jù)預(yù)定的哈希算法,對標(biāo)識進行處理;確定單元244,用于根據(jù)處理得到的哈希值,確定用于存儲數(shù)據(jù)的目錄分支。
      [0057]圖4是根據(jù)本發(fā)明實施例的數(shù)據(jù)存儲裝置的優(yōu)選結(jié)構(gòu)框圖二,如圖4所示,優(yōu)選地,確定單元244包括:第一確定子單元2442,用于確定可用于存儲數(shù)據(jù)的目錄分支的數(shù)目;第二確定子單元2444,用于根據(jù)目錄分支的數(shù)目和哈希值,確定目錄分支。
      [0058]優(yōu)選地,處理單元242還用于在標(biāo)識包括多個字符值的情況下,根據(jù)預(yù)定的哈希算法,對標(biāo)識的多個字符值進行處理。
      [0059]優(yōu)選地,標(biāo)識為A1A^An, n ^ 2,其中An表示標(biāo)識的多個字符值中的第η個字符值,哈希算法包括下列算式=(A1XMlri)+ (Α2ΧΜη_2)+…+ (AlriXM1)+An,其中,M為正整數(shù),算式的結(jié)果為哈希值。
      [0060]圖5是根據(jù)本發(fā)明實施例的數(shù)據(jù)存儲裝置的優(yōu)選結(jié)構(gòu)框圖三,如圖5所示,優(yōu)選地,確定單元244包括:第三確定子單元2446,用于根據(jù)η=Ν時算式的結(jié)果,確定存儲數(shù)據(jù)的第N級的目錄號,其中I彡N彡η ;第四確定子單元2448,用于根據(jù)確定的η個目錄號,確定目錄分支。
      [0061]優(yōu)選地,分布式文件系統(tǒng)包括:LDAP文件系統(tǒng)。
      [0062]下面結(jié)合優(yōu)選實施例進行說明。
      [0063]在本優(yōu)選實施例中,提出了一種將海量用戶數(shù)據(jù)均勻存儲到分布式文件結(jié)構(gòu)中的算法。本優(yōu)選實施例中的算法可以結(jié)合哈希(HASH)算法、LDAP技術(shù)、數(shù)據(jù)庫存儲技術(shù)以及noSQL技術(shù)進行應(yīng)用。
      [0064]通過本優(yōu)選實施例,可以在分布式存儲海量用戶信息的LDAP文件系統(tǒng)結(jié)構(gòu)中,使用本優(yōu)選實施例提出的均勻分布算法,可以把不同的用戶信息均勻分布到不同的LDAP文件系統(tǒng)組織結(jié)構(gòu)中。上述的均勻分布算法是根據(jù)用戶名或者用戶標(biāo)識,將用戶的信息均勻的分配到文件系統(tǒng)存儲結(jié)構(gòu)中的。
      [0065]本優(yōu)選實施例采用的方案是:通過用戶的用戶ID進行HASH運算,計算出每個用戶所在的組織ID,每個用戶的組織ID均勻分配,并且每處理多個用戶循環(huán)一次。
      [0066]下面對上述的方案進行進一步說明:
      [0067]通過LDAP分布式目錄進行用戶信息的數(shù)據(jù)存儲,參照LDAP v3的標(biāo)準(zhǔn)對象類型,以dc為節(jié)點目錄存儲數(shù)據(jù)。
      [0068]通過本優(yōu)選實施例的方案,將用戶標(biāo)識或者用戶名通過哈希算法均勻的散列在不同的根目錄結(jié)構(gòu)下,這樣用戶信息可以分布在不同的目錄分支下。并且可以根據(jù)用戶標(biāo)識找到其對應(yīng)的分支,這樣就實現(xiàn)了分布式數(shù)據(jù)的處理規(guī)則引擎。
      [0069]在本優(yōu)選實施例中采用的HASH算法包括如下步驟:
      [0070]步驟1,讀取第一個UserID (用戶標(biāo)識)字符值;
      [0071]步驟2,將字符值與597相乘后于第二個字符值相加;
      [0072]步驟3,循環(huán)所有UserID的字符,然后將相加的值與分支的HASH數(shù)取模運算;
      [0073]步驟4,得到HASH值。
      [0074]通過該算法,能夠很好地避免HASH沖突,并且使得數(shù)據(jù)能夠均勻的分布。
      [0075]此外,通過將用戶散列在不同分布式目錄結(jié)構(gòu)上達到了下列的效果:
      [0076]第一,通過分支處理,滿足了用戶查詢信息快。即,通過分支處理后,用戶根據(jù)數(shù)據(jù)的用戶標(biāo)識就能夠定位到需要查詢的分支,從而能夠?qū)Ω咝У牟樵兲峁┲С帧?br> [0077]第二,盡可能將數(shù)據(jù)平均分配到了所有節(jié)點中。
      [0078]第三,如果新的節(jié)點加入進來,只需要移動那些需要移動的數(shù)據(jù),不需要移動的數(shù)據(jù)可以不移動。例如,在添加LDAP新的節(jié)點目錄時,只需要增加對應(yīng)的新加的節(jié)點的目錄結(jié)構(gòu)既可,不需要再移動之前的目錄結(jié)構(gòu),并將存儲的數(shù)據(jù)重新分布既可。
      [0079]圖6是根據(jù)本發(fā)明優(yōu)選實施例的文件目錄結(jié)構(gòu)樹示意圖。如圖6所示,下面對該文件目錄結(jié)構(gòu)樹做簡要的說明。
      [0080]1、同一用戶目錄信息樹以dc=ucenter作為后綴,即根節(jié)點為dc=ucenter ;
      [0081]2、dc=ucenter目錄下存在多個節(jié)點:dc=分區(qū)l,dc=分區(qū)2 ;可以按照分區(qū)算法將用戶分到不同的節(jié)點下;
      [0082]3、dc=分區(qū)χ下存在多個用戶屬性節(jié)點,下面對這些用戶屬性節(jié)點進行說明:
      [0083](I )ou=users,存放用戶的節(jié)點。所有用戶信息都存放在ou=users節(jié)點下,用戶以uid來標(biāo)識,如uid=zhangsan, dc=分區(qū)1,dc=ucenter,表示用戶張三的信息;uid規(guī)范參考附錄:用戶編碼規(guī)范;用戶的objectClass為:ucenter_person ;
      [0084](2) ou=organizat1n,存放組織結(jié)構(gòu)信息的節(jié)點。組織信息都存放在ou-organizat1n 節(jié)點下;組織以 ο 來標(biāo)識,如 o=xhrd, dc=分區(qū) 1,dc=ucenter,表示組織xhrd的信息;0規(guī)范參考附錄:組織結(jié)構(gòu)編碼規(guī)范;組織的objectClass為:ucenter-organizat1n ;
      [0085](3) ou=group,存放用戶組的節(jié)點。所有用戶組都存放到ou=group節(jié)點下;用戶組以cn來標(biāo)識,如cn=admin, dc=分區(qū)1,dc=ucenter,表示用戶組admin的信息;用戶組的objectClass 為:ucenter_group ;
      [0086](4) ou=applicat1n,存放應(yīng)用信息的節(jié)點,所有應(yīng)用信息都存放到ou=applicat1n節(jié)點下;應(yīng)用以cn來標(biāo)識,如cn=ucenter, dc=分區(qū)1,dc=ucenter表示應(yīng)用 ucenter 的信息;應(yīng)用的 objectClass 為:ucenter_applicat1n。
      [0087]在本優(yōu)選實施例中還提供了一種通過HASH算法建立文件系統(tǒng)目錄結(jié)構(gòu)的方法。例如,要分配10個節(jié)點,可以先通過HASH算法計算出對應(yīng)的HASH值加上“ucenter”字符得到用戶的節(jié)點名稱。圖7是根據(jù)本發(fā)明優(yōu)選實施例的數(shù)據(jù)目錄配置文件示意圖,如圖7所示,是根據(jù)上述方法生成的數(shù)據(jù)目錄配置文件信息。
      [0088]將該配置文件導(dǎo)入到LDAP服務(wù)中既可生成如圖6所示的類似的文件系統(tǒng)目錄。
      [0089]本優(yōu)選實施例還提供了一種通過HASH算法建立規(guī)則引擎分別操作對應(yīng)分支的方法,例如,在進行LDAP操作時,采用圖8示出的規(guī)則引擎查找方式,即,首先通過HASH算法算出用戶的目錄分支,然后根據(jù)LDAP的分支號進行數(shù)據(jù)的各種處理操作。
      [0090]其中,圖8所示的流程包括如下步驟:
      [0091]步驟I,客戶機發(fā)出查詢請求,其中攜帶有數(shù)據(jù)的個人碼(Personal Key,簡稱為PK)(相當(dāng)于根據(jù)標(biāo)識計算出的哈希值),圖8中的PK值為4 ;
      [0092]步驟2,規(guī)則引擎使用一定規(guī)則,例如取模的方式,確定存儲所查詢的數(shù)據(jù)的數(shù)據(jù)節(jié)點(Data Base,簡稱為DB),圖8中示出了在存儲該數(shù)據(jù)的DB數(shù)為3的情況下,規(guī)則引擎將PK=4對3取模,得到的值為I,則確定查詢的DB為DBl。
      [0093]綜上所述,根據(jù)本發(fā)明的上述實施例、優(yōu)選實施例和優(yōu)選實施方式,可以將用戶ID或者用戶名通過HASH算法均勻的散列在不同的dc目錄結(jié)構(gòu)下,這樣用戶信息可以分布在不同的目錄分支下,并且可以根據(jù)用戶ID或用戶名找到其對應(yīng)的分支,這樣就實現(xiàn)了分布式數(shù)據(jù)的處理規(guī)則引擎。從而解決了無法將海量用戶數(shù)據(jù)均勻存儲到分布式文件結(jié)構(gòu)中的問題,實現(xiàn)了數(shù)據(jù)在分布式存儲結(jié)構(gòu)中的均勻存儲。
      [0094]顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計算裝置來實現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實現(xiàn),從而,可以將它們存儲在存儲裝置中由計算裝置來執(zhí)行,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
      [0095]以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
      【權(quán)利要求】
      1.一種數(shù)據(jù)存儲方法,其特征在于包括: 獲取待存儲的數(shù)據(jù)的標(biāo)識; 根據(jù)所述標(biāo)識,確定用于存儲所述數(shù)據(jù)的目錄分支,其中,所述目錄分支位于分布式文件系統(tǒng)中; 根據(jù)確定的所述目錄分支,將所述數(shù)據(jù)存儲到所述分布式文件系統(tǒng)中。
      2.根據(jù)權(quán)利要求1所述的方法,其特征在于,根據(jù)所述標(biāo)識確定所述目錄分支包括: 根據(jù)預(yù)定的哈希算法,對所述標(biāo)識進行處理; 根據(jù)處理得到的所述哈希值,確定用于存儲所述數(shù)據(jù)的所述目錄分支。
      3.根據(jù)權(quán)利要求2所述的方法,其特征在于,根據(jù)所述哈希值確定所述目錄分支包括: 確定可用于存儲所述數(shù)據(jù)的目錄分支的數(shù)目; 根據(jù)所述目錄分支的數(shù)目和所述哈希值,確定所述目錄分支。
      4.根據(jù)權(quán)利要求2或3所述的方法,其特征在于,在所述標(biāo)識包括多個字符值的情況下,根據(jù)預(yù)定的所述哈希算法對所述標(biāo)識進行處理包括: 根據(jù)預(yù)定的所述哈希算法,對所述標(biāo)識的多個字符值進行處理。
      5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述標(biāo)識為A1A2…Αη,η^ 2,其中An表示所述標(biāo)識的多個字符值中的第η個字符值,所述哈希算法包括下列算式: (A1XMlri)+ (Α2ΧΜη_2)+…+ (AlriXM1)+An,其中,M為正整數(shù),所述算式的結(jié)果為所述哈希值。
      6.根據(jù)權(quán)利要求5所述的方法,其特征在于,根據(jù)所述哈希值確定所述目錄分支包括: 根據(jù)η=Ν時所述算式的結(jié)果,確定存儲所述數(shù)據(jù)的第N級的目錄號,其中I < N < η ; 根據(jù)確定的η個所述目錄號,確定所述目錄分支。
      7.根據(jù)權(quán)利要求1至6中任一項所述的方法,其特征在于,所述分布式文件系統(tǒng)包括:輕量級目錄訪問協(xié)議LDAP文件系統(tǒng)。
      8.一種數(shù)據(jù)存儲裝置,其特征在于包括: 獲取模塊,用于獲取待存儲的數(shù)據(jù)的標(biāo)識; 確定模塊,用于根據(jù)所述標(biāo)識,確定用于存儲所述數(shù)據(jù)的目錄分支,其中,所述目錄分支位于分布式文件系統(tǒng)中; 存儲模塊,用于根據(jù)確定的所述目錄分支,將所述數(shù)據(jù)存儲到所述分布式文件系統(tǒng)中。
      9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述確定模塊包括: 處理單元,用于根據(jù)預(yù)定的哈希算法,對所述標(biāo)識進行處理; 確定單元,用于根據(jù)處理得到的所述哈希值,確定用于存儲所述數(shù)據(jù)的所述目錄分支。
      10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述確定單元包括: 第一確定子單元,用于確定可用于存儲所述數(shù)據(jù)的目錄分支的數(shù)目; 第二確定子單元,用于根據(jù)所述目錄分支的數(shù)目和所述哈希值,確定所述目錄分支。
      【文檔編號】G06F17/30GK104239376SQ201310551884
      【公開日】2014年12月24日 申請日期:2013年11月7日 優(yōu)先權(quán)日:2013年11月7日
      【發(fā)明者】楊勇, 宋立新, 吳超 申請人:新華瑞德(北京)網(wǎng)絡(luò)科技有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1