TWI461929B - 雲端數據儲存系統 - Google Patents

雲端數據儲存系統 Download PDF

Info

Publication number
TWI461929B
TWI461929B TW100145438A TW100145438A TWI461929B TW I461929 B TWI461929 B TW I461929B TW 100145438 A TW100145438 A TW 100145438A TW 100145438 A TW100145438 A TW 100145438A TW I461929 B TWI461929 B TW I461929B
Authority
TW
Taiwan
Prior art keywords
node
data
file
module
node module
Prior art date
Application number
TW100145438A
Other languages
English (en)
Other versions
TW201324183A (zh
Inventor
Wen Feng Hsu
Kuo Heng Lo
Shyan Ming Yuan
Hung Ming Chien
Jeremy Kuo
Neo Huang
Original Assignee
Promise Tecnnology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Promise Tecnnology Inc filed Critical Promise Tecnnology Inc
Priority to TW100145438A priority Critical patent/TWI461929B/zh
Priority to US13/608,053 priority patent/US8943355B2/en
Publication of TW201324183A publication Critical patent/TW201324183A/zh
Application granted granted Critical
Publication of TWI461929B publication Critical patent/TWI461929B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2035Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant without idle spare hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1824Distributed file systems implemented using Network-attached Storage [NAS] architecture
    • G06F16/1827Management specifically adapted to NAS
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • G06F11/1662Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit the resynchronized component or unit being a persistent storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2046Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share persistent storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

雲端數據儲存系統
本發明係關於一種雲端資料儲存系統(cloud data storage system),特別是一種解決數據匯入(遷移)以及數據恢復(cell recovery)技術問題之雲端資料儲存系統。
數據儲存系統最早從本地(local)硬碟、磁碟陣列(RAID)、區域網路中央式檔案伺服器(central file server)、網路附加儲存設備(NAS)、儲存區域網路(SAN)、叢集(clustered)儲存器進化為雲端儲存器。今天隨著互聯網(Internet)技術與可攜裝置如iphone,ipad,icloud的迅速發展,資訊產業發展已經正式進入了雲端時代。人們造訪雲端數據存儲系統和雲端計算能力是很方便且有彈性的。人們常擁有本地獨立的存儲系統和計算裝置,並從個人電腦(PC)或個人可攜式設備,造訪互聯網雲端叢集上任一儲存器的數據。
中央式檔案伺服器使用基本的客戶/伺服器網路科技以解決數據存取之問題。於最簡型式,檔案伺服器含PC或工作站(workstation)硬體且執行網路作業系統(NOS),以支援受控制(或存取權限分級)的檔案分享(如Novell NetWare,UNIXor Microsoft Windows)。檔案伺服器內可搭載的硬碟,其提供十億位元組(gigabytes)的空間,也可搭載磁帶驅動器(tape drives),此種儲存磁帶進一步的擴展可儲存的容量。
為了建立雲端儲存系統,群集或雲端檔案系統如哈都檔案系統(HDFS,Hadoop File System)於是出現。通常,這些群集文件系統是由元數據伺服器節點(metadata server node)和多個數據節點(datanode)組成。元數據伺服器節點提供檔案屬性的資料,例如檔案大小、存取控制旗幟和檔案位置。而數據節點提供真實(或稱原始)數據的存取服務給客戶(user client)。然而,對於小公司或小型辦公室家庭辦公室(small office home office,SOHO)言,如果他們想建立自己的私有雲端存儲系統,這一類型群集雲端存儲系統的成本太高了。以下是一些現有技術的整理。
Lustre  叢集檔案系統
Lustre是一個開放源碼群集檔案系統,由Sun Microsystem公司提出(被Oracle公司併購)。Lustre元數據管理架構是典型的主從(master-slave)架構。主元數據伺服器(metadata server,MDS)會服務元數據查詢請求,而待機的MDS為了確保故障轉移機制(failover),會監測主動MDS的健康狀況。
為了提供元數據服務的高可用性,Lustre允許多個MDS為了提供元數據查詢服務而待機。所有的MDS都連接到元數據目標(MDT,一存儲系統),但只有主動MDS可以存取MDT。雖然其他的MDS提供了故障轉移機制,但待機的MDS的計算能力被浪費了。單一主MDS對於整個群集檔案系統可能是一個瓶頸。這一型群集雲端存儲系統的成本太高了。
Hadoop 叢集檔案系統(HDFS)
HDFS是一個由Hadoop計畫提出的開放源雲端檔案系統。HDFS用名稱節點(namenode)來服務所有客戶的元數據查詢請求。而檔案更新記錄檔、元數據更新記錄檔(editlog)記錄所有的元數據編輯請求訊息並儲存在主名稱節點的硬碟(儲存器)中。次名稱節點迅速將元數據從editlog整合到主名稱節點硬碟的檔案系統結構映像檔(FsImage)檔案,然後為了記錄新的請求而清除舊的檔案,更新記錄檔、元數據更新記錄檔(editlog_new)。
HDFS是一個以爪哇(Java)語言所寫的針對Hadoop架構之分散式、可擴充、與可攜的檔案系統。於Hadoop情形下的每一節點一般具有一單一數據節點(datanode),而多個數據節的叢集構成HDFS的叢集檔案系統。但是不是雲端檔案系統內每一個節點都需要設有數據節點。每一數據節點以特用於HDFS的資料塊協定(block protocol)於網路上提供資料塊的存取服務。HDFS採用TCP/IP層作為溝通,客戶端之間使用遠端程序呼叫(RomoteProcedureCall)進行溝通。HDFS跨越不同的數據節點複製數據資料以保護資料的安全性,因此數據節點上不需使用RAID式的硬碟系統。
目前HDFS還沒有故障轉移(failover)機制,一旦名稱節點故障,管理員必須手動重新啟動名稱節點。一旦名稱節點的硬碟故障,editlog和FsImage元數據都將遺失。而次名稱節點因為只執行檢查點機制,浪費了它的伺服器計算能力。
檔案更新記錄檔、元數據更新記錄檔(Editlog)為名稱節點紀錄所有檔案更新操作之記錄檔,當有新檔案被加入系統或被刪除時,會把這些操作記錄到editlog中,所記錄的內容包含操作時間與檔案元數據以及一些額外資訊,editlog可以被存放於名稱節點的本地磁碟(local disk)上。Editlog的內容被定期合併至FsImage之中,每次合併後的瞬間FsImage將包含系統內的所有檔案元數據,元數據內容包含檔案所有者、檔案存取權限、檔案區塊編號與檔案區塊所在數據節點。
Ceph  元數據伺服器群集架構
元數據管理架構可分為五類。根據文獻,HDFS和Lustre屬於元數據和真實數據分離的形式,而Ceph屬於元數據伺服器叢集架構且採子樹分區法。子目錄的數目限制了元數據伺服器的數量,當子目錄迅速長得過大時,該方法是不夠的。
然而,由於在這些架構中數據伺服器是採用標準數據檔案伺服器(central file servers),而不是標準的網路附加儲存器(NAS),以致於產生幾個缺點。首先,用戶必須使用特定的客戶端(client)才能從數據伺服器上存取檔案或資料,這讓普通用戶無法很容易的操作。第二,這些標準檔案伺服器的硬體或營運費用均高於標準的NAS,且建設成本也較高。第三,標準檔案伺服器的管理工作量高於標準的NAS。
因此,本發明所欲解決的技術問題為一低成本、可擴充(scalability)、彈性的雲端資料儲存系統。
本發明所欲解決的再一技術問題為提供一具有高效能資料遷移(data migration)、數據資料恢復(cell recovery)的雲端資料儲存系統。
在本申請案中,提出了一個新的元數據管理架構,使用名稱節點模組、數據節點模組和NAS來建立可擴展性和具彈性的雲端存儲系統。因為NAS成本比典型的伺服器較低,這將是小公司和SOHO建立他們自己雲端存儲系統(私有雲)的一個新選項。
此一新的系統架構可使用NAS來代替一般的存儲檔案伺服器,不僅降低了建設儲存雲端的成本,而且也降低了系統管理員的管理工作量。
為了於現有技術中加入高效能資料遷移(data migration)的能力,本案實施例的一種雲端數據儲存系統,供多個使用者客戶端存取雲端數據儲存系統上眾多檔案的數據,包含:一至多個節點,每一節點可供連結對應的一第一儲存器,供儲存每一檔案的元數據以及可供連結一第二儲存器供儲存檔案;至少一個名稱節點模組(namenode module),供處理由客戶端發出的檔案操作,名稱節點模組發出數據存取指令以存取且維持於第一儲存器上的元數據;至少一個數據節點模組(datanode module),分別執行於一至多個節點上,每一數據節點模組供掃描、存取所連結的一第二儲存器;一至多個數據匯入模組(data import module),可選擇性地執行於有執行數據節點模組之節點上,該數據匯入模組可掃描新進入此雲端數據儲存系統的一第二儲存器而獲得對應的一檔案元數據,並執行第二儲存器上數據的匯入工作但不進行檔案上傳。
為了於現有技術中加入系統恢復(cell recovery)的能力,本案實施例的一種雲端數據儲存系統,供多個使用者客戶端(user clients)存取雲端數據儲存系統上眾多檔案的數據,包含:一至多個節點(node),每一節點可供連結對應的一第一儲存器,供儲存每一檔案的元數據以及可供連結一第二儲存器供儲存檔案;二個(含)以上名稱節點模組(namenode module),該二個(含)以上名稱節點模組具有一活動態(active)的名稱節點模組與多個睡眠態(inactive)的名稱節點模組,活動態(active)的名稱節點模組執行於其中之一節點上,供處理由客戶端發出的檔案操作,活動態名稱節點模組發出數據存取指令以存取且維持於第一儲存器上的元數據;至少一個數據節點模組(datanode module),分別執行於一至多個節點上,每一數據節點模組供掃描、存取所連結的一第二儲存器;一至多個名稱節點監控模組(namenode monitor module),分別執行於一至多個節點上,供監控活動態的名稱節點模組的健康狀況,而當活動態名稱節點模組故障時,喚醒睡眠態的名稱節點模組。
關於本發明之其他具體實施例、優點與必要技術特徵可以藉由以下的發明詳述、各附屬項的細節及所附圖式得到進一步的瞭解。
於以下對本發明之較佳具體實施例的詳細說明進行介紹前,先對本案有關的名詞作一定義。
叢集檔案系統(clustered file system)是一種藉由同時被搭載於多個伺服器節點上多個實體的(physical)檔案系統,但是被共享的單一邏輯的(logical)檔案系統,整個叢集檔案系統雖然具有多個實體的(physical)檔案系統,但對雲端內的客戶而言,只是面對一個邏輯的檔案系統。
雲端內使用者客戶端(user client)包含了電腦硬體及/或電腦軟體,他們倚賴雲端內的應用程式計算、儲存能力以滿足他們需要的服務,客戶端例如一些桌上電腦、手機或平板電腦、一些作業系統(OS)與瀏覽器(browsers),其本身沒有什麼提供服務的能力。
雲端內伺服器(servers)包含了電腦硬體及/或電腦軟體,他們被設計做為提供服務給雲端內的要求者,他們可能包括了多核心處理器、雲特定(cloud-specific)作業系統以及其組合。伺服器這一名詞強調了此一機器於客戶端--伺服器端架構下的伺服器角色,而客戶端則需要檔案伺服器的服務。
標準檔案伺服器是連結上網路的一個電腦,此一檔案伺服器的主要功能在提供一共享磁碟空間的位置(location),以儲存各類數據資料,此一共享磁碟空間的位置可被與此網路連結的客戶端所存取。檔案伺服器是不需要承擔計算型的工作,且也不替客戶端執行應用程式。檔案伺服器含PC或工作站硬體且執行網路作業系統(NOS),需要搭配監視器、鍵盤或滑鼠,支援受控制(存取權限分級)的檔案分享(如Novell NetWare,UNIXor Microsoft Windows)。檔案伺服器內可搭載的硬碟,提供十億位元組(gigabytes)的空間,也可搭載磁帶驅動器(tape drives),以進一步的擴展可儲存的容量。
雖然也是採用客戶端--伺服器架構,網路附加儲存器(Network-attached storage,NAS)是連結上網路的檔案層(file-level)的儲存器(不是電腦),其能提供檔案存取服務給異質性客戶端(heterogeneous clients),但NAS不需要搭配監視器、鍵盤或滑鼠。NAS藉由其硬體、軟體與軟/硬體的規劃,而完成其特定專為儲存檔案與提供檔案存取服務之功能。NAS是一網路設備(appliance),且專為儲存檔案與提供檔案的存取服務,因此非一般通用型標準檔案伺服器。一個單一的硬體,稱為NAS閘門(head或gateway)作為NAS與客戶端的介面,每一NAS閘門被指定一IP位址(IP address)。一般而言,NAS網路設備執行嵌入式(embedded)作業系統,而非全功能(full features)的網路作業系統。與NAS閘門相連結的NAS,於網路(如Ethenet)上的IP位址是為該對應NAS閘門的IP位址。
NAS內通常具有一個以上的硬碟,且安排成邏輯的、冗餘的儲存器或RAID陣列儲存器。針對NAS的存取作業,NFS,SMB/CIFS或AFP為幾個較有名的網路檔案共享協議。NAS因通常沒有搭配監視器、鍵盤或滑鼠,只能藉瀏覽器經由網路連線,去管理或規畫(configure)NAS。
節點(node)於本案雲端數據儲存系統中是一個具有IP位址的、具有處理器能力的裝置,可連結或未連結對應的一儲存器,節點裝置可選擇性地執行名稱節點模組、數據節點模組、數據匯入模組、名稱節點監控模組,其細節如下所述。因此,網路上的伺服器裝置、使用者客戶端或NAS閘門,只要是具IP位址的、有處理器能力的裝置、可選擇性地執行名稱節點模組、數據節點模組、數據匯入模組、名稱節點監控模組,都可以是節點。
《檔案上傳》或《檔案下傳》於本案中是指,數據檔案被從一個儲存器實體的位置(physical location)真正的被搬運且傳送到另外一個不同儲存器的實體位置。如果沒有真正的被傳送且搬運,就不是本案中所定義的《檔案上傳》或《檔案下傳》。
模組(module)於本案中是一個可執行特定功能的軟體指令集(instruction sets)。但是若有需要,也是可以以硬體與軟體的組合方式達成相同模組的功能。
名稱節點模組(namenode module,NNM)是一種管理雲端儲存系統內所有數據的元數據(metadata)的模組,可以執行於一或多個節點上,供服務雲端上所有的客戶端的元數據查詢請求,處理由客戶端發出的檔案操作。名稱節點模組發出數據存取指令,以存取且維持於對應儲存器上的元數據。
數據節點(DataNode,DN)具一個數據節點伺服器的功能。數據節點模組是執行於一至多個節點上的模組,每一執行中的數據節點模組可供掃描、存取所該數據節點所連結的一對應儲存器,相對於元數據,此儲存器是儲存原始數據資料。
名稱節點模組、數據節點模組或是客戶端所發出(issue)的數據存取指令可以為POSIX標準檔案存取指令(例如,搭載成功後的檔案讀寫指令)或非POSIX標準檔案存取指令(例如,HDFS的put、get指令)。
如果是一POSIX標準檔案存取指令,執行的搭載指令可選自Linux系統的標準搭載指令(mount)、使用者空間檔案系統(FUSE)搭載指令、或是Windows系統下的網路磁碟機連線指令。Windows作業系統中有連線網路磁碟機的指令可以連線到其他windows作業系統主機下所開放分享的資料夾,此連線網路磁碟機的動作即類似Linux系統的標準搭載指令(mount)。
本發明的實施例若運作在Linux系統下,則數據節點發出的搭載是以網路檔案系統(Network File System--NFS)向對應NAS進行搭載的動作。NFS是網路檔案系統交換資料的標準通訊協定,NAS上會執行NFS伺服模組,數據節點上會執行NFS客戶模組。數據節點必須向NAS進行NFS搭載才能建立連線,之後才能傳送資料。
另一種搭載指令為使用者空間檔案系統(Filesystem in Userspace-FUSE)搭載。於使用者空間的程式上,FUSE搭載提供一個功能性的檔案系統。當使用者客戶端使用非Linux系統的檔案系統,FUSE搭載藉由插斷,使用者空間給Linux核心(Kernel)的指令會呼叫於FUSE目錄中的對應功能,以模擬Linux指令。由於HDFS實作的方式並未提供與Linux虛擬檔案系統搭載的功能,因此無法用標準的檔案讀寫指令來存取資料。然而使用者客戶端仍可透過FUSE搭載來掛載HDFS,進而能存取資料。因此本案技術若運用於HDFS架構下,則數據節點向NAS的搭載都是NFS搭載(mount),而使用者客戶端向名稱節點模組發出的都是使用FUSE搭載(mount)。
請參閱圖1,為本發明雲端資料儲存系統1的整體架構,系統1內有多個節點14,每一節14掛載一個以上的儲存器15,16。至少一客戶端12可以進入此一雲端資料儲存系統1內進行資料的存取。如果節點14是一個執行名稱節點模組的節點,則其對應的儲存器供儲存雲端資料儲存系統1內所有原始數據的元數據(metadata),此時的儲存器就標示為儲存器15。其他不是儲存元數據的儲存器則是儲存原始數據,此時的儲存器就標示為儲存器16。但為了節省硬體資源,於系統1內,單一個儲存器也可以同時擔任儲存元數據與原始數據的角色,不過須考慮數據救援的問題。另需說明的是,不是每一個節點都需要搭配一個或以上的儲存器,其詳細如下所述。
數據匯入(或遷移)
請參閱圖2,為根據本發明一雲端資料儲存系統1之基礎架構。該雲端資料儲存系統1包含以下元件:至少一節點24,其上執行數據節點模組(datanode module,DN)、名稱節點模組(namenode module,NN)與數據匯入模組(DataInput module,DI),以及至少一個儲存器NAS(或不計較成本,檔案伺服器也可以) 262,供儲存原始數據及其對應的元數據。至少一客戶端22可以進入此一雲端資料儲存系統1內進行資料的存取。
數據節點(DN)模組是一個數據節點伺服器的功能。數據節點模組是分別執行於一至多個節點24上的模組,每一執行中的數據節點模組可供掃描、存取所該節點所連結的一儲存器262內的數據,因此儲存器262可儲存原始數據(資料)。名稱節點模組(NN)是一種管理元數據的模組,可以執行於一或多個節點24上,供服務雲端上所有的客戶端22的元數據查詢請求,處理由客戶端22發出的檔案操作。名稱節點模組(NN)發出數據存取指令,以存取且維持於儲存器262上的元數據,因此於圖中2實施例,儲存器262是同時供儲存原始數據(資料)及元數據。如果是實施於HDFS下,客戶端22使用FUSE搭載(mount),並對節點24存取數據,執行數據節點模組之節點24使用標準的搭載指令(mount)或NFS搭載指令向儲存器262發出標準的搭載指令(mount)。不計較硬體成本與管理成本時,所述之雲端數據儲存系統之儲存器262可選自由具伺服器能力的檔案伺服器,計較硬體成本與管理成本時,儲存器262可選自不具伺服器能力的網路附加儲存器(NAS)、或是執行數據節點模組(DN)之節點24的本地端(local)硬碟之檔案系統。
數據匯入模組(DI)執行於有執行數據節點模組(DN)之節點24上,該數據匯入模組可掃描新進入此雲端數據儲存系統1的一儲存器264而獲得對應的一檔案元數據,並執行儲存器264上數據匯入雲端資料儲存系統1工作,但不進行檔案上傳。意即,檔案或數據沒有真正的被搬動、傳送,以下將介紹幾種方式。
目前現有的雲端儲存系統,要將舊的網路附加儲存設備(NAS) 264整合到系統1只能透過將所有的檔案都上傳到儲存系統上,但這種方式不僅耗費時間,也消耗掉原本儲存系統的空間。而本案用鏈接的方式來註冊檔案系統,也就是將NAS 264上的檔案和系統下的檔案做鏈接,這樣不僅減少現有技術上傳時間的浪費,也節省了儲存系統的空間。另一方面,本案透過鏈接可以確保原本NAS 264上的檔案結構不被破壞。而鏈接的方式分為軟鏈接和硬鏈接,當原始檔案被刪除時,他們的差別在:軟鏈接即無法開啟原始檔案;但硬鏈接還是可以開啟。軟鏈接第一個好處,可以讓使用者很清楚了解哪些檔案是在我們系統上產生或修改的,第二個好處是當檔案在NAS 264上被使用者22刪除後,在本雲端儲存系統1下任何人也無法存取此檔案。
圖3揭露一第二實施例以及數據匯入模組如何完成工作。該雲端資料儲存系統1包含以下元件:一節點342與另一節點344,節點342上執行名稱節點模組(NN),另一節點344上執行數據節點模組(DN)與數據匯入模組(DI)。NAS(或是檔案伺服器也可以)36是供儲存原始數據及其對應的元數據。
數據匯入模組至少進行如下的作業:(1)掃描新進入叢集雲端內的NAS檔案系統38,(2)將新進入叢集雲端內的NAS檔案系統38的元數據,向節點342註冊,(3)將此一節點344所新搭載的NAS 38的檔案,進行虛擬寫入(virtual write)。如前述完成數據匯入作業後,客戶端(圖3中為32)向名稱節點模組(NN)提出要求,以存取檔案,並因此知道檔案位址。之後,客戶端(圖3中為32)經由相關的節點(圖3中為節點344)中的數據節點模組(DN)存取檔案。除上述之外,名稱節點模組(NN)並設定檔案的複製(安全性)策略。節點344執行檔案的讀或寫,並執行複製(安全)策略下的複製作業。所述之雲端數據儲存系統1之儲存器36可選自由具伺服器能力的檔案伺服器(不計較硬體成本與管理成本)、不具伺服器能力的網路附加儲存器(NAS,計較硬體成本與管理成本)、或是執行數據節點模組(DN)之節點344本地端(local)硬碟之檔案系統所構成的群組。
由圖3可知,數據節點模組(DN)需要數據匯入模組(DI)的配合來完成資料匯入的動作。遷移(data migration)包含兩個動作:註冊元數據與數據的匯入工作(但不進行檔案上傳)。數據的匯入工作(但不進行檔案上傳)亦稱為虛擬寫入(virtual write,V-write),並不僅限於使用鏈結的方式,虛擬寫入可能做法包括:1.使用鏈結(link),2.變更檔案路徑與名稱,3.進行檔案切割與重新命名,或4.其他類似的現有方式。
本案實施於HDFS下時,可以使用「鏈結」或「變更檔案路徑與名稱」這兩種方式來完成,詳細原因如下。以HDFS客戶端為例,取得檔案有兩個步驟:1. HDFS客戶端要存取檔案會先向名稱節點模組(NN)查詢檔案所在位置(名稱節點模組將會查詢本身所存放的所有檔案元數據,並回覆HDFS客戶端檔案在哪個數據節點上);2. HDFS客戶端向有檔案的數據節點模組要求檔案(HDFS的數據節點模組會負責找到檔案並回覆給HDFS客戶端)。HDFS數據節點模組會將所有檔案存放在一個特定的資料夾,因此讀取檔案都會在這一特定資料夾內進行。因此,當元數據被註冊到名稱節點模組(NN)後,便能夠在雲端儲存系統中被找到,即被客戶端32認為檔案已經被真正上傳且儲存在雲端儲存系統1中。因此建立鏈結可以讓HDFS的數據節點模組(DN)找到檔案,並回覆給HDFS客戶端。
綜上所述,本案之數據匯入的工作採用向執行名稱節點模組(NN)之節點註冊檔案元數據之方式,將新進來的檔案加入雲端數據儲存系統,但不進行檔案上傳。所述之雲端數據儲存系統數據匯入的工作包含:以鏈接的方式將新進來的檔案加入雲端數據儲存系統,其中鏈接的方式是選自軟鏈接、硬鏈接的方式所組成的群組。所述之雲端數據儲存系統數據匯入的工作包含:採用重新命名及搬移檔案的方式,將新進來的檔案加入雲端數據儲存系統。
數據救援(Cell Recovery)
數據救援是一個容錯的技術,目的是確保當名稱節點故障或是它所掛載的NAS故障後,還是能夠讓原本的系統能夠恢復。為了這個技術問題,本案中每個數據節點都儲存一部分的元數據(對應本地端數據節點所儲存的檔案),如圖6所示的部分的元數據(partial metadata)666,各個部分元數據整合起來就是活動態名稱節點模組上的檔案系統結構元數據(metadata)。
請參閱圖4,為根據本發明一雲端資料儲存系統1之一進階架構。
雲端資料儲存系統1包含以下元件:至少一節點441,443,445,447,以及四個以上NASs(或是檔案伺服器也可以)462,464,466,468。節點441上執行活動態名稱節點模組(NN),節點443上執行數據節點模組(DN)與數據匯入模組(DI),節點445上執行數據節點模組(DN)、數據匯入模組(DI)及睡眠態名稱節點模組NN(I)與名稱節點監控模組(NNM),節點447上執行睡眠態名稱節點模組NN(I)與名稱節點監控模組(NNM)。(活動態)名稱節點模組(NN)、數據節點模組(DN)、數據匯入模組(DI)三者的詳細說明,請參考前述對圖2,3的說明。
一至多個名稱節點監控模組(NNM)分別執行於一至多個節點445,447上,供監控活動態的名稱節點模組(NN)的健康狀況,而當活動態名稱節點模組(NN)故障時,喚醒睡眠態的名稱節點模組NN(I),睡眠態名稱節點模組NN(I)可以取代故障活動態名稱節點模組(NN)的角色。如前述,活動態名稱節點模組(NN)處理客戶端42需求的檔案操作,並維持在儲存空間462的檔案元數據。系統1正常時,睡眠態名稱節點模組(NN(I))於節點445,447處於睡眠態,不會執行其完整功能,但是若被名稱節點監控模組(NNM)喚醒,則成為另一個完整功能的活動態名稱節點模組(NN)。
除此之外,名稱節點監控模組(NNM)會定期檢驗儲存空間(儲存器)462的元數據更新記錄檔數據,並將它整合成檔案系統結構映像檔,就類似HDFS架構下的次級(secondary)名稱節點模組一樣。因為只有活動態名稱節點模組(NN)會修改存儲空間462的檔案元數據,所以檔案元數據的同步在本案的架構下很容易處理。本案的架構可避免現有技術下活動態名稱節點模組(NN)故障後系統便不能運作;因為睡眠態名稱節點模組NN(I)被喚醒後可以扮演活動態名稱節點模組(NN)的角色。
從圖4來看,名稱節點模組監視模組(NNM)會定期檢驗活動態名稱節點模組(NN)的健康狀況,當活動態名稱節點模組(NN) 441故障,名稱節點模組監視模組(NNM)會發送訊息給所有的數據節點(DN)和客戶端42,並讓一個睡眠態名稱節點模組NN(I)醒來,擔任起原活動態名稱節點模組(NN)141的角色。
在同一節點445,447上需要名稱節點模組(睡眠態)搭配名稱節點監視模組,才能在活動態名稱節點441毀損的時候,喚醒睡眠態的名稱節點模組。數據匯入模組可選擇性地執行於有執行數據節點模組之節點443,445上,亦即數據節點模組也可以單獨於節點上運行。名稱節點監視模組(NNM)與數據節點模組(DN)存在同一個節點445上是一個節省實體節點數量的作法,但不必然要放在一起。並非每一節點必然要存在前述所有的模組,但為了安全性,上述五個模組最好不要同時存在於同一個節點上。必須同時存在同一個節點的組合是:1.名稱節點監控模組+名稱節點模組(睡眠態)在同一個節點,2.數據節點模組+數據匯入模組在同一個節點,或3.全部存在同一個節點。實作上,名稱節點監控模組(NNM)可以執行在名稱節點模組(NN)以外的任意節點上,例如任一執行數據節點模組的節點上均可。如圖2,3,4架構所示。但數據節點模組可以單獨於節點上運行,如上述。
於HDFS下,檔案更新記錄檔、元數據更新記錄檔(Editlog)為名稱節點模組紀錄所有檔案更新操作之記錄檔,當有新檔案被加入系統或被刪除時,會把這些操作紀錄到editlog中,所記錄的內容包含操作時間與檔案元數據以及一些額外資訊,editlog可以被存放於名稱節點模組的本地磁碟上(或是儲存器462上)。Editlog的內容將被定期合併至檔案系統結構映像檔(FsImage)之中,每次合併後的瞬間FsImage將包含所有系統內的檔案元數據,元數據內容包含檔案所有者、檔案存取權限、檔案區塊編號與檔案區塊所在節點。此一合併動作是由名稱節點監控模組(NNM)所定期進行。
圖5介紹七個節點541,543,545,547,549,542,544,並以此架構說明本案中數據救援如何進行,於此圖中,NN(I)打叉並非表示故障,而是表示NN(I)會被NNM啟動而改變狀態成活動態(NN),其他節點541,545,547或儲存器562被打叉表示故障。每一節點所執行的模組,如圖5所示。
如上述,名稱節點監控模組(NNM)定期檢驗活動態名稱節點模組(NN)的健康狀況,由於活動態名稱節點模組(NN)故障,所以睡眠態名稱節點模組NN(I)會被喚醒,取代活動態名稱節點模組的角色。這時,名稱節點監控模組(NNM)會發出訊息,提醒所有正常運作的數據節點(DN) 549,542,544,關於名稱節點模組(NN)位置改變的訊息(由節點541換到節點543),之後系統1便可以正常運作。
若是活動態名稱節點模組所掛載的儲存器562故障,元數據便遺失了。當活動態名稱節點模組(NN)再次開啟時,會先檢驗元數據是否存在,如果遺失,便要向每個註冊的數據節點取得與其相關的元數據,如圖6所示的部分的元數據(partial metadata) 666,藉此重新建構出完整的元數據,且儲存於運作中的儲存器564。
圖6介紹三個節點641,643,647架構,並以此架構說明本案中數據救援如何進行。每一節點所執行的模組,如圖6所示。名稱節點監控模組(NNM)定時以信號checkAlive檢查節點641是否存活,如果確認節點641故障後,一開始會向所有數據節點643通知新名稱節點647的相關訊息,確定所有數據節點都知道新名稱節點647的位置後,再啟動新名稱節點模組(NN(I))。而新名稱節點模組(NN(I))於啟動時需檢查檔案系統結構映像檔是否存在,如不存在便要透過取回元數據(getMeta)指令向所有數據節點索取元數據666,再整合成所需要的資訊。信號checkAlive:節點模組向名稱節點(namenode)傳送心跳訊號,代表此一節點模組仍正常運作,當名稱節點收不到此訊號數次(通常為3次以上,可以設定次數調整)則會認為此一節點故障。信號fileRender:數據節點模組向名稱節點回報此數據節點上有那些檔案或檔案區塊。此一信號會定期送至名稱節點,或是於名稱節點第一次啟動或是重新啟動時送至名稱節點。
圖7介紹五個以上節點741,742,743,744,745架構,並以此架構說明本案中數據救援如何進行。每一節點所執行的模組,如圖7所示。NN(I)打叉並非表示故障,而是代表NN(I)會被NNM啟動而改變狀態成為活動態。節點741或儲存器762被打叉表示故障。節點777是由系統管理者以手動方式加入系統1的一個節點。
圖7雲端數據儲存系統1中,節點742,743,744,745中至少其一(如743,744,745)執行名稱節點監控模組(NNM),當執行活動態名稱節點模組(NN)之節點741或/與儲存器762故障且無法回復,一名稱節點監控模組於正常運作且具睡眠態名稱節點模組NN(I)之節點(743,744,745)中的其中之一,選出一新執行活動態名稱節點模組之節點744(搭配儲存器768),取代且執行故障活動態名稱節點模組741(或/與儲存器762)的功能。
再參考圖7,所述之雲端數據儲存系統1也可以讓系統管理者用手動的方式加入執行活動態名稱節點模組(NN)之新節點777。當執行活動態名稱節點模組之節點741或/與儲存器762故障且無法回復,系統管理者可手動加入一執行活動態名稱節點模組(NN)之新節點777與對應的儲存器766;執行活動態名稱節點模組之新節點777發出訊息,提醒所有執行數據節點模組(DN)之節點,有關於執行活動態名稱節點模組之節點位置改變的訊息。執行活動態名稱節點模組之新節點777利用取回元數據(getMeta)信號,向目前仍正常運作的執行數據節點模組之所有節點取得與其對應的檔案之元數據(partial metadata) 666,重建出完整的檔案元數據,並開始提供服務。
綜上所述,本發明中每個執行數據節點模組之節點儲存一部分的元數據,此部分的元數據是對應儲存在執行數據節點模組之節點儲存器的檔案之元數據。所述之雲端數據儲存系統,執行活動態名稱節點模組之節點所掛載的第一儲存器故障後若元數據遺失,活動態名稱節點模組執行數據救援作業,向每一個執行數據節點模組之節點取得與其相關對應的元數據,重新建構出完整的元數據。所述之雲端數據儲存系統,其中執行數據節點模組之節點之一執行一名稱節點監控模組,當執行活動態名稱節點模組之節點與儲存器都故障且無法回復,且執行數據節點模組之節點也有一部份故障時,該名稱節點監控模組於正常運作且具睡眠態名稱節點模組之節點中的其中之一,選出一新執行活動態名稱節點模組之節點,取代且執行故障活動態名稱節點模組的功能。
技術效果:
透過本發明所提到的系統架構(圖4)實作出一個原型系統。系統的環境設計包含四台節點(機器)如表一,實驗結果如圖8所示的系統遷移的時間和數據救援的時間。系統遷移時間和檔案數量及檔案大小有關,而數據救援時間主要是和檔案數量有關。
從下表二、三,我們可以知道資料遷移的時間隨著檔案數量約成正比。
總結,本案的雲端儲存系統架構是有其價值的。將價格低廉的NAS來取代習知的儲存伺服器,可以降低建構雲端儲存系統的成本。這個架構是可擴展的,因為NAS可以無縫地在任何時間從雲端儲存系統加入或移除。而整個系統的元數據會保存在活動態或睡眠態名稱節點模組上,而系統部分的元數據保留在所有的數據節點上。當活動態名稱節點模組故障或元數據故障時,都可以透過數據救援的方式來回復系統。
藉由以上較佳具體實施例之詳述,係希望能更加清楚描述本發明之特徵與精神,而並非以上述所揭露的較佳具體實施例來對本發明之範疇加以限制。相反地,其目的是希望能涵蓋各種改變及具相等性的安排於本發明所欲申請之專利範圍的範疇內。因此,本發明所申請之專利範圍的範疇應該根據上述的說明作最寬廣的解釋,以致使其涵蓋所有可能的改變以及具相等性的安排。
1...雲端數據儲存系統
12...使用者客戶端
14...節點
15...第一儲存器
16...第二儲存器
NN...活動態名稱節點模組
DN...數據節點模組
DI...數據匯入模組
24...節點
NN(I)...睡眠態的名稱節點模組
NNM...名稱節點監控模組
22...使用者客戶端
262...儲存器
264...儲存器
32...使用者客戶端
36...儲存器
38...儲存器
342...節點
344...節點
42...使用者客戶端
(1)...掃描
(2)...向節點342註冊
(3)...虛擬寫入
462,464,466,468...儲存器
441,443,445,447...節點
562,564,566,568,561,563,565...儲存器
541,543,545,547,549,542,544...節點
741,742,743,744,745...節點
662,664...儲存器
641,643,647...節點
777...節點
761,762,763,766,768...儲存器
666...元數據
圖1為本發明一雲端資料儲存系統1的整體架構。
圖2為本發明一雲端資料儲存系統1之基礎架構。
圖3為另一實施例,揭露數據匯入模組的運作。
圖4為另一實施例,揭露NNM,NN(I)模組的運作。
圖5為另一實施例,揭露數據救援的運作。
圖6介紹三個節點並以此架構說明本案中數據救援如何進行。
圖7介紹三個以上節點並以此架構說明本案中數據救援如何進行。
圖8a,8b揭露本案(代號Aiolos)圖4架構下,不同的檔案(files)數、不同的檔案大小(Kb),其所需資料遷移時間與現有技術(代號HDFS)實驗值的比較圖示。
441,443,445,447...節點
42...使用者客戶端
NNM...名稱節點監控模組
NN...活動態名稱節點模組
DN...數據節點模組
DI...數據匯入模組
462,464,466,468...儲存器
NN(I)...睡眠態的名稱節點模組

Claims (13)

  1. 一種雲端數據儲存系統,供多個使用者客戶端(user clients)存取雲端數據儲存系統上眾多檔案的數據,包含:一至多個節點(node),每一節點可供連結對應的一第一儲存器,供分別儲存每一檔案的元數據,以及可供連結一第二儲存器供分別儲存檔案;至少一個名稱節點模組(namenode module),執行於其中之一節點上供處理由客戶端發出的檔案操作,名稱節點模組發出數據存取指令以存取且維持於第一儲存器上的元數據;至少一個數據節點模組(datanode module),分別執行於一至多個節點上,每一數據節點模組供掃描、存取所連結的一第二儲存器;一至多個數據匯入模組(data import module),可選擇性地執行於有執行數據節點模組之節點上,該數據匯入模組可掃描新進入此雲端數據儲存系統的一第二儲存器而獲得對應的一檔案元數據,並執行第二儲存器上數據的匯入工作但不進行檔案上傳。
  2. 如請求項第1項所述之雲端數據儲存系統,該第二儲存器可選自由具伺服器能力的檔案伺服器(file server)、不具伺服器能力的網路附加儲存器(NAS)、執行數據節點模組之節點本地端硬碟之檔案系統所構成的群組。
  3. 如請求項第1項所述之雲端數據儲存系統,其中數據匯入的工作採用向執行名稱節點模組之節點註冊檔案元數據之方式將新進來的檔案加入雲端數據儲存系統,但不進行檔案上傳。
  4. 如請求項第3項所述之雲端數據儲存系統,數據匯入的工作進一步包含:以鏈接的方式將新進來的檔案加入雲端數據儲存系統,其中鏈接的方式是選自軟鏈接、硬鏈接的方式所組成的群組。
  5. 如請求項第3項所述之雲端數據儲存系統,數據匯入的工作進一步包含:採用重新命名及搬移檔案的方式,將新進來的檔案加入雲端數據儲存系統。
  6. 如請求項第1項所述之雲端數據儲存系統,其中的數據存取指令為一POSIX標準檔案存取指令,此搭載指令可選自Linux系統的標準搭載指令(mount)、使用者空間檔案系統(FUSE)搭載指令、或Windows系統的網路磁碟機的連線指令。
  7. 一種雲端數據儲存系統,供多個使用者客戶端(user clients)存取雲端數據儲存系統上眾多檔案的數據,包含:一至多個節點(node),每一節點可供連結對應的一第一儲存器,供儲存每一檔案的元數據以及可供連結一第二儲存器供儲存檔案;二個(含)以上名稱節點模組(namenode module),該二個(含)以上名稱節點模組具有一活動態(active)的名稱節點模組與多個睡眠態(inactive)的名稱節點模組,活動態(active)的名稱節點模組執行於其中之一節點上,供處理由客戶端發出的檔案操作,活動態名稱節點模組發出數據存取指令以存取且維持於第一儲存器上的元數據;至少一個數據節點模組(datanode module),分別執行於一至多個節點上,每一數據節點模組供掃描、存取所連結的一第二儲存器;一至多個名稱節點監控模組(namenode monitor module),分別執行於一至多個節點上,供監控活動態的名稱節點模組的健康狀況,而當活動態名稱節點模組故障時,喚醒睡眠態的名稱節點模組。
  8. 如請求項第7項所述之雲端數據儲存系統,該第二儲存器可選自由具伺服器能力的檔案伺服器(file server)、不具伺服器能力的網路附加儲存器(NAS)、執行數據節點模組之節點本地端硬碟之檔案系統所構成的群組。
  9. 如請求項第7項所述之雲端數據儲存系統,每個執行數據節點模組之節點儲存一部分的元數據(partial metadata),此部分的元數據是對應儲存在執行數據節點模組之節點第二儲存器的檔案之元數據。
  10. 如請求項第9項所述之雲端數據儲存系統,執行活動態名稱節點模組之節點所掛載的第一儲存器故障後若元數據遺失,活動態名稱節點模組執行數據救援作業,向每一個執行數據節點模組之節點取得與其相關對應的元數據(partial metadata),重新建構出完整的元數據。
  11. 如請求項第9項所述之雲端數據儲存系統,其中執行數據節點模組之節點之一執行一名稱節點監控模組,當執行活動態名稱節點模組之節點與第一儲存器都故障且無法回復,該名稱節點監控模組於正常運作且具睡眠態名稱節點模組之節點中的其中之一,選出一新執行活動態名稱節點模組之節點,取代且執行故障活動態名稱節點模組的功能。
  12. 如請求項第7項所述之雲端數據儲存系統,其中的數據存取指令可配合搭載指令,此搭載指令可選自Linux系統的標準搭載指令(mount)、使用者空間檔案系統(FUSE)搭載指令、或Windows系統的網路磁碟機的連線指令。
  13. 如請求項第9項所述之雲端數據儲存系統,當執行活動態名稱節點模組之節點與第一儲存器都故障且無法回復,及/或執行數據節點模組之節點也有一部份故障時,一系統管理者會加入一執行活動態名稱節點模組之新節點,執行活動態名稱節點模組之新節點發出訊息,提醒所有執行數據節點模組之節點,有關於執行活動態名稱節點模組之節點位置改變的訊息,執行活動態名稱節點模組之新節點向目前仍正常運作的執行數據節點模組之節點取得與其對應的檔案之元數據,重建出完整的檔案元數據,並開始提供服務。
TW100145438A 2011-12-09 2011-12-09 雲端數據儲存系統 TWI461929B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW100145438A TWI461929B (zh) 2011-12-09 2011-12-09 雲端數據儲存系統
US13/608,053 US8943355B2 (en) 2011-12-09 2012-09-10 Cloud data storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW100145438A TWI461929B (zh) 2011-12-09 2011-12-09 雲端數據儲存系統

Publications (2)

Publication Number Publication Date
TW201324183A TW201324183A (zh) 2013-06-16
TWI461929B true TWI461929B (zh) 2014-11-21

Family

ID=48573172

Family Applications (1)

Application Number Title Priority Date Filing Date
TW100145438A TWI461929B (zh) 2011-12-09 2011-12-09 雲端數據儲存系統

Country Status (2)

Country Link
US (1) US8943355B2 (zh)
TW (1) TWI461929B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10592491B2 (en) 2015-05-04 2020-03-17 Alibaba Group Holding Limited Distributed data processing
US10649953B2 (en) 2018-05-31 2020-05-12 Alibaba Group Holding Limited Blockchain-based data migration method and apparatus

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9904689B2 (en) * 2012-07-13 2018-02-27 Facebook, Inc. Processing a file system operation in a distributed file system
US9607001B2 (en) * 2012-07-13 2017-03-28 Facebook, Inc. Automated failover of a metadata node in a distributed file system
US9753954B2 (en) * 2012-09-14 2017-09-05 Cloudera, Inc. Data node fencing in a distributed file system
US9984083B1 (en) 2013-02-25 2018-05-29 EMC IP Holding Company LLC Pluggable storage system for parallel query engines across non-native file systems
US9753980B1 (en) 2013-02-25 2017-09-05 EMC IP Holding Company LLC M X N dispatching in large scale distributed system
IN2013MU02794A (zh) * 2013-08-27 2015-07-03 Tata Consultancy Services Ltd
US9690671B2 (en) 2013-11-01 2017-06-27 Cloudera, Inc. Manifest-based snapshots in distributed computing environments
US20150163303A1 (en) * 2013-12-08 2015-06-11 Sarah M. Banas Customizable Cloud or Distributed System Location
US20150201016A1 (en) * 2014-01-14 2015-07-16 Amit Golander Methods and system for incorporating a direct attached storage to a network attached storage
US9665633B2 (en) 2014-02-19 2017-05-30 Snowflake Computing, Inc. Data management systems and methods
US10545917B2 (en) 2014-02-19 2020-01-28 Snowflake Inc. Multi-range and runtime pruning
CN104951475B (zh) * 2014-03-31 2018-10-23 中国电信股份有限公司 分布式文件系统和实现方法
AU2015241457B2 (en) * 2014-03-31 2019-10-10 Cirata, Inc. Geographically-distributed file system using coordinated namespace replication
US10372760B2 (en) * 2014-09-26 2019-08-06 Oracle International Corporation Building queries directed to objects hosted on clouds
US10235463B1 (en) * 2014-12-19 2019-03-19 EMC IP Holding Company LLC Restore request and data assembly processes
US10120765B1 (en) 2014-12-19 2018-11-06 EMC IP Holding Company LLC Restore process using incremental inversion
US10095707B1 (en) * 2014-12-19 2018-10-09 EMC IP Holding Company LLC Nearline cloud storage based on FUSE framework
US9753814B1 (en) 2014-12-19 2017-09-05 EMC IP Holding Company LLC Application level support for selectively accessing files in cloud-based storage
US10095710B1 (en) 2014-12-19 2018-10-09 EMC IP Holding Company LLC Presenting cloud based storage as a virtual synthetic
US10298709B1 (en) * 2014-12-31 2019-05-21 EMC IP Holding Company LLC Performance of Hadoop distributed file system operations in a non-native operating system
US11016946B1 (en) * 2015-03-31 2021-05-25 EMC IP Holding Company LLC Method and apparatus for processing object metadata
US10318491B1 (en) 2015-03-31 2019-06-11 EMC IP Holding Company LLC Object metadata query with distributed processing systems
CN105007172A (zh) * 2015-05-28 2015-10-28 杭州健港信息科技有限公司 一种hdfs高可用性方案的实现方法
CN105183366B (zh) * 2015-07-08 2018-04-17 北京师范大学 基于预读缓写的数据分析处理方法及系统
CN106411826B (zh) * 2015-08-03 2019-06-18 阿里巴巴集团控股有限公司 一种数据访问的方法及设备
CN106469100B (zh) * 2015-08-17 2019-04-05 华为技术有限公司 一种数据恢复的方法、存储的方法相应的装置及系统
US10742681B2 (en) * 2015-08-21 2020-08-11 PushPull Technology Limited Data collaboration
CN105205156A (zh) * 2015-09-25 2015-12-30 浪潮(北京)电子信息产业有限公司 一种数据管理方法、装置及系统
US10437780B2 (en) 2016-07-14 2019-10-08 Snowflake Inc. Data pruning based on metadata
CN107943612A (zh) * 2016-10-12 2018-04-20 湖南百里目科技有限责任公司 一种新型存储备份一体机实现方法
TWI619026B (zh) * 2016-10-21 2018-03-21 元智大學 解決分散式雲端運算平台於虛擬化下衝突的獨立資源分派系統及雲端服務系統
CN108280214A (zh) * 2017-02-02 2018-07-13 马志强 应用于分布式基因组分析的快速i/o系统
US11003532B2 (en) * 2017-06-16 2021-05-11 Microsoft Technology Licensing, Llc Distributed data object management system operations
CN108512908A (zh) * 2018-03-13 2018-09-07 山东超越数控电子股份有限公司 一种基于Ceph的云存储容错机制和基于Ceph的web管理平台
TWI715066B (zh) * 2019-06-19 2021-01-01 神雲科技股份有限公司 定位叢集式儲存系統之硬碟實體裝設位置的方法
CN111708738B (zh) * 2020-05-29 2023-11-03 深圳市瑞驰信息技术有限公司 实现hadoop文件系统hdfs与对象存储s3数据互访方法及系统
TWI773343B (zh) * 2021-05-26 2022-08-01 中華電信股份有限公司 分散式物件資料儲存系統、方法及電腦可讀媒介
CN113296714B (zh) * 2021-06-17 2022-03-04 杭州海康威视系统技术有限公司 一种基于nas协议的数据存储系统
CN116578232A (zh) * 2023-04-21 2023-08-11 国网江苏省电力有限公司信息通信分公司 一种基于云网融合技术的数据存储方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6608913B1 (en) * 2000-07-17 2003-08-19 Inco Limited Self-contained mapping and positioning system utilizing point cloud data
US6880002B2 (en) * 2001-09-05 2005-04-12 Surgient, Inc. Virtualized logical server cloud providing non-deterministic allocation of logical attributes of logical servers to physical resources
US7181480B1 (en) * 2003-06-30 2007-02-20 Microsoft Corporation System and method for managing internet storage
TW201140332A (en) * 2010-05-14 2011-11-16 Chunghwa Telecom Co Ltd Cloud storage system and method
TW201142646A (en) * 2010-05-21 2011-12-01 xiang-yu Li Cloud data storage system

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7752230B2 (en) * 2005-10-06 2010-07-06 Avaya Inc. Data extensibility using external database tables
KR101484779B1 (ko) * 2007-01-19 2015-01-22 삼성전자주식회사 상호작용적 비디오 블로깅을 위한 시스템 및 방법
US8694469B2 (en) * 2009-12-28 2014-04-08 Riverbed Technology, Inc. Cloud synthetic backups
US20110161294A1 (en) * 2009-12-30 2011-06-30 Sun Microsystems, Inc. Method for determining whether to dynamically replicate data
US8805967B2 (en) * 2010-05-03 2014-08-12 Panzura, Inc. Providing disaster recovery for a distributed filesystem
US9239690B2 (en) * 2010-08-31 2016-01-19 Bruce R. Backa System and method for in-place data migration
TW201214201A (en) * 2010-09-28 2012-04-01 Pegatron Corp Method of keyboard simulation and module for simulated keyboard
US20120265758A1 (en) * 2011-04-14 2012-10-18 Edward Han System and method for gathering, filtering, and displaying content captured at an event
US8533231B2 (en) * 2011-08-12 2013-09-10 Nexenta Systems, Inc. Cloud storage system with distributed metadata
US8862928B2 (en) * 2011-09-20 2014-10-14 Cloudbyte, Inc. Techniques for achieving high availability with multi-tenant storage when a partial fault occurs or when more than two complete faults occur
US8819476B2 (en) * 2011-09-26 2014-08-26 Imagine Communications Corp. System and method for disaster recovery
US8595546B2 (en) * 2011-10-28 2013-11-26 Zettaset, Inc. Split brain resistant failover in high availability clusters
US9172608B2 (en) * 2012-02-07 2015-10-27 Cloudera, Inc. Centralized configuration and monitoring of a distributed computing cluster
GB2514947B (en) * 2012-05-04 2015-06-17 Box Inc Repository redundancy implementation of a system which incrementally updates clients with events that occured via a cloud-enabled platform
US9607001B2 (en) * 2012-07-13 2017-03-28 Facebook, Inc. Automated failover of a metadata node in a distributed file system
US9904689B2 (en) * 2012-07-13 2018-02-27 Facebook, Inc. Processing a file system operation in a distributed file system
US9223845B2 (en) * 2012-08-01 2015-12-29 Netapp Inc. Mobile hadoop clusters
US20140047342A1 (en) * 2012-08-07 2014-02-13 Advanced Micro Devices, Inc. System and method for allocating a cluster of nodes for a cloud computing system based on hardware characteristics
US9563480B2 (en) * 2012-08-21 2017-02-07 Rackspace Us, Inc. Multi-level cloud computing system
US9753954B2 (en) * 2012-09-14 2017-09-05 Cloudera, Inc. Data node fencing in a distributed file system
US9253053B2 (en) * 2012-10-11 2016-02-02 International Business Machines Corporation Transparently enforcing policies in hadoop-style processing infrastructures
US9229814B2 (en) * 2013-03-15 2016-01-05 Seagate Technology Llc Data error recovery for a storage device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6608913B1 (en) * 2000-07-17 2003-08-19 Inco Limited Self-contained mapping and positioning system utilizing point cloud data
US6880002B2 (en) * 2001-09-05 2005-04-12 Surgient, Inc. Virtualized logical server cloud providing non-deterministic allocation of logical attributes of logical servers to physical resources
US7181480B1 (en) * 2003-06-30 2007-02-20 Microsoft Corporation System and method for managing internet storage
TW201140332A (en) * 2010-05-14 2011-11-16 Chunghwa Telecom Co Ltd Cloud storage system and method
TW201142646A (en) * 2010-05-21 2011-12-01 xiang-yu Li Cloud data storage system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10592491B2 (en) 2015-05-04 2020-03-17 Alibaba Group Holding Limited Distributed data processing
US10872070B2 (en) 2015-05-04 2020-12-22 Advanced New Technologies Co., Ltd. Distributed data processing
US10649953B2 (en) 2018-05-31 2020-05-12 Alibaba Group Holding Limited Blockchain-based data migration method and apparatus
TWI710978B (zh) * 2018-05-31 2020-11-21 開曼群島商創新先進技術有限公司 基於區塊鏈的資料遷移方法和裝置

Also Published As

Publication number Publication date
US8943355B2 (en) 2015-01-27
TW201324183A (zh) 2013-06-16
US20130151884A1 (en) 2013-06-13

Similar Documents

Publication Publication Date Title
TWI461929B (zh) 雲端數據儲存系統
US11966729B2 (en) Virtualized file server
US11429499B2 (en) Heartbeat monitoring of virtual machines for initiating failover operations in a data storage management system, including operations by a master monitor node
US11853104B2 (en) Virtual machine backup from computing environment to storage environment
US9906598B1 (en) Distributed data storage controller
US8918392B1 (en) Data storage mapping and management
US9426218B2 (en) Virtual storage appliance gateway
US11314444B1 (en) Environment-sensitive distributed data management
US8930364B1 (en) Intelligent data integration
US10585599B2 (en) System and method for distributed persistent store archival and retrieval in a distributed computing environment
US10452680B1 (en) Catch-up replication with log peer
US20220261321A1 (en) Automatic failover of a storage manager
US20220019555A1 (en) Snapshot and restoration of distributed file system
US20240061752A1 (en) Integration of database with distributed storage system
US11921596B2 (en) Virtual machine failover management for geo-redundant data centers
US11928350B2 (en) Systems and methods for scaling volumes using volumes having different modes of operation
US20240160538A1 (en) Virtual machine failover management for geo-redundant data centers
US20230325286A1 (en) Efficient file recovery from tiered cloud snapshots
US20230252045A1 (en) Life cycle management for standby databases
US20240134761A1 (en) Application recovery configuration validation
Rao The kosmos file system

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees