定制直銷軟件
萬點軟件

上門考察、業(yè)務咨詢:400-138-9913

中小企業(yè)、個人咨詢:13119183131

拿牌、集團客戶咨詢:18591880180

萬點直銷軟件logo

直銷軟件之云儲存

282

直銷軟件之云儲存:隨著谷歌,微軟,亞馬遜,IBM等大型公司越來越致力于云計算的研究,使“云”得到了飛速發(fā)展,越來越多的用戶開始將數(shù)據(jù)部署在“云端”,然而云在給用戶帶來許多便利的同時,由于傳統(tǒng)web服務以及自身特點帶來的安全風險,正日益成為阻礙其進一步發(fā)展的因素。在目前云平臺安全機制下,對云存儲、云安全風險以及在云平臺下數(shù)據(jù)恢復問題做了簡單分析。 [本文轉(zhuǎn)自:www.dylw.net]

1 云存儲
Yahoo云計算平臺核心是Hadoop技術,它所采用的分布式文檔系統(tǒng)HDFS(Hadoop Distributed File System)與Google的GFS(Google File System)分布式系統(tǒng)不同,是真正運作MapReduce云計算技術的開放源代碼云計算系統(tǒng)。Hadoop除HDFS分布式文檔系統(tǒng)、MapReduce分布式平行計算框架以及Hbase分布式數(shù)據(jù)庫三大核心技術外,還包括Hive、Pig等子技術。
1.1 HDFS分布式文件系統(tǒng)
為了加強對后文數(shù)據(jù)恢復問題的認識,這里簡單介紹一下HDFS分布式文件系統(tǒng)。 [本文轉(zhuǎn)自:www.dylw.net]
HDFS是根據(jù)Coogle發(fā)表的GFS文檔系統(tǒng)論文開發(fā)的開放源代碼分布式文檔系統(tǒng),是一種典型的主從式( Master / Slave )架構,主要用來解決數(shù)據(jù)爆炸式增長的問題,具有存儲效率高、擴展性能好、可靠性有保障、價格低廉以及可再用性強的優(yōu)點。它由一個名叫 NameNode的控制節(jié)點和多個名叫 DataNode 的數(shù)據(jù)節(jié)點組成。NameNode 維護著整個文件系統(tǒng)的命名空間,將文件系統(tǒng)的元數(shù)據(jù)保存在內(nèi)存中,管理、控制文件的相關操作,但實際的數(shù)據(jù)并不存放在 NameNode 中,而是存放在 DataNode 中。
當客戶端應用程序訪問文件時,HDFS首先將包含該文件名字的訪問請求發(fā)送給 NameNode,然后 NameNode 將存儲該文件所有數(shù)據(jù)塊的 DataNode 地址信息反饋給客戶端應用程序,進而客戶端應用程序直接和相應的 DataNode 建立連接并進行具體的文件讀寫操作。它的數(shù)據(jù)訪問特性是“一次寫入,多次讀取”,文檔一旦創(chuàng)建就不允許更改,而是以附加的方式加在原文檔后面。另外,HDFS被分割的block大小一般為128MB,并且默認以3個備份存儲到不同的機架,以Linux操作系統(tǒng)的ext2/ext3文檔系統(tǒng)格式存儲在硬盤上,用來保證數(shù)據(jù)的安全[1] 。更重要的是HDFS具有容錯功能,當出現(xiàn)宕機或者其它突發(fā)狀況,HDFS檢測到錯誤時,可以通過HDFS的容錯檢測以及自動恢復系統(tǒng)將損壞的文檔復原,這就是后文介紹的有關數(shù)據(jù)恢復的知識。
2 云計算的安全
美國Gartner 公司于 2008 年發(fā)布的一份名為《云計算安全風險評估》的報告,報告指出云計算存在的七大安全風險[2],分別是優(yōu)先訪問權、管理權限、數(shù)據(jù)位置、數(shù)據(jù)隔離、數(shù)據(jù)恢復、調(diào)查支持、長期發(fā)展。
云計算安全風險主要體現(xiàn)在以下幾個方面:惡意服務注入,非法數(shù)據(jù)恢復,篡改數(shù)據(jù)備份:安全一致性差:跨虛擬機襲擊,分布式服務拒絕[3]。
從以上可知,數(shù)據(jù)恢復是云計算數(shù)據(jù)安全的一個研究熱點,該文著重就數(shù)據(jù)恢復問題進行分析。數(shù)據(jù)恢復包括恢復兩個方面的數(shù)據(jù):一是受損數(shù)據(jù);二是已刪數(shù)據(jù)。受損數(shù)據(jù)恢復相比較而言,方法更多,而且簡單許多,已刪數(shù)據(jù)目前則必須是在一定條件下才可以恢復。
2.1受損數(shù)據(jù)恢復
包括即冗余恢復[3]、副本恢復[4]和備份恢復[5]三種恢復方式。其中,冗余恢復方式主要用于云端數(shù)據(jù)存取過程中數(shù)據(jù)受損時的恢復;副本恢復和備份恢復方式則主要用于云端數(shù)據(jù)存儲后數(shù)據(jù)受損時的恢復。
2.1.1冗余恢復[3]
由于數(shù)據(jù)傳輸過程中可能出現(xiàn)宕機等突發(fā)狀況,使得數(shù)據(jù)在傳輸?shù)倪^程中受損。這種情況下可以利用冗余恢復對數(shù)據(jù)進行恢復。冗余恢復是利用糾錯碼對傳輸過程中的受損數(shù)據(jù)進行即時恢復,系統(tǒng)使用Reed-Solomon碼提供任意高錯誤恢復技術,保證系統(tǒng)在發(fā)現(xiàn)問題后能夠被迅速檢測到并進行恢復。
為了確保云端數(shù)據(jù)更加可靠,保證云端已存儲的數(shù)據(jù)的安全性,對云端存儲的數(shù)據(jù)還可以采用副本恢復和備份恢復兩種方式。根據(jù)上文提到的云計算的分布式文檔系統(tǒng)可知,云端存儲的數(shù)據(jù)(塊)在不同的服務器上都存有3個及以上的副本。很顯然在某臺服務器上數(shù)據(jù)出現(xiàn)錯誤狀況時,可以利用云端其他服務器上的數(shù)據(jù)(塊)來代替當前服務器上的受損數(shù)據(jù),這就是所謂的“異地災難備份機制”,像銀聯(lián)數(shù)據(jù)中心這樣的金融機構采用的就是“兩地兩中心”或者“兩地三中心”這樣的異地災難備份機制來保證金融數(shù)據(jù)的安全性的。
2.1.2副本恢復[4]
云端已存數(shù)據(jù)的副本恢復方式原理就是利用分布式系統(tǒng)的存儲特性,通過云端各服務器之間相互復制數(shù)據(jù)塊的副本來實現(xiàn)的。簡要地說,如果系統(tǒng)在進行完整性驗證過程中發(fā)現(xiàn)某數(shù)據(jù)(塊)完整性受損,可以通過云端服務器上的復制進程(如上文1.1所提到的),實現(xiàn)數(shù)據(jù)(塊)副本之間的復制來恢復受損或丟失的數(shù)據(jù)(塊),這就是云端已存數(shù)據(jù)的副本恢復方法。
但是并不排除其他極端情況,比如,數(shù)據(jù)被損壞后或者被惡意篡改后正好復制進程啟動(按照復制策略),那么受損或被惡意篡改的數(shù)據(jù)就會被復制到各個服務器,覆蓋原來冗余存儲的正確數(shù)據(jù)(塊),從而使得數(shù)據(jù)(塊)完全被損壞。對于此類云端受損數(shù)據(jù),可以借鑒windows系統(tǒng)里面的備份機制,即將數(shù)據(jù)恢復到受損前的某個狀態(tài),一旦出現(xiàn)以上狀況,就恢復到受損前這個正常狀態(tài)。為了實現(xiàn)這一恢復策略,需要在云端定時保存歷史備份數(shù)據(jù),且這些數(shù)據(jù)不能進行更新和同步操作。
2.1.3備份恢復[5]
數(shù)據(jù)備份和備份策略是比較成熟的技術,備份策略如下:一是按照云端數(shù)據(jù)存儲模型和結(jié)構,云端數(shù)據(jù)采用分塊備份;二是采用全備份和增量(或者差異)備份相結(jié)合的方法對云端數(shù)據(jù)塊進行備份。 備份恢復是以丟失用戶實時修改更新的數(shù)據(jù)為代價,把用戶的數(shù)據(jù)恢復到某一正常時期的狀態(tài)。
綜上,受損數(shù)據(jù)的恢復流程是:系統(tǒng)通過完整性驗證,一旦發(fā)現(xiàn)已存云端數(shù)據(jù)受到損壞后,自動啟動恢復模式,采用的受損數(shù)據(jù)恢復方式的順序一般依次為:冗余恢復、副本恢復和備份恢復。
2.2 已刪數(shù)據(jù)恢復
2.2.1 Linux 文件系統(tǒng)下已刪數(shù)據(jù)的恢復
基于 HDFS 的數(shù)據(jù)銷毀機制設計:HDFS 中數(shù)據(jù)的刪除是異步的。在 NameNode 將元數(shù)據(jù)刪除后,DataNode 通過 heartbeat獲取此改變(invalid block 列表),并通過 Java 的文件刪除方法刪