TWI592805B - 網路儲存與計算資源分享系統與方法 - Google Patents
網路儲存與計算資源分享系統與方法 Download PDFInfo
- Publication number
- TWI592805B TWI592805B TW099133514A TW99133514A TWI592805B TW I592805 B TWI592805 B TW I592805B TW 099133514 A TW099133514 A TW 099133514A TW 99133514 A TW99133514 A TW 99133514A TW I592805 B TWI592805 B TW I592805B
- Authority
- TW
- Taiwan
- Prior art keywords
- storage
- group
- user
- network
- computing
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本發明為一種網路儲存與計算資源分享系統與方法,特別是指一種由一虛擬社群網路中各使用者分享一部分儲存空間與計算資源的網路資源分享的方案。
隨著網路資訊的發達,一般應用在網路上的資訊傳遞方式通常是架構在伺服器-客戶端的主從架構之下,比如使用微軟區域網路的分享分式-網路芳鄰(network neighborhood)就是架構於主從的方式,其他通用的電子郵件(email)、檔案傳遞協定(FTP)、網頁上傳下載(http)等,都是應用在伺服器-客戶端的架構下,且特別可應用在網路儲存空間的架構,即由一伺服器提供儲存空間,各使用者可透過網路存取。
但於此類模式下必然會出現需要提供大量的頻寬資源或儲存資源等的困擾,比如透過網站分享照片,此時提供服務者(伺服器端)需要同時提供足夠的頻寬與足夠的儲存空間,另需要使用者認證計算等計算機資源,方能達成資訊快速傳播的目的。
應用網路計算資源的技術中,習知技術特別提出一種網格運算(grid computing)技術,網格計算能適當利用網路上多數未用的計算機資源,通常為桌上型電腦的中央處理器(CPU周期)與磁碟空間,透過一個管理方法由分布在網路上各處的計算機資源建立一個虛擬的計算機叢集(cluster),可以解決部份大量的計算需求。
網格運算結合了一種傳統應用多處理器或是結合區域網路上多部電腦系統實現的分散式計算技術(distributed computing),將之應用在網路上。
本揭露書揭露一種架構於社群下的網路儲存與計算資源分享系統與方法,特別是運用了社群中各使用者所使用的電腦系統中未用的資源,包括由使用者決定分享的一個儲存空間,或是中央處理器的計算資源。
此網路儲存與計算資源分享系統與方法特別運作於由多數使用者登錄建構的網路虛擬社群中,並非是一般開放式的網路環境,各使用者需要透過認證才能使用其中資源,特別是由多位使用者建立的一些群組內。使用者之間可以透過社群的活動建立彼此的聯繫,比如彼此訂閱留言內容、互相設定好友、根據興趣或系統主動媒合為群組,能夠相互分享檔案。
本揭露的技術特別於此類社群中要求各使用者可以分享部份未用的儲存空間與處理器的計算資源,透過社群或是其中群組分享給其他使用者,供作檔案的儲存與特定計算需求所使用。藉此,除了可以實現檔案分享的概念,更可節省頻寬資源,並擴充至儲存空間以及計算能力的共享可能性。
根據實施例,應用於上述具有複數個登錄使用者的網路虛擬社群中的網路儲存方法包括由一使用者端系統連結一社群伺服器,各端系統將先同步所屬群組之資訊及記錄複數個儲存節點之資源分配表,由儲存空間的資源分配表得出複數個可用儲存節點。之後,根據可用儲存節點之額度判斷一儲存物件可否存入,若額度足夠,則執行一分散式儲存的程序。
其中,分散式儲存的程序包括能依據得出之複數個可用儲存節點與儲存空間分割儲存物件為複數個區塊檔案,並傳遞分割之區塊檔案至各可用儲存節點,最後,經確認儲存完畢後,更新儲存空間的該資源分配表。
而計算資源分享方法則包括由使用者端系統產生一計算需求,經接收一計算資源分配表後,可得知使用者端系統所屬之群組關係、各計算節點的可用度與各計算節點之計算資源,藉此產生配置於各計算節點的計算資源配置。
之後,由各需求端傳遞分散計算需求至各計算節點,當於各計算節點計算完成後,使用者端系統接收各計算節點之計算結果,最後彙整產生一總的計算結果。
不同於一般網路虛擬社群中各使用者端系統的儲存空間為私有,但經由本揭露書提出的分散式儲存架構則可以定義一個共用儲存空間的群組,群組成員可以指定一定儲存空間做為共用儲存空間,可讓其它群組成員異地備份私有的資料。私有的檔案在被傳輸出去前會先被切割為多個區塊,編碼後送至共享的空間中,資料的區塊索引以及編碼金鑰存在於系統中的一個作為索引(index)的伺服器中,因此使用者並非能得知其它人存放進來的資料。
本揭露書揭露一種架構於社群下的網路儲存與計算資源分享系統與方法。根據實施例,網路儲存與計算資源分享系統主要是運作於需要透過使用者認證的網路虛擬社群中,此網路虛擬社群具有複數個登錄使用者,特別是透過一個社群伺服器提供的網頁或是專屬介面軟體提供的介面執行登錄。當登錄使用者登入此社群伺服器中,即進入使虛擬社群中,系統可主動根據使用者填寫的基本資訊進行媒合,協助建立使用者之間的聯繫,而使用者之間仍可因為興趣、所屬群組,主動或被動地建立彼此的聯繫,比如互相設定好友。
社群(community)為一廣義用語,舉凡其他具有特定屬性或目的的使用者經登入一伺服器後形成的虛擬集合體,一個社群內又可能因為不同的用戶有不同的目標與興趣形成不同的群組(group)。社群內使用者可透過一社群伺服器提供一社群伺服程式設定自己的朋友圈,揭露書所提的網路儲存與計算資源分享系統可提供一伺服器,可同步記錄各使用者與其設定的朋友(具有一聯繫關係),若使用者端有安裝社群提供的軟體,軟體本身亦可同步記錄使用者指定的朋友。藉此建立一基本的群組。可參閱第一A圖所示的社群中基本群組示意圖。
第一A圖中,使用者10可自行直接指定朋友A,B,C,此為最基本的群組。而第一B圖則顯示一種嚴格定義的群組,不同於指定朋友的方式,此例是由使用者申請建立一個群組,由此使用者擔當群組管理員,進而邀請其它使用者加入,獲得授權加入的用戶即可成為群組一員。圖中顯示一個群組12與其他經過授權的使用者A’,B’,C’。
並且,一個使用者可分屬不同的群組,社群內各使用者所有的資訊中,相對於群組內成員應包括有私有與公開的物件,物件可為文字、影音等檔案,亦可包括各使用者間傳遞的訊息。當群組成員具有一物件時,可設定為私有或是公開給其他所屬群組中的成員。
經建立各使用者與其朋友形成的群組,或是先建立群組,與各授權的使用者形成的群組,揭露書所提供的網路儲存與計算資源分享系統即為提供一種架構此群組關係的分散式物件儲存與分散計算的方法。
特別的是,網路儲存與計算資源分享系統與方法運用了社群中各使用者所使用的電腦系統中未用的資源,包括由使用者決定分享的一個儲存空間,或是中央處理器的計算資源,並且此技術在較佳的運作樣態並非是開放給所有網路使用者,而是運作在使用者需要透過認證才能使用其中資源的虛擬社群中,特別是由多位使用者建立的一些群組內。
根據實施例,本揭露的技術特別應用分散式儲存與分散式計算的概念運作於此類社群中,社群管理者可要求各登錄使用者分享部份未用的儲存空間與處理器的計算資源,不論是強制性或是非強制的,能透過社群或是其中群組分享給其他使用者,供作檔案的儲存與特定計算需求所使用。藉此,除了可以實現檔案分享的概念,更可節省頻寬資源,並擴充至儲存空間以及計算能力的共享可能性。
在此分享機制之下,一個由所有組成使用者全數互相同意組成的群組中,各使用者可選擇同意分享其未用相等或不相等的儲存空間。由所有使用者同意加入該群組應提供的個人儲存體大小以及可得的實際可用空間大小後,並可包括欲分享的計算資源。藉此,任意一位群組使用者可將私有資料分割為大量小區塊編碼後存放於其它群組成員儲存體中。因考量可得性及安全性故一份資料可存放在多位使用者處,故實際可得空間可能小於使用者提撥出來的空間,依群組設定的安全性而有不同。
第一實施例:
群組與成員關係可以參考第二A圖所示的社群內各使用者資源分享的示意圖。
圖中所示之範例顯示有一群組G1,成員包括有使用者211,212與213,各使用者加入時,包括未來加入的成員,皆可透過設定介面設定分享一固定的儲存空間,此例為各使用者分享相等的儲存空間,如500MB。也就是由各使用者端電腦系統形成複數個儲存節點,而此例中各節點的儲存空間為相等容量的。此例中,加入群組G1的條件是各成員需提供相等的儲存容量,儲存物件即可依據分割為複數個區塊檔案進行儲存。根據實施例之一,各群組依據群組使用者的數量可設有一可得率(availability),各區塊檔案依據可得率傳遞至複數可用儲存節點。藉此可增進可得率,以及異地備援的穩定性。
舉例來說,若群組G1成員皆提供500MB的分享儲存空間,其中設定一可得率選項,可得率若是設定為1比2(1:2),各使用者提供500MB,則只能得到250MB的備援空間,但各儲存物件則可有兩倍的可得率。可參考第四圖,其中各分割的物件區塊將可儲存至兩個儲存空間,得到200%的資料可得率。
第二實施例:
如第二B圖所示,群組G1中的成員亦可能同時屬於另一個群組,如圖所示,群組G1中使用者213同時屬於群組G2,群組G2成員包括使用者213,221與222。
使用者可以加入一或多個群組,但是每一個群組中的加入條件是設計為人人相等的,以免有資料可得率問題以及異地備援不穩定或安全性的問題。此例中,加入群組G1的成員需提供500MB的儲存空間,故使用者211,212與213須提供500MB的硬碟空間。
而若群組G2要求各成員提供700MB的儲存空間,圖中使用者221與222須設定700MB的分享儲存容量,而使用者213因為同時屬於群組G1與群組G2,所以使用者213就要提供1200MB(500MB+700MB)的儲存空間,實際運作上,執行社群運作的社群伺服程式可設有兩個獨立的邏輯空間(logic)。因此,若一個使用者屬於複數個群組,該使用者端系統則應具有相對複數個邏輯儲存空間,或是實際的儲存空間。
值得一提的是,在實際運作時,若是一個群組人數有複數個人,如N,資料最大可得率就是1比N(1:N),也就是一份資料可同時存在於N個人的硬碟上。但也可為小於N的值。若是可得率比值N太小,則整體資料可得性與安全性會不好;但若比值N較大,若是有成員離開群組或是有人加入,整個可得率與資料穩定性會產生困擾,甚至需要有特定伺服器處理資料可得性的問題。所以,N值應依據實際需要調整為一個適當的值,比如,一個有n人的群組,若n>5時,可得率最多就只設為5,避免太多浪費以及調整儲存體時浪費太多頻寬。
第三實施例:
第二C圖顯示另一實施態樣,也就是群組內的成為可隨己意分享儲存空間。其中顯示有一個社群內的多個群組,比如群組G3,G4,G5,群組G3的成員有使用者201,202與203、群組G4成員有使用者203,204,205與206、群組G5成員有使用者206,207與208。其中有部份使用者可以分屬不同的群組,比如使用者203與使用者206。
各使用者端的電腦系統通常具有中央處理器(CPU)與硬碟或其他非揮發性記憶體的使用空間,在此網路儲存與計算資源分享系統中,各成員可選擇性地分享部份未用的儲存空間,比如透過系統提供的設定介面執行設定;而各端電腦系統中的中央處理器也可能處於部份閒置狀態,因此可分享出部份的計算資源,提供系統中其他群組成員執行分散式計算。
此例中,各使用者透過設定介面設定所欲分享的電腦資源,比如使用者201分享了硬碟空間500M與20%的中央處理器資源、使用者202分享了硬碟空間500M與30%的計算資源、使用者203則分享硬碟空間1G與25%的中央處理器資源,使用者203的資源可同時提供群組G3與G4的成員使用。其他使用者的資源分享請參考圖中所示的範例。
相關系統架構可參考第三圖顯示的網路儲存與計算資源分享系統示意圖。
圖式顯示一個網路架構,一端具有提供社群服務的社群伺服器301,係為一虛擬網路社群之伺服器,為管理複數個使用者資料與群組行為之伺服器,可以叢集、網格運算或工作站實現的社群伺服器301。社群伺服器301中功能模組可包括有使用者管理模組311與群組管理模組312,相關功能可以軟體手段執行,包括管理使用者資料、帳號、識別方式等,社群行為由一社群伺服程式執行。
系統另有一目錄伺服器303,為備份或分散儲存虛擬網路社群內的物件,特別記錄複數個使用者端系統之一資源分配表,包括儲存空間的資源分配狀況與各端計算資源的分配狀況。目錄伺服器303具有物件管理模組331與資源管理模組332,主要功能是提供各使用者間的物件儲存管理,包括利用分散式儲存手段將物件儲存於多個分享的節點中,更包括可以管理各節點(各使用者的電腦系統)提供的儲存空間與中央處理器的計算資源。
特別的是,目錄伺服器303同樣可為分散式儲存的一個儲存節點,或是作為完整備份儲存物件的伺服器。根據另一實施例,目錄伺服器中更特別具有一種流通量計數器,提供各種物件、資訊流量與統計的功能。
透過網路30,包括廣域與區域網路,各端使用端系統305,306,307,308與社群伺服器301與目錄伺服器303連接,使用者端系統為各種型式的電腦系統,而各使用者為虛擬網路社群之成員,可分屬為一或複數個群組,各使用端系統305,306,307,308皆可為特定物件之分散儲存節點(distributed storage node)。
社群內可包括有一或複數個具有特定目的或共通特徵的虛擬群組,群組內的使用者可以同時屬於其他群組,各群組內的使用者間具有一聯繫關係(link),社群伺服器301即透過群組管理模組312記錄這個聯繫關係,群組管理模組312同樣較佳為利用軟體手段實現的伺服器模組,當使用者登入社群伺服器301時,即參考這個群組管理模組312提供的聯繫關係連結各群組,並接收由群組所傳遞的各種訊息。
在實際實施時,各使用者端系統305,306,307與308將隨時與目錄伺服器303同步資訊,包括現有有效的儲存節點、計算資源等。社群伺服器301與目錄伺服器303可非為兩個分開且獨立的伺服主機,亦可能為一個伺服主機(包括叢集)中的兩個功能模組(伺服器,server),分別執行使用者帳戶、群組關係、物件儲存與計算資源的管理工作。
群組內各使用者間可依設定定義資源共享關係,凡是位於可共享的關係範圍內的使用者即可以共享其中計算資源、儲存資源與頻寬資源等。在此架構下,各種物件可依選擇不同的共享名單或範疇而達成安全性以及便利性的平衡。
舉例來說,上述儲存方式可按照群組使用者的安全等級,資料可能只備份一份或者至多至五份,包括備份在特定節點,或是目錄伺服器400中,可以大幅增加資料可得性、傳輸速度以及安全性。當資料有同步需求,包括其它使用者要寫入或讀回時,相關代理程式,如社群伺服程式等客戶端程式,會提醒使用者不要關機以維持群組資料可得率。若單一使用者可得率一直太差則可以在多數使用者要求下退出群組。
值得一提的是,為提高經過分散儲存的資料可得率及可寫入率,本揭露書所揭露的網路儲存與計算資源分享系統允許暫時將某些應分散於其它節點的區塊暫存於目錄伺服器或者群組中上線媒合機率最高的節點中,於其它用戶上線時再行移轉過去。
另外的特色是,各物件所得的備援空間可視群組成員比例而定,若群組成員為1比X(1:X),每提供X百萬位元(MByte)給群組共用時,各使用者可以得到1MB的共用備援空間。
請參閱第四圖顯示之中物件分割儲存示意圖。
第四圖為一個1比2的儲存空間共用的群組,使用者的物件40經切割後成為多個區塊。圖中顯示一個待儲存的物件40,為社群中的一使用者產生的物件,透過本揭露書的網路儲存與計算資源分享系統提供的分散式儲存手段執行儲存。首先,如圖中顯示,物件40將先根據一種演算方法分割為複數個區塊檔案,各個區塊檔案以封包方式傳遞給各個儲存節點,每個分散在不同節點的區塊檔案具有區塊編號(block serial number),並連結所屬物件的物件識別碼(Object ID)。
圖中的物件40分隔為多個區塊,各區塊的資訊至少包括兩個部份,其一為用於識別該區塊的物件識別碼與區塊編號,並接著就是資料區塊(data block),如圖中物件ID與區塊編號401a,402a,403a,404a,405a與資料區塊401b,402b,403b,404b,405b。
進行分散式儲存時,由社群中目錄伺服器400得知相關群組成員41,42,43,44所形成的各儲存節點的狀態,包括各節點分享的儲存空間與位置。接著,根據各節點的狀態將分割後的區塊分別儲存於各節點。另外,物件之儲存可視需求編碼(也可不編碼),然後將各區塊分散存至不同的儲存節點中。
上述分割及小區塊編碼方式包括各式加密方法,比如DES或RAS等各種加密法,以及提高資料利用率的分割編碼方式,比如RAID 5編碼方法。
另外值得一提的是,系統應隨時保持一定程度的資料可得率,若可得率設為1比2,分割的區塊將可儲存至兩個儲存節點,使得儲存物件保持在200%的資料可得率。
除了上述物件儲存的方案外,應用於上述網路虛擬社群的網路儲存與計算資源分享系統更包括有各節點提供的計算資源的共享機制。
計算資源分享實施例:
根據實施例,基於社群所建立的群組中可由部份或是所有組成使用者同意分享各節點的計算機能力,由群組中的計算需求發起人得到各成員同意後,系統將需要分散式計算的資料區塊傳送至各個參與計算的節點。在每個節點完成運算後再將結果區塊回傳至群組共用儲存體中,由發起人的應用程式取回組合成最終結果。
第五圖描述本發明計算資源分享流程圖,其中揭露的計算資源分享方法主要是利用了各使用者端系統中閒置的中央處理器的計算資源,各端使用者系統可應用一個分散式計算的程式,如系統所提供的應用程式介面(Application programming interface,API),除了可以遞交各分散的計算需求外,並可將分別由各節點計算完成的結果再彙整回群組的共用空間中。凡包括影像資料處理或者是其它分散式處理,皆可以藉此達成。
流程開始如圖中步驟S501,由一群組成員的使用者端系統產生一計算需求,透過上述分散式計算的程式發出訊息,接收一計算資源分配表(步驟S503),比如由目錄伺服器取得各節點提供的計算資源分配表,分散式計算的程式將取得其中群組關係51、各計算資源(計算節點)的可用度52與各節點計算資源53,並據以產生配置於各計算節點的計算資源配置(步驟S505)。相關訊息有分享計算資源的群組成員列表,可用度包括各成員是否上線、頻寬,並其歷史記錄等,計算資源則包括各計算節點之計算機能力、分享百分比等。
之後再如步驟S507,上述各節點的分散式計算的程式將傳遞分散計算需求至各計算節點,將一段時間的運算後,發起此計算需求的使用者將可透過分散式計算的程式接收各計算節點的計算結果(步驟S509),並彙整產生一總的計算結果(步驟S511)。
儲存空間分享實施例:
第六圖則描述應用本發明系統執行的分散儲存流程。先如步驟S601,使用者登入社群,登入的方式可由網頁瀏覽器透過社群伺服器提供的介面,或是獨立執行於使用者端系統的伺服程式。登入後,如步驟S603,各使用者端系統將先連結伺服器,如社群伺服器,同步其中群組資訊及記錄複數個儲存節點的儲存空間的資源分配表。
根據所得儲存空間的資源分配表可以判斷可用儲存節點(步驟S605),藉此得出一或複數個可用儲存節點,以避免檔案儲存錯誤,並接著判斷目前各可用儲存節點的可用儲存空間額度(步驟S607),包括整合各節點的儲存額度,藉此判斷儲存物件可否存入?(步驟S609)。
若判斷出額度不足,則結束步驟。若額度仍夠,則進行分散式儲存的程序,包括根據一分散式的演算法分割物件,特別是需要依據目前可用的儲存節點數量與空間執行分割,分割儲存物件為複數個區塊檔案(步驟S611),接著傳遞分割之區塊檔案至各可用儲存節點(步驟S613),經確認儲存完畢後(步驟S615),可以同步更新儲存空間的資源分配表(步驟S617)。
在上述儲存的流程中,在選擇儲存節點時,如第四圖中各區塊檔案與各使用者端系統間的連線,一般可依據一個平均亂度存放,可避免太多區塊存在同一個儲存節點中。若使用者分享出來的空間出現極度不平均(通常是超過均量許多)的情況,系統也會自動參考此異常分享的使用者的資源可得率,即依據各儲存節點之資源可得率執行儲存,包括上線時間與其網路頻寬等,因素限制其可用空間大小。
除了一般可以公開的資料外,此分散式儲存的方案亦可儲存其它使用者的私有資料,其中各群組使用者可以將使用分享儲存空間的物件資料設定為群組成員共用,共用的物件將不進行編碼並將儲存空間的資源分配表公開至所有群組成員中,故所有群組成員皆可讀取此物件。如第四圖顯示的各分割區塊,由於各區塊編號的索引資料以及其編碼金鑰並不存在在其它使用者端,故無法看到任何有意義資料,各端僅能得到共享空間被使用的比例。另外,若存入共享空間的標示為公用資料,則所有屬於該群組的使用者則可以共享編碼金鑰以及區塊的分配表,每一個群組內的成員都可以快速讀取到該物件,成為一般公開型的分散式檔案系統。
接著,當使用者欲由各分散的節點取出檔案時,可參考第七圖所描述的分散取檔流程。
使用者同樣需要登入社群,如步驟S701,透過社群伺服程式(包括獨立安裝在各使用者端系統與透過網頁瀏覽器驅動的程式)由社群伺服器同步群組資訊及各節點的儲存空間的資源分配表(步驟S703)。由儲存空間的資源分配表取得區塊資訊(步驟S705),主要是瞭解一些物件分配在各儲存節點的配置情形。
接著如步驟S707,程式將判斷是否有重複區塊?若其中並未有重複區塊,則直接取檔(步驟S711);若有重複區塊,系統將選擇較佳路徑進行取檔(步驟S709)。此例中,系統將會按照指示物件區塊配置的儲存空間的資源分配表向不同儲存節點取得對應之區塊編碼,並提供查詢各物件區塊的來源群組路徑。若其中有相同區塊存在,則向登記於較近網路或過去連線速度紀錄較高的用戶優先取得。
最後,如步驟S713,程式將判斷是否完成取檔?若尚未完成,會繼續取檔,包括重複上述步驟S707等步驟。若已完成,則確認檔案可用(步驟S715)。
由於社群中各群組成員可能有異動,此舉將影響該節點經過分散儲存的檔案可用性,值得一提的是,群組內的分散式儲存方式在每個物件儲存時,會同時執行任何可能的備份機制,包括於目錄伺服器中儲存一備份、於各儲存節點備份多次,或是提出其他可回復檔案的冗餘(redundancy)機制,比如應用在磁碟陣列中的獨立磁碟冗餘陣列(RAID)的技術。因此,如果群組中有任何節點出現錯誤或是該成員離開,本揭露書提出的系統將根據所提出的備份與回復機制處理群組成員異動的狀況,主要步驟如第八圖所描述之群組成員異動之處理流程圖。
步驟開始如S801,使用者登入社群,當下即與伺服器同步所屬群組的成員資訊(步驟S803),包括有成員離開該群組,或是該節點已經變動。如步驟S805,系統將由各成員資訊判斷是否有人員異動?包括任何節點所在的電腦系統的改變造成分散儲存的問題。
若經判斷並無任何成員的變動(否),即結束此處理群組變動的程序(步驟S817);若有成員變動(是),再如步驟S807,社群伺服程式將再判斷是否有任何成員減少?,若否,表示有新增的成員,但此成員所屬的節點並無任何與原本儲存的檔案有關的資料,故僅如步驟S815,系統將更新成員列表。
若有任何成員離開或是被刪除(是),系統將如步驟S809,執行檔案取回或刪除(若該成員仍在線)該份檔案,或執行其他回復備份機制,再重新分配至其他成員的儲存空間(步驟S811),並更新系統與配置於各群組成員的區塊資訊,也就是儲存空間的資源分配表(步驟S813)。最後即結束此流程(步驟S817)。
綜上所述,上述揭露一種運作於社群內的網路儲存與計算資源分享系統與方法,應用分散式的儲存與計算方案,能夠充分應用各使用者端的系統資源,提供一種網路虛擬社群中的物件分享機制。
惟以上所述僅為本發明之較佳可行實施例,非因此即侷限本發明之專利範圍,故舉凡運用本發明說明書及圖示內容所為之等效結構變化,均同理包含於本發明之範圍內,合予陳明。
10...使用者
A,B,C...指定朋友
12...群組
A’,B’,C’...授權的使用者
G1,G2,G3,G4,G5...群組
201,202,203,204,205,206,207,208,211,212,213,221,222...使用者
301...社群伺服器
303...目錄伺服器
30...網路
311...使用者管理模組
312...群組管理模組
331...物件管理模組
332...資源管理模組
305,306,307,308...使用端系統
40‧‧‧物件
401a,402a,403a,404a,405a‧‧‧物件ID與區塊編號
401b,402b,403b,404b,405b‧‧‧資料區塊
41,42,43,44‧‧‧群組成員
400‧‧‧目錄伺服器
51‧‧‧群組關係
52‧‧‧可用度
53‧‧‧節點計算資源
步驟S501~S511‧‧‧分散計算流程
步驟S601~S617‧‧‧分散儲存流程
步驟S701~S715‧‧‧分散取檔流程
步驟S801~S817‧‧‧群組成員異動處理流程
第一A圖與第一B圖所示為社群中基本群組示意圖;
第二A圖、第二B圖與第二C圖顯示社群內各使用者資源分享的示意圖;
第三圖顯示本發明網路儲存與計算資源分享系統示意圖;
第四圖顯示為本發明中物件分割儲存示意圖;
第五圖描述本發明計算資源分享流程圖;
第六圖描述本發明分散儲存流程圖;
第七圖描述本發明分散取檔流程圖;
第八圖描述本發明群組成員異動之處理流程圖。
40...物件
401a,402a,403a,404a,405a...物件ID與區塊編號
401b,402b,403b,404b,405b...資料區塊
41,42,43,44...群組成員
400...目錄伺服器
Claims (12)
- 一種網路儲存方法,係應用於具有複數個登錄使用者的一網路虛擬社群中,包括:一使用者端系統連結一社群伺服器,係由該使用者端系統之使用者登入該網路虛擬社群,複數個使用者端系統形成複數個儲存節點,其中該網路虛擬社群包括一或複數個群組,於該使用者加入該網路虛擬社群的該至少一個群組後,該使用者端系統的儲存空間即分別擴充至所屬之該至少一個群組;同步該使用者所屬之該群組之資訊及記錄該複數個儲存節點的儲存空間資源分配狀況之一資源分配表;由該資源分配表得出複數個可用儲存節點;根據該複數個可用儲存節點之可用儲存空間額度判斷一儲存物件可否存入;若判斷出額度不足,則結束步驟;以及若額度足夠,則執行一分散式儲存的程序,其中該分散式儲存的程序包括:依據該得出之複數個可用儲存節點與儲存空間分割該儲存物件為複數個區塊檔案,依據各儲存節點之資源可得率傳遞該分割之區塊檔案至各可用儲存節點,其中資源可得率至少包括參考各儲存節點上線時間與網路頻寬;以及經確認儲存完畢後,更新儲存空間的該資源分配表;其中,該儲存物件為私有資料或公開資料,當該儲存物件為私有資料時,僅該儲存物件所屬之該使用者透過該資源分配表讀取該儲存物件,當該儲存物件 為公開資料時,該群組之所有成員透過該資源分配表讀取該儲存物件:其中,當該一個群組中的人數有複數個人,為N個人,則該資源可得率的一資料最大可得率為1:N。
- 如申請專利範圍第1項所述之網路儲存方法,其中該複數個區塊檔案依據一個平均亂度存放於各可用儲存節點。
- 如申請專利範圍第1項或第2項所述之網路儲存方法,其中各個區塊檔案以一封包方式傳遞給各個儲存節點,每個分散在不同儲存節點的區塊檔案具有一區塊編號,並連結一物件識別碼。
- 如申請專利範圍第1項所述之網路儲存方法,其中該儲存於各儲存節點的區塊檔案係經過編碼。
- 如申請專利範圍第1項所述之網路儲存方法,其中該使用者之所屬群組中的複數個使用者端系統分享相等容量的儲存空間。
- 如申請專利範圍第5項所述之網路儲存方法,其中該使用者屬於複數個群組,該使用者端系統具有複數個邏輯儲存空間。
- 一種計算資源分享方法,係應用於具有複數個登錄使用者的一網路虛擬社群中,包括:一使用者端系統之使用者登入該網路虛擬社群,其中該網路虛擬社群包括一或複數個群組,於該使用者加入該網路虛擬社群的該至少一個群組後,複數個使用者端系統形成該所屬群組之複數個計算節點,由該使用者端系統產生一計算需求;接收一計算資源分配表,得知該使用者端系統所屬之 一群組關係、各計算節點的可用度與各計算節點之計算資源;根據該使用者端系統所屬之該群組中的其他計算節點之可用度與計算資源產生配置於各計算節點的計算資源配置;參考該群組中各計算節點的可用度,至少參考各使用者端系統是否上線、頻寬,與歷史記錄的資訊,再傳遞分散計算需求至該群組所屬之各計算節點;以及於該群組所屬之各計算節點計算完成後,該使用者端系統接收各計算節點之計算結果;以及彙整產生一總的計算結果;其中,當該一個群組中的人數有複數個人,為N個人,則該計算資源中的一資料最大可得率為1:N。
- 如申請專利範圍第7項所述之計算資源分享方法,其中該計算資源包括各計算節點的計算機能力與一分享百分比。
- 一種應用如申請專利範圍第1項或第7項所述之方法的網路儲存與計算資源分享系統,其中該系統包括:複數個使用者端系統,連接一網路,該複數個使用者端系統之複數個使用者為一虛擬網路社群之成員,各使用者分屬為一或複數個群組,其中於該使用者加入該虛擬網路社群的該至少一個群組後,該使用者端系統分別形成該所屬群組之複數個儲存節點與該所屬群組之複數個計算節點;一社群伺服器,連接該網路,係為該虛擬網路社群之伺服器,為管理複數個使用者資料與群組行為之伺 服器;以及一目錄伺服器,連接該網路,為備份或分散儲存該虛擬網路社群內的一儲存物件,並記錄該複數個使用者端系統之一資源分配表,其中該儲存物件為私有資料或公開資料,當該儲存物件為私有資料時,僅該儲存物件所屬之該使用者透過該資源分配表讀取該儲存物件,當該儲存物件為公開資料時,該群組之所有成員透過該資源分配表讀取該儲存物件。
- 如申請專利範圍第9項所述之網路儲存與計算資源分享系統,其中該社群伺服器至少包括一使用者管理模組與一群組管理模組。
- 如申請專利範圍第9項所述之網路儲存與計算資源分享系統,其中該目錄伺服器至少包括一物件管理模組與一資源管理模組。
- 如申請專利範圍第9項至第11項其中之一所述之網路儲存與計算資源分享系統,其中該目錄伺服器為該物件之一備援空間。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW099133514A TWI592805B (zh) | 2010-10-01 | 2010-10-01 | 網路儲存與計算資源分享系統與方法 |
US13/235,328 US20120084386A1 (en) | 2010-10-01 | 2011-09-16 | System and method for sharing network storage and computing resource |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW099133514A TWI592805B (zh) | 2010-10-01 | 2010-10-01 | 網路儲存與計算資源分享系統與方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201216073A TW201216073A (en) | 2012-04-16 |
TWI592805B true TWI592805B (zh) | 2017-07-21 |
Family
ID=45890750
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW099133514A TWI592805B (zh) | 2010-10-01 | 2010-10-01 | 網路儲存與計算資源分享系統與方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20120084386A1 (zh) |
TW (1) | TWI592805B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI779640B (zh) * | 2021-06-02 | 2022-10-01 | 宏碁股份有限公司 | 運算資源分享系統及方法 |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012094330A1 (en) * | 2011-01-03 | 2012-07-12 | Planetary Data LLC | Community internet drive |
WO2013052068A1 (en) * | 2011-10-07 | 2013-04-11 | Intel Corporation | Mechanism for employing and facilitating dynamic and remote memory collaboration at computing devices |
CN102685245A (zh) * | 2012-05-29 | 2012-09-19 | 北京麦谱影随科技有限公司 | 一种基于互联网的数据社交存储方法和系统 |
US10114697B2 (en) * | 2012-06-25 | 2018-10-30 | International Business Machines Corporation | Large object parallel writing |
US11093327B1 (en) | 2012-06-25 | 2021-08-17 | Pure Storage, Inc. | Failure abatement approach for failed storage units common to multiple vaults |
TWI506456B (zh) * | 2013-05-23 | 2015-11-01 | Chunghwa Telecom Co Ltd | 基於Hadoop多叢集環境的工作分派系統及方法 |
TW201514732A (zh) | 2013-10-08 | 2015-04-16 | Wistron Corp | 整合網路儲存空間的方法及其控制系統 |
TWI514811B (zh) * | 2013-11-28 | 2015-12-21 | Synology Inc | 網路系統的操作方法 |
US9607002B2 (en) * | 2013-12-18 | 2017-03-28 | Intel Corporation | File retrieval from multiple storage locations |
TWI512595B (zh) * | 2013-12-27 | 2015-12-11 | Ind Tech Res Inst | 伺服器、與個人數位資源管理及分享系統與方法 |
CN104077398B (zh) * | 2014-06-30 | 2017-09-22 | 中华电信股份有限公司 | 基于Hadoop多丛集环境的工作分派系统及方法 |
US10313243B2 (en) | 2015-02-24 | 2019-06-04 | Commvault Systems, Inc. | Intelligent local management of data stream throttling in secondary-copy operations |
US10298680B1 (en) | 2015-09-23 | 2019-05-21 | Cohesity, Inc. | Dynamic throughput ingestion of backup sources |
CN108228337B (zh) | 2016-12-22 | 2021-08-27 | 财团法人工业技术研究院 | 中央处理单元的配置方法及适用此方法的服务器 |
TWI695321B (zh) * | 2018-12-14 | 2020-06-01 | 英屬維京群島商鯨鏈先進股份有限公司 | 基於計算元件的電腦資源分配方法與系統 |
US10467360B1 (en) * | 2019-01-02 | 2019-11-05 | Fmr Llc | System and method for dynamically determining availability of a computing resource |
CN111935748B (zh) * | 2020-08-18 | 2023-06-23 | 国网河南省电力公司信息通信公司 | 一种可靠性高和负载均衡的虚拟网资源分配方法 |
CN113094183B (zh) * | 2021-06-09 | 2021-09-17 | 苏州浪潮智能科技有限公司 | Ai训练平台的训练任务创建方法、装置、系统及介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1074159A (ja) * | 1996-08-30 | 1998-03-17 | Hitachi Ltd | 計算機システムの制御方法 |
DE60131900T2 (de) * | 2000-10-26 | 2008-12-04 | Flood, James C. jun., Portland | Verfahren und system zur verwaltung von verteilten inhalten und verwandten metadaten |
DE10236796B4 (de) * | 2002-08-08 | 2004-12-02 | Christian Dr. Scheideler | Verfahren und Anordnung zur randomisierten Datenspeicherung in Speichernetzwerken und/oder einem Intranet und/oder dem Internet sowie ein entsprechendes Computerprogramm-Erzeugnis und ein entsprechendes computerlesbares Speichermedium |
US20040117621A1 (en) * | 2002-12-12 | 2004-06-17 | Knight Erik A. | System and method for managing resource sharing between computer nodes of a network |
US20070091809A1 (en) * | 2005-10-25 | 2007-04-26 | Smith Jeffrey C | Managed network resource sharing and optimization method and apparatus |
US20080172720A1 (en) * | 2007-01-15 | 2008-07-17 | Botz Patrick S | Administering Access Permissions for Computer Resources |
US20080320097A1 (en) * | 2007-06-22 | 2008-12-25 | Tenoware R&D Limited | Network distributed file system |
US8281023B2 (en) * | 2008-11-14 | 2012-10-02 | Qualcomm Incorporated | Systems and methods for data authorization in distributed storage networks |
-
2010
- 2010-10-01 TW TW099133514A patent/TWI592805B/zh not_active IP Right Cessation
-
2011
- 2011-09-16 US US13/235,328 patent/US20120084386A1/en not_active Abandoned
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI779640B (zh) * | 2021-06-02 | 2022-10-01 | 宏碁股份有限公司 | 運算資源分享系統及方法 |
US11948006B2 (en) | 2021-06-02 | 2024-04-02 | Acer Incorporated | Computing resource sharing system and computing resource sharing method |
Also Published As
Publication number | Publication date |
---|---|
US20120084386A1 (en) | 2012-04-05 |
TW201216073A (en) | 2012-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI592805B (zh) | 網路儲存與計算資源分享系統與方法 | |
US11256558B1 (en) | Prioritized data rebuilding in a dispersed storage network based on consistency requirements | |
Khalaf et al. | Optimized dynamic storage of data (ODSD) in IoT based on blockchain for wireless sensor networks | |
US20200387503A1 (en) | Blockchain Maintenance Method and Apparatus, Server, and Computer-Readable Storage Medium | |
US10248506B2 (en) | Storing data and associated metadata in a dispersed storage network | |
CN113572618B (zh) | 结合Fabric和IPFS的去中心化存储系统及其数据存储方法 | |
US8972366B2 (en) | Cloud-based directory system based on hashed values of parent and child storage locations | |
US8051205B2 (en) | Peer-to-peer distributed storage | |
US7596570B1 (en) | Data sharing | |
US20170123848A1 (en) | Multi-task processing in a distributed storage network | |
US9442671B1 (en) | Distributed consumer cloud storage system | |
TWI378344B (en) | Data backup, recovery and deletion method through a distributed network and system thereof | |
US10275400B1 (en) | Systems and methods for forming a fault-tolerant federated distributed database | |
US20070083725A1 (en) | Software agent-based architecture for data relocation | |
JP2020511808A (ja) | 共有秘密ベースのブロックチェーン記憶 | |
WO2022007243A1 (zh) | 区块链隐私保护的数据处理方法、装置和计算机设备 | |
US20160205190A1 (en) | Parallel transparent restructuring of immutable content in a distributed object storage system | |
JP2012504284A (ja) | データ転送記憶における分解/再構築 | |
Gattermayer et al. | Blockchain-based multi-level scoring system for P2P clusters | |
TW200817923A (en) | Multiple peer groups for efficient scalable computing | |
US9940195B2 (en) | Encryption of slice partials | |
US10592109B2 (en) | Selecting storage resources in a dispersed storage network | |
US10169369B2 (en) | Meeting storage requirements with limited storage resources | |
US10304096B2 (en) | Renting a pipe to a storage system | |
TWI481227B (zh) | 物件傳遞系統與方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |