TW201301053A - 基於雲端儲存的檔案處理方法,系統及伺服器叢集系統 - Google Patents
基於雲端儲存的檔案處理方法,系統及伺服器叢集系統 Download PDFInfo
- Publication number
- TW201301053A TW201301053A TW100132629A TW100132629A TW201301053A TW 201301053 A TW201301053 A TW 201301053A TW 100132629 A TW100132629 A TW 100132629A TW 100132629 A TW100132629 A TW 100132629A TW 201301053 A TW201301053 A TW 201301053A
- Authority
- TW
- Taiwan
- Prior art keywords
- file
- slice
- web server
- request
- server cluster
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1824—Distributed file systems implemented using Network-attached Storage [NAS] architecture
- G06F16/183—Provision of network file services by network file servers, e.g. by using NFS, CIFS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/457—Network directories; Name-to-address mapping containing identifiers of data entities on a computer, e.g. file names
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申請公開了一種基於雲端儲存的檔案處理方法、系統及伺服器叢集系統,該方法包括:WEB伺服器接收用戶端發送的檔案上傳請求;WEB伺服器向用戶端返回伺服器叢集為待上傳新檔案生成的檔案ID;用戶端對新檔案進行切片,並為每個切片檔案生成唯一的切片ID;用戶端將切片檔案資料包上傳給WEB伺服器,切片檔案資料包中包含檔案ID、每個切片檔案的切片ID和每個切片檔案的切片資料;WEB伺服器將切片檔案資料包中的每個切片檔案的切片資料發送到伺服器叢集中的對應服務終端上進行儲存。本申請實施例透過對檔案進行分片處理並在伺服器叢集中對切片檔案進行分散式儲存,從而使得基於伺服器叢集的雲端儲存性能較佳優化。
Description
本發明係關於資料處理技術領域,特別關於一種基於雲端儲存的檔案處理方法、系統及伺服器叢集系統。
雲端運算(Cloud Computing)是分散式處理(Distributed Computing)、並行處理(Parallel Computing)和網格計算(Grid Computing)的發展,透過網路將龐大的計算處理程式拆分成若干較小的副程式,將這些小程式分別交由多台伺服器所組成的系統進行計算,並輸出計算結果。雲端儲存是在雲端計算概念上延伸出來的,指透過叢集應用、網格技術或分散式檔案系統等功能,將網路中大量不同類型的儲存設備透過應用軟體集合在一起,實現協同工作,共同對外提供資料儲存和業務訪問功能。即當雲端計算系統運算和處理的核心是大量資料的儲存和管理時,雲端計算系統就需要配置大量的儲存設備,此時的雲端計算系統就轉變為一個雲端儲存系統,所以雲端儲存系統就是一個以資料儲存和管理為核心的雲端計算系統。這個儲存系統由多個儲存設備組成,透過叢集功能、分散式檔案系統或類似網格計算等功能聯合起來協同工作,並透過一定的應用軟體或應用介面,為用戶提供一定類型的儲存服務和訪問服務。
現有的雲端儲存方案都是基於整個檔案進行儲存,即應用軟體或者用戶將整個檔案上傳,由於以檔案為單位進行儲存,這容易造成資源的浪費。例如,當用戶上傳了一個較大的檔案後,如果只修改了該檔案的一小部分,此時仍需要重傳整個檔案;又例如,當用戶增加了一個檔案版本,即使新增加的檔案版本與之前的檔案版本差別非常小,用戶同樣需要將整個新的檔案版本上傳。由此可知,現有技術的雲端儲存方式,使得用戶需要在每一次對檔案的局部修改後,都重傳整個檔案,這不但浪費了系統的儲存空間和網路帶寬,而且容易導致檔案系統的訪問速度下降。
本發明實施例的目的在於提供一種基於雲端儲存的檔案處理方法、系統及伺服器叢集系統,以解決現有雲端儲存方式浪費系統的儲存空間和網路帶寬,容易導致檔案系統的訪問速度下降的問題。
為解決上述技術問題,本申請實施例提供一種基於雲端儲存的檔案處理方法,是這樣實現的:一種基於雲端儲存的檔案處理方法,包括:WEB伺服器接收用戶端發送的檔案上傳請求,該檔案上傳請求用於請求向伺服器叢集上傳新檔案;WEB伺服器向該用戶端返回該伺服器叢集為該新檔案生成的檔案ID;該用戶端對該新檔案進行切片,並為每個切片檔案生成唯一的切片ID;該用戶端將切片檔案資料包上傳給WEB伺服器,該切片檔案資料包中包含檔案ID、每個切片檔案的切片ID和每個切片檔案的切片資料;WEB伺服器將該切片檔案資料包中的每個切片檔案的切片資料發送到該伺服器叢集中的對應服務終端上進行儲存,其中,該伺服器叢集保存該檔案ID與該切片ID的對應關係。
為解決上述技術問題,本申請實施例還提供一種基於雲端儲存的檔案處理系統,是這樣實現的:一種基於雲端儲存的檔案處理系統,包括:用戶端、WEB伺服器和伺服器叢集,該WEB伺服器,用於接收用戶端發送的檔案上傳請求,該檔案上傳請求用於請求向伺服器叢集上傳新檔案,並向該用戶端返回該伺服器叢集為該新檔案生成的檔案ID;該用戶端,用於對該新檔案進行切片,並為每個切片檔案生成唯一的切片ID,將切片檔案資料包上傳給WEB伺服器,該切片檔案資料包中包含檔案ID、每個切片檔案的切片ID和每個切片檔案的切片資料;該WEB伺服器,還用於將該切片檔案資料包中的每個切片檔案的切片資料發送到該伺服器叢集;該伺服器叢集,用於將該每個切片檔案的切片資料儲存到對應的服務終端上,以及保存該檔案ID與該切片ID的對應關係。
為解決上述技術問題,本申請實施例還提供一種基於雲端儲存的伺服器叢集系統,是這樣實現的:一種基於雲端儲存的伺服器叢集系統,包括:WEB伺服器和伺服器叢集,該伺服器叢集中包含若干服務終端,該WEB伺服器,用於接收用戶端發送的檔案上傳請求,該檔案上傳請求用於請求向伺服器叢集上傳新檔案,向該用戶端返回該伺服器叢集為該新檔案生成的檔案ID,接收該用戶端上傳的切片檔案資料包,該切片檔案資料包中包含檔案ID、每個切片檔案的切片ID和每個切片檔案的切片資料;該伺服器叢集,用於接收該WEB伺服器發送的該切片檔案資料包中的每個切片檔案的切片資料,並將每個切片檔案的切片資料發送到該伺服器叢集中的對應服務終端上進行儲存,以及保存該檔案ID與該切片ID的對應關係。
由以上本發明實施例提供的技術方案可見,本申請實施例中WEB伺服器接收用戶端發送的檔案上傳請求後,向用戶端返回伺服器叢集為新檔案生成的檔案ID,用戶端對新檔案進行切片,並為每個切片檔案生成唯一的切片ID,將切片檔案資料包上傳給WEB伺服器,切片檔案資料包中的每個切片檔案包含檔案ID、每個切片檔案的切片ID和每個切片檔案的切片資料,WEB伺服器將切片檔案資料包中的每個切片檔案的切片資料發送到伺服器叢集中的對應服務終端上進行儲存。本申請實施例透過對檔案進行分片處理並在伺服器叢集中對切片檔案進行分散式儲存,從而使得基於伺服器叢集的雲端儲存性能更加優化;應用本申請實施例上傳修改後的檔案時,由於只需上傳用戶修改的檔案切片,而無需重傳整個檔案,因此減少了伺服器叢集中的冗餘數據,節省了儲存空間,減少了用戶端上傳檔案的時間。
在如下本發明的多個實施例中提供了一種基於雲端儲存的檔案處理方法、系統及伺服器叢集系統。
為了使本技術領域的人員更好地理解本發明實施例中的技術方案,並使本發明實施例的上述目的、特徵和優點能夠更加明顯易懂,下面結合附圖對本發明實施例中技術方案作進一步詳細的說明。
參見圖1,為本申請實施例所應用的雲端儲存架構示意圖:該雲端儲存架構包括:用戶端、WEB伺服器(WebServer)和伺服器叢集,其中,伺服器叢集進一步包括至少一個服務叢集整合端(Service Manager)、每個叢集服務整合端下可以連接若干服務分配端(Service Master)、每個服務分配端下可以連接若干服務終端(Service Worker)。
需要說明的是,圖1中示出的伺服器叢集由多叢集系統組成,多系統叢集中包括若干單叢集系統,每個單叢集系統為一個服務分配端和其下連接的若干服務終端,在實際應用時,本申請實施例根據所儲存檔案的容量大小可以選擇採用由多叢集系統組成的伺服器叢集,也可以選擇採用由單叢集系統組成的伺服器叢集;另外,圖1中僅示出了一台WEB伺服器,實際應用中與用戶端交互的也可以是WEB伺服器叢集,此時在接收到某個用戶端上傳的檔案處理請求時,可以透過負載均衡調度將該處理請求分配到某一台WEB伺服器上進行處理。綜上,圖1所示出的雲端儲存架構不應視為對本申請實施例儲存架構的限制。
圖1中,當用戶透過用戶端軟體對檔案進行上傳、下載或者刪除操作時,這些操作命令可以轉化為http請求,透過WEB伺服器上傳到伺服器叢集進行處理。下面將結合圖1示出的系統架構對本申請基於雲端儲存的檔案處理實施例進行描述。
參見圖2,為本申請基於雲端儲存的檔案處理方法的第一實施例流程圖:
步驟201:WEB伺服器接收用戶端發送的檔案上傳請求,該檔案上傳請求用於請求向伺服器叢集上傳新檔案。
步驟202:WEB伺服器向用戶端返回伺服器叢集為新檔案生成的檔案ID。
具體的,WEB伺服器向伺服器叢集發送獲取新檔案的檔案ID的請求,伺服器叢集根據該請求為新檔案分配檔案ID,伺服器叢集將檔案ID返回給WEB伺服器,WEB伺服器將檔案ID發送給用戶端。其中,伺服器叢集中儲存了海量的檔案,並且伺服器叢集為每個檔案分配唯一的檔案ID,例如,以數位進行順序編號的檔案ID。當為上傳請求中的檔案分配了唯一檔案ID後,伺服器叢集可以進一步記錄該檔案ID與上傳請求中所包含的資訊之間的對應關係,上傳請求中所包含的資訊可以包括用戶ID、檔案名稱、檔案路徑等,透過上述對應關係伺服器叢集可以對檔案進行管理維護。
步驟203:用戶端對新檔案進行切片,並為每個切片檔案生成唯一的切片ID。
具體的,用戶端可對新檔案按照預設長度進行分塊,生成若干切片檔案,其中,當分塊後的剩餘檔案塊的長度小於預設長度時,將該剩餘檔案塊作為一個切片檔案,根據每個切片檔案的檔案資料,透過MD5散列函數等計算每個切片檔案的切片ID,該切片ID可以唯一標識一個切片檔案。
步驟204:用戶端將切片檔案資料包上傳給WEB伺服器,切片檔案資料包中包含檔案ID、每個切片檔案的切片ID和每個切片檔案的切片資料。
步驟205:WEB伺服器將切片檔案資料包中的每個切片檔案的切片資料發送到伺服器叢集中的對應服務終端上進行儲存,其中,伺服器叢集保存檔案ID與切片ID的對應關係。
假設用戶端首次向伺服器叢集上傳當前檔案,則用戶端可首先將當前檔案的檔案ID和該檔案所有切片檔案的切片ID上傳給WEB伺服器,WEB伺服器將包含該當前檔案的檔案ID和所有切片檔案的切片ID的查詢請求發送到伺服器叢集,該查詢請求用於請求獲取儲存每個切片檔案的服務終端的位址。伺服器叢集接收到查詢請求後,可以保存該檔案ID與切片ID之間的對應關係(即相當於保存了組成每個檔案的切片檔案的資訊),伺服器叢集根據每個切片ID透過一致性散列演算法計算儲存每個切片檔案的服務終端的位址;伺服器叢集將服務終端的位址返回給WEB伺服器,WEB伺服器將切片檔案資料包中的每個切片檔案的切片資料按照對應的服務終端的位址發送到服務終端上進行儲存,其中,服務終端可以儲存每個切片檔案的切片ID和切片資料的對應關係。
下面簡單描述一下採用一致性散列演算法計算服務終端位址的過程:假設伺服器叢集中有N台伺服器,將這N台伺服器在邏輯上排列成一個環,環上的每一台伺服器按照順時針方向編號(編號可以取0至N-1),在計算儲存某個切片檔案的伺服器位址時,可以用該切片檔案的切片ID對N取模,假設取模後得到的餘數值為K,則從上述哈希環中編號為0的伺服器開始順時針獲取哈希環上的第K個伺服器,則該第K個伺服器即為用於儲存該切片檔案的伺服器。
進一步,用戶端在上傳檔案之前,可以先將重複統計請求發送給WEB伺服器,以便請求統計伺服器叢集中是否已經存在了該檔案中的切片資料,避免重複上傳。即用戶端首先對檔案進行切片,並透過MD5散列函數等計算每個切片檔案的切片ID,然後將包含了每個切片檔案的切片ID的重複統計請求上傳給WEB伺服器,WEB伺服器將重複統計請求轉發到伺服器叢集,伺服器叢集根據保存的切片ID資訊查找是否已經保存過該重複統計請求中所包含的切片ID,對於已經保存的切片ID,說明伺服器叢集中已經保存了對應的切片檔案,無需再進行重複上傳,因此伺服器叢集將切片檔案是否重複的資訊發送給WEB伺服器,WEB伺服器將切片檔案是否重複的資訊發送給用戶端,用戶端根據切片檔案是否重複的資訊,將包含不重複切片檔案的切片檔案資料包上傳給WEB伺服器;後續,WEB伺服器只需要向伺服器叢集請求儲存不重複切片檔案的服務終端位址,並依據該地址將不重複切片檔案發送到對應服務終端上進行儲存即可。
在對上傳檔案進行重複統計時,WEB伺服器可以進一步保存用戶ID和檔案ID之間的對應關係,當不同用戶上傳同樣的檔案時,則WEB伺服器中可以保存一個檔案ID與多個用戶ID之間的對應關係;同時,述伺服器叢集為每個切片ID設置引用計數器,每個引用計數器的計數值初始化為零,根據重複統計結果,當某個切片ID重複時,則將該切片ID的引用計數器的計數值加一。
參見圖3,為本申請基於雲端儲存的檔案處理的第二實施例流程圖,該實施例示出了用戶端請求上傳新檔案的過程:
步驟301:用戶端向WEBServer發送創建新檔案的檔案上傳請求。
當用戶想要上傳一個新檔案時,用戶端生成創建新檔案的檔案上傳請求,並將該檔案上傳請求發送到網路中用於處理該檔案上傳請求的WEBServer上。
該檔案上傳請求中可以包括用戶ID、檔案名稱和檔案儲存路徑等。
步驟302:WEBServer向ServiceManager轉發檔案上傳請求。
當本申請實施例中的伺服器叢集架構為圖1中所示的架構時,WEBServer需要將檔案上傳請求發送到伺服器叢集中的ServiceManager。
步驟303:ServiceManager為該新檔案進行統一編碼,生成檔案ID。
伺服器叢集中包括了海量的檔案,並且伺服器叢集中的ServiceManager可以為每個檔案分配唯一的檔案ID,例如,以數位進行順序編號的檔案ID。當為上傳請求中的檔案分配了唯一檔案ID後,ServiceManager可以進一步記錄該檔案ID與上傳請求中所包含的資訊之間的對應關係,上傳請求中所包含的資訊可以包括用戶ID、檔案名稱、檔案路徑等,透過上述對應關係伺服器叢集可以對檔案進行管理維護。
步驟304:ServiceManager將該新檔案的檔案ID返回給WEBServer。
步驟305:WEBServer將新檔案的檔案ID返回給用戶端參見圖4,為本申請基於雲端儲存的檔案處理的第三實施例流程圖,由於用戶端請求上傳的新檔案可能是與原儲存檔案相比,僅修改了部分內容的新檔案,因此本實施例示出了用戶端上傳新檔案前,獲取切片檔案重複資訊的過程:
步驟401:用戶端對新檔案按照預設長度進行切片,生成若干切片檔案。
預設長度可以是經過試驗計算得到的一個符合系統最佳長度的數值,例如,較佳的為128k,將新檔案順序分割成若干長度為128K的切片檔案,由於新檔案的長度可能不為128的整數倍,因此對於分割後剩餘的不足128K的資料塊,可以將其作為一個切片檔案。
步驟402:用戶端根據切片檔案的切片資料,可透過MD5散列函數等計算每個切片檔案的切片ID。
對於分割後生成的每個切片檔案,可以使用MD5散列函數根據切片檔案的切片資料生成唯一標識該切片檔案的切片ID。
步驟403:用戶端向WEBServer發送重複統計請求,該重複統計請求中包含每個切片檔案的切片ID。
由於用戶端上傳的新檔案可能是修改了部分資料的某個已有檔案,因此如果重傳所有檔案資料將導致伺服器叢集中產生冗餘數據,因此本申請實施例可以向伺服器叢集查詢新檔案中的每個切片檔案是否重複。用戶端向WEBServer發送重複統計請求,該重複統計請求中包含每個切片檔案的切片ID。
步驟404:WEBServer向ServiceManager轉發重複統計請求。
步驟405:ServiceManager獲取用於儲存切片檔案的ServiceMaster。
由於本申請實施例採用了如圖1所示的雲端儲存伺服器叢集架構,因此在伺服器叢集內部,處於上層的ServiceManager可以透過一致性散列演算法獲取用於儲存切片檔案的ServiceMaster,同理,處於上層的ServiceManager可以透過一致性散列演算法獲取用於儲存切片檔案的ServiceWorker。
其中,ServiceManager和ServiceMaster根據切片ID,分別透過一致性散列演算法獲取下層的ServiceMaster和ServiceWorker時的過程與步驟205中的描述一致,在此不再贅述。ServiceManager在向某個ServiceMaster轉發重複統計請求時,該重複統計請求中包含了透過一致性散列演算法計算的由該ServiceMaster儲存的切片資料的對應的切片ID。
步驟406:ServiceManager將重複統計請求轉發給獲取的ServiceMaster。
步驟407:ServiceMaster透過一致性散列演算法計算儲存切片檔案的ServiceWorker的位址。
ServiceMaster在向某個ServiceWorker轉發重複統計請求時,該重複統計請求中包含了透過一致性散列演算法計算的由該ServiceWorker儲存的切片資料的對應的切片ID。
步驟408:ServiceMaster按照ServiceWorker的位址將重複統計請求轉發給相應的ServiceWorker。
步驟409:ServiceWorker查找是否已保存重複統計請求中的切片ID。
如果從ServiceWorker中查找到重複統計請求中的切片ID,則說明該ServiceWorker中已經保存了與該切片ID對應的切片資料,即該切片ID對應的切片資料已經重複,無需再上傳。
步驟410:ServiceWorker將切片檔案是否重複的資訊發送給ServiceMaster。
ServiceWorker可以僅將統計出的不重複的切片檔案的切片ID返回給ServiceMaster,同時返回用於儲存該切片檔案的ServiceWorker的位址。
步驟411:ServiceMaster將切片檔案是否重複的資訊轉發給ServiceManager。
步驟412:ServiceManager將切片檔案是否重複的資訊轉發給WEBServer。
WEBServer保存了需要上傳的不重複的切片檔案的切片ID和對應的ServiceWorker的位址。
步驟413:WEBServer將切片檔案是否重複的資訊發送給用戶端。
最終,用戶端接收到的切片檔案是否重複的資訊中可以只包括經過重複統計後的不重複的切片檔案的切片ID。
需要說明的是,如果每一次上傳新檔案時,ServiceManager中都保存已上傳切片檔案的切片ID,則每一次判斷待上傳切片檔案是否重複的時候,可以直接將切片ID發送到ServiceManager中進行查詢,如果存在該切片ID,則對應的切片檔案重複,如果不存在該切片ID,則對應的切片檔案不重複。
參見圖5,為本申請基於雲端儲存的檔案處理的第四實施例流程圖,該實施例示出了根據獲取的切片檔案是否重複的資訊上傳切片檔案的過程:
步驟501:用戶端向WEBServer上傳不重複的切片檔案的切片ID和切片資料。
在圖4示出的第三實施例中,用戶端已經獲得了待上傳新檔案中不重複的切片檔案資訊,因此本實施例中用戶端只需要向WEBServer上傳不重複的切片檔案的切片ID和切片資料即可。
步驟502:WEBServer根據接收到的切片檔案的切片ID查找用於儲存該切片檔案的ServiceWorker的位址。
根據前述第三實施例可知,在WEBServer中保存了伺服器叢集中的ServiceWorker返回的待上傳的不重複的切片檔案的切片ID和對應的ServiceWorker的位址,因此根據用戶端上傳的切片檔案的切片ID查找儲存該切片檔案的切片資料的ServiceWorker的位址。
步驟503:WEBServer按照ServiceWorker的位址將切片檔案發送到對應的ServiceWorker上。
步驟504:ServiceWorker保存接收到的切片檔案。
進一步地,在步驟504之後,還可以包括:
步驟505:ServiceWorker向WEBServer返回儲存完成的應答消息。
步驟506:WEBServer向用戶端轉發儲存文成的應答消息。
參見圖6,為本申請基於雲端儲存的檔案處理的第五實施例流程圖,該實施例示出了用戶端請求下載檔案的過程:
步驟601:用戶端向WEBServer發送下載檔案的下載請求,該下載請求中包含所要下載檔案的檔案ID。
步驟602:WEBServer向ServiceManager轉發該下載請求。
該下載請求用於從伺服器叢集中請求獲取組成該下載檔案的所有切片檔案的資訊。
步驟603:ServiceManager根據一致性散列演算法獲取用於儲存切片檔案的ServiceMaster。
在伺服器叢集內部,處於上層的ServiceManager可以透過一致性散列演算法獲取用於儲存該新檔案的切片檔案的ServiceMaster,同理,處於上層的ServiceMaster可以透過一致性散列演算法獲取用於儲存切片檔案的ServiceWorker。
具體的,ServiceManager根據檔案上傳時保存的檔案ID與切片ID的對應關係,獲取與該下載請求中的檔案ID對應的所有切片ID。本申請實施例按照切片檔案上傳時遵循的一致性散列演算法即可根據切片ID獲取保存該切片檔案的ServiceMaster,以及該ServiceMaster下的ServiceWorker。
其中,在獲取ServiceMaster時,假設伺服器叢集中ServiceManager下有N台ServiceMaster,將這N台ServiceMaster在邏輯上排列成一個環,環上的每一台ServiceMaster按照順時針方向編號(編號可以取0至N-1),在計算儲存某個切片檔案的切片資料的ServiceMaster位址時,可以用該切片檔案的切片ID對N取模,假設取模後得到的餘數值為K,則從上述哈希環中編號為0的ServiceMaster開始順時針獲取哈希環上的第K個ServiceMaster,則該第K個ServiceMaster即為用於儲存該切片檔案的切片資料的ServiceMaster。
步驟604:ServiceManager將檔案的下載請求轉發給獲取的ServiceMaster。
步驟605:ServiceMaster透過一致性散列演算法計算儲存該檔案的每個切片檔案的ServiceWorker的位址。
本步驟中透過一致性散列演算法計算ServiceMaster下的ServiceWorker的位址的過程與步驟603中計算ServiceManager下的ServiceMaster的過程一致,在此不再贅述。
步驟606:ServiceMaster將儲存每個切片檔案的ServiceWorker的位址發送給ServiceManager。
步驟607:ServiceManager將儲存每個切片檔案的ServiceWorker的位址轉發給WEBServer。
步驟608:WEBServer根據ServiceWorker的位址向相應的ServiceWorker請求讀取切片檔案。
對於伺服器叢集中的每個ServiceWorker,其可能需要並行處理多個切片檔案的下載請求。因此ServiceWorker可以將每個切片檔案的下載請求封裝成任務加入下載佇列中,並啟動多線程對任務進行處理。
步驟609:ServiceWorker將切片檔案返回給WEBServer。
步驟610:WEBServer將接收到的切片檔案按照切片順序組成請求下載的檔案。
ServiceWorker向WEBServer返回的切片檔案中包含了每個切片檔案的切片資料、切片ID、切片檔案在整個檔案的切片順序以及檔案ID,WEBServer將屬於具有同一個檔案ID的切片檔案按照其切片順序組成下載檔案。
步驟611:WEBServer將請求下載的檔案發送給用戶端。
用戶端向WEBServer發送下載請求時,WEBServer可以記錄該用戶端的用戶ID,當組成了下載檔案後,按照用戶ID將下載檔案轉發到相應的用戶端上。
上述實施例中,伺服器叢集在完成下載檔案操作時,可以採用順序下載每個切片檔案的方式進行,例如,ServiceManager順序獲取待下載檔案的第一個切片檔案,並計算儲存該切片檔案的ServiceMaster,然後由該ServiceMaster計算儲存該切片檔案的ServiceWorker,向該ServiceWorker發送下載第一個切片檔案的請求,以此類推,直到按照切片順序下載完所有切片檔案。
參見圖7,為本申請基於雲端儲存的檔案處理的第六實施例流程圖,該實施例示出了用戶端請求刪除檔案的過程:
步驟701:用戶端向WEBServer發送刪除檔案的刪除請求,該刪除請求中包含所要刪除檔案的檔案ID和用戶ID。
在前述實施例中,對於首次上傳的切片檔案,ServiceManager中可以保存該切片ID與相應切片檔案所屬檔案的檔案ID之間的對應關係,同時為每個切片ID設置一個引用計數器,該引用計數器的計數值初始化為0,後續該切片檔案每當被重複上傳一次,則該計數器的計數值相應加一。
步驟702:WEBServer判斷保存了刪除請求中的檔案ID與用戶ID的對應關係。
如果WEBServer中保存了檔案ID與用戶ID之間的對應關係,說明用戶端用戶上傳過與檔案ID對應的檔案,則用於該用戶端用戶執行刪除操作。
步驟703:WEBServer向ServiceManager轉發該刪除請求。
該刪除請求用於從伺服器叢集中請求刪除組成該刪除檔案的所有切片檔案的資訊。
步驟704:ServiceManager獲取與檔案ID對應的所有切片ID。
步驟705:ServiceManager判斷每個切片ID的計數器的計數值是否為零,如果不為零,則執行步驟706;否則,執行步驟707。
步驟706:將切片ID的計數器的計數值減一。
如果切片ID的計數器的計數值不為零,則說明該切片ID對應的切片資料由用戶端用戶進行過重複上傳,因此相應的將切片ID的計數器的計數值減一即可,表示系統中對於該計數器的計數值的修改少一。將該計數器的計數值將該步驟707:ServiceManager根據一致性散列演算法獲取用於儲存切片檔案的ServiceMaster。
如果切片ID的計數器的計數值為零,則說明該切片ID對應的切片資料在系統中僅有一份,沒有其他用戶端用戶對其進行操作,因此可以刪除該切片ID對應的切片資料本身。
在伺服器叢集內部,處於上層的ServiceManager可以透過一致性散列演算法獲取用於儲存該檔案的切片檔案的ServiceMaster,同理,處於上層的ServiceMaster可以透過一致性散列演算法獲取用於儲存切片檔案的ServiceWorker。
步驟708:ServiceManager將檔案的刪除請求轉發給獲取的ServiceMaster。
步驟709:ServiceMaster透過一致性散列演算法計算儲存該檔案的每個切片檔案的ServiceWorker的位址。
本實施例中透過一致性散列演算法計算用於儲存每個切片檔案的ServiceWorker的位址的過程與前述第六實施例中的描述一致,在此不再贅述。
步驟710:ServiceMaster根據ServiceWorker的位址向相應的ServiceWorker發送刪除切片檔案的請求,該請求中包含了待刪除切片檔案的切片ID。
步驟711:ServiceWorker根據切片ID刪除其上儲存的相應切片檔案。
上述實施例中,伺服器叢集在完成刪除檔案操作時,可以採用順序刪除每個切片檔案的方式進行,例如,ServiceManager順序獲取待刪除檔案的第一個切片檔案,並計算儲存該切片檔案的ServiceMaster,然後由該ServiceMaster計算儲存該切片檔案的ServiceWorker,向該ServiceWorker發送刪除第一個切片檔案的請求,此時可以ServiceWorker可以判斷該切片檔案是否處於被讀寫的狀態,如果未處於被讀寫的狀態,則可以執行刪除該切片檔案的操作,以此類推,直到按照切片順序刪除完所有切片檔案。
與本申請基於雲端儲存的檔案處理方法的實施例相對應,本發明還提供了基於雲端儲存的檔案處理系統及伺服器叢集系統的實施例。
參見圖8,為本申請基於雲端儲存的檔案處理系統的實施例框圖:該系統包括:用戶端810、WEB伺服器820和伺服器叢集830。
其中,該WEB伺服器820,用於接收用戶端發送的檔案上傳請求,該檔案上傳請求用於請求向伺服器叢集上傳新檔案,並向該用戶端返回該伺服器叢集為該新檔案生成的檔案ID;該用戶端810,用於對該新檔案進行切片,並為每個切片檔案生成唯一的切片ID,將切片檔案資料包上傳給WEB伺服器820,該切片檔案資料包中包含檔案ID、每個切片檔案的切片ID和每個切片檔案的切片資料;該WEB伺服器820,還用於將該切片檔案資料包中的每個切片檔案的切片資料發送到該伺服器叢集830;該伺服器叢集830,用於將該每個切片檔案的切片資料儲存到對應的服務終端上,以及保存該檔案ID與該切片ID的對應關係。
進一步,該用戶端810,還用於將重複統計請求發送給該WEB伺服器,該重複統計請求中包含每個切片檔案的切片ID;該WEB伺服器820,還用於將該重複統計請求轉發到該伺服器叢集;該伺服器叢集830,還用於根據該重複統計請求中的切片ID查找已保存的切片ID,如果查找到該重複統計請求中的切片ID,則確定與該切片ID對應的切片檔案重複,如果未查找到該重複統計請求中的切片ID,則確定與該切片ID對應的切片檔案不重複,並將每個切片檔案是否重複的資訊發送給該WEB伺服器;該WEB伺服器820,還用於將該切片檔案是否重複的資訊發送給該用戶端;該用戶端810,具體用於根據該切片檔案是否重複的資訊,將包含不重複切片檔案的切片ID和切片資料的切片檔案資料包上傳給該WEB伺服器。
進一步,該WEB伺服器820,還用於向該伺服器叢集發送獲取儲存切片檔案位址的查詢請求;該伺服器叢集830,還用於根據每個切片檔案的切片ID,透過一致性散列演算法計算儲存每個切片檔案的服務終端的位址;該WEB伺服器820,具體用於將該切片檔案資料包中的每個切片檔案按照對應的服務終端的位址發送到服務終端上進行儲存。
進一步,該用戶端810,還用於向該WEB伺服器發送檔案下載請求,該檔案下載請求中包含用戶端請求下載檔案的檔案ID;該WEB伺服器820,還用於將該檔案下載請求發送給該伺服器叢集;該伺服器叢集830,還用於向該WEB伺服器發送儲存與該檔案ID對應的檔案的每個切片檔案的服務終端的位址;該WEB伺服器820,還用於根據該服務終端的位址從對應的服務終端上獲取每個切片檔案,並將該切片檔案按照切片順序組成該請求下載的檔案,並將該檔案發送給該用戶端。
進一步,該WEB伺服器820,還用於當該檔案上傳請求中還包含該用戶端的用戶ID時,保存該檔案ID與該用戶ID之間的對應關係;該伺服器叢集830,還用於為每個切片ID設置引用計數器,該引用計數器的計數值初始化為零,當確定與切片ID對應的切片檔案重複時,將該切片ID的引用計數器的計數值加一。
進一步,該用戶端810,還用於向該WEB伺服器發送檔案刪除請求,該檔案刪除請求中包含該用戶端請求刪除檔案的檔案ID和用戶ID;該WEB伺服器820,還用於當保存了該刪除請求中保存的檔案ID和用戶ID的對應關係時,將該檔案刪除請求發送給該伺服器叢集;該伺服器叢集830,還用於根據該檔案ID獲取對應的切片ID,並判斷該切片ID的引用計數器的計數值是否為零;當切片ID的計數器的計數值為零,該伺服器叢集獲取儲存該請求刪除檔案的每個切片檔案的服務終端,伺服器叢集向對應的服務終端轉發該檔案刪除請求,接收到該檔案刪除請求的服務終端刪除組成該請求刪除檔案的切片檔案;當切片ID的計數器的計數值不為零,則將該切片ID的計數器的計數值減一。
其中,伺服器叢集830可以包括(圖8中未示出):至少一個服務叢集整合端、與每個服務叢集整合端相連的若干服務分配端、以及與每個服務分配端相連的若干服務終端;該服務叢集整合端用於與WEB伺服器進行交互,並將交互資料向下依次傳輸到對應的服務分配端,並由服務分配端將交互資料傳輸到對應的服務終端。
參見圖9,為本申請基於雲端儲存的伺服器叢集系統的實施例框圖:該伺服器叢集系統包括:WEB伺服器910和伺服器叢集920,其中伺服器叢集920包含若干服務終端921,為了示例方便,圖9中僅示出了三個服務終端921。
其中,該WEB伺服器910,用於接收用戶端發送的檔案上傳請求,該檔案上傳請求用於請求向伺服器叢集上傳新檔案,向該用戶端返回該伺服器叢集為該新檔案生成的檔案ID,接收該用戶端上傳的切片檔案資料包,該切片檔案資料包中包含檔案ID、每個切片檔案的切片ID和每個切片檔案的切片資料;該伺服器叢集920,用於接收該WEB伺服器發送的該切片檔案資料包中的每個切片檔案的切片資料,並將每個切片檔案的切片資料發送到該伺服器叢集中的對應服務終端上進行儲存,以及保存該檔案ID與該切片ID的對應關係。
進一步,該WEB伺服器910,還用於接收用戶端發送的重複統計請求,該重複統計請求中包含每個切片檔案的切片ID,並將該重複統計請求轉發到該伺服器叢集;該伺服器叢集920,還用於根據該重複統計請求中的切片ID查找已保存的切片ID,如果查找到該重複統計請求中的切片ID,則確定與該切片ID對應的切片檔案重複,如果未查找到該重複統計請求中的切片ID,則確定與該切片ID對應的切片檔案不重複,以及將每個切片檔案是否重複的資訊發送給該WEB伺服器;該WEB伺服器910,還用於將該切片檔案是否重複的資訊發送給該用戶端,以使該用戶端根據該切片檔案是否重複的資訊,將包含不重複切片檔案的切片ID和切片資料的切片檔案資料包上傳給該WEB伺服器。
進一步,該WEB伺服器910,還用於向該伺服器叢集發送獲取儲存切片檔案位址的查詢請求;該伺服器叢集920,還用於根據每個切片檔案的切片ID,透過一致性散列演算法計算儲存每個切片檔案的服務終端的位址,並將該服務終端的位址返回給該WEB伺服器;該WEB伺服器910具體用於將該切片檔案資料包中的每個切片檔案按照對應的服務終端的位址發送到服務終端上進行儲存。
進一步,該WEB伺服器910,還用於接收用戶端發送的檔案下載請求,該檔案下載請求中包含用戶端請求下載檔案的檔案ID,並將該檔案下載請求發送給該伺服器叢集;該伺服器叢集920,還用於向該WEB伺服器發送儲存與該檔案ID對應的檔案的每個切片檔案的服務終端的位址;該WEB伺服器910,還用於根據該服務終端的位址從對應的服務終端上獲取每個切片檔案,並將該切片檔案按照切片順序組成該請求下載的檔案,並將該檔案發送給該用戶端。
進一步,該WEB伺服器910,還用於當該檔案上傳請求中還包含該用戶端的用戶ID時,保存該檔案ID與該用戶ID之間的對應關係;該伺服器叢集920,還用於為每個切片ID設置引用計數器,該引用計數器的計數值初始化為零,當確定與切片ID對應的切片檔案重複時,將該切片ID的引用計數器的計數值加一。
進一步,該WEB伺服器910,還用於接收該用戶端發送的檔案刪除請求,該檔案刪除請求中包含該用戶端請求刪除檔案的檔案ID和用戶ID,並保存了該刪除請求中保存的檔案ID和用戶ID的對應關係時,將該檔案刪除請求發送給該伺服器叢集;該伺服器叢集920,還用於根據該檔案ID獲取對應的切片ID,並判斷該切片ID的引用計數器的計數值是否為零;當切片ID的計數器的計數值為零,該伺服器叢集獲取儲存該請求刪除檔案的每個切片檔案的服務終端,伺服器叢集向對應的服務終端轉發該檔案刪除請求;當切片ID的計數器的計數值不為零,則將該切片ID的計數器的計數值減一;該服務終端921,用於接收到該檔案刪除請求後,刪除組成該請求刪除檔案的切片檔案。
其中,伺服器叢集920可以包括(圖9中未示出):至少一個服務叢集整合端、與每個服務叢集整合端相連的若干服務分配端、以及與每個服務分配端相連的若干該服務終端;該服務叢集整合端用於與WEB伺服器進行交互,並將交互資料向下依次傳輸到對應的服務分配端,並由服務分配端將交互資料傳輸到對應的服務終端。
透過以上的實施方式的描述可知,本申請實施例中WEB伺服器接收用戶端發送的檔案上傳請求後,向用戶端返回伺服器叢集為新檔案生成的檔案ID,用戶端對新檔案進行切片,並為每個切片檔案生成唯一的切片ID,將切片檔案資料包上傳給WEB伺服器,切片檔案資料包中的每個切片檔案包含檔案ID、每個切片檔案的切片ID和每個切片檔案的切片資料,WEB伺服器將切片檔案資料包中的每個切片檔案的切片資料發送到伺服器叢集中的對應服務終端上進行儲存。本申請實施例透過對檔案進行分片處理並在伺服器叢集中對切片檔案進行分散式儲存,從而使得基於伺服器叢集的雲端儲存性能更加優化;應用本申請實施例上傳修改後的檔案時,由於只需上傳用戶修改的檔案切片,而無需重傳整個檔案,因此減少了伺服器叢集中的冗餘數據,節省了儲存空間,減少了用戶端上傳檔案的時間。
本領域的技術人員可以清楚地瞭解到本發明實施例中的技術可借助軟體加必需的通用硬體平臺的方式來實現。基於這樣的理解,本發明實施例中的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟體產品的形式體現出來,該電腦軟體產品可以儲存在儲存媒體中,如ROM/RAM、磁碟、光碟等,包括若干指令用以使得一台電腦設備(可以是個人電腦,伺服器,或者網路設備等)執行本發明各個實施例或者實施例的某些部分所述的方法。
本說明書中的各個實施例均採用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於系統實施例而言,由於其基本相似於方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。
以上所述的本發明實施方式,並不構成對本發明保護範圍的限定。任何在本發明的精神和原則之內所作的修改、等同替換和改進等,均應包含在本發明的保護範圍之內。
810...用戶端
820...WEB伺服器
830...伺服器叢集
910...WEB伺服器
920...伺服器叢集
921...服務終端
為了更清楚地說明本申請實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,對於本領域普通技術人員而言,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本申請實施例所應用的雲端儲存架構的示意圖;
圖2為本申請基於雲端儲存的檔案處理方法的第一實施例流程圖;
圖3為本申請基於雲端儲存的檔案處理方法的第二實施例流程圖;
圖4為本申請基於雲端儲存的檔案處理方法的第三實施例流程圖;
圖5為本申請基於雲端儲存的檔案處理方法的第四實施例流程圖;
圖6為本申請基於雲端儲存的檔案處理方法的第五實施例流程圖;
圖7為本申請基於雲端儲存的檔案處理方法的第六實施例流程圖;
圖8為本申請基於雲端儲存的檔案處理系統的實施例框圖;
圖9為本申請基於雲端儲存的伺服器叢集系統的實施例框圖。
Claims (20)
- 一種基於雲端儲存的檔案處理方法,其特徵在於,包括:WEB伺服器接收用戶端發送的檔案上傳請求,該檔案上傳請求用於請求向伺服器叢集上傳新檔案;WEB伺服器向該用戶端返回該伺服器叢集為該新檔案生成的檔案ID;該用戶端對該新檔案進行切片,並為每個切片檔案生成唯一的切片ID;該用戶端將切片檔案資料包上傳給WEB伺服器,該切片檔案資料包中包含檔案ID、每個切片檔案的切片ID和每個切片檔案的切片資料;WEB伺服器將該切片檔案資料包中的每個切片檔案的切片資料發送到該伺服器叢集中的對應服務終端上進行儲存,其中,該伺服器叢集保存該檔案ID與該切片ID的對應關係。
- 根據申請專利範圍第1項所述的方法,其中,該WEB伺服器向該用戶端返回該伺服器叢集為該新檔案生成的檔案ID包括:WEB伺服器向該伺服器叢集發送獲取該新檔案的檔案ID的請求;該伺服器叢集根據該請求為該新檔案分配檔案ID;該伺服器叢集將該檔案ID返回給該WEB伺服器;該WEB伺服器將該檔案ID發送給該用戶端。
- 根據申請專利範圍第1項所述的方法,其中,該用戶端對該新檔案進行切片,並為每個切片檔案生成唯一的切片ID包括:該用戶端對該新檔案按照預設長度進行分塊,生成若干切片檔案,其中當分塊後的剩餘檔案塊的長度小於該預設長度時,將該剩餘檔案塊作為一個切片檔案;根據該每個切片檔案的檔案資料,透過MD5散列函數(hash furetion)計算每個切片檔案的切片ID,該切片ID用於唯一標識該切片檔案。
- 根據申請專利範圍第1項所述的方法,其中,該用戶端將切片檔案資料包上傳給WEB伺服器之前,還包括:該用戶端將重複統計請求發送給該WEB伺服器,該重複統計請求中包含每個切片檔案的切片ID;該WEB伺服器將該重複統計請求轉發到該伺服器叢集;該伺服器叢集根據該重複統計請求中的切片ID查找已保存的切片ID,如果查找到該重複統計請求中的切片ID,則確定與該切片ID對應的切片檔案重複,如果未查找到該重複統計請求中的切片ID,則確定與該切片ID對應的切片檔案不重複;該伺服器叢集將每個切片檔案是否重複的資訊發送給該WEB伺服器;該WEB伺服器將該切片檔案是否重複的資訊發送給該用戶端;該用戶端將切片檔案資料包上傳給WEB服務器具體為:該用戶端根據該切片檔案是否重複的資訊,將包含不重複切片檔案的切片ID和切片資料的切片檔案資料包上傳給該WEB伺服器。
- 根據申請專利範圍第1項所述的方法,其中,該用戶端將切片檔案資料包上傳給WEB伺服器之後,還包括:該WEB伺服器向該伺服器叢集發送獲取儲存切片檔案位址的查詢請求;該伺服器叢集根據每個切片檔案的切片ID,透過一致性散列演算法計算儲存每個切片檔案的服務終端的位址;伺服器叢集將該服務終端的位址返回給該WEB伺服器;該WEB伺服器將該切片檔案資料包中的每個切片檔案發送到該伺服器叢集中的對應服務終端上進行儲存具體為:WEB伺服器將該切片檔案資料包中的每個切片檔案按照對應的服務終端的位址發送到服務終端上進行儲存。
- 根據申請專利範圍第1項所述的方法,其中,還包括:用戶端向該WEB伺服器發送檔案下載請求,該檔案下載請求中包含用戶端請求下載檔案的檔案ID;WEB伺服器將該檔案下載請求發送給該伺服器叢集;該伺服器叢集向該WEB伺服器發送儲存與該檔案ID對應的檔案的每個切片檔案的服務終端的位址;WEB伺服器根據該服務終端的位址從對應的服務終端上獲取每個切片檔案;WEB伺服器將該切片檔案按照切片順序組成該請求下載的檔案,並將該檔案發送給該用戶端。
- 根據申請專利範圍第4項所述的方法,其中,該檔案上傳請求中還包含該用戶端的用戶ID,該WEB伺服器向該用戶端返回該伺服器叢集為該新檔案生成的檔案ID後還包括:保存該檔案ID與該用戶ID之間的對應關係;該方法還包括:該伺服器叢集為每個切片ID設置引用計數器,該引用計數器的計數值初始化為零;當確定與切片ID對應的切片檔案重複時,將該切片ID的引用計數器的計數值加一。
- 根據申請專利範圍第7項所述的方法,其中,還包括:用戶端向該WEB伺服器發送檔案刪除請求,該檔案刪除請求中包含該用戶端請求刪除檔案的檔案ID和用戶ID;當該WEB伺服器中保存了該刪除請求中保存的檔案ID和用戶ID的對應關係時,該WEB伺服器將該檔案刪除請求發送給該伺服器叢集;該伺服器叢集根據該檔案ID獲取對應的切片ID,並判斷該切片ID的引用計數器的計數值是否為零;當切片ID的計數器的計數值為零,該伺服器叢集獲取儲存該請求刪除檔案的每個切片檔案的服務終端,伺服器叢集向對應的服務終端轉發該檔案刪除請求,接收到該檔案刪除請求的服務終端刪除組成該請求刪除檔案的切片檔案;當切片ID的計數器的計數值不為零,則將該切片ID的計數器的計數值減一。
- 一種基於雲端儲存的檔案處理系統,其特徵在於,包括:用戶端、WEB伺服器和伺服器叢集,該WEB伺服器,用於接收用戶端發送的檔案上傳請求,該檔案上傳請求用於請求向伺服器叢集上傳新檔案,並向該用戶端返回該伺服器叢集為該新檔案生成的檔案ID;該用戶端,用於對該新檔案進行切片,並為每個切片檔案生成唯一的切片ID,將切片檔案資料包上傳給WEB伺服器,該切片檔案資料包中包含檔案ID、每個切片檔案的切片ID和每個切片檔案的切片資料;該WEB伺服器,還用於將該切片檔案資料包中的每個切片檔案的切片資料發送到該伺服器叢集;該伺服器叢集,用於將該每個切片檔案的切片資料儲存到對應的服務終端上,以及保存該檔案ID與該切片ID的對應關係。
- 根據申請專利範圍第9項所述的系統,其中,該用戶端,還用於將重複統計請求發送給該WEB伺服器,該重複統計請求中包含每個切片檔案的切片ID;該WEB伺服器,還用於將該重複統計請求轉發到該伺服器叢集;該伺服器叢集,還用於根據該重複統計請求中的切片ID查找已保存的切片ID,如果查找到該重複統計請求中的切片ID,則確定與該切片ID對應的切片檔案重複,如果未查找到該重複統計請求中的切片ID,則確定與該切片ID對應的切片檔案不重複,並將每個切片檔案是否重複的資訊發送給該WEB伺服器;該WEB伺服器,還用於將該切片檔案是否重複的資訊發送給該用戶端;該用戶端,具體用於根據該切片檔案是否重複的資訊,將包含不重複切片檔案的切片ID和切片資料的切片檔案資料包上傳給該WEB伺服器。
- 根據申請專利範圍第9項所述的系統,其中,該WEB伺服器,還用於向該伺服器叢集發送獲取儲存切片檔案位址的查詢請求;該伺服器叢集,還用於根據每個切片檔案的切片ID,透過一致性散列演算法計算儲存每個切片檔案的服務終端的位址;該WEB伺服器,具體用於將該切片檔案資料包中的每個切片檔案按照對應的服務終端的位址發送到服務終端上進行儲存。
- 根據申請專利範圍第9項所述的系統,其中,該用戶端,還用於向該WEB伺服器發送檔案下載請求,該檔案下載請求中包含用戶端請求下載檔案的檔案ID;該WEB伺服器,還用於將該檔案下載請求發送給該伺服器叢集;該伺服器叢集,還用於向該WEB伺服器發送儲存與該檔案ID對應的檔案的每個切片檔案的服務終端的位址;該WEB伺服器,還用於根據該服務終端的位址從對應的服務終端上獲取每個切片檔案,並將該切片檔案按照切片順序組成該請求下載的檔案,並將該檔案發送給該用戶端。
- 根據申請專利範圍第10項所述的系統,其中,該WEB伺服器,還用於當該檔案上傳請求中還包含該用戶端的用戶ID時,保存該檔案ID與該用戶ID之間的對應關係;該伺服器叢集,還用於為每個切片ID設置引用計數器,該引用計數器的計數值初始化為零,當確定與切片ID對應的切片檔案重複時,將該切片ID的引用計數器的計數值加一。
- 根據申請專利範圍第13項所述的系統,其中,該用戶端,還用於向該WEB伺服器發送檔案刪除請求,該檔案刪除請求中包含該用戶端請求刪除檔案的檔案ID和用戶ID;該WEB伺服器,還用於當保存了該刪除請求中保存的檔案ID和用戶ID的對應關係時,將該檔案刪除請求發送給該伺服器叢集;該伺服器叢集,還用於根據該檔案ID獲取對應的切片ID,並判斷該切片ID的引用計數器的計數值是否為零;當切片ID的計數器的計數值為零,該伺服器叢集獲取儲存該請求刪除檔案的每個切片檔案的服務終端,伺服器叢集向對應的服務終端轉發該檔案刪除請求,接收到該檔案刪除請求的服務終端刪除組成該請求刪除檔案的切片檔案;當切片ID的計數器的計數值不為零,則將該切片ID的計數器的計數值減一。
- 一種基於雲端儲存的伺服器叢集系統,其特徵在於,包括:WEB伺服器和伺服器叢集,該伺服器叢集中包含若干服務終端,該WEB伺服器,用於接收用戶端發送的檔案上傳請求,該檔案上傳請求用於請求向伺服器叢集上傳新檔案,向該用戶端返回該伺服器叢集為該新檔案生成的檔案ID,接收該用戶端上傳的切片檔案資料包,該切片檔案資料包中包含檔案ID、每個切片檔案的切片ID和每個切片檔案的切片資料;該伺服器叢集,用於接收該WEB伺服器發送的該切片檔案資料包中的每個切片檔案的切片資料,並將每個切片檔案的切片資料發送到該伺服器叢集中的對應服務終端上進行儲存,以及保存該檔案ID與該切片ID的對應關係。
- 根據申請專利範圍第15項所述的系統,其中,該WEB伺服器,還用於接收用戶端發送的重複統計請求,該重複統計請求中包含每個切片檔案的切片ID,並將該重複統計請求轉發到該伺服器叢集;該伺服器叢集,還用於根據該重複統計請求中的切片ID查找已保存的切片ID,如果查找到該重複統計請求中的切片ID,則確定與該切片ID對應的切片檔案重複,如果未查找到該重複統計請求中的切片ID,則確定與該切片ID對應的切片檔案不重複,以及將每個切片檔案是否重複的資訊發送給該WEB伺服器;該WEB伺服器,還用於將該切片檔案是否重複的資訊發送給該用戶端,以使該用戶端根據該切片檔案是否重複的資訊,將包含不重複切片檔案的切片ID和切片資料的切片檔案資料包上傳給該WEB伺服器。
- 根據申請專利範圍第15項所述的系統,其中,該WEB伺服器,還用於向該伺服器叢集發送獲取儲存切片檔案位址的查詢請求;該伺服器叢集,還用於根據每個切片檔案的切片ID,透過一致性散列演算法計算儲存每個切片檔案的服務終端的位址,並將該服務終端的位址返回給該WEB伺服器;該WEB伺服器,具體用於將該切片檔案資料包中的每個切片檔案按照對應的服務終端的位址發送到服務終端上進行儲存。
- 根據申請專利範圍第15項所述的系統,其中,該WEB伺服器,還用於接收用戶端發送的檔案下載請求,該檔案下載請求中包含用戶端請求下載檔案的檔案ID,並將該檔案下載請求發送給該伺服器叢集;該伺服器叢集,還用於向該WEB伺服器發送儲存與該檔案ID對應的檔案的每個切片檔案的服務終端的位址;該WEB伺服器,還用於根據該服務終端的位址從對應的服務終端上獲取每個切片檔案,並將該切片檔案按照切片順序組成該請求下載的檔案,並將該檔案發送給該用戶端。
- 根據申請專利範圍第16項所述的系統,其中,該WEB伺服器,還用於當該檔案上傳請求中還包含該用戶端的用戶ID時,保存該檔案ID與該用戶ID之間的對應關係;該伺服器叢集,還用於為每個切片ID設置引用計數器,該引用計數器的計數值初始化為零,當確定與切片ID對應的切片檔案重複時,將該切片ID的引用計數器的計數值加一。
- 根據申請專利範圍第19項所述的系統,其中,還包括:該WEB伺服器,還用於接收該用戶端發送的檔案刪除請求,該檔案刪除請求中包含該用戶端請求刪除檔案的檔案ID和用戶ID,並保存了該刪除請求中保存的檔案ID和用戶ID的對應關係時,將該檔案刪除請求發送給該伺服器叢集;該伺服器叢集,還用於根據該檔案ID獲取對應的切片ID,並判斷該切片ID的引用計數器的計數值是否為零;當切片ID的計數器的計數值為零,該伺服器叢集獲取儲存該請求刪除檔案的每個切片檔案的服務終端,伺服器叢集向對應的服務終端轉發該檔案刪除請求;當切片ID的計數器的計數值不為零,則將該切片ID的計數器的計數值減一;該服務終端,用於接收到該檔案刪除請求後,刪除組成該請求刪除檔案的切片檔案。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110164407.4A CN102833294B (zh) | 2011-06-17 | 2011-06-17 | 基于云存储的文件处理方法、系统及服务器集群系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201301053A true TW201301053A (zh) | 2013-01-01 |
TWI528191B TWI528191B (zh) | 2016-04-01 |
Family
ID=47336264
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW100132629A TWI528191B (zh) | 2011-06-17 | 2011-09-09 | File Handling Method Based on Cloud Storage, System and Server Cluster System |
Country Status (7)
Country | Link |
---|---|
US (1) | US9774564B2 (zh) |
EP (2) | EP2721504B1 (zh) |
JP (1) | JP2014517420A (zh) |
CN (1) | CN102833294B (zh) |
HK (1) | HK1173873A1 (zh) |
TW (1) | TWI528191B (zh) |
WO (1) | WO2012173785A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI511037B (zh) * | 2014-05-09 | 2015-12-01 | Wistron Corp | 儲存叢集化系統與提供對叢集式儲存的存取的方法 |
CN106845075A (zh) * | 2016-12-20 | 2017-06-13 | 杭州联众医疗科技股份有限公司 | 一种集中诊断报告系统 |
TWI613543B (zh) * | 2014-04-30 | 2018-02-01 | Huawei Tech Co Ltd | 硬碟之間的交互方法、硬碟及集群系統 |
Families Citing this family (86)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8914457B2 (en) * | 2009-10-06 | 2014-12-16 | Red Hat, Inc. | Caching of nodes in cache cluster |
WO2012089701A1 (en) * | 2010-12-27 | 2012-07-05 | Amplidata Nv | A distributed object storage system comprising performance optimizations |
WO2014000148A1 (zh) * | 2012-06-25 | 2014-01-03 | 华为技术有限公司 | 一种资源获取方法及装置 |
CN103685337B (zh) * | 2012-08-31 | 2018-03-27 | 腾讯科技(深圳)有限公司 | 共享文件的方法、终端设备及中转服务器 |
US8589659B1 (en) * | 2012-11-08 | 2013-11-19 | DSSD, Inc. | Method and system for global namespace with consistent hashing |
CN103078906A (zh) * | 2012-12-26 | 2013-05-01 | 爱迪科特(北京)科技有限公司 | 文件透明迁移方法 |
JP5907061B2 (ja) * | 2012-12-28 | 2016-04-20 | ブラザー工業株式会社 | 仲介サーバ、通信装置、及び、コンピュータプログラム |
CN103916421B (zh) * | 2012-12-31 | 2017-08-25 | 中国移动通信集团公司 | 云存储数据服务装置、数据传输系统、服务器及方法 |
EP2958298B1 (en) * | 2013-04-02 | 2020-09-23 | Huawei Technologies Co., Ltd. | File uploading method in cloud storage, client, application server, and cloud storage system |
CN103198131B (zh) * | 2013-04-11 | 2015-08-19 | 天脉聚源(北京)传媒科技有限公司 | 一种文件管理的方法和系统 |
US9276883B2 (en) * | 2013-04-28 | 2016-03-01 | Tencent Technology (Shenzhen) Company Limited | Information collection, storage, and sharing platform |
CN103731507A (zh) * | 2013-05-02 | 2014-04-16 | 乐视网信息技术(北京)股份有限公司 | 一种分布式数据存储设备处理数据的方法及装置 |
CN104144186B (zh) * | 2013-05-10 | 2017-12-01 | 中国电信股份有限公司 | 云计算环境中基于Web浏览器的数据上传方法与系统 |
CN104969532B (zh) * | 2013-06-29 | 2018-12-07 | 华为技术有限公司 | 一种文件下载的方法和装置 |
CN103412929A (zh) * | 2013-08-16 | 2013-11-27 | 蓝盾信息安全技术股份有限公司 | 一种海量数据的存储方法 |
CN104426996B (zh) * | 2013-09-11 | 2018-12-11 | 腾讯科技(深圳)有限公司 | 云业务处理方法和相关设备及通信系统 |
CN103442090B (zh) * | 2013-09-16 | 2016-08-17 | 苏州市职业大学 | 一种数据分散存储的云计算系统 |
CN104462129B (zh) * | 2013-09-22 | 2018-05-25 | 北大方正集团有限公司 | 分布式文件存储和查询方法及存取系统 |
CN103561056A (zh) * | 2013-10-12 | 2014-02-05 | 北京奇虎科技有限公司 | 文件传输方法、设备及系统 |
CN103581319A (zh) * | 2013-11-04 | 2014-02-12 | 汉柏科技有限公司 | 一种云计算基于网格化的设备管理方法 |
CN103559143A (zh) * | 2013-11-08 | 2014-02-05 | 华为技术有限公司 | 数据拷贝管理装置及其数据拷贝方法 |
CN103647797A (zh) * | 2013-11-15 | 2014-03-19 | 北京邮电大学 | 一种分布式文件系统及其数据访问方法 |
CN103685493A (zh) * | 2013-12-05 | 2014-03-26 | 北京飞流九天科技有限公司 | 用于互联网文件的存储方法和系统 |
CN104702646A (zh) * | 2013-12-09 | 2015-06-10 | 腾讯科技(深圳)有限公司 | 数据传输方法及相关装置和通信系统 |
CN104731516B (zh) * | 2013-12-18 | 2019-03-01 | 腾讯科技(深圳)有限公司 | 一种存取文件的方法、装置及分布式存储系统 |
CN103731499B (zh) * | 2013-12-31 | 2018-01-05 | 兴天通讯技术(天津)有限公司 | 终端和文件传输方法 |
TWI536816B (zh) | 2014-05-12 | 2016-06-01 | 財團法人工業技術研究院 | 網路資料平行傳輸排程的方法與系統 |
CN105205011B (zh) * | 2014-06-25 | 2019-01-18 | 华为技术有限公司 | 一种获取文件块引用计数的方法、普通客户端和管理客户端 |
CN104967640A (zh) * | 2014-07-31 | 2015-10-07 | 腾讯科技(深圳)有限公司 | 一种数据存储方法、装置和系统 |
TWI604320B (zh) * | 2014-08-01 | 2017-11-01 | 緯創資通股份有限公司 | 巨量資料存取方法以及使用該方法的系統 |
JP6483380B2 (ja) * | 2014-09-10 | 2019-03-13 | Dynabook株式会社 | 電子機器、システム、および同期方法 |
KR101912728B1 (ko) * | 2014-11-05 | 2018-10-29 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 데이터 처리 방법 및 장치 |
CN105721526B (zh) * | 2014-12-04 | 2019-05-14 | 清华大学 | 一种终端、服务器文件同步的方法及装置 |
CN104486442B (zh) * | 2014-12-29 | 2018-08-24 | 成都极驰科技有限公司 | 分布式存储系统的数据传输方法、装置 |
CN104571956A (zh) * | 2014-12-29 | 2015-04-29 | 成都致云科技有限公司 | 一种数据写入方法及拆分装置 |
US10586063B2 (en) | 2015-03-20 | 2020-03-10 | Samsung Electronics Co., Ltd. | Method and apparatus for storing file by using a plurality of cloud storages |
KR102480414B1 (ko) * | 2015-03-20 | 2022-12-23 | 삼성전자주식회사 | 복수개의 클라우드 스토리지를 이용한 파일 저장 방법 및 이를 위한 장치 |
RU2634224C2 (ru) * | 2015-06-30 | 2017-10-24 | Общество С Ограниченной Ответственностью "Яндекс" | Система и способ и постоянный машиночитаемый носитель дублирования файлов на клиентском устройстве для облачного хранилища |
CN105187489A (zh) * | 2015-08-05 | 2015-12-23 | 深圳联友科技有限公司 | 可集群并支持多用户同时上传的文件传输方法和系统 |
US9935999B1 (en) * | 2015-09-28 | 2018-04-03 | Snap Inc. | File download manager |
CN106657182B (zh) | 2015-10-30 | 2020-10-27 | 阿里巴巴集团控股有限公司 | 云端文件处理方法和装置 |
CN105306588A (zh) * | 2015-11-17 | 2016-02-03 | 高新兴科技集团股份有限公司 | 一种基于哈希算法的对网络数据进行路由分派的方法 |
CN105373746B (zh) * | 2015-11-26 | 2018-09-14 | 深圳市金证科技股份有限公司 | 一种分布式数据处理方法和装置 |
CN105491134B (zh) * | 2015-12-10 | 2018-11-27 | 宁波远志立方能源科技有限公司 | 一种智能终端的云存储方法 |
CN105516316B (zh) * | 2015-12-10 | 2018-11-27 | 宁波远志立方能源科技有限公司 | 一种提高智能手机用户信息安全性的方法 |
CN105763604B (zh) * | 2016-02-04 | 2019-03-19 | 四川长虹电器股份有限公司 | 轻量级分布式文件系统及恢复下载文件原名的方法 |
KR102078189B1 (ko) * | 2016-03-11 | 2020-02-20 | 주식회사 케이티 | 무선 액세스 망 슬라이싱 제어 장치와 그 장치가 무선 베어러 전송을 제어하는 방법 |
KR20180007630A (ko) * | 2016-07-13 | 2018-01-23 | 헬로우링크 주식회사 | 식별번호를 이용한 파일 검색방법 |
KR20180007629A (ko) * | 2016-07-13 | 2018-01-23 | 헬로우링크 주식회사 | 식별번호를 이용한 파일 검색방법 |
CN106302757A (zh) * | 2016-08-19 | 2017-01-04 | 成都全码特时代科技有限公司 | 一种基于云存储的服务器集群系统 |
US10701176B1 (en) * | 2016-09-23 | 2020-06-30 | Amazon Technologies, Inc. | Messaging using a hash ring with host groups |
CN107872489B (zh) * | 2016-09-28 | 2020-06-05 | 杭州海康威视数字技术股份有限公司 | 一种文件切片上传方法、装置及云存储系统 |
CN106503093B (zh) * | 2016-10-13 | 2019-06-11 | 华东师范大学 | 一种适用于分布式计算环境的大型遥感影像重构方法 |
KR101709276B1 (ko) * | 2016-11-17 | 2017-02-22 | (주)세이퍼존 | 엔드 포인트 보안서버 관리 시스템 |
US10616309B2 (en) * | 2016-12-30 | 2020-04-07 | Facebook, Inc. | Systems and methods for resumable uploading of data in a social networking system |
CN107172121A (zh) * | 2017-03-29 | 2017-09-15 | 努比亚技术有限公司 | 一种防止数据重复提交的装置及其方法 |
CN108933805A (zh) * | 2017-05-26 | 2018-12-04 | 武汉斗鱼网络科技有限公司 | 一种文件传输方法及系统 |
CN107273473A (zh) * | 2017-06-08 | 2017-10-20 | 维沃移动通信有限公司 | 一种文件存储方法及装置、文件提取方法及装置 |
CN109088907B (zh) * | 2017-06-14 | 2021-10-01 | 北京京东尚科信息技术有限公司 | 文件传递方法及其设备 |
WO2019033368A1 (zh) * | 2017-08-17 | 2019-02-21 | 深圳市优品壹电子有限公司 | 数据存储方法及装置 |
WO2019033370A1 (zh) * | 2017-08-17 | 2019-02-21 | 深圳市优品壹电子有限公司 | 数据获取方法及装置 |
CN107483612A (zh) * | 2017-08-31 | 2017-12-15 | 郑州云海信息技术有限公司 | 一种云存储数据隐私保护方法及装置 |
CN109495434A (zh) * | 2017-09-13 | 2019-03-19 | 北京国双科技有限公司 | 一种文件传输方法及装置 |
CN107528926A (zh) * | 2017-10-11 | 2017-12-29 | 郑州云海信息技术有限公司 | 一种文件上传方法和系统 |
US11165862B2 (en) * | 2017-10-24 | 2021-11-02 | 0Chain, LLC | Systems and methods of blockchain platform for distributed applications |
US10944804B1 (en) | 2017-11-22 | 2021-03-09 | Amazon Technologies, Inc. | Fragmentation of time-associated data streams |
US10878028B1 (en) | 2017-11-22 | 2020-12-29 | Amazon Technologies, Inc. | Replicating and indexing fragments of time-associated data streams |
US11025691B1 (en) * | 2017-11-22 | 2021-06-01 | Amazon Technologies, Inc. | Consuming fragments of time-associated data streams |
CN110011952B (zh) * | 2018-01-05 | 2022-01-25 | 中国移动通信有限公司研究院 | 一种数据传输的方法、服务集群及客户端 |
CN110661829B (zh) * | 2018-06-28 | 2021-09-21 | 杭州海康威视系统技术有限公司 | 文件下载方法及装置、客户端和计算机可读存储介质 |
CN109639807A (zh) * | 2018-12-19 | 2019-04-16 | 中国四维测绘技术有限公司 | 一种基于slice切片的大数据量遥感影像文件网络传输方法 |
CN109710572B (zh) * | 2018-12-29 | 2021-02-02 | 北京赛思信安技术股份有限公司 | 一种基于HBase的文件分片方法 |
CN109951514B (zh) * | 2019-01-16 | 2022-03-25 | 平安科技(深圳)有限公司 | 基于云存储的文件处理方法、系统及计算机设备 |
CN110377611B (zh) * | 2019-07-12 | 2022-07-15 | 北京三快在线科技有限公司 | 积分排名的方法及装置 |
CN110781132A (zh) * | 2019-10-24 | 2020-02-11 | 深圳前海环融联易信息科技服务有限公司 | 文件存储的实现方法、装置、及计算机设备 |
CN111193785B (zh) * | 2019-12-20 | 2023-05-02 | 北京淇瑀信息科技有限公司 | 一种文件切割传输方法、装置和电子设备 |
CN111614726B (zh) * | 2020-04-24 | 2023-03-24 | 深圳震有科技股份有限公司 | 一种数据转发方法、集群系统及存储介质 |
CN111708743A (zh) * | 2020-05-28 | 2020-09-25 | 浪潮电子信息产业股份有限公司 | 文件存储管理方法、文件管理客户端及文件存储管理系统 |
CN111464661B (zh) * | 2020-06-17 | 2020-09-22 | 北京金迅瑞博网络技术有限公司 | 负载均衡方法、装置、代理设备、缓存设备及服务节点 |
CN112181900B (zh) * | 2020-09-04 | 2024-05-14 | 中国银联股份有限公司 | 一种服务器集群中的数据处理方法与装置 |
CN112199052A (zh) * | 2020-11-04 | 2021-01-08 | 江苏特思达电子科技股份有限公司 | 一种文件下载方法、装置及计算机设备 |
CN113992658B (zh) * | 2021-10-28 | 2023-09-26 | 科大讯飞股份有限公司 | 数据传输方法及相关装置、设备、系统和存储介质 |
CN114338646B (zh) * | 2021-11-29 | 2024-06-21 | 王建冬 | 文件交互传输方法、装置、设备及存储介质 |
CN114466004A (zh) * | 2022-03-24 | 2022-05-10 | 成都新希望金融信息有限公司 | 一种文件传输方法、系统、电子设备及存储介质 |
CN115277678B (zh) * | 2022-07-29 | 2024-02-06 | 招商局金融科技有限公司 | 文件下载方法、装置、计算机设备及存储介质 |
WO2024111696A1 (ko) * | 2022-11-23 | 2024-05-30 | 라쿠텐 심포니 코리아 주식회사 | 전자 메시지의 전송에 수반되는 파일의 전송 |
Family Cites Families (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5226118A (en) * | 1991-01-29 | 1993-07-06 | Prometrix Corporation | Data analysis system and method for industrial process control systems |
US6952737B1 (en) | 2000-03-03 | 2005-10-04 | Intel Corporation | Method and apparatus for accessing remote storage in a distributed storage cluster architecture |
WO2002059785A1 (fr) * | 2001-01-23 | 2002-08-01 | Sony Corporation | Procede et appareil de communication, dispositif electronique et son procede de controle, et support d'enregistrement |
KR20010088742A (ko) | 2001-08-28 | 2001-09-28 | 문의선 | 분산처리 및 피어 대 피어 통신을 이용한 네트워크 상의정보전송 병렬화 방법 |
US20030204602A1 (en) * | 2002-04-26 | 2003-10-30 | Hudson Michael D. | Mediated multi-source peer content delivery network architecture |
AU2002328067A1 (en) * | 2002-09-02 | 2004-03-19 | Settec, Inc. | A copying apparatus for copying a recoding medium, a method thereof and a computer program thereof |
JP4320195B2 (ja) * | 2003-03-19 | 2009-08-26 | 株式会社日立製作所 | ファイルストレージサービスシステム、ファイル管理装置、ファイル管理方法、id指定型nasサーバ、および、ファイル読出方法 |
JP4601969B2 (ja) * | 2004-01-27 | 2010-12-22 | 株式会社日立製作所 | ファイル入出力制御装置 |
US7100008B2 (en) * | 2004-03-15 | 2006-08-29 | Hitachi, Ltd. | Long term data protection system and method |
US7694088B1 (en) * | 2005-03-31 | 2010-04-06 | Symantec Operating Corporation | System and method for efficient creation of aggregate backup images |
US20070038681A1 (en) * | 2005-08-10 | 2007-02-15 | Spare Backup, Inc. | System and method of remote storage of data through connection from a server to a client |
US7844775B2 (en) | 2005-09-23 | 2010-11-30 | Avid Technology, Inc. | Distribution of data in a distributed shared storage system |
KR20080066790A (ko) * | 2005-10-12 | 2008-07-16 | 데이터캐슬 코퍼레이션 | 데이터 백업 시스템 및 방법 |
US8554748B1 (en) * | 2005-11-30 | 2013-10-08 | Netapp, Inc. | Method and apparatus for differential file based update for embedded systems |
US20080126357A1 (en) * | 2006-05-04 | 2008-05-29 | Wambo, Inc. | Distributed file storage and transmission system |
US8055902B2 (en) | 2007-01-12 | 2011-11-08 | International Business Machines Corporation | Method, system, and computer program product for data upload in a computing system |
EP2835951B1 (en) * | 2007-01-17 | 2018-08-22 | Intertrust Technologies Corporation | Methods, systems, and apparatus for fragmented file sharing |
JP5084551B2 (ja) * | 2008-02-26 | 2012-11-28 | Kddi株式会社 | 重複排除技術を用いたデータバックアップ方法、記憶制御通信装置及びプログラム |
US8687530B2 (en) * | 2008-05-09 | 2014-04-01 | Microsoft Corporation | Stateful scheduling with network coding for roadside-to-vehicle communication |
US20090319530A1 (en) * | 2008-06-18 | 2009-12-24 | International Business Machines Corporation | Mechanism for unequivocally referencing content in web 2.0 applications |
US8484162B2 (en) * | 2008-06-24 | 2013-07-09 | Commvault Systems, Inc. | De-duplication systems and methods for application-specific data |
JP5340664B2 (ja) | 2008-07-30 | 2013-11-13 | 株式会社ソニー・コンピュータエンタテインメント | データ配信システム |
JP5414223B2 (ja) | 2008-09-16 | 2014-02-12 | 株式会社日立ソリューションズ | インターネットバックアップにおける転送データ管理システム |
WO2010100733A1 (ja) | 2009-03-05 | 2010-09-10 | 日立ソフトウエアエンジニアリング株式会社 | 統合重複排除システム、データ格納装置、及びサーバ装置 |
US8295257B2 (en) * | 2009-03-13 | 2012-10-23 | Telcordia Technologies, Inc. | Scalable disruptive-resistant communication method |
US8364644B1 (en) * | 2009-04-22 | 2013-01-29 | Network Appliance, Inc. | Exclusion of data from a persistent point-in-time image |
CN101605148A (zh) * | 2009-05-21 | 2009-12-16 | 何吴迪 | 云存储的并行系统的架构方法 |
US20100312749A1 (en) * | 2009-06-04 | 2010-12-09 | Microsoft Corporation | Scalable lookup service for distributed database |
US10230692B2 (en) * | 2009-06-30 | 2019-03-12 | International Business Machines Corporation | Distributed storage processing module |
US8280958B2 (en) * | 2009-07-13 | 2012-10-02 | International Business Machines Corporation | List passing in a background file sharing network |
US8370307B2 (en) | 2009-09-01 | 2013-02-05 | Empire Technology Development Llc | Cloud data backup storage manager |
US8914457B2 (en) * | 2009-10-06 | 2014-12-16 | Red Hat, Inc. | Caching of nodes in cache cluster |
US8296410B1 (en) * | 2009-11-06 | 2012-10-23 | Carbonite, Inc. | Bandwidth management in a client/server environment |
US8850113B2 (en) * | 2010-02-27 | 2014-09-30 | Cleversafe, Inc. | Data migration between a raid memory and a dispersed storage network memory |
US8832042B2 (en) * | 2010-03-15 | 2014-09-09 | Symantec Corporation | Method and system to scan data from a system that supports deduplication |
JP2011215794A (ja) | 2010-03-31 | 2011-10-27 | Fujitsu Ltd | 分散ストレージシステム及びプログラム |
TW201142646A (en) | 2010-05-21 | 2011-12-01 | xiang-yu Li | Cloud data storage system |
CN101924797B (zh) * | 2010-08-26 | 2014-03-05 | 华为数字技术(成都)有限公司 | 资源下载的处理方法、装置及系统 |
US8898114B1 (en) * | 2010-08-27 | 2014-11-25 | Dell Software Inc. | Multitier deduplication systems and methods |
US8947547B1 (en) * | 2010-09-12 | 2015-02-03 | Thomas Nathan Millikan | Context and content based automated image and media sharing |
US8489812B2 (en) | 2010-10-29 | 2013-07-16 | International Business Machines Corporation | Automated storage provisioning within a clustered computing environment |
US8825972B1 (en) * | 2010-11-19 | 2014-09-02 | Symantec Corporation | Method and system of producing a full backup image using an incremental backup method |
US9489658B2 (en) * | 2011-03-25 | 2016-11-08 | Telcentris, Inc. | Universal communication system |
US8555130B2 (en) * | 2011-10-04 | 2013-10-08 | Cleversafe, Inc. | Storing encoded data slices in a dispersed storage unit |
-
2011
- 2011-06-17 CN CN201110164407.4A patent/CN102833294B/zh active Active
- 2011-09-09 TW TW100132629A patent/TWI528191B/zh not_active IP Right Cessation
-
2012
- 2012-05-31 EP EP12799809.4A patent/EP2721504B1/en active Active
- 2012-05-31 WO PCT/US2012/040169 patent/WO2012173785A1/en active Application Filing
- 2012-05-31 JP JP2014515852A patent/JP2014517420A/ja active Pending
- 2012-05-31 EP EP17171709.3A patent/EP3223165B1/en active Active
- 2012-05-31 US US13/576,213 patent/US9774564B2/en active Active
-
2013
- 2013-01-24 HK HK13101054.6A patent/HK1173873A1/zh unknown
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI613543B (zh) * | 2014-04-30 | 2018-02-01 | Huawei Tech Co Ltd | 硬碟之間的交互方法、硬碟及集群系統 |
TWI511037B (zh) * | 2014-05-09 | 2015-12-01 | Wistron Corp | 儲存叢集化系統與提供對叢集式儲存的存取的方法 |
CN106845075A (zh) * | 2016-12-20 | 2017-06-13 | 杭州联众医疗科技股份有限公司 | 一种集中诊断报告系统 |
CN106845075B (zh) * | 2016-12-20 | 2021-07-20 | 杭州联众医疗科技股份有限公司 | 一种集中诊断报告系统 |
Also Published As
Publication number | Publication date |
---|---|
EP3223165B1 (en) | 2018-10-24 |
WO2012173785A1 (en) | 2012-12-20 |
EP2721504B1 (en) | 2017-07-19 |
JP2014517420A (ja) | 2014-07-17 |
CN102833294A (zh) | 2012-12-19 |
TWI528191B (zh) | 2016-04-01 |
EP2721504A4 (en) | 2015-08-05 |
EP3223165A1 (en) | 2017-09-27 |
US9774564B2 (en) | 2017-09-26 |
HK1173873A1 (zh) | 2013-05-24 |
CN102833294B (zh) | 2015-05-20 |
US20130073691A1 (en) | 2013-03-21 |
EP2721504A1 (en) | 2014-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI528191B (zh) | File Handling Method Based on Cloud Storage, System and Server Cluster System | |
WO2018059222A1 (zh) | 一种文件切片上传方法、装置及云存储系统 | |
WO2017050141A1 (zh) | 基于分布式存储的文件分发系统及方法 | |
JP6984097B2 (ja) | エッジプロキシを持つコンテンツデリバリネットワークアーキテクチャ | |
CN111629028B (zh) | 面向分布式多云存储的数据传输调度系统 | |
US20150237113A1 (en) | Method and system for file transmission | |
CN103067525B (zh) | 一种基于特征码的云存储数据备份方法 | |
TW201423425A (zh) | 資料分塊儲存至分散式伺服器的系統及方法 | |
US10795859B1 (en) | Micro-service based deduplication | |
CN106161633B (zh) | 一种基于云计算环境下打包文件的传输方法及系统 | |
WO2008034352A1 (fr) | Procédé, système et serveur frontière destinés à distribuer des ressources | |
CN110703980A (zh) | 一种文件传输方法及装置 | |
US10795860B1 (en) | WAN optimized micro-service based deduplication | |
CN110324406B (zh) | 一种获取业务数据的方法和云服务系统 | |
WO2016095149A1 (zh) | 一种数据压缩存储方法、装置,及分布式文件系统 | |
US20180107404A1 (en) | Garbage collection system and process | |
CN108540510B (zh) | 一种云主机创建方法、装置及云服务系统 | |
CN109756573A (zh) | 一种基于区块链的文件系统 | |
CN111245949A (zh) | 文件归档传输方法、装置及设备 | |
EP3707610B1 (en) | Redundant data storage using different compression processes | |
JP6934068B2 (ja) | 分散されたイレイジャーコーディングされたオブジェクトの重複排除 | |
EP3532939A1 (en) | Garbage collection system and process | |
KR100751075B1 (ko) | Nas 상에서 병렬 전송 기술을 이용한 원격 미러링시스템 | |
CN113271343A (zh) | 一种数据下载、上传的方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |