亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

支持混合云存儲(chǔ)應(yīng)用的分布式文件系統(tǒng)及實(shí)現(xiàn)方法

文檔序號:7552633閱讀:254來源:國知局
專利名稱:支持混合云存儲(chǔ)應(yīng)用的分布式文件系統(tǒng)及實(shí)現(xiàn)方法
技術(shù)領(lǐng)域
本發(fā)明屬于通信技術(shù)領(lǐng)域,尤其涉及一種支持混合云存儲(chǔ)應(yīng)用的分布式文件系統(tǒng)及實(shí)現(xiàn)方法。
背景技術(shù)
云狀存儲(chǔ)系統(tǒng)是指通過集群、網(wǎng)絡(luò)技術(shù)或分布式文件系統(tǒng)等功能,將網(wǎng)絡(luò)中大量各種不同類型的存儲(chǔ)設(shè)備通過軟件集合起來協(xié)同工作,共同對外提供數(shù)據(jù)存儲(chǔ)和業(yè)務(wù)訪問功能的一個(gè)系統(tǒng)。云狀存儲(chǔ)系統(tǒng)中的所有設(shè)備對使用者來講都是完全透明的,任何地方的任何一個(gè)經(jīng)過授權(quán)的使用者都可以通過網(wǎng)絡(luò)與云狀存儲(chǔ)系統(tǒng)連接,對其進(jìn)行數(shù)據(jù)訪問。隨著高性能計(jì)算及云計(jì)算技術(shù)的推廣,國內(nèi)眾多城市已經(jīng)或者計(jì)劃建設(shè)超級計(jì)算中心和云計(jì)算中心。但從使用方式來看,超級計(jì)算中心往往還是采用傳統(tǒng)的運(yùn)營模式,即將運(yùn)營的超級計(jì)算機(jī)部署在專有局域網(wǎng)環(huán)境,由管理員統(tǒng)一調(diào)度和配置,其上運(yùn)行的高性能計(jì)算應(yīng)用一般都具有計(jì)算密集或者數(shù)據(jù)密集等特點(diǎn)。而目前的云計(jì)算中心則不僅要能基于局域網(wǎng)下提供的資源訪問服務(wù)(也即私有云服務(wù)),而且要能夠基于因特網(wǎng)(internet)的服務(wù)訪問接口(也即公有云服務(wù))。目前國內(nèi)外無論是超級計(jì)算中心還是云計(jì)算中心,它們所采用典型的存儲(chǔ)解決方案為具有高性能的分布式文件系統(tǒng)或者企業(yè)級存儲(chǔ)系統(tǒng)。也有部分互聯(lián)網(wǎng)公司針對自身業(yè)務(wù)定制自己的分布式存儲(chǔ)方案,比如google和amazon。對于私有云環(huán)境的云存儲(chǔ)系統(tǒng)有兩種構(gòu)建方法,一種是傳統(tǒng)的存儲(chǔ)系統(tǒng),比如企業(yè)級NAS和SAN,采用的是共享磁盤(share-disk)的方法;另外一種是分布式文件系統(tǒng)比如Google File system、Lustre 和 HDFS,采用的是 share-nothing (無共享)的方法。前者提供標(biāo)準(zhǔn)訪問接口,從功能上可以擴(kuò)展到公共云環(huán)境,但其擴(kuò)展性不好。后者雖然具有很好的擴(kuò)展性,但因?yàn)槠渑渲梅爆嵤褂脧?fù)雜,往往只用于私有云環(huán)境服務(wù)特定應(yīng)用程序。在公有云環(huán)境下一個(gè)較`為知名的云存儲(chǔ)系統(tǒng)為Amazon S3網(wǎng)絡(luò)存儲(chǔ)服務(wù)平臺,Web應(yīng)用程序開發(fā)人員可以使用它存儲(chǔ)數(shù)字信息,包括圖片、視頻、音樂和文檔。S3提供一個(gè)RESTful API以編程方式實(shí)現(xiàn)與該服務(wù)的交互。開源分布式文件系統(tǒng)項(xiàng)目glusterfs采用開放的模塊化框架,具有良好的橫向擴(kuò)張性,而且用戶可以根據(jù)對可靠性和性能需求的不同,創(chuàng)建高可靠存儲(chǔ)或者高性能存儲(chǔ)。但glusterfs主要面向的還是企業(yè)NAS應(yīng)用,只是在對數(shù)據(jù)的分布方式與復(fù)制機(jī)制上可以提供靈活的策略。如果考慮高性能計(jì)算或者其它應(yīng)用,glusterfs就不是很適合。目前,無論超級計(jì)算中心,還是數(shù)據(jù)中心,抑或云計(jì)算中心,所部署的存儲(chǔ)均還是以傳統(tǒng)的企業(yè)級SAN/NAS為主。而基于分布式架構(gòu)的分布式文件系統(tǒng)或者分布式對象存儲(chǔ)也逐漸開始被廣泛使用。然而,無論是集中式的SAN/NAS,還是分布式文件或分布式對象存儲(chǔ),都不能很好的解決在云存儲(chǔ)環(huán)境下應(yīng)用多樣性、彈性分配、橫向擴(kuò)展性等問題。如果在一個(gè)計(jì)算系統(tǒng)中同時(shí)部署多套不同類型的存儲(chǔ)系統(tǒng)用于服務(wù)不同的應(yīng)用,倒是可以解決應(yīng)用多樣性的問題,但是這些不同類型的存儲(chǔ)系統(tǒng)彼此之間是相互獨(dú)立的,同時(shí)配置、管理及維護(hù)多套不同類型的存儲(chǔ)系統(tǒng)使得整個(gè)計(jì)算系統(tǒng)愈發(fā)復(fù)雜,這會(huì)造成系統(tǒng)成本高、效率低,使用和維護(hù)復(fù)雜等問題;此外,彈性分配、橫向擴(kuò)展性等需求還是無法滿足的,無法通過部署多套不同特點(diǎn)的存儲(chǔ)系統(tǒng)來解決。

發(fā)明內(nèi)容
本發(fā)明實(shí)施例的目的在于提供一種支持混合云存儲(chǔ)應(yīng)用的分布式文件系統(tǒng),旨在解決現(xiàn)有技術(shù)只能部署單套存儲(chǔ)系統(tǒng),無法滿足在云存儲(chǔ)環(huán)境下對應(yīng)用多樣性、彈性分配、橫向擴(kuò)展性等需求的問題。本發(fā)明實(shí)施例的目的還在于提供一種支持混合云存儲(chǔ)應(yīng)用的分布式文件系統(tǒng)的實(shí)現(xiàn)方法,也旨在解決上述問題。本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的,支持混合云存儲(chǔ)應(yīng)用的分布式文件系統(tǒng),包括若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng),所述分布式文件系統(tǒng)還包括:客戶端模塊,用于提供多種云狀存儲(chǔ)系統(tǒng)的標(biāo)準(zhǔn)訪問接口、轉(zhuǎn)發(fā)來自應(yīng)用程序編程接口的請求及實(shí)現(xiàn)后端云狀存儲(chǔ)系統(tǒng)的創(chuàng)建和維護(hù)工作;分布式一致性緩存模塊,用于緩存所述若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng)的信息;以及云狀存儲(chǔ)系統(tǒng)代理模塊,通過封裝所述若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng)的命令或者工具,用于創(chuàng)建和管理不同類型的云狀存儲(chǔ)系統(tǒng),并提供通信接口給所述客戶端模塊;所述客戶端模塊、若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng)分別與云狀存儲(chǔ)系統(tǒng)代理模塊連接。在一個(gè)可選的實(shí)施例中,所述分布式一致性緩存模塊為若干不同類型的云狀存儲(chǔ)系統(tǒng)的共享物理存儲(chǔ)資源,分別與若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng)連接。在一個(gè)可選的實(shí)施例中,所述客戶端模塊包括標(biāo)準(zhǔn)接口封裝器、管理器和調(diào)度器;標(biāo)準(zhǔn)接口封裝器用于提供所述若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng)的標(biāo)準(zhǔn)訪問接口,并將來自應(yīng)用程序編程接口的請求轉(zhuǎn)發(fā)給管理器或者調(diào)度器;管理器用于實(shí)現(xiàn)所述若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng)的創(chuàng)建和維護(hù)工作;調(diào)度器用于實(shí)現(xiàn)來自應(yīng)用程序編程接口的請求的分發(fā)工作。本發(fā)明實(shí)施例還提供了上述支持混合云存儲(chǔ)應(yīng)用的分布式文件系統(tǒng)的實(shí)現(xiàn)方法,其包括以下步驟:S1、在每一個(gè)客戶機(jī)上面加載一個(gè)客戶端模塊;S2、通過客戶端模塊,將應(yīng)用程序編程接口的請求發(fā)送給云狀存儲(chǔ)系統(tǒng)代理模塊;由云狀存儲(chǔ)系統(tǒng)代理模塊創(chuàng)建不同類型的云狀存儲(chǔ)系統(tǒng),并將所創(chuàng)建的云狀存儲(chǔ)系統(tǒng)的信息發(fā)送給分布式一致性緩存模塊緩存;S3、由客戶端模塊對不同類型的云狀存儲(chǔ)系統(tǒng)進(jìn)行統(tǒng)一命名空間的初始化,所述分布式文件系統(tǒng)為一個(gè)根目錄,所述若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng)分別設(shè)置在若干個(gè)一級子目錄下。在一個(gè)可選的實(shí)施例中,所述步驟SI中,客戶端模塊在被初始加載的時(shí)候,首先訪問分布式一致性緩存模塊,獲得當(dāng)前的云狀存儲(chǔ)系統(tǒng)的信息,并根據(jù)獲得的信息初始化當(dāng)前命名空間。在一個(gè)可選的實(shí)施例中,所述步驟S2創(chuàng)建不同類型的云狀存儲(chǔ)系統(tǒng)的過程為:通過客戶端模塊將應(yīng)用程序編程接口的請求進(jìn)行轉(zhuǎn)發(fā),并轉(zhuǎn)換成云狀存儲(chǔ)系統(tǒng)代理模塊能夠識別的數(shù)據(jù)包,然后將數(shù)據(jù)包發(fā)送給云狀存儲(chǔ)系統(tǒng)代理模塊;由云狀存儲(chǔ)系統(tǒng)代理模塊創(chuàng)建不同類型的云狀存 儲(chǔ)系統(tǒng)。
在一個(gè)可選的實(shí)施例中,所述客戶端模塊包括標(biāo)準(zhǔn)接口封裝器、管理器和調(diào)度器,步驟S3對統(tǒng)一命名空間的初始化過程為:S31、客戶端模塊啟動(dòng)后,與分布式一致性緩存模塊通信獲得當(dāng)前后端云狀存儲(chǔ)系統(tǒng)的信息;S32、管理器取得后端云狀存儲(chǔ)系統(tǒng)的信息以后,分別調(diào)用每個(gè)后端云狀存儲(chǔ)系統(tǒng)的客戶端工具,掛載該云狀存儲(chǔ)系統(tǒng)至本地掛載點(diǎn);S33、管理器將每個(gè)本地掛載點(diǎn)通過軟鏈接的方式鏈入客戶端模塊的命名空間。本發(fā)明實(shí)施例與現(xiàn)有技術(shù)相比,有益效果在于:1、克服了現(xiàn)有技術(shù)要么只能實(shí)現(xiàn)單套云狀存儲(chǔ)系統(tǒng)的部署,要么需要人工的方式維護(hù)多套云狀存儲(chǔ)系統(tǒng),均有一定局限性的缺陷;本發(fā)明簡單實(shí)用,在不需要復(fù)雜的原理、設(shè)備的情況下,解決了混合云存儲(chǔ)環(huán)境下不同云狀存儲(chǔ)系統(tǒng)的共存問題,易于維護(hù)??梢葬槍Σ煌膽?yīng)用類型和特點(diǎn)實(shí)現(xiàn)統(tǒng)一訪問、智能調(diào)度和管理,大大提高了使用效率。采用按需服務(wù)管理存儲(chǔ)系統(tǒng)的空間使用,可以促使成本優(yōu)化,資源高效使用。2、混合云環(huán)境的特點(diǎn)是不同的應(yīng)用具有不同的IO訪問模式和特點(diǎn),且對性能、可靠性、擴(kuò)展性等的需求各不相同。本發(fā)明能同時(shí)滿足以下需求:對于個(gè)人用戶,需要利用網(wǎng)絡(luò)存儲(chǔ)實(shí)現(xiàn)個(gè)人數(shù)據(jù)存儲(chǔ)和備份時(shí),可以直接通過web界面完成操作,能高并發(fā)、實(shí)時(shí)地處理個(gè)人用戶的數(shù)據(jù)訪問;對于企業(yè)用戶,可以把云存儲(chǔ)當(dāng)成一個(gè)企業(yè)級存儲(chǔ),保證數(shù)據(jù)的安全性和可靠性;對于高性能計(jì)算用戶,存儲(chǔ)一般采用分布式文件系統(tǒng),能提供很高的聚合I/O帶寬。3、本發(fā)明給用戶呈現(xiàn)的是可以服務(wù)多樣應(yīng)用類型的一套統(tǒng)一存儲(chǔ)系統(tǒng),但不同的用戶看到的是不同類型的存儲(chǔ)系統(tǒng)。比如,高性能計(jì)算用戶可以將其作為一個(gè)具備橫向擴(kuò)展性的高性能云狀存儲(chǔ) 系統(tǒng);個(gè)人用戶則可以將其作為可以在線進(jìn)行數(shù)據(jù)存儲(chǔ)和備份的網(wǎng)盤,等等。而在后臺實(shí)現(xiàn)混合存儲(chǔ)與智能管理,以合理的成本,將正確的數(shù)據(jù),放在最適合的存儲(chǔ)位置上,實(shí)現(xiàn)高效數(shù)據(jù)管理和存儲(chǔ)優(yōu)化,并提供無縫的擴(kuò)展能力。4、具有良好的橫向擴(kuò)展性,適用于超級計(jì)算中心或云計(jì)算中心這類大規(guī)模云狀存儲(chǔ)系統(tǒng)。采用基于fuse的用戶態(tài)文件系統(tǒng)方法,實(shí)現(xiàn)簡單且不需對已有系統(tǒng)做太大改動(dòng)。5、本發(fā)明還能刪除所有的客戶機(jī)都不再需要使用的云狀存儲(chǔ)系統(tǒng),從而實(shí)現(xiàn)(支持)對整個(gè)分布式文件系統(tǒng)的動(dòng)態(tài)維護(hù)管理。


圖1是本發(fā)明實(shí)施例提供的分布式文件系統(tǒng)的統(tǒng)一命名空間示意圖;圖2是本發(fā)明實(shí)施例的用戶態(tài)聯(lián)邦文件系統(tǒng)組成示意圖;圖3是本發(fā)明實(shí)施例的分布式一致性緩存模塊示意圖;圖4是本發(fā)明實(shí)施例通過fedFS創(chuàng)建后端DFS的流程圖;圖5是本發(fā)明實(shí)施例通過fedFS訪問后端DFS的流程圖。
具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。本發(fā)明的支持混合云存儲(chǔ)應(yīng)用的分布式文件系統(tǒng),其主要應(yīng)用場景為:由普通商用服務(wù)器構(gòu)成的具有分布式架構(gòu)的數(shù)據(jù)中心、超級計(jì)算中心或者云計(jì)算中心,系統(tǒng)中由多套不同特點(diǎn)(即不同類型)的云狀存儲(chǔ)系統(tǒng)構(gòu)成,比如適用于高性能計(jì)算的Lustre或者ceph項(xiàng)目,適用于海量數(shù)據(jù)分析的HDFS項(xiàng)目,或者適用于具備橫向擴(kuò)展性的企業(yè)NAS方案glusterfs,這些不同類型的云狀存儲(chǔ)系統(tǒng)共享底層的物理存儲(chǔ)資源(如本地磁盤、磁盤陣列等),根據(jù)上層應(yīng)用需求動(dòng)態(tài)申請和釋放這些物理存儲(chǔ)資源。本發(fā)明提出的分布式文件系統(tǒng)通過一種簡單的實(shí)現(xiàn)方法能夠整合多套各具特點(diǎn)的云狀存儲(chǔ)系統(tǒng),實(shí)現(xiàn)不同云狀存儲(chǔ)系統(tǒng)的統(tǒng)一訪問、調(diào)度與管理。本發(fā)明提出的分布式文件系統(tǒng)的實(shí)現(xiàn)方法主要原理為:在系統(tǒng)中由于存在多套不同的云狀存儲(chǔ)系統(tǒng),因此具有多個(gè)不同的命名空間,通過采用聯(lián)邦機(jī)制將不同的名字空間整合到統(tǒng)一命名空間。如圖1,原來系統(tǒng)中同時(shí)存在云狀存儲(chǔ)系統(tǒng)FS1、FS2和FS3,用戶在訪問不同的云狀存儲(chǔ)系統(tǒng)的時(shí)候需要同時(shí)知道這三個(gè)不同的命名空間。通過聯(lián)邦機(jī)制將三個(gè)命名空間整合到統(tǒng)一的空間,用戶只看到這個(gè)統(tǒng)一(或者說是單一的)的命名空間。在這個(gè)統(tǒng)一的命名空間的根目錄下,分別對應(yīng)三個(gè)一級子目錄,每一級子目錄下面分別是FS1、FS2和FS3的命名空間。這樣對用戶來說,他看到的就是一個(gè)分布式文件系統(tǒng):這個(gè)分布式文件系統(tǒng)為一個(gè)可以根據(jù)不用應(yīng)用需求進(jìn)行自我優(yōu)化的自適應(yīng)混合云存儲(chǔ)系統(tǒng)。本發(fā)明分布式文件系統(tǒng)包括三個(gè)主要模塊:分別是用戶態(tài)聯(lián)邦文件系統(tǒng)客戶端模塊、分布式一致性緩存模塊和云狀存儲(chǔ)系統(tǒng)代理模塊。如圖2,用戶態(tài)聯(lián)邦文件系統(tǒng)客戶端模塊(以下簡稱fedFS)可以采用類似fuse這樣的開源用戶態(tài)文件系統(tǒng)開發(fā)包實(shí)現(xiàn),主要包括三個(gè)子模塊,分別是:標(biāo)準(zhǔn)接口封裝器、管理器和調(diào)度器。標(biāo)準(zhǔn)接口封裝器實(shí)現(xiàn)POSix兼容的多種云狀存儲(chǔ)系統(tǒng)標(biāo)準(zhǔn)訪問接口,并將來自API (Application Programming Interface,應(yīng)用程序編程接口)的請求轉(zhuǎn)發(fā)給管理器或者調(diào)度器。管理器用于實(shí)現(xiàn)后端云狀存儲(chǔ)系統(tǒng)的創(chuàng)建和維護(hù)工作。調(diào)度器用于實(shí)現(xiàn)來自API的請求的分發(fā)工作。如圖3,分布式一致性緩存模塊(以下簡稱DCS)用于緩存系統(tǒng)中后端云狀存儲(chǔ)系統(tǒng)的信息,這個(gè)模塊主要由多個(gè)Cache server (緩存服務(wù)器)組成,每個(gè)Cache server部署到一個(gè)服務(wù)器上面,該本服務(wù)器負(fù)責(zé)存儲(chǔ)后臺多個(gè)不同分布式文件系統(tǒng)的基本信息,例如元數(shù)據(jù)服務(wù)器所在節(jié)點(diǎn)機(jī)器名或IP地址,文件系統(tǒng)的掛載方式,存儲(chǔ)空間總?cè)萘?,已?jīng)使用量和在分布式文件基礎(chǔ)之上通過不同配置參數(shù)如備份數(shù)而形成的存儲(chǔ)子系統(tǒng)的信息;多個(gè)Cache server之間通過網(wǎng)絡(luò)通信構(gòu)成一個(gè)環(huán),該構(gòu)成的環(huán)能夠提高系統(tǒng)的穩(wěn)定性,多個(gè)服務(wù)器互為備份,單個(gè)服務(wù)器失效,其他服務(wù)器會(huì)承擔(dān)該機(jī)器的相關(guān)任務(wù)。每個(gè)Cache server上緩存的是同一份信息,即系統(tǒng)中的后端云狀存儲(chǔ)系統(tǒng)的具體信息,包括類型、大小、位置及副本策略等。多個(gè)Cache server之間通過paxos算法保證在系統(tǒng)異步的情況下能夠確保所存儲(chǔ)的數(shù)據(jù)一致,即存儲(chǔ)的是同一份信息。分布式一致性緩存模塊在實(shí)現(xiàn)方案上可以采用類似Zookeeper這樣的開源項(xiàng)目。云狀存儲(chǔ)系統(tǒng)代理模塊(以下簡稱DFS Agent)通過封裝后端云狀存儲(chǔ)系統(tǒng)的命令或者工具,用于創(chuàng)建和管理后端不同的云狀存儲(chǔ)系統(tǒng),并提供通信接口給fedFS中的管理器。下面分別從系統(tǒng)部署、創(chuàng)建存儲(chǔ)、使用存儲(chǔ)、刪除存儲(chǔ)幾個(gè)方面來說明本發(fā)明中實(shí)現(xiàn)方法的具體步驟:
1、系統(tǒng)部署,每一個(gè)客戶機(jī)上面需要加載一個(gè)fedFS模塊。fuseFS在被初始加載的時(shí)候,首先訪問DCS模塊中某個(gè)Cache server獲得當(dāng)前后端云狀存儲(chǔ)系統(tǒng)信息,并根據(jù)獲得的信息初始化當(dāng)前命名空間。Cache server用于緩存后端云狀存儲(chǔ)系統(tǒng)信息。每個(gè)Cache server保存的是同樣的數(shù)據(jù)副本,多個(gè)Cache server同時(shí)運(yùn)行可以保證服務(wù)的高可靠性。DFS Agent部署在系統(tǒng)中的控制節(jié)點(diǎn)(能夠被客戶機(jī)訪問,也能訪問后端所有存儲(chǔ)節(jié)點(diǎn))。2、創(chuàng)建不同類型的云狀存儲(chǔ)系統(tǒng):通過客戶端模塊將應(yīng)用程序編程接口的請求進(jìn)行轉(zhuǎn)發(fā)及轉(zhuǎn)換成云狀存儲(chǔ)系統(tǒng)代理模塊能夠識別的數(shù)據(jù)包,并將數(shù)據(jù)包發(fā)送給云狀存儲(chǔ)系統(tǒng)代理模塊;由云狀存儲(chǔ)系統(tǒng)代理模塊完成云狀存儲(chǔ)系統(tǒng)的創(chuàng)建,并將所創(chuàng)建的云狀存儲(chǔ)系統(tǒng)的信息發(fā)送給分布式一致性緩存模塊緩存。如圖4,在最開始階段,后端并沒有任何云狀存儲(chǔ)系統(tǒng)(即圖1所示統(tǒng)一命名空間根目錄下面為空),通過fedFS發(fā)送創(chuàng)建(create)或者打開(open)操作,指定應(yīng)用的特點(diǎn)與需求,API的請求通過fedFS的標(biāo)準(zhǔn)接口封裝器,然后被轉(zhuǎn)發(fā)到管理器,管理器將API的請求轉(zhuǎn)換成DFS Agent能夠識別的數(shù)據(jù)包并將數(shù)據(jù)包發(fā)送給DFS Agent。DFS Agent完成后臺相應(yīng)的云狀存儲(chǔ)系統(tǒng)創(chuàng)建之后,將對應(yīng)的云狀存儲(chǔ)系統(tǒng)信息返回給fedFS的管理器,管理器在內(nèi)存中緩存當(dāng)前信息,并轉(zhuǎn)發(fā)這些信息給DCS模塊中的Cache server.
3、通過fedFS訪問后端DFS的過程如圖5所示;標(biāo)準(zhǔn)接口分裝器屏蔽了底層不同文件系統(tǒng)訪問方式的差異,簡單過程如下:1應(yīng)用程序通過調(diào)用fedFS的標(biāo)準(zhǔn)接口分裝器,2該封裝器確定此次調(diào)用涉及的文件系統(tǒng)DFS,并調(diào)用文件系統(tǒng)特有的訪問接口,3 fedFS將調(diào)用通過本地進(jìn)程通信的方式轉(zhuǎn)發(fā)到DFSagent, 4 DFS agent通過DFS的元數(shù)據(jù)服務(wù)器獲取數(shù)據(jù)實(shí)際存儲(chǔ)節(jié)點(diǎn)信息5 DFS agent發(fā)送請求到數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn),6存儲(chǔ)節(jié)點(diǎn)返回?cái)?shù)據(jù)到DFS agent, 7 DFS agent將數(shù)據(jù)返回到應(yīng)用程序。如果fedFS是剛剛 啟動(dòng),則需要對統(tǒng)一命名空間做初始化。統(tǒng)一命名空間初始化的詳細(xì)步驟如下:S3 K fedFS啟動(dòng)以后,與DCS通信獲得當(dāng)前后端DFS信息。S32、管理器取得后端DFS信息以后,分別調(diào)用每個(gè)后端DFS的客戶端工具掛載云狀存儲(chǔ)系統(tǒng)至本地掛載點(diǎn)。S33、管理器將每個(gè)掛載點(diǎn)通過軟鏈接的方式鏈入fedFS的命名空間。至此,統(tǒng)一的命名空間建立成功。上述軟鏈接可以為常見文件系統(tǒng)的一個(gè)基本技術(shù),就是軟鏈接文件中的文件內(nèi)容是另外一個(gè)文件的路徑,而普通文件的內(nèi)容直接存儲(chǔ)文件的數(shù)據(jù)。當(dāng)后端云狀存儲(chǔ)系統(tǒng)已經(jīng)被創(chuàng)建,且統(tǒng)一命名空間被初始化后,fedFS看到的統(tǒng)一命名空間如圖1所示;此時(shí)就可以使用云狀存儲(chǔ)系統(tǒng)進(jìn)行存儲(chǔ)了。當(dāng)應(yīng)用初次使用fedFS的時(shí)候,它可以根據(jù)應(yīng)用數(shù)據(jù)的特點(diǎn)和訪問模式指定一些條件,fedFS的調(diào)度器分析這些條件以后在已有的后端DFS中為其分配目錄,甚至重新分配DFS。4、刪除云狀存儲(chǔ)系統(tǒng)。刪除云狀存儲(chǔ)系統(tǒng)基本上就是創(chuàng)建云狀存儲(chǔ)系統(tǒng)的一個(gè)逆過程。首先確保當(dāng)前沒有任何應(yīng)用在使用要被刪除的后端DFS。然后要確保所有的客戶節(jié)點(diǎn)已經(jīng)卸載DFS。在此前提下,fedFS管理器向DFS Agent發(fā)送命令要求刪除DFS,成功以后DCS每個(gè)cache server更新緩存信息。以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作 的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種支持混合云存儲(chǔ)應(yīng)用的分布式文件系統(tǒng),包括若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng),其特征在于,所述分布式文件系統(tǒng)還包括: 客戶端模塊,用于提供多種云狀存儲(chǔ)系統(tǒng)的標(biāo)準(zhǔn)訪問接口、轉(zhuǎn)發(fā)來自應(yīng)用程序編程接口的請求及實(shí)現(xiàn)后端云狀存儲(chǔ)系統(tǒng)的創(chuàng)建和維護(hù)工作; 分布式一致性緩存模塊,用于緩存所述若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng)的信息;以及 云狀存儲(chǔ)系統(tǒng)代理模塊,通過封裝所述若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng)的命令或者工具,用于創(chuàng)建和管理不同類型的云狀存儲(chǔ)系統(tǒng),并提供通信接口給所述客戶端模塊; 所述客戶端模塊、若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng)分別與云狀存儲(chǔ)系統(tǒng)代理模塊連接。
2.如權(quán)利要求1所述的分布式文件系統(tǒng),其特征在于,所述分布式一致性緩存模塊為若干不同類型的云狀存儲(chǔ)系統(tǒng)的共享物理存儲(chǔ)資源,分別與若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng)連接。
3.如權(quán)利要求1所述的分布式文件系統(tǒng),其特征在于,所述客戶端模塊包括標(biāo)準(zhǔn)接口封裝器、管理器和調(diào)度器;標(biāo)準(zhǔn)接口封裝器用于提供所述若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng)的標(biāo)準(zhǔn)訪問接口,并將來自應(yīng)用程序編程接口的請求轉(zhuǎn)發(fā)給管理器或者調(diào)度器;管理器用于實(shí)現(xiàn)所述若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng)的創(chuàng)建和維護(hù)工作;調(diào)度器用于實(shí)現(xiàn)來自應(yīng)用程序編程接口的請求的分發(fā)工作。
4.如權(quán)利要求1所述的分布式文件系統(tǒng),其特征在于,所述分布式一致性緩存模塊包括多個(gè)緩存服務(wù)器,多個(gè)緩存服務(wù)器之間通過網(wǎng)絡(luò)通信構(gòu)成一個(gè)環(huán),每個(gè)緩存服務(wù)器部署到一個(gè)服務(wù)器上。
5.權(quán)利要求1所述的分布式文 件系統(tǒng)的實(shí)現(xiàn)方法,其特征在于,包括以下步驟: 51、在每一個(gè)客戶機(jī)上面加載一個(gè)客戶端模塊; 52、通過客戶端模塊,將應(yīng)用程序編程接口的請求發(fā)送給云狀存儲(chǔ)系統(tǒng)代理模塊;由云狀存儲(chǔ)系統(tǒng)代理模塊創(chuàng)建不同類型的云狀存儲(chǔ)系統(tǒng),并將所創(chuàng)建的云狀存儲(chǔ)系統(tǒng)的信息發(fā)送給分布式一致性緩存模塊緩存; 53、由客戶端模塊對不同類型的云狀存儲(chǔ)系統(tǒng)進(jìn)行統(tǒng)一命名空間的初始化,所述分布式文件系統(tǒng)為一個(gè)根目錄,所述若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng)分別設(shè)置在若干個(gè)一級子目錄下。
6.如權(quán)利要求5所述的實(shí)現(xiàn)方法,其特征在于,所述步驟SI中,客戶端模塊在被初始加載的時(shí)候,首先訪問分布式一致性緩存模塊,獲得當(dāng)前的云狀存儲(chǔ)系統(tǒng)的信息,并根據(jù)獲得的信息初始化當(dāng)前命名空間。
7.如權(quán)利要求5所述的實(shí)現(xiàn)方法,其特征在于,所述步驟S2創(chuàng)建不同類型的云狀存儲(chǔ)系統(tǒng)的過程為:通過客戶端模塊將應(yīng)用程序編程接口的請求進(jìn)行轉(zhuǎn)發(fā),并轉(zhuǎn)換成云狀存儲(chǔ)系統(tǒng)代理模塊能夠識別的數(shù)據(jù)包,然后將數(shù)據(jù)包發(fā)送給云狀存儲(chǔ)系統(tǒng)代理模塊;由云狀存儲(chǔ)系統(tǒng)代理模塊創(chuàng)建不同類型的云狀存儲(chǔ)系統(tǒng)。
8.如權(quán)利要求5所述的實(shí)現(xiàn)方法,其特征在于,所述客戶端模塊包括標(biāo)準(zhǔn)接口封裝器、管理器和調(diào)度器,步驟S3對統(tǒng)一命名空間的初始化過程為: S31、客戶端模塊啟動(dòng)后,與分布式一致性緩存模塊通信獲得當(dāng)前后端云狀存儲(chǔ)系統(tǒng)的信息;S32、管理器取得后端云狀存儲(chǔ)系統(tǒng)的信息以后,分別調(diào)用每個(gè)后端云狀存儲(chǔ)系統(tǒng)的客戶端工具,掛載該云狀存儲(chǔ)系統(tǒng)至本地掛載點(diǎn); S33、管理器將每個(gè)本地掛載點(diǎn)通過軟鏈接的方式鏈入客戶端模塊的命名空間。
9.如權(quán)利要求5所述的實(shí)現(xiàn)方法,其特征在于,所述客戶端模塊包括標(biāo)準(zhǔn)接口封裝器、管理器和調(diào)度器,所述實(shí)現(xiàn)方法還包括: S4、刪除云狀存儲(chǔ)系統(tǒng):確認(rèn)要被刪除的云狀存儲(chǔ)系統(tǒng),然后確認(rèn)所有的客戶節(jié)點(diǎn)均已經(jīng)卸載該云狀存儲(chǔ)系統(tǒng),最后客戶端模塊的管理器向云狀存儲(chǔ)系統(tǒng)代理模塊發(fā)送命令刪除云狀存儲(chǔ)系統(tǒng),刪除成功后 分布式一致性緩存模塊更新緩存信息。
全文摘要
本發(fā)明適用于要滿足在云存儲(chǔ)環(huán)境下對應(yīng)用多樣性、彈性分配、橫向擴(kuò)展性等需求的超級計(jì)算中心或云計(jì)算中心等存儲(chǔ)系統(tǒng),提供了一種支持混合云存儲(chǔ)應(yīng)用的分布式文件系統(tǒng)及實(shí)現(xiàn)方法;其系統(tǒng)包括若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng),用于提供多種云狀存儲(chǔ)系統(tǒng)的標(biāo)準(zhǔn)訪問接口、轉(zhuǎn)發(fā)來自應(yīng)用程序編程接口的請求及實(shí)現(xiàn)后端云狀存儲(chǔ)系統(tǒng)的創(chuàng)建和維護(hù)工作的客戶端模塊,用于緩存不同類型的云狀存儲(chǔ)系統(tǒng)信息的分布式一致性緩存模塊,以及通過封裝云狀存儲(chǔ)系統(tǒng)的命令或者工具用于創(chuàng)建和管理不同類型的云狀存儲(chǔ)系統(tǒng)的云狀存儲(chǔ)系統(tǒng)代理模塊,其中客戶端模塊、若干個(gè)不同類型的云狀存儲(chǔ)系統(tǒng)分別與云狀存儲(chǔ)系統(tǒng)代理模塊連接。
文檔編號H04L29/08GK103237046SQ201310058268
公開日2013年8月7日 申請日期2013年2月25日 優(yōu)先權(quán)日2013年2月25日
發(fā)明者須成忠, 熊文, 黃偉 申請人:中國科學(xué)院深圳先進(jìn)技術(shù)研究院
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1