一種非集中式集群存儲系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開一種非集中式集群存儲系統(tǒng),該非集中式集群存儲系統(tǒng)包括M個控制器和N個磁盤組,其中M為大于2的正整數(shù),N為大于1的正整數(shù);M等于N+1,或者M等于N;任意相鄰的兩個控制器均與同一個磁盤組鏈接;M個控制器之間通過鏈接實現(xiàn)內(nèi)部互聯(lián)。本發(fā)明的所述非集中式集群存儲系統(tǒng)具有開環(huán)或閉環(huán)結(jié)構(gòu),其中任意相鄰的兩個控制器均與同一個磁盤組鏈接,在不損失數(shù)據(jù)的可用性和可靠性的前提下能夠單個節(jié)點橫向擴展,同時降低控制器與磁盤組的比例。
【專利說明】
一種非集中式集群存儲系統(tǒng)
技術領域
[0001]本發(fā)明涉及云計算技術領域。更具體地,涉及一種非集中式集群存儲系統(tǒng)。
【背景技術】
[0002]隨著云計算和大數(shù)據(jù)的迅猛發(fā)展,為了提供高帶寬、低延遲數(shù)據(jù)存取訪問和使能存儲空間透明橫向擴展,誕生出了各種各樣的集群存儲。從架構(gòu)上區(qū)分,可以大體上劃分為集中式集群存儲(centralized distributed storage)和非集中式集群存儲(decentrialized distributed storage)兩種。
[0003]其中,非集中式集群存儲,由于沒有集中的中央節(jié)點,獲得了較好的擴展性和可用性。
[0004]現(xiàn)有技術中,非集中式集群存儲系統(tǒng)基本上可以分為如下兩種:
[0005](— )完全非共享(share nothing)存儲系統(tǒng)。如圖1所示,完全非共享存儲系統(tǒng)中,所有的節(jié)點完全無共享,多個節(jié)點之間通過互聯(lián)技術,例如以太網(wǎng)絡和IB網(wǎng)絡分布數(shù)據(jù),每個節(jié)點之間的數(shù)據(jù)或者為復本關系,或者通過糾刪碼技術保證各個節(jié)點之間的數(shù)據(jù)的可用性和可靠性。目前已經(jīng)商業(yè)化的存儲系統(tǒng),如EMC ISILON和Scale1就是這種完全非共享存儲系統(tǒng)的典型代表;開源存儲系統(tǒng),如CEPH和GlusterFS也是這種完全非共享存儲系統(tǒng)的代表。這種完全非共享存儲系統(tǒng)的好處是,所有的存儲節(jié)點完全對稱,部署比較靈活。其缺點是,對于標準的工業(yè)訪問協(xié)議NFS/CIFS/iSCSI等,為了保證數(shù)據(jù)的可靠性和可用性,要通過內(nèi)部互聯(lián)網(wǎng)絡存取非入口存儲節(jié)點來操作數(shù)據(jù)冗余,這樣會帶來較多的跨內(nèi)部互聯(lián)的操作,從而帶來延遲上的較大損失。
[0006](二)雙控存儲系統(tǒng)。如圖2所示,這種雙控存儲系統(tǒng)包括多個雙控單元,每一個雙控單元包括兩個控制器,且每一個雙控單元的兩個控制器共享一個磁盤組。每一個雙控單元的兩個控制器通過SAS或者光纖共享后端的一個磁盤組,且每一個雙控單元的兩個控制器之間通過內(nèi)部互聯(lián)技術例如以太網(wǎng)絡或IB(Infiniband)網(wǎng)絡分布數(shù)據(jù)到該雙控單元后端的磁盤組。數(shù)據(jù)的可靠性通過在后端的磁盤組上的各個硬盤之間編碼例如各種磁盤陣列(RAID-Redundant Arrays of Independent Disks)技術來容忍有限磁盤損毀,在有限磁盤損毀的情況下數(shù)據(jù)依舊可以恢復出來。數(shù)據(jù)的可用性通過雙控制器來保證,一旦一個雙控單元中的一個控制器發(fā)生故障,由該雙控單元的另一個控制器臨時接管發(fā)生故障的控制器向用戶所提供的數(shù)據(jù)服務。同時,通過控制器的內(nèi)部互聯(lián),根據(jù)策略將數(shù)據(jù)分布到多個雙控單元。目前已經(jīng)商業(yè)化的存儲系統(tǒng),如NetAPP ONTAP GX和Xtreme1都是這種雙控存儲系統(tǒng)的典型代表。與完全非共享存儲系統(tǒng)相比,這種雙控存儲系統(tǒng)可以盡可能的降低跨網(wǎng)絡的操作,數(shù)據(jù)可靠性通過RAID技術保證,可用性通過雙控制器來保證。因而,雙控存儲系統(tǒng)可以盡可能的不跨內(nèi)部互聯(lián)來完成一次數(shù)據(jù)存取服務。這種雙控存儲系統(tǒng)的缺點是,為了保證數(shù)據(jù)的可用性,在橫向擴展的時候需要逐個雙控單元擴展,而無法像完全非共享存儲系統(tǒng)那樣逐個橫向擴展。此外,由于兩個控制器共享一個磁盤組,控制器與磁盤組的比例只能為2:1。
[0007]因此,需要提供一種新型的非集中式集群存儲系統(tǒng),以克服上述兩種非集中式集群存儲系統(tǒng)的缺點。
【發(fā)明內(nèi)容】
[0008]本發(fā)明的目的在于提供一種非集中式集群存儲系統(tǒng)。
[0009]為達到上述目的,本發(fā)明采用下述技術方案:
[0010]—種非集中式集群存儲系統(tǒng),該非集中式集群存儲系統(tǒng)包括M個控制器和N個磁盤組,其中M為大于2的正整數(shù),N為大于I的正整數(shù);
[0011]M等于N+1,或者M等于N;
[0012]任意相鄰的兩個控制器均與同一個磁盤組鏈接;
[0013]M個控制器之間通過鏈接實現(xiàn)內(nèi)部互聯(lián)。
[0014]優(yōu)選地,M等于N+1,所述非集中式集群存儲系統(tǒng)具有開環(huán)結(jié)構(gòu)。
[0015]進一步優(yōu)選地,任意相鄰的兩個控制器向用戶提供的服務互為高可靠備份,當其中一個控制器出現(xiàn)故障時,按照開環(huán)向前或開環(huán)向后的策略由與之相鄰的另一個控制器接管其向用戶提供的服務。
[0016]優(yōu)選地,M等于N,所述非集中式集群存儲系統(tǒng)具有閉環(huán)結(jié)構(gòu)。
[0017]進一步優(yōu)選地,所述非集中式集群存儲系統(tǒng)將所有的節(jié)點納入一個環(huán),或者所述非集中式集群存儲系統(tǒng)包括多個子環(huán),且任意兩個子環(huán)之間通過內(nèi)部互聯(lián)分布數(shù)據(jù)。
[0018]進一步優(yōu)選地,任意相鄰的兩個控制器向用戶提供的服務互為高可靠備份,當其中一個控制器出現(xiàn)故障時,按照閉環(huán)順時針方向或閉環(huán)逆時針方向的策略由與之相鄰的另一個控制器接管其向用戶提供的服務。
[0019]進一步優(yōu)選地,當所述非集中式集群存儲系統(tǒng)處于工作狀態(tài)時,數(shù)據(jù)通過哈希策略、分布式哈希策略或一致性哈希策略分布在任意相鄰的兩個控制器共享的磁盤組中。
[0020]進一步優(yōu)選地,所述控制器擴展的粒度為任意個數(shù)的控制器。
[0021 ]優(yōu)選地,所述磁盤組來自于磁盤擴展模組或集聯(lián)的多個磁盤擴展模組。
[0022]優(yōu)選地,實現(xiàn)所述M個控制器之間內(nèi)部互聯(lián)的方式包括:將所述M個控制器鏈接至同一個交換機,或者將所述M個控制器鏈接至同一個節(jié)點,或者直接將所述M個控制器兩兩鏈接。
[0023]進一步優(yōu)選地,利用以太網(wǎng)絡、IB網(wǎng)絡、PCIE網(wǎng)絡或FC網(wǎng)絡實現(xiàn)所述M個控制器之間的內(nèi)部互聯(lián)。
[0024]—種非集中式集群存儲系統(tǒng),該非集中式集群存儲系統(tǒng)為由上述的分布式集群存儲系統(tǒng)組成的組。
[0025]本發(fā)明的有益效果如下:
[0026]與現(xiàn)有技術的非集中式集群存儲系統(tǒng)相比,本發(fā)明的所述非集中式集群存儲系統(tǒng)具有開環(huán)或閉環(huán)結(jié)構(gòu),其中任意相鄰的兩個控制器均與同一個磁盤組鏈接,在不損失數(shù)據(jù)的可用性和可靠性的前提下能夠單個節(jié)點橫向擴展,同時降低控制器與磁盤組的比例。
【附圖說明】
[0027]下面結(jié)合附圖對本發(fā)明的【具體實施方式】作進一步詳細的說明。
[0028]圖1為現(xiàn)有技術的完全非共孚存儲系統(tǒng)的不意圖。
[0029]圖2為現(xiàn)有技術的雙控存儲系統(tǒng)的示意圖。
[0030]圖3為本發(fā)明實施例1提供的具有開環(huán)結(jié)構(gòu)的非集中式集群存儲系統(tǒng)的示意圖,其中 M=3,且 N=2。
[0031]圖4為本發(fā)明實施例3提供的具有閉環(huán)結(jié)構(gòu)的非集中式集群存儲系統(tǒng)的示意圖,其中 M=4,且 N=4。
[0032]圖5為本發(fā)明實施例4提供的具有閉環(huán)結(jié)構(gòu)的非集中式集群存儲系統(tǒng)的示意圖。
【具體實施方式】
[0033]為了更清楚地說明本發(fā)明,下面結(jié)合優(yōu)選實施例和附圖對本發(fā)明做進一步的說明。附圖中相似的部件以相同的附圖標記進行表示。本領域技術人員應當理解,下面所具體描述的內(nèi)容是說明性的而非限制性的,不應以此限制本發(fā)明的保護范圍。
[0034]實施例1:
[0035]如圖3所示,本實施例提供的非集中式集群存儲系統(tǒng)為開環(huán)結(jié)構(gòu),其包括例如3個控制器和2個磁盤組,S卩M = 3,N = 2。其中,任意相鄰的兩個控制器均與同一個磁盤組鏈接,即任意相鄰的兩個控制器共享同一個磁盤組。
[0036]例如,1#控制器與2#控制器相鄰,1#控制器和2#控制器均與1#磁盤組鏈接,S卩1#控制器和2#控制器共享1#磁盤組;2#控制器與3#控制器相鄰,2#控制器和3#控制器均與2#磁盤組鏈接,即2#控制器和3#控制器共享2柿茲盤組。
[0037]3個控制器之間通過鏈接實現(xiàn)內(nèi)部互聯(lián)。在本實施例的一種優(yōu)選實施方式中,實現(xiàn)3個控制器之間內(nèi)部互聯(lián)的方式包括:將3個控制器鏈接至同一個交換機,或者將3個控制器鏈接至同一個節(jié)點,或者直接將3個控制器兩兩鏈接。除此之外,本領域技術人員很容易理解,可以采用現(xiàn)有技術的任意方式來實現(xiàn)3個控制器之間內(nèi)部互聯(lián)。在本實施例的一種優(yōu)選實施方式中,利用以太網(wǎng)絡、IB網(wǎng)絡、PCIE網(wǎng)絡或FC網(wǎng)絡實現(xiàn)3個控制器之間內(nèi)部互聯(lián)。
[0038]任意相鄰的兩個控制器向用戶提供的服務互為高可靠備份,當其中一個控制器出現(xiàn)故障時,按照開環(huán)向前或開環(huán)向后的策略由與之相鄰的另一個控制器接管其向用戶提供的服務。例如,1#控制器和2#控制器相鄰向用戶提供的服務互為高可靠備份,當1#控制器出現(xiàn)故障時,按照開環(huán)向前的策略由與1#控制器相鄰的2#控制器接管1#控制器向用戶提供的服務。
[0039]當所述非集中式集群存儲系統(tǒng)處于工作狀態(tài)時,數(shù)據(jù)通過哈希策略、分布式哈希策略或一致性哈希策略分布在任意相鄰的兩個控制器共享的磁盤組中。
[0040]在本實施例的一種優(yōu)選實施方式中,磁盤組來自于磁盤擴展模組(JBOD)或集聯(lián)的多個磁盤擴展模組。當利用所述非集中式集群存儲系統(tǒng)進行數(shù)據(jù)冗余編碼時,參與數(shù)據(jù)冗余編碼的磁盤可以是與一個控制器鏈接的單一磁盤擴展模組,參與數(shù)據(jù)冗余編碼的磁盤也可以是與一個控制器鏈接的不同磁盤擴展模組。數(shù)據(jù)冗余策略為任意RAID級別或者糾刪碼編碼。
[0041]對于本實施例的所述非集中式集群存儲系統(tǒng),控制器擴展的粒度為任意個數(shù)的控制器,即控制器擴展的粒度可以為奇數(shù)個控制器,也可以為偶數(shù)個控制器。這一點明顯優(yōu)于現(xiàn)有技術的雙控存儲系統(tǒng)。
[0042]本實施例以3個控制器和2個磁盤組為例介紹具有開環(huán)結(jié)構(gòu)的非集中式集群存儲系統(tǒng),本領域技術人員可以理解,可以根據(jù)需要設置具有開環(huán)結(jié)構(gòu)的非集中式集群存儲系統(tǒng)所包括的控制器和磁盤組的個數(shù)。
[0043]實施例2:
[0044]本實施例提供的非集中式集群存儲系統(tǒng)為由如實施例1所述的分布式集群存儲系統(tǒng)組成的組(圖中未示出)。
[0045]實施例3:
[0046]如圖4所示,本實施例提供的非集中式集群存儲系統(tǒng)為閉環(huán)結(jié)構(gòu),其包括例如4個控制器和4個磁盤組,S卩M=4,N=4。其中,4個控制器鏈接構(gòu)成一個閉環(huán),任意相鄰的兩個控制器均與同一個磁盤組鏈接,即任意相鄰的兩個控制器共享同一個磁盤組。
[0047]例如,1#控制器、2#控制器、3#控制器和4#控制器鏈接構(gòu)成一個閉環(huán),1#控制器與2#控制器相鄰,1#控制器和2#控制器均與1#磁盤組鏈接,即1#控制器和2#控制器共享1#磁盤組;2#控制器與3#控制器相鄰,2#控制器和3#控制器均與2柿茲盤組鏈接,S卩2#控制器和3#控制器共享2#磁盤組;3#控制器與4#控制器相鄰,3#控制器和4#控制器均與3柿茲盤組鏈接,即3#控制器和4#控制器共享3#磁盤組;4#控制器與1#控制器相鄰,4#控制器和1#控制器均與4#磁盤組鏈接,S卩4#控制器和1#控制器共享4柿茲盤組。
[0048]4個控制器之間通過鏈接實現(xiàn)內(nèi)部互聯(lián)。在本實施例的一種優(yōu)選實施方式中,實現(xiàn)4個控制器之間內(nèi)部互聯(lián)的方式包括:將4個控制器鏈接至同一個交換機,或者將4個控制器鏈接至同一個節(jié)點,或者直接將4個控制器兩兩鏈接。除此之外,本領域技術人員很容易理解,可以采用現(xiàn)有技術的任意方式來實現(xiàn)4個控制器之間內(nèi)部互聯(lián)。在本實施例的一種優(yōu)選實施方式中,利用以太網(wǎng)絡、IB網(wǎng)絡、PCIE網(wǎng)絡或FC網(wǎng)絡實現(xiàn)4個控制器之間內(nèi)部互聯(lián)。
[0049]任意相鄰的兩個控制器向用戶提供的服務互為高可靠備份,當其中一個控制器出現(xiàn)故障時,按照閉環(huán)順時針方向或閉環(huán)逆時針方向的策略由與之相鄰的另一個控制器接管其向用戶提供的服務。例如,1#控制器和2#控制器相鄰向用戶提供的服務互為高可靠備份,當1#控制器出現(xiàn)故障時,按照閉環(huán)順時針方向的策略由與1#控制器相鄰的2#控制器接管1#控制器向用戶提供的服務。
[0050]當所述非集中式集群存儲系統(tǒng)處于工作狀態(tài)時,數(shù)據(jù)通過哈希策略、分布式哈希策略或一致性哈希策略分布在任意相鄰的兩個控制器共享的磁盤組中。
[0051 ]在本實施例的一種優(yōu)選實施方式中,磁盤組來自于磁盤擴展模組(JBOD)或集聯(lián)的多個磁盤擴展模組。當利用所述非集中式集群存儲系統(tǒng)進行數(shù)據(jù)冗余編碼時,參與數(shù)據(jù)冗余編碼的磁盤可以是與一個控制器鏈接的單一磁盤擴展模組,參與數(shù)據(jù)冗余編碼的磁盤也可以是與一個控制器鏈接的不同磁盤擴展模組。數(shù)據(jù)冗余策略為任意RAID級別或者糾刪碼編碼。
[0052]對于本實施例的所述非集中式集群存儲系統(tǒng),控制器擴展的粒度為任意個數(shù)的控制器,即控制器擴展的粒度可以為奇數(shù)個控制器,也可以為偶數(shù)個控制器。這一點明顯優(yōu)于現(xiàn)有技術的基于雙控的非集中式集群存儲系統(tǒng)。
[0053]本實施例以4個控制器和4個磁盤組為例介紹具有閉環(huán)結(jié)構(gòu)的非集中式集群存儲系統(tǒng),本領域技術人員可以理解,可以根據(jù)需要設置具有閉環(huán)結(jié)構(gòu)的非集中式集群存儲系統(tǒng)所包括的控制器和磁盤組的個數(shù)。
[0054]實施例4:
[0055]如圖5所示,本實施例提供的非集中式集群存儲系統(tǒng)為由實施例3所述的非集中式集群存儲系統(tǒng)組成的組。換言之,本實施例提供的非集中式集群存儲系統(tǒng)為實施例3所述的非集中式集群存儲系統(tǒng)的橫向擴展(Scale-out)。
[0056]如圖5所示,本實施例提供的非集中式集群存儲系統(tǒng)為由4個如實施例3所述的非集中式集群存儲系統(tǒng)組成的組,其中每一個如實施例3所述的非集中式集群存儲系統(tǒng)構(gòu)成一個子環(huán)。
[0057]本實施例的具有閉環(huán)結(jié)構(gòu)的非集中式集群存儲系統(tǒng)包括4個子環(huán),本領域技術人員可以理解,可以根據(jù)需要設置具有閉環(huán)結(jié)構(gòu)的非集中式集群存儲系統(tǒng)所包括的子環(huán)的個數(shù)。
[0058]顯然,本發(fā)明的上述實施例僅僅是為清楚地說明本發(fā)明所作的舉例,而并非是對本發(fā)明的實施方式的限定,對于所屬領域的普通技術人員來說,在上述說明的基礎上還可以做出其它不同形式的變化或變動,這里無法對所有的實施方式予以窮舉,凡是屬于本發(fā)明的技術方案所引伸出的顯而易見的變化或變動仍處于本發(fā)明的保護范圍之列。
【主權(quán)項】
1.一種非集中式集群存儲系統(tǒng),其特征在于,該非集中式集群存儲系統(tǒng)包括M個控制器和N個磁盤組,其中M為大于2的正整數(shù),N為大于I的正整數(shù); M等于N+1,或者M等于N; 任意相鄰的兩個控制器均與同一個磁盤組鏈接; M個控制器之間通過鏈接實現(xiàn)內(nèi)部互聯(lián)。2.根據(jù)權(quán)利要求1所述的非集中式集群存儲系統(tǒng),其特征在于,M等于N+1,所述非集中式集群存儲系統(tǒng)具有開環(huán)結(jié)構(gòu)。3.根據(jù)權(quán)利要求2所述的非集中式集群存儲系統(tǒng),其特征在于,任意相鄰的兩個控制器向用戶提供的服務互為高可靠備份,當其中一個控制器出現(xiàn)故障時,按照開環(huán)向前或開環(huán)向后的策略由與之相鄰的另一個控制器接管其向用戶提供的服務。4.根據(jù)權(quán)利要求1所述的非集中式集群存儲系統(tǒng),其特征在于,M等于N,所述非集中式集群存儲系統(tǒng)具有閉環(huán)結(jié)構(gòu)。5.根據(jù)權(quán)利要求3所述的非集中式集群存儲系統(tǒng),其特征在于,所述非集中式集群存儲系統(tǒng)將所有的節(jié)點納入一個環(huán),或者所述非集中式集群存儲系統(tǒng)包括多個子環(huán),且任意兩個子環(huán)之間通過內(nèi)部互聯(lián)分布數(shù)據(jù)。6.根據(jù)權(quán)利要求3所述的非集中式集群存儲系統(tǒng),其特征在于,任意相鄰的兩個控制器向用戶提供的服務互為高可靠備份,當其中一個控制器出現(xiàn)故障時,按照閉環(huán)順時針方向或閉環(huán)逆時針方向的策略由與之相鄰的另一個控制器接管其向用戶提供的服務。7.根據(jù)權(quán)利要求2-6中任一項所述的非集中式集群存儲系統(tǒng),其特征在于,當所述非集中式集群存儲系統(tǒng)處于工作狀態(tài)時,數(shù)據(jù)通過哈希策略、分布式哈希策略或一致性哈希策略分布在任意相鄰的兩個控制器共享的磁盤組中。8.根據(jù)權(quán)利要求2-6中任一項所述的非集中式集群存儲系統(tǒng),其特征在于,所述控制器擴展的粒度為任意個數(shù)的控制器。9.根據(jù)權(quán)利要求1所述的非集中式集群存儲系統(tǒng),其特征在于,所述磁盤組來自于磁盤擴展模組或集聯(lián)的多個磁盤擴展模組。10.根據(jù)權(quán)利要求1所述的非集中式集群存儲系統(tǒng),其特征在于,實現(xiàn)所述M個控制器之間內(nèi)部互聯(lián)的方式包括:將所述M個控制器鏈接至同一個交換機,或者將所述M個控制器鏈接至同一個節(jié)點,或者直接將所述M個控制器兩兩鏈接。11.根據(jù)權(quán)利要求10所述的非集中式集群存儲系統(tǒng),其特征在于,利用以太網(wǎng)絡、IB網(wǎng)絡、PCIE網(wǎng)絡或FC網(wǎng)絡實現(xiàn)所述M個控制器之間的內(nèi)部互聯(lián)。12.—種非集中式集群存儲系統(tǒng),其特征在于,該非集中式集群存儲系統(tǒng)為由如權(quán)利要求1-11中任一項所述的分布式集群存儲系統(tǒng)組成的組。
【文檔編號】G06F3/06GK106055276SQ201610354120
【公開日】2016年10月26日
【申請日】2016年5月25日
【發(fā)明人】吳江, 李焱
【申請人】極道科技(北京)有限公司