版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
工業(yè)大數(shù)據(jù)及其應(yīng)用03工業(yè)大數(shù)據(jù)存儲與計(jì)算平臺工業(yè)大數(shù)據(jù)存儲與計(jì)算平臺隨著工業(yè)大數(shù)據(jù)在智能制造領(lǐng)域的廣泛應(yīng)用,多源、異構(gòu)、海量數(shù)據(jù)的存儲與安全備受關(guān)注,同時(shí)需要依賴強(qiáng)大的計(jì)算能力快速處理工業(yè)大數(shù)據(jù),挖掘其中蘊(yùn)含的知識。本章重點(diǎn)講述工業(yè)大數(shù)據(jù)存儲與管理技術(shù)、安全技術(shù),以及工業(yè)大數(shù)據(jù)主流計(jì)算框架與計(jì)算平臺。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)工業(yè)大數(shù)據(jù)存儲與管理技術(shù)是針對工業(yè)大數(shù)據(jù)具有多樣性、多模態(tài)、高通量和強(qiáng)關(guān)聯(lián)等特性,面向高吞吐量存儲、數(shù)據(jù)壓縮、數(shù)據(jù)索引、查詢優(yōu)化和數(shù)據(jù)緩存等能力的關(guān)鍵技術(shù),主要內(nèi)容包括存儲與管理技術(shù)分類和工具。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)數(shù)據(jù)存儲技術(shù)數(shù)據(jù)存儲是一門涵蓋硬件與軟件的計(jì)算機(jī)系統(tǒng)科學(xué),按存儲方式的不同可以分為磁盤陣列(RAID)、直接連接存儲(DAS)、存儲區(qū)域網(wǎng)絡(luò)(SAN)、網(wǎng)絡(luò)附加存儲(NAS)等。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)磁盤陣列磁盤陣列(RAID)是由多個(gè)獨(dú)立的高性能磁盤驅(qū)動器組成的磁盤子系統(tǒng),可以提供比單個(gè)磁盤更好的存儲性能和數(shù)據(jù)保護(hù)。RAID包括多個(gè)級別,如RAID0、RAID1、RAID3、RAID5、RAID6、RAID10、RAID50等,如圖3-1所示,不同RAID級別在成本、性能和可靠性方面有所區(qū)別。
RAID存儲應(yīng)用廣泛,可以滿足許多數(shù)據(jù)存儲要求,其主要優(yōu)勢體現(xiàn)在以下幾個(gè)方面:圖3-1不同RAID級別在成本、性能和可靠性方面的表現(xiàn)1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)磁盤陣列1)大容量。RAID擴(kuò)大了磁盤的容量,由多個(gè)磁盤組成的RAID系統(tǒng)具有更大的存儲空間?,F(xiàn)在單個(gè)磁盤的容量就可以達(dá)到1TB以上,這樣RAID的存儲容量就可以達(dá)到PB級,可以滿足大多數(shù)的存儲需求。一般來說,RAID的可用容量小于所有成員磁盤的總?cè)萘?。不同等級的RAID算法需要一定的冗余開銷,具體容量開銷與采用的算法有關(guān)。如果已知RAID算法和容量,就可以計(jì)算出RAID的可用容量。通常,RAID容量的利用率在50%~90%之間。2)高性能。RAID的高性能得益于數(shù)據(jù)條帶化技術(shù)。單個(gè)磁盤的I/O性能受到接口、帶寬等計(jì)算機(jī)技術(shù)的限制,往往很有限,容易成為系統(tǒng)性能的瓶頸。通過數(shù)據(jù)條帶化,RAID將數(shù)據(jù)I/O分散到各個(gè)成員磁盤上,從而可以獲得比單個(gè)磁盤更好的聚合I/O性能。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)磁盤陣列3)可靠性。從理論上講,由多個(gè)磁盤組成的RAID系統(tǒng)在可靠性方面應(yīng)該比單個(gè)磁盤要差。這里有個(gè)隱含假定:單個(gè)磁盤故障將導(dǎo)致整個(gè)RAID不可用。RAID采用鏡像和數(shù)據(jù)校驗(yàn)等數(shù)據(jù)冗余技術(shù),打破了這個(gè)假定。鏡像是最為原始的冗余技術(shù),把某組磁盤驅(qū)動器上的數(shù)據(jù)完全復(fù)制到另一組磁盤驅(qū)動器上,保證總有數(shù)據(jù)副本可用。比起鏡像50%的冗余開銷,數(shù)據(jù)校驗(yàn)要小很多,它利用校驗(yàn)冗余信息對數(shù)據(jù)進(jìn)行校驗(yàn)和糾錯(cuò)。RAID冗余技術(shù)可大幅提升數(shù)據(jù)可用性和可靠性,保證了若干磁盤出錯(cuò)時(shí),不會導(dǎo)致數(shù)據(jù)的丟失,不影響業(yè)務(wù)的連續(xù)運(yùn)行。4)可管理性。RAID是一種虛擬化技術(shù),它將多個(gè)物理磁盤驅(qū)動器虛擬成一個(gè)大容量的邏輯驅(qū)動器。對于外部主機(jī)系統(tǒng)來說,RAID是一個(gè)單一的、快速可靠的大容量磁盤驅(qū)動器。這樣,用戶就可以在這個(gè)虛擬驅(qū)動器上組織和存儲應(yīng)用系統(tǒng)數(shù)據(jù)。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)磁盤陣列從用戶應(yīng)用角度看,這樣的存儲系統(tǒng)簡單易用,管理也很便利。由于RAID在內(nèi)部完成了大量的存儲管理工作,管理員只需要管理單個(gè)虛擬驅(qū)動器,因此可以節(jié)省大量的管理工作。另外,RAID可以動態(tài)增減磁盤驅(qū)動器,可自動進(jìn)行數(shù)據(jù)重建恢復(fù)。RAID技術(shù)不僅可以提供大容量的存儲空間,還可以提高存儲性能和數(shù)據(jù)安全性。它能在提高讀寫性能的同時(shí)保證數(shù)據(jù)安全性,主要原因在于RAID采用了數(shù)據(jù)條帶化這一高效數(shù)據(jù)組織方式,以及奇偶校驗(yàn)這一數(shù)據(jù)冗余策略。RAID引入了條帶的概念。如圖3-2所示,條帶單元(stripeunit)是指磁盤中單個(gè)或者多個(gè)連續(xù)的扇區(qū)的集合,是單塊磁盤上進(jìn)行一次數(shù)據(jù)讀寫的最小單元。條帶(stripe)是同一磁盤陣列中多個(gè)磁盤驅(qū)動器上相同“位置”的條帶單元的集合,條帶單元是組成條帶的元素。條帶寬度是指一個(gè)條帶中數(shù)據(jù)成員盤的個(gè)數(shù),條帶深度則是指一個(gè)條帶單元的容量大小1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)磁盤陣列通過對磁盤上的數(shù)據(jù)進(jìn)行條帶化,實(shí)現(xiàn)對數(shù)據(jù)成塊存取,可以增強(qiáng)訪問連續(xù)性,有效減少磁盤的機(jī)械尋道時(shí)間,提高數(shù)據(jù)存取速度。此外,通過對磁盤上的數(shù)據(jù)進(jìn)行條帶化,將連續(xù)的數(shù)據(jù)分散到多個(gè)磁盤上存取,實(shí)現(xiàn)同一陣列中多塊磁盤同時(shí)進(jìn)行存取數(shù)據(jù),提高了數(shù)據(jù)存取效率(即訪問并行性)。并行操作可以充分利用總線的帶寬,顯著提高磁盤整體存取性能。圖3-2RAID條帶示意圖1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)磁盤陣列因?yàn)椴捎昧藬?shù)據(jù)條帶化組織方式,使得RAID組中多個(gè)物理磁盤可以并行或并發(fā)地響應(yīng)主機(jī)的I/O請求,進(jìn)而達(dá)到提升性能的目的。其中I/O是輸入(input)和輸出(output)的縮寫,輸入和輸出分別對應(yīng)數(shù)據(jù)的寫和讀操作。并行是指多個(gè)物理磁盤同時(shí)響應(yīng)一個(gè)I/O請求的執(zhí)行方式,而并發(fā)則是指多個(gè)物理磁盤一對一同時(shí)響應(yīng)多個(gè)I/O請求的執(zhí)行方式。RAID通過鏡像和奇偶校驗(yàn)的方式對磁盤數(shù)據(jù)進(jìn)行冗余保護(hù)。其中,鏡像是指利用冗余的磁盤保存數(shù)據(jù)的副本,一個(gè)數(shù)據(jù)盤對應(yīng)一個(gè)鏡像備份盤;奇偶校驗(yàn)則是指對于用戶數(shù)據(jù)利用奇偶校驗(yàn)算法計(jì)算出奇偶校驗(yàn)碼,并將其保存于額外的存儲空間。奇偶校驗(yàn)采用的是異或運(yùn)算(運(yùn)算符為⊕)算法。奇偶校驗(yàn)的具體過程如圖3-3所示,其中,0⊕0=0,0⊕1=1,1⊕0=1,1⊕1=0,即運(yùn)算符兩邊數(shù)據(jù)相同則為假(等于0),相異則為真(等于1)。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)磁盤陣列通過鏡像或奇偶校驗(yàn)方式,可以實(shí)現(xiàn)對數(shù)據(jù)的冗余保護(hù)。當(dāng)RAID中某個(gè)磁盤數(shù)據(jù)失效的時(shí)候,可以利用鏡像盤或奇偶校驗(yàn)信息對該磁盤上的數(shù)據(jù)進(jìn)行修復(fù),從而提高了數(shù)據(jù)的可靠性。圖3-3數(shù)據(jù)奇偶校驗(yàn)1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)直接連接存儲直接連接存儲(directattachedstorage,DAS)是一種將存儲設(shè)備通過電纜直接連接到主機(jī)服務(wù)器上的存儲方式。數(shù)據(jù)存儲設(shè)備采用小型計(jì)算機(jī)系統(tǒng)接口(smallcomputersysteminterface,SCSI)或光纖通道(fiberChannel,F(xiàn)C)協(xié)議直接連接在內(nèi)部總線上,構(gòu)成整個(gè)服務(wù)器結(jié)構(gòu)的一部分。在一個(gè)典型的DAS架構(gòu)中,服務(wù)器與數(shù)據(jù)存儲設(shè)備之間通過總線適配器和SCSI/FC線纜直接連接,基于總線傳輸數(shù)據(jù),中間不經(jīng)過任何交換機(jī)、路由器或其他網(wǎng)絡(luò)設(shè)備,如圖3-4所示。掛接在服務(wù)器上的硬盤、直接連接到服務(wù)器上的磁盤陣列、直接連接到服務(wù)器上的磁帶庫、直接連接到服務(wù)器上的外部硬盤盒等都屬于DAS的范疇。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)直接連接存儲根據(jù)存儲設(shè)備與服務(wù)器間的位置關(guān)系不同,DAS分為內(nèi)置DAS和外置DAS兩類。內(nèi)置DAS指存儲設(shè)備通過服務(wù)器機(jī)箱內(nèi)部的并行總線或串行總線與服務(wù)器相連接。例如,服務(wù)器內(nèi)部連接硬盤的形式如圖3-5所示。圖3-4直接連接存儲架構(gòu)1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)直接連接存儲內(nèi)置DAS有以下幾點(diǎn)不足:1)采用服務(wù)器內(nèi)的物理CPU總線連接,受到總線距離的限制,只能支持短距離的數(shù)據(jù)傳輸;;2)內(nèi)部總線能夠連接的設(shè)備數(shù)目也非常有限,不利于存儲資源的擴(kuò)展;3)因?yàn)榇鎯υO(shè)備位于服務(wù)器機(jī)箱內(nèi),因此當(dāng)用戶對存儲設(shè)備進(jìn)行維護(hù)時(shí),需要對系統(tǒng)進(jìn)行停機(jī)斷電;4)內(nèi)置DAS配置占用了機(jī)箱內(nèi)的硬盤大量空間,給服務(wù)器內(nèi)部其他部件的維護(hù)造成一定的困難;5)DAS無法優(yōu)化資源的使用,因?yàn)樗蚕砬岸硕丝诘哪芰τ邢?,使得資源共享受限。內(nèi)置DAS的管理主要通過主機(jī)和主機(jī)操作系統(tǒng)實(shí)現(xiàn),也可使用第三方軟件來進(jìn)行管理。主機(jī)主要實(shí)現(xiàn)存儲設(shè)備硬盤/卷的分區(qū)創(chuàng)建及分區(qū)管理,以及操作系統(tǒng)支持的文件系統(tǒng)布局。外置DAS中,服務(wù)器與外部存儲設(shè)備基于總線直接連接,通過FC協(xié)議或者SCSI協(xié)議進(jìn)行通信。例如,直接連接到服務(wù)器的外部硬盤陣列。圖3-5內(nèi)置DAS1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)直接連接存儲相比內(nèi)置DAS,外置DAS克服了內(nèi)部DAS對連接設(shè)備的距離和數(shù)量的限制,可以提供更遠(yuǎn)距離、更多設(shè)備數(shù)量的連接,增強(qiáng)了存儲擴(kuò)展性。另外,外部DAS還可以對存儲設(shè)備進(jìn)行集中管理,使操作維護(hù)更加方便。但是,外置DAS對設(shè)備連接距離和數(shù)量依然存在限制,也存在資源共享不便的問題。相對于內(nèi)置DAS的管理,外置DAS管理的一個(gè)關(guān)鍵點(diǎn)是主機(jī)操作系統(tǒng)不再直接負(fù)責(zé)一些基礎(chǔ)資源的管理,而是采用基于陣列的管理方式,比如邏輯單元號(logicalunitnumber,LUN)的創(chuàng)建、文件系統(tǒng)的布局以及數(shù)據(jù)的尋址等。如果主機(jī)的內(nèi)部DAS是來自多個(gè)廠商的存儲設(shè)備,如硬盤,則需要對這些存儲設(shè)備分別進(jìn)行管理。但是,如果將這些存儲設(shè)備統(tǒng)一放到某個(gè)廠商的存儲陣列中,則可以由陣列的管理軟件進(jìn)行集中化統(tǒng)一管理。這種操作方式避免了主機(jī)操作系統(tǒng)對每種設(shè)備的單獨(dú)管理,,維護(hù)管理更加便捷。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)直接連接存儲如圖3-6所示,外置DAS包含兩種存儲形態(tài):外部硬盤陣列和智能硬盤陣列。磁盤簇(justabunchofdisks,JBOD)即為外部磁盤陣列,JBOD技術(shù)在邏輯上把幾個(gè)物理磁盤串聯(lián)在一起,解決內(nèi)置存儲的磁盤槽位有限而導(dǎo)致的容量擴(kuò)展不足問題。其目的僅僅是為了增加磁盤的容量,并不提供數(shù)據(jù)安全保障。JBOD采用單磁盤存放方式來保存數(shù)據(jù),可靠性較差。圖3-6外置DAS存儲形態(tài)1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)直接連接存儲智能硬盤陣列由控制器和硬盤構(gòu)成。其中控制器中包含RAID、大容量Cache,使得磁盤陣列具有多種實(shí)用的功能,如增強(qiáng)數(shù)據(jù)容錯(cuò)性、提升數(shù)據(jù)訪問性能等。智能硬盤陣列通常采用專用管理軟件進(jìn)行配置管理。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)存儲區(qū)域網(wǎng)絡(luò)存儲區(qū)域網(wǎng)絡(luò)(storageareanetwork,SAN)是一種面向網(wǎng)絡(luò)的、以數(shù)據(jù)存儲為中心的存儲架構(gòu)。SAN采用可擴(kuò)展的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)連接服務(wù)器和存儲設(shè)備,并將數(shù)據(jù)的存儲和管理集中在相對獨(dú)立的專用網(wǎng)絡(luò)中,向服務(wù)器提供數(shù)據(jù)存儲服務(wù)。以SAN為核心的網(wǎng)絡(luò)存儲系統(tǒng)具有良好的可用性、可擴(kuò)展性、可維護(hù)性,能支撐存儲網(wǎng)絡(luò)業(yè)務(wù)的高效運(yùn)行。SAN將存儲設(shè)備(如磁盤陣列、磁帶庫、光盤庫等)與服務(wù)器連接起來的網(wǎng)絡(luò)。結(jié)構(gòu)上,SAN允許服務(wù)器和任何存儲設(shè)備相連。并直接存儲所需數(shù)據(jù)。圖3-7所示為一種典型的SAN組網(wǎng)方式。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)存儲區(qū)域網(wǎng)絡(luò)相對于傳統(tǒng)數(shù)據(jù)存儲方式,SAN可以跨平臺使用存儲設(shè)備,可以對存儲設(shè)備實(shí)現(xiàn)統(tǒng)一管理和容量分配,從而降低使用和維護(hù)的成本,提高存儲的利用率。根據(jù)Forrester研究報(bào)告,使用傳統(tǒng)獨(dú)立存儲方式時(shí)存儲利用率介于40%~80%之間,平均利用率為60%,存儲通常處于低利用率狀態(tài)。SAN對存儲資源進(jìn)行集中管控,高效利用存儲資源,有助于提高存儲利用率。更高的存儲利用率意味著存儲設(shè)備的減少,網(wǎng)絡(luò)中的電能能耗和制冷能耗降低,節(jié)能省電。圖3-7SAN組網(wǎng)1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)存儲區(qū)域網(wǎng)絡(luò)圖3-8SAN組網(wǎng)此外,通過SAN網(wǎng)絡(luò)主機(jī)與存儲設(shè)備連通,SAN為在其網(wǎng)絡(luò)上的任意一臺主機(jī)和存儲設(shè)備之間提供專用的通信通道,同時(shí)SAN將存儲設(shè)備從服務(wù)器中獨(dú)立出來。SAN支持通過光纖通道(FC)協(xié)議和IP協(xié)議組網(wǎng),支持大量、大塊的數(shù)據(jù)傳輸,同時(shí)可滿足吞吐量、可用性、可靠性、可擴(kuò)展性和可管理性等方面的要求。由圖3-8可以看到,SAN和LAN相互獨(dú)立,然而它會帶來成本和能耗方面的一些不足:1)SAN需要建立專屬的網(wǎng)絡(luò),這就增加了網(wǎng)絡(luò)中線纜的數(shù)量和復(fù)雜度;2)應(yīng)用服務(wù)器除了連接LAN的網(wǎng)卡之外,還需配備與SAN交換機(jī)連接的主機(jī)總線適配器(hostbusadapter,HBA)。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)網(wǎng)絡(luò)附加存儲網(wǎng)絡(luò)附加存儲(networkattachedstorage,NAS)是基于IP網(wǎng)絡(luò),通過文件級的數(shù)據(jù)訪問和共享提供存儲資源的網(wǎng)絡(luò)存儲架構(gòu)。NAS是一種將分布的、獨(dú)立的數(shù)據(jù)進(jìn)行整合、集中管理數(shù)據(jù)的存儲技術(shù),為不同主機(jī)和應(yīng)用服務(wù)器提供文件級存儲空間,其邏輯架構(gòu)如圖3-9所示。圖3-9NAS的邏輯架構(gòu)1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)網(wǎng)絡(luò)附加存儲從使用者的角度來說,NAS是連接到一個(gè)局域網(wǎng)的基于IP的文件共享設(shè)備基礎(chǔ)。NAS通過文件級的數(shù)據(jù)訪問和共享提供存儲資源,使用戶能夠以最小的存儲管理開銷快速地共享文件,這一特點(diǎn)使得NAS成為主流的文件共享存儲解決方案。另外,NAS有助于消除用戶訪問通用服務(wù)器時(shí)的性能瓶頸。NAS通常采用TCP/IP數(shù)據(jù)傳輸協(xié)議和CIFS/NFS遠(yuǎn)程文件服務(wù)協(xié)議來完成數(shù)據(jù)歸檔和存儲。隨著網(wǎng)絡(luò)技術(shù)的快速發(fā)展,支持高速傳輸和高性能訪問的專用NAS存儲設(shè)備可以滿足當(dāng)下企業(yè)對高性能文件服務(wù)和高可靠數(shù)據(jù)保護(hù)的應(yīng)用需求。圖3-10給出一種NAS設(shè)備的部署情況,通過IP網(wǎng)絡(luò),各種平臺的客戶端都可以訪問NAS設(shè)備。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)網(wǎng)絡(luò)附加存儲NAS客戶端和NAS存儲設(shè)備之間通過IP網(wǎng)絡(luò)通信,NAS設(shè)備使用自己的操作系統(tǒng)和集成的硬/軟件組件,可滿足特定的文件服務(wù)需求。NAS客戶端可以是跨平臺的,可為Windows、Linux和Mac系統(tǒng)。與傳統(tǒng)文件服務(wù)器相比,NAS設(shè)備支持接入更多的客戶機(jī),支持更高效的文件數(shù)據(jù)共享。圖3-10NAS設(shè)備網(wǎng)絡(luò)部署1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)數(shù)據(jù)管理技術(shù)為了有效應(yīng)對現(xiàn)實(shí)世界中復(fù)雜多樣性的數(shù)據(jù)處理需求,需要針對不同的數(shù)據(jù)應(yīng)用特征,從多個(gè)角度、多個(gè)層次對數(shù)據(jù)進(jìn)行管理。數(shù)據(jù)管理階段主要包括20世紀(jì)50年代中期的人工管理階段、50年代末至60年代中期的文件系統(tǒng)階段和60年代后期的數(shù)據(jù)庫系統(tǒng)階段。下面分別對每個(gè)階段進(jìn)行詳細(xì)介紹。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)人工管理階段20世紀(jì)50年代中期以前,計(jì)算機(jī)主要用于科學(xué)計(jì)算。硬件方面,計(jì)算機(jī)的外存只有磁帶、卡片、紙帶,沒有磁盤等可以直接存取的存儲設(shè)備,存儲量非常小;軟件方面,沒有操作系統(tǒng),沒有高級語言,數(shù)據(jù)處理的方式是批處理,即機(jī)器一次處理一批數(shù)據(jù),直到運(yùn)算完成為止,然后才能進(jìn)行另外一批數(shù)據(jù)的處理,中間不能被打斷,原因是此時(shí)的外存如磁帶、卡片等只能順序輸入。人工管理階段的數(shù)據(jù)具有以下幾個(gè)特點(diǎn):1)數(shù)據(jù)不保存。由于當(dāng)時(shí)的計(jì)算機(jī)主要用于科學(xué)計(jì)算,對于數(shù)據(jù)保存并不作特別要求,只是在計(jì)算某一個(gè)課題時(shí)將數(shù)據(jù)輸入,用完就退出,對數(shù)據(jù)不作保存,有時(shí)對系統(tǒng)軟件也是這樣。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)人工管理階段2)數(shù)據(jù)不具有獨(dú)立性。此階段的數(shù)據(jù)是輸入程序的組成部分,即程序和數(shù)據(jù)是一個(gè)不可分割的整體,數(shù)據(jù)和程序同時(shí)提供給計(jì)算機(jī)運(yùn)算使用。對數(shù)據(jù)進(jìn)行管理,就像現(xiàn)在的操作系統(tǒng)可以以目錄、文件的形式管理數(shù)據(jù)。程序員不僅要知道數(shù)據(jù)的邏輯結(jié)構(gòu),也要規(guī)定數(shù)據(jù)的物理結(jié)構(gòu),程序員對存儲結(jié)構(gòu)、存取方法及輸入輸出的格式有絕對的控制權(quán),要修改數(shù)據(jù)必須修改程序。例如,要對100組數(shù)據(jù)進(jìn)行同樣的運(yùn)算,就要給計(jì)算機(jī)輸入100個(gè)獨(dú)立的程序,因?yàn)閿?shù)據(jù)無法獨(dú)立存在。3)數(shù)據(jù)不共享。數(shù)據(jù)是面向應(yīng)用的,一組數(shù)據(jù)對應(yīng)一個(gè)程序。不同應(yīng)用的數(shù)據(jù)之間是相互獨(dú)立、彼此無關(guān)的,即使兩個(gè)不同應(yīng)用涉及相同的數(shù)據(jù),也必須各自定義,無法相互利用,互相參照。數(shù)據(jù)不但高度冗余,而且不能共享。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)人工管理階段4)由應(yīng)用程序管理數(shù)據(jù)。數(shù)據(jù)沒有專門的軟件進(jìn)行管理,需要應(yīng)用程序自己進(jìn)行管理,應(yīng)用程序中要規(guī)定數(shù)據(jù)的邏輯結(jié)構(gòu)和設(shè)計(jì)物理結(jié)構(gòu)(包括存儲結(jié)構(gòu)、存取方法、輸入/輸出格式等),因此程序員的工作量很大。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)文件系統(tǒng)階段20世紀(jì)50年代后期到60年代中期,數(shù)據(jù)管理發(fā)展到文件系統(tǒng)階段。此時(shí)的計(jì)算機(jī)不僅用于科學(xué)計(jì)算,還大量用于管理。在硬件方面有了磁盤等直接存取的存儲設(shè)備。在軟件方面,操作系統(tǒng)中已有了專門的數(shù)據(jù)管理軟件,稱為文件系統(tǒng)。從處理方式上講,不僅有了文件批處理,而且能夠聯(lián)機(jī)實(shí)時(shí)處理,聯(lián)機(jī)實(shí)時(shí)處理是指在需要的時(shí)候隨時(shí)從存儲設(shè)備中查詢、修改或更新,因?yàn)椴僮飨到y(tǒng)的文件管理功能提供了這種可能。這一時(shí)期數(shù)據(jù)管理的特點(diǎn)如下:1)數(shù)據(jù)長期保存。數(shù)據(jù)可以長期保存在外存上反復(fù)處理,即可以經(jīng)常進(jìn)行查詢、修改和刪除等操作,所以計(jì)算機(jī)大量用于數(shù)據(jù)處理。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)文件系統(tǒng)階段2)數(shù)據(jù)的獨(dú)立性。由于有了操作系統(tǒng),利用文件系統(tǒng)進(jìn)行專門的數(shù)據(jù)管理,使得程序員可以集中精力在算法設(shè)計(jì)上,而不必過多地考慮細(xì)節(jié)。比如保存數(shù)據(jù)時(shí),只需給出保存指令,而不必要求所有的程序員都精心設(shè)計(jì)一套程序,控制計(jì)算機(jī)物理地保存數(shù)據(jù)。在讀取數(shù)據(jù)時(shí),只要給出文件名,而不必知道文件的具體存放地址。文件的邏輯結(jié)構(gòu)和物理存儲結(jié)構(gòu)由系統(tǒng)進(jìn)行轉(zhuǎn)換,程序與數(shù)據(jù)有了一定的獨(dú)立性,數(shù)據(jù)的改變不一定會引起程序的改變。例如,保存的文件中有100條記錄時(shí),使用某一個(gè)查詢程序;當(dāng)文件中有1000條記錄時(shí),仍然使用這一個(gè)查詢程序。3)可以實(shí)時(shí)處理。由于有了直接存取設(shè)備,也有了索引文件、鏈接存取文件、直接存取文件等,所以既可以采用順序批處理,也可以采用實(shí)時(shí)處理方式。數(shù)據(jù)的存取以記錄為基本單位。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)數(shù)據(jù)庫系統(tǒng)階段從20世紀(jì)60年代后期開始,數(shù)據(jù)管理進(jìn)入數(shù)據(jù)庫系統(tǒng)階段。這一時(shí)期用計(jì)算機(jī)管理的數(shù)據(jù)規(guī)模日益增大,應(yīng)用越來越廣泛,數(shù)據(jù)量急劇增長,要求數(shù)據(jù)共享的呼聲越來越強(qiáng)。這種共享的含義是多種應(yīng)用、多種語言互相覆蓋地共享數(shù)據(jù)集合。此時(shí)的計(jì)算機(jī)有了大容量磁盤,計(jì)算能力也非常強(qiáng)。硬件價(jià)格下降,編制軟件和維護(hù)軟件的費(fèi)用相對在增加。聯(lián)機(jī)實(shí)時(shí)處理的要求更多,并開始提出和考慮并行處理。在這樣的背景下,數(shù)據(jù)管理技術(shù)進(jìn)入數(shù)據(jù)庫系統(tǒng)階段?,F(xiàn)實(shí)世界是復(fù)雜的,反映現(xiàn)實(shí)世界的各類數(shù)據(jù)之間必然存在錯(cuò)綜復(fù)雜的聯(lián)系。為反映這種復(fù)雜的數(shù)據(jù)結(jié)構(gòu),讓數(shù)據(jù)資源能為多種應(yīng)用需要服務(wù),并為多個(gè)用戶所共享,同時(shí)為讓用戶能更方便地使用這些數(shù)據(jù)資源,在計(jì)算機(jī)科學(xué)中,逐漸形成了數(shù)據(jù)庫技術(shù)這一獨(dú)立分支。計(jì)算機(jī)中的數(shù)據(jù)及數(shù)據(jù)的管理統(tǒng)一由數(shù)據(jù)庫系統(tǒng)來完成。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)數(shù)據(jù)庫系統(tǒng)階段數(shù)據(jù)庫系統(tǒng)的目標(biāo)是解決數(shù)據(jù)冗余問題,實(shí)現(xiàn)數(shù)據(jù)獨(dú)立性,實(shí)現(xiàn)數(shù)據(jù)共享并解決由于數(shù)據(jù)共享而帶來的數(shù)據(jù)完整性、安全性及并發(fā)控制等一系列問題。為實(shí)現(xiàn)這一目標(biāo),數(shù)據(jù)庫的運(yùn)行必須有一個(gè)軟件系統(tǒng)來控制,這個(gè)系統(tǒng)軟件稱為數(shù)據(jù)庫管理系統(tǒng)(databasemanagementsystem,DBMS)。數(shù)據(jù)庫管理系統(tǒng)將程序員進(jìn)一步解脫出來,就像當(dāng)初操作系統(tǒng)將程序員從直接控制物理讀寫中解脫出來一樣。程序員此時(shí)不需要再考慮數(shù)據(jù)中的數(shù)據(jù)是不是因?yàn)楦膭佣斐刹灰恢拢膊挥脫?dān)心由于應(yīng)用功能的擴(kuò)充,而導(dǎo)致程序重寫,數(shù)據(jù)結(jié)構(gòu)重新變動。在這一階段,數(shù)據(jù)管理具有下面的優(yōu)點(diǎn):1)據(jù)結(jié)構(gòu)化。數(shù)據(jù)結(jié)構(gòu)化是數(shù)據(jù)庫系統(tǒng)與文件系統(tǒng)的根本區(qū)別。在文件系統(tǒng)中,文件中的記錄具有結(jié)構(gòu),傳統(tǒng)文件的最簡單形式是等長同格式的記錄集合,這樣就可以節(jié)省許多儲存空間。數(shù)據(jù)的結(jié)構(gòu)化是數(shù)據(jù)庫的主要特征之一,這是數(shù)據(jù)庫與文件系統(tǒng)的根本區(qū)別。至于這種結(jié)構(gòu)化是如何實(shí)現(xiàn)的,則與數(shù)據(jù)庫系統(tǒng)采用的數(shù)據(jù)模型有關(guān),后面會有較詳細(xì)的描述。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)數(shù)據(jù)庫系統(tǒng)階段2)數(shù)據(jù)共享性高,冗余度小,易擴(kuò)充。數(shù)據(jù)庫從整體的觀點(diǎn)來看待和描述數(shù)據(jù),數(shù)據(jù)不再是面向某一應(yīng)用,而是面向整個(gè)系統(tǒng)。這樣就減小了數(shù)據(jù)的冗余,可節(jié)約存儲空間,縮短存取時(shí)間,避免數(shù)據(jù)之間的不相容和不一致。對數(shù)據(jù)庫的應(yīng)用可以很靈活,面向不同的應(yīng)用,存取相應(yīng)的數(shù)據(jù)庫的子集。當(dāng)應(yīng)用需求改變或增加時(shí),只要重新選擇數(shù)據(jù)子集或者加上一部分?jǐn)?shù)據(jù),便可以滿足更多、更新的要求,也就是保證了系統(tǒng)的易擴(kuò)充性。3)數(shù)據(jù)獨(dú)立性高。數(shù)據(jù)庫提供數(shù)據(jù)的物理存儲結(jié)構(gòu)與邏輯結(jié)構(gòu)之間的映像或轉(zhuǎn)換功能,使得當(dāng)數(shù)據(jù)的物理存儲結(jié)構(gòu)改變時(shí),數(shù)據(jù)的邏輯結(jié)構(gòu)可以不變,從而程序也不用改變。這就是數(shù)據(jù)與程序的物理獨(dú)立性。也就是說,程序面向邏輯數(shù)據(jù)結(jié)構(gòu),不去考慮物理的數(shù)據(jù)存放形式。數(shù)據(jù)庫可以保證數(shù)據(jù)的物理改變不引起邏輯結(jié)構(gòu)的改變。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)數(shù)據(jù)庫系統(tǒng)階段4)統(tǒng)一的數(shù)據(jù)管理和控制功能,包括數(shù)據(jù)的安全性控制、數(shù)據(jù)的完整性控制及并發(fā)控制。數(shù)據(jù)庫是多用戶共享的數(shù)據(jù)資源,對數(shù)據(jù)庫的使用經(jīng)常是并發(fā)的,為保證數(shù)據(jù)的安全可靠和正確有效,數(shù)據(jù)庫管理系統(tǒng)必須提供一定的功能。數(shù)據(jù)庫的安全性是指防止非法用戶非法使用數(shù)據(jù)庫而提供的保護(hù)。比如,不是學(xué)校的成員不允許使用學(xué)生管理系統(tǒng),學(xué)生允許讀取成績但不允許修改成績等;數(shù)據(jù)的完整性是指數(shù)據(jù)的正確性和兼容性,數(shù)據(jù)庫管理系統(tǒng)必須保證數(shù)據(jù)庫的數(shù)據(jù)滿足規(guī)定的約束條件,常見的有對數(shù)據(jù)值的約束條件。比如,在建立上面例子中的數(shù)據(jù)庫時(shí),數(shù)據(jù)庫管理系統(tǒng)必須保證輸入的成績值大于0,否則系統(tǒng)會發(fā)出警告;數(shù)據(jù)的并發(fā)控制是多用戶共享數(shù)據(jù)庫必須解決的問題。要說明并發(fā)操作對數(shù)據(jù)的影響,必須首先明確,數(shù)據(jù)庫是保存在外存中的數(shù)據(jù)資源,而用戶對數(shù)據(jù)庫的操作是先將其讀入內(nèi)存,修改數(shù)據(jù)時(shí),是在內(nèi)存中修改讀入的數(shù)據(jù)復(fù)本,然后再將這個(gè)復(fù)本寫回到儲存的數(shù)據(jù)庫中,實(shí)現(xiàn)物理的改變。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)1.2數(shù)據(jù)存儲與管理工具進(jìn)入工業(yè)大數(shù)據(jù)時(shí)代后,數(shù)據(jù)的多源異構(gòu)、數(shù)據(jù)量大等特點(diǎn)對數(shù)據(jù)存儲與管理工具提出了更高的要求,常用的大數(shù)據(jù)儲存與管理工具主要包括存儲陣列系統(tǒng)、Memcached、MongoDB、Cassandra和HBase等典型系統(tǒng)。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)存儲陣列系統(tǒng)互聯(lián)網(wǎng)徹底地改變了當(dāng)今世界人們的生活方式,而基于互聯(lián)網(wǎng)的云計(jì)算及物聯(lián)網(wǎng)技術(shù)更將用戶端延展至任何物品,進(jìn)行更為深入的信息交換和通信,從而達(dá)到物物相息、萬物互聯(lián)。任何事物都不能孤立于其他群體而單獨(dú)存在,存儲系統(tǒng)也不例外,它不是孤立存在的,而是由一系列組件共同構(gòu)成的。常見的存儲系統(tǒng)有存儲陣列系統(tǒng)、網(wǎng)絡(luò)附加存儲、磁帶庫、虛擬磁帶庫等。存儲系統(tǒng)通常分為硬件架構(gòu)部分、軟件組件部分以及實(shí)際應(yīng)用過程中的存儲解決方案部分,下面以存儲陣列系統(tǒng)為例介紹存儲系統(tǒng)的組成。存儲陣列系統(tǒng)的硬件部分分為外置存儲系統(tǒng)和存儲連接設(shè)備。外置存儲系統(tǒng)主要指實(shí)際應(yīng)用中的存儲設(shè)備,比如磁盤陣列、磁帶庫、光盤庫等;存儲連接設(shè)備包括常見的以太網(wǎng)交換機(jī)、光纖交換機(jī)以及存儲設(shè)備與服務(wù)器或者客戶端之間相互連接的線纜。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)存儲陣列系統(tǒng)存儲陣列系統(tǒng)的軟件組件部分主要包括存儲管理軟件(如LUN創(chuàng)建、文件系統(tǒng)共享、性能監(jiān)控等),數(shù)據(jù)的鏡像、快照及復(fù)制模塊。這些軟件組件的存在,不僅使存儲陣列系統(tǒng)具備高可靠性,而且降低了存儲管理難度。存儲陣列系統(tǒng)的存儲解決方案部分由多種方案組成,常見的有容災(zāi)解決方案和備份解決方案。一個(gè)設(shè)計(jì)優(yōu)秀的存儲解決方案不僅可以使存儲系統(tǒng)在初期部署時(shí)安裝簡易、后期維護(hù)便捷,還可以降低客戶的總體擁有成本(totalcostofownership,TCO),保障客戶的前期投資。在存儲系統(tǒng)架構(gòu)中,磁盤陣列充當(dāng)數(shù)據(jù)存儲設(shè)備的角色,為用戶業(yè)務(wù)系統(tǒng)提供數(shù)據(jù)存儲空間,它是關(guān)系到用戶業(yè)務(wù)穩(wěn)定、可靠、高效運(yùn)作的重要因素。下面以常見的臺式機(jī)或者筆記本電腦為例子,具體分析一下存儲陣列在存儲系統(tǒng)架構(gòu)中的角色位置。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)存儲陣列系統(tǒng)圖3-11存儲陣列組網(wǎng)圖在日常生活中,臺式機(jī)或筆記本電腦是人們經(jīng)常使用的工作設(shè)備。在臺式機(jī)或筆記本電腦中都安裝有獨(dú)立的硬盤,其中劃分了一部分硬盤空間作為系統(tǒng)分區(qū),一部分硬盤空間用于存儲用戶數(shù)據(jù)。臺式機(jī)的內(nèi)置硬盤一般采用數(shù)據(jù)線連接到主板,筆記本的內(nèi)置硬盤一般通過內(nèi)置插槽直接與主板相連接。此外,也可以通過外置USB接口等方式進(jìn)行連接。當(dāng)通過外置USB接口連接時(shí),通常需要借助線纜來實(shí)現(xiàn)存儲功能。硬盤之于臺式機(jī),正如存儲陣列之于網(wǎng)絡(luò)中的服務(wù)器。如圖3-11所示為存儲陣列組網(wǎng)圖,存儲陣列借助線纜連接到服務(wù)器,再由服務(wù)器將底層存儲空間提供給客戶端(工作站)使用;或者通過交換機(jī)連接到服務(wù)器,再通過服務(wù)器將底層存儲空間提供給客戶端使用。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)MemcachedMemcached是一款優(yōu)秀的開源內(nèi)存數(shù)據(jù)庫。開發(fā)過程中使用Memcached能有效提高產(chǎn)品對數(shù)據(jù)的訪問速度,提升產(chǎn)品質(zhì)量。而Memcached良好的性能離不開它的內(nèi)存分配和哈希表的使用。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)Memcached內(nèi)存分配向系統(tǒng)申請和釋放內(nèi)存一般都是通過調(diào)用malloc和free函數(shù)來實(shí)現(xiàn),這種操作不僅會造成內(nèi)存碎片,而且如果頻繁調(diào)用,也會對系統(tǒng)性能產(chǎn)生影響。Memcached作為內(nèi)存數(shù)據(jù)庫,對內(nèi)存操作頻率非常高,存儲數(shù)據(jù)時(shí)需要申請內(nèi)存,刪除數(shù)據(jù)時(shí)需要釋放內(nèi)存。如果繼續(xù)采用malloc/free函數(shù),則對系統(tǒng)影響是非常大的,為此,Memcached采用預(yù)分配、分組管理的方式來管理內(nèi)存。Memcached采用SlabAllocation機(jī)制分配內(nèi)存。在存儲數(shù)據(jù)發(fā)現(xiàn)內(nèi)存不足時(shí),Memcached會向操作系統(tǒng)申請一個(gè)slab,也就是一個(gè)內(nèi)存塊,一般一個(gè)slab的大小為1MB。Memcached將申請到的slab劃分為大小相等的塊(chunk)。為了適應(yīng)不同大小的數(shù)據(jù)存儲,Memcached將不同的slab劃分不同大小的chunk。相同chunk大小的slab劃分為一類組成Slabclass,1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)Memcached內(nèi)存分配各種大小類型的Slabclass在一起形成了一個(gè)巨大的內(nèi)存池,Memcached保存數(shù)據(jù)時(shí)首先從這個(gè)內(nèi)存池中獲取內(nèi)存。item是Memcached一個(gè)復(fù)雜的數(shù)據(jù)結(jié)構(gòu),其中除了包含存儲對象的鍵值對外,還有其他一些數(shù)據(jù)結(jié)構(gòu),用于管理保存的對象Memcached將item保存在對應(yīng)的slab的某個(gè)chunk中。Memcached在存儲數(shù)據(jù)時(shí),首先根據(jù)需要存儲數(shù)據(jù)的大小選擇最合適的Slabsclass,并從Slabsclass中找到一個(gè)空閑的chunk用于存儲數(shù)據(jù)。如果Slabsclass中沒有剩余的chunk可用,則Memcached再向操作系統(tǒng)申請一個(gè)slab,并將申請到的slab切割為相同大小的chunk。從剛剛切割獲得的chunk中選擇一個(gè)chunk用于存儲數(shù)據(jù),1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)Memcached內(nèi)存分配其他的chunk加入到Slabsclass中。刪除數(shù)據(jù)時(shí),只需將用于保存該數(shù)據(jù)的chunk歸還給相應(yīng)的Slabsclass即可。通過使用Slabsclass管理內(nèi)存,Memcached不僅有效地避免了頻繁調(diào)用malloc/free函數(shù)的困境,而且還提高了內(nèi)存分配效率。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)哈希表哈希表是Memcached的重要組成部分,利用哈希表,Memcached能夠快速查找和定位保存數(shù)據(jù)的item。在存儲item時(shí),Memcached首先將item中的key通過哈希函數(shù)獲得哈希值,然后采用取余方式定位到key的位置并存儲。在查找key時(shí),使用相同的方式定位用于存儲key值的哈希桶,然后在哈希桶里查找是否存在相應(yīng)的item。為了防止多個(gè)線程同時(shí)對同一個(gè)item操作,Memcached采用鎖機(jī)制。與全局對哈希表進(jìn)行加鎖方式不同,Memcached采用的是段鎖,如圖3-12所示,一個(gè)段鎖負(fù)責(zé)管理幾個(gè)哈希桶,Memcached中存在多個(gè)段鎖,分別負(fù)責(zé)不同的哈希桶。這樣就可以讓多個(gè)線程同時(shí)訪問不同的哈希桶,提高系統(tǒng)性能。在解決哈希沖突時(shí),Memcached采用鏈地址法來解決,在同一個(gè)哈希桶里的item采用鏈表連接。隨著item的增加,每個(gè)哈希桶里的鏈表會增長,從而影響了系統(tǒng)的查找效率。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)哈希表為解決此問題,當(dāng)Memcached中的item個(gè)數(shù)達(dá)到哈希表中哈希桶個(gè)數(shù)的15倍時(shí),Memcached就啟動擴(kuò)展哈希表的操作,采用兩個(gè)哈希表,一新一舊,將舊表上的item重新映射到新的哈希表上。但是考慮到一次性將舊表中的內(nèi)容全部映射到新的哈希表上會花費(fèi)很長時(shí)間,必定影響Memcached的對外響應(yīng)速度,因此,圖3-12Memcached段鎖示意圖1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)哈希表Memcached采用逐步遷移策略,每次只遷移一個(gè)桶的數(shù)據(jù)并記錄遷移過桶的位置。Memcached查找數(shù)據(jù)時(shí),將使用舊的哈希表長度計(jì)算出的哈希桶的位置和遷移過的桶比較,來判斷所查找的item在哪個(gè)哈希表上,從而大大降低了遷移數(shù)據(jù)對服務(wù)帶來的影響。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)MongoDBMongoDB是一個(gè)基于分布式文件存儲的數(shù)據(jù)庫,由C++語言編寫,旨在為Web應(yīng)用提供可擴(kuò)展的高性能數(shù)據(jù)存儲解決方案。在高負(fù)載的情況下,添加更多的節(jié)點(diǎn),可以保證服務(wù)器性能。MongoDB將數(shù)據(jù)存儲為一個(gè)文檔,數(shù)據(jù)結(jié)構(gòu)由鍵值(key=>value)對組成,MongoDB文檔類似于JSON對象,字段值可以包含其他文檔、數(shù)組及文檔數(shù)組。MongoDB是一個(gè)介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間的產(chǎn)品,是非關(guān)系數(shù)據(jù)庫當(dāng)中功能最豐富、最像關(guān)系數(shù)據(jù)庫的。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)其主要特點(diǎn)如下:(1)MongoDB是一個(gè)面向文檔存儲的數(shù)據(jù)庫,操作起來比較簡單和容易。(2)用戶可以在MongoDB記錄中設(shè)置任何屬性的索引(如FirstName=“Sameer”,Address=“8GandhiRoad”)來實(shí)現(xiàn)更快的排序。(3)用戶可以通過本地或者網(wǎng)絡(luò)創(chuàng)建數(shù)據(jù)鏡像,這使得MongoDB有更強(qiáng)的擴(kuò)展性。(4)如果負(fù)載增加(需要更多的存儲空間和更強(qiáng)的處理能力),它可以分布在計(jì)算機(jī)網(wǎng)絡(luò)中的其他節(jié)點(diǎn)上,這就是所謂的分片。(5)MongoDB支持豐富的查詢表達(dá)式。查詢指令使用JSON形式的標(biāo)記,可輕易查詢文檔中內(nèi)嵌的對象及數(shù)組。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)其主要特點(diǎn)如下:(6)MongoDB使用update()命令可以實(shí)現(xiàn)替換完成的文檔(數(shù)據(jù))或者一些指定的數(shù)據(jù)字段。(7)MongoDB中的Map/Reduce主要用來對數(shù)據(jù)進(jìn)行批量處理和聚合操作。Map函數(shù)調(diào)用emit(key,value)遍歷集合中所有的記錄,將key與value傳給Reduce函數(shù)進(jìn)行處理。Map函數(shù)和Reduce函數(shù)是使用JavaScript編寫的,并可以通過db.runCommand或mapreduce命令來執(zhí)行MapReduce操作。(8)GridFS是MongoDB中的一個(gè)內(nèi)置功能,可以用于存放大量小文件。(9)MongoDB允許在服務(wù)端執(zhí)行腳本,可以用JavaScript語言編寫某個(gè)函數(shù),直接在服務(wù)端執(zhí)行,也可以把函數(shù)的定義存儲在服務(wù)端,下次使用時(shí)直接調(diào)用即可。(10)MongoDB支持:Ruby、Python、Java、C++、PHP、C#等多種編程語言。(11)MongoDB安裝簡單。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)CassandraCassandra是一套開源分布式NoSQL數(shù)據(jù)庫系統(tǒng)。它由Facebook公司開發(fā),用于儲存收件箱等簡單格式數(shù)據(jù),以Amazon專有的完全分布式的Dynamo為基礎(chǔ),結(jié)合了GoogleBigTable基于列族(ColumnFamily)的數(shù)據(jù)模型。以及P2P去中心化的存儲。很多方面都可以稱之為Dynamo2.0,Cassandra是一個(gè)混合型的非關(guān)系數(shù)據(jù)庫,其主要功能比Dynamo(分布式的Key-Value存儲系統(tǒng))更豐富,但支持度卻不如文檔存儲MongoDB。(1)主要特性:分布式、基于column的結(jié)構(gòu)化、高伸展性。(2)系統(tǒng)功能:Cassandra的主要特點(diǎn)就是它是由一堆數(shù)據(jù)庫節(jié)點(diǎn)共同構(gòu)成的一種分布式網(wǎng)絡(luò)服務(wù),對Cassandra的一個(gè)寫操作,會被復(fù)制到其他節(jié)點(diǎn)上去,對Cassandra的讀操作,也會被路由到某個(gè)節(jié)點(diǎn)上面去讀取。對于一個(gè)Cassand1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)Cassandrara集群來說,擴(kuò)展性能是比較簡單的事情,只需在群集里面添加節(jié)點(diǎn)即可。和其他數(shù)據(jù)庫比較,Cassandra有三個(gè)突出特點(diǎn):(1)模式靈活。使用Cassandra進(jìn)行文檔存儲等工作時(shí),用戶不必提前解決記錄中的字段。用戶可以在系統(tǒng)運(yùn)行時(shí)隨意添加或移除字段。(2)可擴(kuò)展性。Cassandra是純粹意義上的水平擴(kuò)展。為給集群添加更多容量,可以直接指向另一臺電腦,用戶不必重啟任何進(jìn)程,,改變應(yīng)用查詢,或手動遷移任何數(shù)據(jù)。(3)多數(shù)據(jù)中心。用戶可以調(diào)整節(jié)點(diǎn)布局來避免某一個(gè)數(shù)據(jù)中心起火,一個(gè)備用的數(shù)據(jù)中心將至少有每條記錄的完全復(fù)制。此外,還有一些使Cassandra提高競爭力的其他功能:1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)Cassandra(1)范圍查詢??梢栽O(shè)置鍵的范圍來查詢替代全部的鍵值查詢。01(2)列表數(shù)據(jù)結(jié)構(gòu)。在混合模式可以將超級列添加到5維。對于每個(gè)用戶的索引,這是非常方便的。02(3)分布式寫操作。用戶可以在任何地方、任何時(shí)間集中讀或?qū)懭魏螖?shù)據(jù),并且不會有任何單點(diǎn)失敗。031工業(yè)大數(shù)據(jù)存儲與管理技術(shù)HBaseHBas是一個(gè)分布式的、面向列的開源數(shù)據(jù)庫,該技術(shù)來源于FayChang所撰寫的Google論文《Bigtable:一個(gè)結(jié)構(gòu)化數(shù)據(jù)的分布式存儲系統(tǒng)》。就像Bigtable利用了Google文件系統(tǒng)(filedystem)所提供的分布式數(shù)據(jù)存儲一樣,HBase在Hadoop之上提供了類似于Bigtable的功能。HBase是Apache的Hadoop項(xiàng)目的子項(xiàng)目。HBase不同于一般的關(guān)系數(shù)據(jù)庫,它是一個(gè)適合于非結(jié)構(gòu)化數(shù)據(jù)存儲的數(shù)據(jù)庫。并且HBase是基于列的而不是基于行的模式。HBase即HadoopDatabase,是一個(gè)高可靠性、高性能、面向列、可伸縮的分布式存儲系統(tǒng),利用HBase技術(shù)可在廉價(jià)PCServer上搭建起大規(guī)模結(jié)構(gòu)化存儲集群。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)HBase與FUJITSUCliq等商用大數(shù)據(jù)產(chǎn)品不同,HBase是GoogleBigtable的開源實(shí)現(xiàn),類似于GoogleBigtable以GFS作為其文件存儲系統(tǒng),HBase以HadoopHDFS作為其文件存儲系統(tǒng)。Google運(yùn)行MapReduce來處理Bigtable中的海量數(shù)據(jù),HBase則利用HadoopMapReduce來處理HBase中的海量數(shù)據(jù),GoogleBigtable利用Chubby作為協(xié)同服務(wù),HBase利用Zookeeper作為協(xié)同服務(wù)。圖3-13表示出了HadoopEcoSystem中的各層系統(tǒng)。其中,HBase位于結(jié)構(gòu)化存儲層,HadoopHDFS為HBase提供了高可靠性的底層存儲支持,HadoopMapReduce為HBase提供了高性能的計(jì)算能力,Zookeeper為HBase提供了穩(wěn)定服務(wù)和failover機(jī)制。1工業(yè)大數(shù)據(jù)存儲與管理技術(shù)HBase此外,Pig和Hive還為HBase提供了高層語言支持,使得在HBase上進(jìn)行數(shù)據(jù)統(tǒng)計(jì)處理變得非常簡單。Sqoop則為HBase提供了方便的RDBMS數(shù)據(jù)導(dǎo)入功能,使得傳統(tǒng)數(shù)據(jù)庫中數(shù)據(jù)向HBase中遷移變得非常方便。圖3-13HadoopEcoSystem中的各層系統(tǒng)2工業(yè)大數(shù)據(jù)安全技術(shù)工業(yè)大數(shù)據(jù)蘊(yùn)涵著工業(yè)生產(chǎn)的詳細(xì)情況及運(yùn)行規(guī)律,也承載了大量市場、客戶、供應(yīng)鏈等信息,是工業(yè)互聯(lián)網(wǎng)的核心要素,工業(yè)大數(shù)據(jù)安全管理因此成為工業(yè)互聯(lián)網(wǎng)安全保障的重要任務(wù)之一。工業(yè)大數(shù)據(jù)安全管理的目的在于:一方面推動建立工業(yè)互聯(lián)網(wǎng)全產(chǎn)業(yè)鏈數(shù)據(jù)安全管理體系,明確相關(guān)主體的數(shù)據(jù)安全保護(hù)責(zé)任和具體要求,加強(qiáng)數(shù)據(jù)生命周期各環(huán)節(jié)的安全防護(hù)能力,避免用戶隱私或重要工業(yè)數(shù)據(jù)遭到不法竊取或利用;另一方面建立工業(yè)數(shù)據(jù)分級分類管理制度,形成工業(yè)互聯(lián)網(wǎng)數(shù)據(jù)流動管理機(jī)制,明確數(shù)據(jù)留存、數(shù)據(jù)泄露通報(bào)要求;此外,還需通過加強(qiáng)監(jiān)督檢查落實(shí)企業(yè)的數(shù)據(jù)安全保護(hù)責(zé)任。2工業(yè)大數(shù)據(jù)安全技術(shù)2.1數(shù)據(jù)安全問題分析數(shù)據(jù)生命周期包括采集、儲存、預(yù)處理、分析、挖掘和使用階段,隨著數(shù)據(jù)傳輸技術(shù)和應(yīng)用的快速發(fā)展,在數(shù)據(jù)生命周期的各個(gè)階段,越來越多的安全隱患逐漸暴露出來,對數(shù)據(jù)全生命周期的安全問題進(jìn)行挖掘與風(fēng)險(xiǎn)分析就顯得尤為重要。2工業(yè)大數(shù)據(jù)安全技術(shù)工業(yè)大數(shù)據(jù)采集階段數(shù)據(jù)采集是利用某些裝備或者軟件,從系統(tǒng)外部采集數(shù)據(jù)并輸入到系統(tǒng)內(nèi)部的一個(gè)接口。數(shù)據(jù)采集技術(shù)廣泛應(yīng)用在各個(gè)領(lǐng)域,被采集數(shù)據(jù)是已被轉(zhuǎn)換為電信號的各種物理量,如溫度、水位、風(fēng)速、壓力等,可以是模擬量,也可以是數(shù)字量。采集一般是通過某種采樣方式獲取數(shù)據(jù),即隔一定時(shí)間(稱采樣周期)對同一被采集數(shù)據(jù)重復(fù)采集。采集的數(shù)據(jù)大多是瞬時(shí)值,也可以是某段時(shí)間內(nèi)的一個(gè)特征值。準(zhǔn)確的數(shù)據(jù)測量是數(shù)據(jù)采集的基礎(chǔ),數(shù)據(jù)測量方法有接觸式和非接觸式,檢測元件多種多樣,不論采用哪種方法和元件,均以不影響被測對象狀態(tài)和測量環(huán)境為前提,以保證數(shù)據(jù)的正確性。數(shù)據(jù)采集的含義很廣,包括對面狀連續(xù)物理量的采集。在計(jì)算機(jī)輔助制圖、測圖、設(shè)計(jì)中,對圖形或圖像的數(shù)字化過程也可稱為數(shù)據(jù)采集,此時(shí)被采集的是幾何量(或包括物理量,如灰度)數(shù)據(jù)。2工業(yè)大數(shù)據(jù)安全技術(shù)工業(yè)大數(shù)據(jù)采集階段數(shù)據(jù)安全周期的第一階段就是數(shù)據(jù)的采集,不論使用第三方軟件,還是使用公司內(nèi)部的數(shù)據(jù)分析系統(tǒng),在分析數(shù)據(jù)時(shí)都要首先采集數(shù)據(jù),然后經(jīng)過打包、壓縮等操作傳輸至客戶端,再進(jìn)行儲存和分析。數(shù)據(jù)采集是數(shù)據(jù)生命周期中的首要問題。數(shù)據(jù)采集階段的安全風(fēng)險(xiǎn)如下:(1)數(shù)據(jù)源服務(wù)器存在安全風(fēng)險(xiǎn),如未及時(shí)更新漏洞、未進(jìn)行主機(jī)加固、未進(jìn)行病毒防護(hù);(2)缺少采集訪問控制及可信認(rèn)證;(3)缺少數(shù)據(jù)層安全防護(hù),如運(yùn)維人員拖庫和外部SQL注入等。(4)缺少審計(jì)及異常事件告警。2工業(yè)大數(shù)據(jù)安全技術(shù)數(shù)據(jù)存儲階段隨著網(wǎng)絡(luò)信息化的逐步發(fā)展,數(shù)據(jù)存儲已經(jīng)從以往的紙質(zhì)存儲演變?yōu)殡娮訑?shù)據(jù)存儲,且數(shù)據(jù)存儲設(shè)備已為多個(gè)系統(tǒng)共享,連接到多個(gè)系統(tǒng)上,因此,必須保護(hù)各個(gè)系統(tǒng)上有價(jià)值的數(shù)據(jù),防止其他系統(tǒng)未經(jīng)授權(quán)訪問或者破壞數(shù)據(jù)。有效防止內(nèi)部和外部對數(shù)據(jù)造成損失的不安全的訪問,已成為目前數(shù)據(jù)全生命周期管理中需要注意的重點(diǎn)問題。進(jìn)入大數(shù)據(jù)時(shí)代后,大數(shù)據(jù)的存儲安全問題也逐漸凸顯。大數(shù)據(jù)的數(shù)據(jù)類型和數(shù)據(jù)結(jié)構(gòu)是傳統(tǒng)數(shù)據(jù)不能比擬的,在大數(shù)據(jù)的存儲平臺上,數(shù)據(jù)量呈非線性甚至指數(shù)級的速度增長,對各種類型和各種結(jié)構(gòu)的數(shù)據(jù)進(jìn)行存儲,勢必會引發(fā)多種應(yīng)用進(jìn)程的并發(fā)且頻繁無序的運(yùn)行,極易造成數(shù)據(jù)存儲錯(cuò)位和數(shù)據(jù)管理混亂,為大數(shù)據(jù)存儲和后期的處理帶來安全隱患。當(dāng)前的數(shù)據(jù)存儲管理系統(tǒng)能否滿足大數(shù)據(jù)背景下的海量數(shù)據(jù)的數(shù)據(jù)存儲需求,還有待考驗(yàn)。不過,如果數(shù)據(jù)管理系統(tǒng)沒有升級相應(yīng)的安全機(jī)制,出現(xiàn)問題后再考慮則為時(shí)已晚。數(shù)據(jù)存儲階段的風(fēng)險(xiǎn)如下:2工業(yè)大數(shù)據(jù)安全技術(shù)數(shù)據(jù)存儲階段1(1)數(shù)據(jù)池服務(wù)器存在安全風(fēng)險(xiǎn),如未及時(shí)更新漏洞、未進(jìn)行主機(jī)加固、未進(jìn)行病毒防護(hù);2(2)數(shù)據(jù)明文存儲,具有泄露風(fēng)險(xiǎn);3(3)缺少統(tǒng)一訪問控制及相關(guān)身份認(rèn)證;6(6)網(wǎng)絡(luò)架構(gòu)設(shè)計(jì)不合理,未進(jìn)行物理隔離或者邏輯隔離。5(5)缺少數(shù)據(jù)容災(zāi)備份機(jī)制;4(4)缺少審計(jì)及異常操作告警;2工業(yè)大數(shù)據(jù)安全技術(shù)數(shù)據(jù)預(yù)處理、分析、挖掘與使用階段大數(shù)據(jù)或經(jīng)過分析挖掘后的數(shù)據(jù),其應(yīng)用價(jià)值得到極大的提高,也會推動一系列應(yīng)用的出現(xiàn)。在數(shù)據(jù)的預(yù)處理、分析、挖掘以及應(yīng)用環(huán)節(jié)都存在較大的風(fēng)險(xiǎn),具體包括數(shù)據(jù)的泄露、數(shù)據(jù)的完整性被破壞、未授權(quán)訪問、惡意代碼、元數(shù)據(jù)完整性被破壞等風(fēng)險(xiǎn)。(1)數(shù)據(jù)泄露是最嚴(yán)重的數(shù)據(jù)安全風(fēng)險(xiǎn),美國波耐蒙研究所最新提供的一份網(wǎng)絡(luò)犯罪研究報(bào)告顯示:數(shù)據(jù)泄漏使美國塔吉特公司、日本索尼公司等全球知名企業(yè)普遍遭受損失。令人更加沮喪的是,有越來越多的全球性企業(yè)被迫進(jìn)入了數(shù)據(jù)泄漏行列,報(bào)告數(shù)據(jù)顯示,僅2013年一年,美國企業(yè)就為網(wǎng)絡(luò)犯罪造成的數(shù)據(jù)泄露付出了總額高達(dá)1156萬美元的“學(xué)費(fèi)”。除數(shù)據(jù)泄露外,全球各大企業(yè)為保障數(shù)據(jù)安全所做的“無用功”也給其增添了不小的財(cái)務(wù)負(fù)擔(dān)。而公司數(shù)據(jù)一旦泄露,企業(yè)還要被迫為其后產(chǎn)生的法務(wù)開銷、合規(guī)罰款與司法調(diào)查費(fèi)用買單。數(shù)據(jù)產(chǎn)生以上風(fēng)險(xiǎn)的原因包括:缺少數(shù)據(jù)訪問控制、缺少數(shù)據(jù)脫敏機(jī)制、缺少數(shù)據(jù)處理審計(jì)及異常操作告警。2工業(yè)大數(shù)據(jù)安全技術(shù)數(shù)據(jù)預(yù)處理、分析、挖掘與使用階段(2)當(dāng)數(shù)據(jù)完整性受到損害時(shí),數(shù)據(jù)會失效或被破壞,除非通過建立備份和恢復(fù)過程可以恢復(fù)數(shù)據(jù)完整性,否則組織機(jī)構(gòu)可能遭受嚴(yán)重?fù)p失,或基于無效數(shù)據(jù)而制定出不正確的和代價(jià)昂貴的決策。一般來說,造成數(shù)據(jù)完整性問題的主要原因包括:硬件故障、網(wǎng)絡(luò)故障、邏輯問題、意外的災(zāi)難性事件以及人為的因素。(3)未授權(quán)訪問可理解為需要安全配置或權(quán)限認(rèn)證的地址、授權(quán)頁面存在缺陷,導(dǎo)致其他用戶可以直接訪問,從而引發(fā)重要權(quán)限被操作以及數(shù)據(jù)庫、網(wǎng)站目錄等敏感信息泄露。特別地,數(shù)據(jù)庫未授權(quán)訪問漏洞使得攻擊者可任意查看數(shù)據(jù)庫中的數(shù)據(jù),會導(dǎo)致數(shù)據(jù)可被直接讀取泄漏和惡意修改,而從數(shù)據(jù)庫中讀取的數(shù)據(jù)容易被開發(fā)者認(rèn)為是可信的,或者是已經(jīng)通過安全校驗(yàn)的,因此更容易導(dǎo)致數(shù)據(jù)安全問題。2工業(yè)大數(shù)據(jù)安全技術(shù)數(shù)據(jù)預(yù)處理、分析、挖掘與使用階段(4)惡意代碼又稱為惡意軟件,是能夠在計(jì)算機(jī)系統(tǒng)中進(jìn)行非授權(quán)操作,以實(shí)施破壞或竊取信息的代碼。惡意代碼范圍很廣,包括利用各種網(wǎng)絡(luò)、操作系統(tǒng)、軟件和物理安全漏洞,向計(jì)算機(jī)系統(tǒng)傳播惡意負(fù)載的程序性的計(jì)算機(jī)安全威脅。也就是說,我們可以把常說的病毒、木馬、后門、垃圾軟件等一切有害程序和應(yīng)用統(tǒng)稱為惡意代碼。惡意代碼不僅使企業(yè)和用戶蒙受巨大的經(jīng)濟(jì)損失,而且使國家的安全受到嚴(yán)重威脅。1991年的海灣戰(zhàn)爭中,美國第一次公開在實(shí)戰(zhàn)中使用惡意代碼攻擊技術(shù)取得重大軍事利益,,從此惡意代碼攻擊成為信息戰(zhàn)、網(wǎng)絡(luò)戰(zhàn)最重要的入侵手段之一。很多惡意代碼發(fā)作時(shí)直接破壞計(jì)算機(jī)的重要數(shù)據(jù),所利用的手段有格式化硬盤、改寫文件分配表和目錄區(qū)、刪除重要文件或者用無意義的數(shù)據(jù)覆蓋文件等,從而造成后果嚴(yán)重的數(shù)據(jù)安全風(fēng)險(xiǎn)。2工業(yè)大數(shù)據(jù)安全技術(shù)數(shù)據(jù)預(yù)處理、分析、挖掘與使用階段(5)元數(shù)據(jù)是“關(guān)于數(shù)據(jù)的結(jié)構(gòu)化的數(shù)據(jù)”,主要是描述數(shù)據(jù)屬性的信息,用來支持如存儲位置定位、歷史數(shù)據(jù)和資源查找以及文件記錄等功能,隨著數(shù)據(jù)倉庫技術(shù)應(yīng)用的不斷拓展,元數(shù)據(jù)開始成為企業(yè)信息綜合管理的關(guān)鍵,元數(shù)據(jù)安全在保障數(shù)據(jù)倉庫安全性方面扮演著越來越重要的角色。當(dāng)元數(shù)據(jù)完整性被破壞時(shí),數(shù)據(jù)的存儲位置、歷史數(shù)據(jù)以及用戶的訪問控制信息都可能會造成破壞,嚴(yán)重影響到數(shù)據(jù)倉庫的安全性。2工業(yè)大數(shù)據(jù)安全技術(shù)2.2數(shù)據(jù)加密技術(shù)數(shù)據(jù)加密是計(jì)算機(jī)系統(tǒng)對數(shù)據(jù)進(jìn)行保護(hù)的一種最可靠的辦法,它利用密碼技術(shù)對數(shù)據(jù)進(jìn)行加密,實(shí)現(xiàn)數(shù)據(jù)隱蔽,從而起到保護(hù)數(shù)據(jù)安全的作用。2工業(yè)大數(shù)據(jù)安全技術(shù)密碼學(xué)定義密碼學(xué)是研究編制密碼和破譯密碼的技術(shù)科學(xué),研究密碼變化的客觀規(guī)律,應(yīng)用于編制密碼以保守通信秘密的學(xué)科稱為編碼學(xué);應(yīng)用于破譯密碼以獲取通信情報(bào)的學(xué)科稱為破譯學(xué),二者總稱密碼學(xué),密碼學(xué)是保密學(xué)的一部分。保密學(xué)是研究密碼系統(tǒng)或通信安全的科學(xué),它實(shí)際上包含兩個(gè)分支——密碼學(xué)和密碼分析學(xué)。密碼學(xué)是對信息進(jìn)行編碼實(shí)現(xiàn)隱蔽信息的一門科學(xué),而密碼分析學(xué)則是研究分析如何破解密碼的科學(xué)。兩者相互獨(dú)立,又相互促進(jìn),正如病毒技術(shù)和反病毒技術(shù)一樣。采用密碼技術(shù)可以隱藏和保護(hù)需要保密的信息,使未經(jīng)授權(quán)者不能提取信息。需要隱藏的消息稱為“明文”,明文被變換成的另一種隱蔽的形式就是“密文”。這種變換稱為“加密”;加密的逆過程,即從密文恢復(fù)出對應(yīng)的明文的過程稱為“解密”。對明文進(jìn)行加密時(shí)采用的一組規(guī)則(函數(shù))稱為“加密算法”,對密文解密時(shí)使用的算法稱為“解密算法”。一般地,加密算法和解密算法都是在一組密鑰控制之下進(jìn)行的,加密時(shí)使用的密鑰稱為“加密密鑰”,解密時(shí)使用的密鑰稱為“解密密鑰”。2工業(yè)大數(shù)據(jù)安全技術(shù)密碼系統(tǒng)通常從3個(gè)獨(dú)立的方面進(jìn)行分類:1)按將明文轉(zhuǎn)換成密文的操作類型可以分為置換密碼和易位密碼。所有加密算法都是建立在兩個(gè)通用的原則上的:置換和易位。置換是指將明文的每一個(gè)元素(比特、字母、比特或字母的組合)映射成其他的元素。如最古老的置換密碼是由JuliusCaesar發(fā)明的凱撒密碼,這種密碼算法是將明文中的每一個(gè)字母都用該字母后的第n個(gè)字母代替,其中n就是密鑰。顯然這種密碼體制中的密鑰空間只有26個(gè)密鑰,只要破譯者知道用的是凱撒密碼,只需嘗試25次就可以知道正確的密碼。易位是對明文的元素進(jìn)行重新布置,但并不隱藏它們,即明文中的所有字母都可以從密文中找到,只是位置不一樣,列易位密碼是一種常用的易位密碼。2工業(yè)大數(shù)據(jù)安全技術(shù)密碼系統(tǒng)通常從3個(gè)獨(dú)立的方面進(jìn)行分類:2)按照明文的處理方式可分為分組密碼和序列密碼。分組密碼又稱為“塊密碼”(blockcipher),它每次處理一塊輸入元素,每個(gè)輸入塊生成一個(gè)輸出塊。序列密碼又稱為“流密碼”(streamcipher),它對輸入元素進(jìn)行連續(xù)處理,每次生成一個(gè)輸出塊。3)按密碼體制中密鑰使用的個(gè)數(shù)可以分為對稱密碼體制和非對稱密碼體制。如果加密操作和解密操作采用的是相同的密鑰,或者從一個(gè)密鑰易于得出另一個(gè)密鑰,這樣的系統(tǒng)就叫作“對稱密碼系統(tǒng)”,也稱為“密鑰密碼體制”。如果加密使用的密鑰和解密使用的密鑰不相同,且從一個(gè)密鑰難以推出另一個(gè)密鑰,則這樣的密碼系統(tǒng)稱為“非對稱密碼系統(tǒng)”,也稱為“公鑰密碼體制”。2工業(yè)大數(shù)據(jù)安全技術(shù)密碼學(xué)的發(fā)展歷程密碼學(xué)到現(xiàn)在為止經(jīng)歷了3個(gè)發(fā)展階段:古典密碼學(xué)、近代密碼學(xué)、現(xiàn)代密碼學(xué)。隨著量子技術(shù)的發(fā)展,量子密碼學(xué)也成為密碼學(xué)領(lǐng)域重要的研究方向。古典密碼學(xué)是密碼學(xué)發(fā)展的基礎(chǔ)與起源,比如歷史上第一種密碼技術(shù)——?jiǎng)P撒密碼,還有后面出現(xiàn)的掩格密碼等。雖然其大都比較簡單,但對于今天的密碼學(xué)發(fā)展仍然具有參考價(jià)值。近代密碼學(xué)開始于通信的機(jī)械化與電氣化,為密碼的加密技術(shù)提供了前提,也為破譯者提供了有力武器。計(jì)算機(jī)和電子學(xué)時(shí)代的到來給密碼設(shè)計(jì)者帶來前所未有的自由,他們可以利用電子計(jì)算機(jī)設(shè)計(jì)出更為復(fù)雜、保密的密碼系統(tǒng)之前的古典密碼學(xué)和近代密碼學(xué)都是現(xiàn)代人給予的定義,其研究算不上真正意義上的一門科學(xué)。直到1949年香農(nóng)發(fā)表了一篇名為《保密系統(tǒng)的通信理論》的著名論文,該文將信息論引入密碼,奠定了密碼學(xué)的理論基礎(chǔ),才開啟了現(xiàn)代密碼學(xué)時(shí)代。量子密碼術(shù)是一種新的重要加密方法,它利用單光子的量子性質(zhì),借助量子密鑰分配協(xié)議可實(shí)現(xiàn)數(shù)據(jù)傳輸?shù)目勺C性安全。量子密碼具有無條件安全的特性(即不存在受擁有足夠時(shí)間和計(jì)算機(jī)能力的竊聽者攻擊的危險(xiǎn)),而在實(shí)際通信發(fā)生之前,不需要交換私鑰。2工業(yè)大數(shù)據(jù)安全技術(shù)公鑰密碼從抽象的觀點(diǎn)來看,公鑰密碼體制就是一種陷門單向函數(shù)。我們說一個(gè)函數(shù)f是單向函數(shù),若對它的定義域中的任意x都易于計(jì)算f(x),而對f的值域中的幾乎所有的y,即使當(dāng)y為已知時(shí)要計(jì)算f-1(x)也是不可行的。若當(dāng)給定某些輔助信息(陷門信息)時(shí)易于計(jì)算f-1(y),就稱單向函數(shù)f是一個(gè)陷門單向函數(shù)。公鑰密碼體制就是基于這一原理而設(shè)計(jì)的,它將輔助信息(陷門信息)作為秘密密鑰。這類密碼的安全強(qiáng)度取決于它所依據(jù)的問題的計(jì)算復(fù)雜度。自從1976年公鑰密碼的思想出現(xiàn)以來,,國際上已經(jīng)提出了許多種公鑰密碼體制,如基于大整數(shù)因子分解問題的RSA體制和Rabin體制、基于有限域上離散對數(shù)問題的Diffie-Hellman公鑰體制和ElGamal體制、基于橢圓曲線上的離散對數(shù)問題的Diffie-Hellman公鑰體制和ElGamal體制、基于背包問題的Merkle-Hellman體制和Chor-Rivest體制、基于代數(shù)編碼理論的MeEliece體制、基于有限自動機(jī)理論的公鑰體制等。2工業(yè)大數(shù)據(jù)安全技術(shù)對稱密碼對稱密碼也稱為共享密鑰密碼,是指用相同的密鑰進(jìn)行加密解密,其中的“對稱”指的是加密密鑰和解密密鑰是相同的,或者用簡單的運(yùn)算就可以推導(dǎo)兩個(gè)密鑰。對稱密碼算法在邏輯上非常容易理解,因此出現(xiàn)得比較早,有時(shí)候也叫傳統(tǒng)密碼算法,以區(qū)別于公鑰密碼算法。對稱密碼算法有兩種主要形式:分組密碼和序列密碼。分組密碼的輸入數(shù)據(jù)和密鑰皆為固定長度,在運(yùn)算前會將數(shù)據(jù)按該長度分組,其加解密過程互逆。用抽象的觀點(diǎn)來看,分組密碼就是一種滿足下列條件的映射E:F2m×SK→F2m,對于每個(gè)k∈SK,E(k)是從F2m~F2m的一個(gè)置換??梢?,設(shè)計(jì)分組密碼的問題在于找到一種算法,能在密鑰控制下從一個(gè)足夠大且足夠“好”的置換子集合中簡單而迅速地選出一個(gè)置換。一個(gè)好的分組密碼應(yīng)該是既難破譯又容易實(shí)現(xiàn),即加密函數(shù)E(k)和解密函數(shù)D(k)都必須容易計(jì)算,但是至少要從方程y=E(x,k)或x=D(y,k)中求出密鑰k應(yīng)該是一個(gè)困難問題。2工業(yè)大數(shù)據(jù)安全技術(shù)對稱密碼隨著數(shù)據(jù)加密標(biāo)準(zhǔn)(dataencryptionstandard,DES)的出現(xiàn),人們對分組密碼展開了深入的研究和討論,現(xiàn)已有大量的分組密碼。如DES的各種變形、IDEA算法、SAFER系列算法、RC系列算法、Skipjack算法、FEAL系列算法、REDOC系列算法、LOKI系列算法、CAST系列算法、Khufu、Khafre、MMB、TEA、MacGuffin、SHARK、BEAR、LI-ON、CRAB、Blowfish、GOST、SQUARE、MISTY、Rijndael算法、AES及NESSIE候選算法等。在分組密碼設(shè)計(jì)技術(shù)發(fā)展的同時(shí),分組密碼分析技術(shù)也得到了空前的發(fā)展?,F(xiàn)在已有很多分組密碼分析技術(shù),如強(qiáng)力攻擊、差分密碼分析、線性密碼分析、差分-線性密碼分析、插值攻擊、密鑰相關(guān)攻擊、能量分析、錯(cuò)誤攻擊、定時(shí)攻擊等。2工業(yè)大數(shù)據(jù)安全技術(shù)對稱密碼序列密碼又稱流密碼,基于偽隨機(jī)序列完成數(shù)據(jù)加密,其密鑰長度可變。序列密碼具有實(shí)現(xiàn)簡單、便于硬件實(shí)施、加解密處理速度快、沒有或只有有限的錯(cuò)誤傳播等特點(diǎn),因此在實(shí)際應(yīng)用中,特別是專用或機(jī)密機(jī)構(gòu)中保持著優(yōu)勢,典型的應(yīng)用領(lǐng)域包括無線通信、外交通信。2工業(yè)大數(shù)據(jù)安全技術(shù)數(shù)據(jù)傳輸加密技術(shù)數(shù)據(jù)加密技術(shù)主要分為數(shù)據(jù)傳輸加密和數(shù)據(jù)存儲加密兩種。數(shù)據(jù)傳輸加密技術(shù)主要是對傳輸中的數(shù)據(jù)流進(jìn)行加密,常用的有鏈路加密、節(jié)點(diǎn)加密和端到端加密3種方式。2工業(yè)大數(shù)據(jù)安全技術(shù)鏈路加密鏈路加密是指傳輸數(shù)據(jù)僅在開放系統(tǒng)互聯(lián)(opensysteminterconnection,OSI)/參考模型(referencemodel,RM)數(shù)據(jù)鏈路層上進(jìn)行加密,只對中間的傳輸鏈路進(jìn)行加密,不考慮信源和信宿(也就是信號的發(fā)送節(jié)點(diǎn)和接收節(jié)點(diǎn))。鏈路加密過程中,所有消息在從源節(jié)點(diǎn)流出后,被傳輸之前需要由加密設(shè)備(加密機(jī)或者集成在網(wǎng)卡上的安全模塊)使用下一個(gè)鏈路的密鑰對數(shù)據(jù)進(jìn)行加密,在下一個(gè)中間節(jié)點(diǎn)接收消息前再由加密設(shè)備用本鏈路的密鑰進(jìn)行解密,在流出該中間節(jié)點(diǎn)進(jìn)行下一鏈路傳輸前再由加密設(shè)備使用下一個(gè)鏈路的密鑰對消息進(jìn)行加密,然后再進(jìn)行傳輸,直到消息到達(dá)目的節(jié)點(diǎn)。2工業(yè)大數(shù)據(jù)安全技術(shù)鏈路加密鏈路加密如圖3-14所示,鏈路加密只用于保護(hù)數(shù)據(jù)在通信節(jié)點(diǎn)間的傳輸安全,節(jié)點(diǎn)中的數(shù)據(jù)并不是加密的。在到達(dá)目的節(jié)點(diǎn)之前,一條消息可能要經(jīng)過許多條通信鏈路的傳輸,中間要經(jīng)過許多中間節(jié)點(diǎn),這樣也就需要加、解密多次。由于在每一個(gè)中間節(jié)點(diǎn)消息均被解密后重新進(jìn)行加密,因此包括路由信息在內(nèi)的鏈路上的所有數(shù)據(jù)在傳輸鏈路上均是以密文形式出現(xiàn)的。圖3-14鏈路加密示意圖2工業(yè)大數(shù)據(jù)安全技術(shù)節(jié)點(diǎn)加密節(jié)點(diǎn)加密與上面介紹的鏈路加密有相同的地方,也有一些不同。相同之處是它與鏈路加密一樣,是基于數(shù)據(jù)鏈路層的加密,兩者均在通信鏈路上為傳輸?shù)南⑻峁┌踩?,而且都需要在中間節(jié)點(diǎn)上先對消息進(jìn)行解密,然后進(jìn)行加密;不同之處是,,節(jié)點(diǎn)加密的加密功能是由節(jié)點(diǎn)自身的安全模塊完成的,而且消息在節(jié)點(diǎn)中處于加密狀態(tài),,而鏈路加密中間節(jié)點(diǎn)中的消息是以明文形式存在的。節(jié)點(diǎn)加密不允許消息在網(wǎng)絡(luò)節(jié)點(diǎn)以明文形式存在,消息到達(dá)節(jié)點(diǎn)時(shí),先把收到的消息進(jìn)行解密,然后采用另一個(gè)不同的密鑰進(jìn)行加密,再繼續(xù)進(jìn)行數(shù)據(jù)傳輸,以此類推。因此,它比鏈路加密更安全。2工業(yè)大數(shù)據(jù)安全技術(shù)節(jié)點(diǎn)加密由于在節(jié)點(diǎn)加密方式中要對所有傳輸?shù)臄?shù)據(jù)進(jìn)行加密,并且包括節(jié)點(diǎn)和傳輸鏈路都是加密的,所以要求報(bào)頭和路由信息以明文形式傳輸,以便中間節(jié)點(diǎn)能得到處理消息的信息。這樣就帶來了一定的安全風(fēng)險(xiǎn),特別是對于通信業(yè)務(wù)分析類型的攻擊。再加上也需要對每條鏈路分別加密,所以節(jié)點(diǎn)加密比較適合于經(jīng)過較少鏈路的兩端點(diǎn)間通信,如專線接入、幀中異步傳輸模式(asynchronoustransfermode,ATM)等接入方式,或者局域網(wǎng)內(nèi)部端點(diǎn)間的通信。圖3-15
節(jié)點(diǎn)加密2工業(yè)大數(shù)據(jù)安全技術(shù)端到端加密端到端加密是數(shù)據(jù)通信中的一端到另一端的全程加密方式,而且加密、解密過程只進(jìn)行一次,中間節(jié)點(diǎn)沒有這兩個(gè)過程,如圖3-16所示。在端到端加密方式中,數(shù)據(jù)在發(fā)送端被加密,只在接收端解密,中間節(jié)點(diǎn)處不以明文的形式出現(xiàn),但端到端加密是在應(yīng)用層完成的。圖3-16端到端加密示意圖2工業(yè)大數(shù)據(jù)安全技術(shù)端到端加密在端到端加密中,除報(bào)頭外的報(bào)文均以密文的形式貫穿于全部傳輸過程,只是在發(fā)送端和接收端才有加、解密設(shè)備,而在中間任何節(jié)點(diǎn)報(bào)文均不解密,因此中間節(jié)點(diǎn)不需要有密碼設(shè)備。與鏈路加密相比,由于只對通信的源端和目的端進(jìn)行加、解密操作,所以中間節(jié)點(diǎn)無須配備加、解密設(shè)備,可以減少整個(gè)加密過程和密碼設(shè)備的數(shù)量,大大降低了加密成本。另一方面,信息是由報(bào)頭和報(bào)文組成的,報(bào)文為要傳送的信息,報(bào)頭為路由選擇信息,由于網(wǎng)絡(luò)傳輸中涉及路由選擇,在端到端加密時(shí),通道上的每一個(gè)中間節(jié)點(diǎn)雖不對報(bào)文解密,但為將報(bào)文傳送到目的地,必須檢查路由選擇信息,因此只能加密報(bào)文而不能對報(bào)頭加密。這與節(jié)點(diǎn)加密是相同的,同樣會被某些通信分析人員發(fā)覺而從中獲取某些敏感信息。2工業(yè)大數(shù)據(jù)安全技術(shù)端到端加密端到端加密方式總體成本低些,并且與鏈路加密和節(jié)點(diǎn)加密相比更可靠,更容易設(shè)計(jì)、實(shí)現(xiàn)和維護(hù)。端到端加密還避免了其他加密系統(tǒng)固有的同步問題,因?yàn)槊總€(gè)報(bào)文包均是獨(dú)立被加密的,所以一個(gè)報(bào)文包所發(fā)生的傳輸錯(cuò)誤不會影響后續(xù)的報(bào)文包。此外,從用戶對安全需求的直覺上講,端到端加密更自然些。單個(gè)用戶可能會選用這種加密方法,以便不影響網(wǎng)絡(luò)上的其他用戶。2工業(yè)大數(shù)據(jù)安全技術(shù)數(shù)據(jù)存儲加密技術(shù)數(shù)據(jù)加密技術(shù)在數(shù)據(jù)存儲階段主要可以分為文件級加密、數(shù)據(jù)庫級加密、介質(zhì)級加密、嵌入式加密設(shè)備以及應(yīng)用加密。2工業(yè)大數(shù)據(jù)安全技術(shù)文件級加密文件級加密可以在主機(jī)上實(shí)現(xiàn),也可以在網(wǎng)絡(luò)附加存儲(NAS)這一層以嵌入式實(shí)現(xiàn)。對于某些應(yīng)用來講,這種加密方法也會引起性能問題,在執(zhí)行數(shù)據(jù)備份操作時(shí),會帶來某些局限性,對數(shù)據(jù)庫進(jìn)行備份時(shí)更是如此。特別是,文件級加密會導(dǎo)致密鑰管理相當(dāng)困難,從而需要另外一層管理,根據(jù)文件級目錄位置來識別相關(guān)密鑰,并進(jìn)行關(guān)聯(lián)。在文件層進(jìn)行加密也有其不足的一面,因?yàn)槠髽I(yè)所加密的數(shù)據(jù)仍然比企業(yè)可能需要使用的數(shù)據(jù)要多得多。如果企業(yè)關(guān)心的是無結(jié)構(gòu)數(shù)據(jù),如法律文檔、工程文檔、報(bào)告文件或其他不屬于組織嚴(yán)密的應(yīng)用數(shù)據(jù)庫中的文件,那么文件層加密是一種理想的方法。如果數(shù)據(jù)在文件層被加密,當(dāng)其寫回存儲介質(zhì)時(shí),寫入的數(shù)據(jù)都是經(jīng)過加密的。任何獲得存儲介質(zhì)訪問權(quán)的人都不可能找到有用的信息。對這些數(shù)據(jù)進(jìn)行解密的唯一方法就是使用文件層的加密/解密機(jī)制。2工業(yè)大數(shù)據(jù)安全技術(shù)數(shù)據(jù)庫級加密當(dāng)數(shù)據(jù)存儲在數(shù)據(jù)庫里面時(shí),數(shù)據(jù)庫級加密就能實(shí)現(xiàn)對數(shù)據(jù)字段進(jìn)行加密。這種部署機(jī)制又叫列級加密,因?yàn)樗窃跀?shù)據(jù)庫表中的列這一級來進(jìn)行加密的。對于將敏感數(shù)據(jù)全部放在數(shù)據(jù)庫中一列或者兩列的公司而言,數(shù)據(jù)庫級加密比較經(jīng)濟(jì)。不過,因?yàn)榧用芎徒饷芤话阌绍浖皇怯布韴?zhí)行,所以這個(gè)過程會導(dǎo)致整個(gè)系統(tǒng)的性能出現(xiàn)讓人無法承受的下降。由于數(shù)據(jù)庫中數(shù)據(jù)的結(jié)構(gòu)和組織都非常明確,因此對特定數(shù)據(jù)條目進(jìn)行控制也就更加容易。用戶可以對一個(gè)具體的列進(jìn)行加密,如國家識別碼列或工資列,而且每個(gè)列都會有自己的密鑰。根據(jù)數(shù)據(jù)庫用戶的不同,企業(yè)可以有效地控制其密鑰,因而能夠控制誰有權(quán)對該數(shù)據(jù)條目進(jìn)行解密。通過這種方式,企業(yè)只需要對關(guān)鍵數(shù)據(jù)進(jìn)行加密即可。2工業(yè)大數(shù)據(jù)安全技術(shù)數(shù)據(jù)庫級加密這種加密方法所面臨的挑戰(zhàn)是,用戶希望加密的許多數(shù)據(jù)條目在應(yīng)用查詢中可能也具備同樣的值。因此系統(tǒng)設(shè)計(jì)師應(yīng)當(dāng)確保加密數(shù)據(jù)不參加查詢,防止加密對數(shù)據(jù)庫的性能造成負(fù)面影響。例如,如果賬戶編號已經(jīng)加密,而用戶希望查找一系列的編號,那么系統(tǒng)就必須讀取整個(gè)表,解密并對其中的值進(jìn)行對比。如果不使用數(shù)據(jù)庫索引,那么這種原本只需要三秒鐘就可執(zhí)行完畢的任務(wù)可能會變成一個(gè)三小時(shí)的漫長查詢。但這種方法也有積極的方面,數(shù)據(jù)庫廠商已經(jīng)在其新版產(chǎn)品中加入了一些服務(wù),能夠幫助企業(yè)解決這一問題。2工業(yè)大數(shù)據(jù)安全技術(shù)介質(zhì)級加密介質(zhì)級加密是一種新出現(xiàn)的方法,它涉及對存儲設(shè)備(包括硬盤和磁帶)上的靜態(tài)數(shù)據(jù)進(jìn)行加密。雖然介質(zhì)級加密為用戶提供了很高的透明度,但提供的保護(hù)作用非常有限:數(shù)據(jù)在傳輸過程中沒有經(jīng)過加密,只有到達(dá)了存儲設(shè)備,數(shù)據(jù)才進(jìn)行加密,所以介質(zhì)級加密只能防范有人竊取物理存儲介質(zhì)。另外,要是在異構(gòu)環(huán)境使用這項(xiàng)技術(shù),可能需要使用多個(gè)密鑰管理應(yīng)用軟件,這就增加了密鑰管理過程的復(fù)雜性,從而加大了數(shù)據(jù)恢復(fù)面臨的風(fēng)險(xiǎn)。2工業(yè)大數(shù)據(jù)安全技術(shù)嵌入式加密設(shè)備嵌入式加密設(shè)備放在存儲區(qū)域網(wǎng)(SAN)中,介于存儲設(shè)備和請求加密數(shù)據(jù)的服務(wù)器之間。這種專用設(shè)備可以對通過上述這些設(shè)備一路傳送到存儲設(shè)備的數(shù)據(jù)進(jìn)行加密,可以保護(hù)靜態(tài)數(shù)據(jù),然后對返回到應(yīng)用的數(shù)據(jù)進(jìn)行解密。嵌入式加密設(shè)備很容易安裝成點(diǎn)對點(diǎn)解決方案,但擴(kuò)展起來難度大,或者成本高。如果將其部署在端口數(shù)量多的企業(yè)環(huán)境,或者多個(gè)站點(diǎn)需要加以保護(hù)時(shí),就會出現(xiàn)問題。這種情況下,跨分布式存儲環(huán)境安裝成批硬件設(shè)備所需的成本會高得驚人。此外,每個(gè)設(shè)備必須單獨(dú)或者分成小批進(jìn)行配置及管理,這給管理添加了沉重負(fù)擔(dān)。2工業(yè)大數(shù)據(jù)安全技術(shù)應(yīng)用加密最后一種方法可能也是最安全的方法。將加密技術(shù)集成在商業(yè)應(yīng)用中是加密級別的最高境界,也是最接近“端對端”加密解決方案的方法。在這一層,企業(yè)能夠明確地知道誰是用戶,以及這些用戶的典型訪問范圍,企業(yè)可以將密鑰的訪問控制與應(yīng)用本身緊密地集成在一起,這樣就可以確保只有特定的用戶能夠通過特定的應(yīng)用訪問數(shù)據(jù),從而獲得關(guān)鍵數(shù)據(jù)的訪問權(quán),任何試圖在該點(diǎn)下游訪問數(shù)據(jù)的人都無法達(dá)到自己的目的。在這一層,集成加密技術(shù)確實(shí)有助于避免數(shù)據(jù)庫層的性能受到影響,因?yàn)橛脩艨梢愿淖儾樵兊念愋?。然而,雖然這種方法是最安全的,但許多數(shù)據(jù)條目需要通過被多種不同的應(yīng)用訪問,企業(yè)對這種應(yīng)用甚至不同用戶群的變化要進(jìn)行及時(shí)的管理,事實(shí)上,如果企業(yè)使用廠商提供的打包應(yīng)用,它們很可能根本無法實(shí)施這一層的解決方案,因?yàn)槠髽I(yè)不可能獲得這些應(yīng)用的源代碼。2工業(yè)大數(shù)據(jù)安全技術(shù)區(qū)塊鏈加密技術(shù)隨著互聯(lián)網(wǎng)與物聯(lián)網(wǎng)技術(shù)的發(fā)展,部分應(yīng)用程序?yàn)榱讼蛴脩籼峁└珳?zhǔn)的服務(wù),需要采集各種用戶數(shù)據(jù),而且采集的用戶信息越來越私密,涉及隱私的部分越來越多,而在大數(shù)據(jù)橫行的互聯(lián)網(wǎng)環(huán)境之下,每個(gè)人都可以利用這些信息去做一些可以獲取利益的事,比如根據(jù)個(gè)人商品的買賣記錄推廣商品,根據(jù)網(wǎng)站或者APP注冊的手機(jī)號進(jìn)行電話推銷或者詐騙等。目前現(xiàn)有的框架結(jié)構(gòu)融合了大量具有“所有權(quán)”特征的數(shù)據(jù),這些數(shù)據(jù)往往牽扯到個(gè)人隱私權(quán)限,雖然平臺也對此采取了一些安全措施,但只要中心服務(wù)器一旦被攻破,破壞者就可以訪問到所有數(shù)據(jù)。同時(shí),為了方便統(tǒng)一管理,在中心化服務(wù)器上集中了所有的關(guān)系權(quán)限隱私的數(shù)據(jù),這樣一來,用戶也必須依賴于這一模式,依賴于第三方的中心服務(wù)器,第三方機(jī)構(gòu)大量收集和控制個(gè)人隱私數(shù)據(jù),已威脅到其信息安全,在大數(shù)據(jù)時(shí)代下,這樣的體系結(jié)構(gòu)存在著太多不穩(wěn)定因素。而去中心化的區(qū)塊鏈技術(shù)就很好地解決了這一問題,區(qū)塊鏈既是分布式且可驗(yàn)證的公共賬本,還有著去信任、匿名性等特性,可以作為網(wǎng)絡(luò)安全的重要技術(shù)。2工業(yè)大數(shù)據(jù)安全技術(shù)區(qū)塊鏈概念區(qū)塊鏈(blockchain)是一種基于分布式數(shù)據(jù)記錄技術(shù),對一段時(shí)間內(nèi)所有交易或者電子行為進(jìn)行記錄,并以密碼學(xué)方式保證信息不可篡改和不可偽造的分布式存儲的設(shè)計(jì)思路,具有去中心化、不可篡改、全程留痕、可以追溯、集體維護(hù)、公開透明等特點(diǎn),這些特點(diǎn)保證了區(qū)塊鏈的“誠實(shí)”與“透明”,為用戶對區(qū)塊鏈的信任奠定基礎(chǔ)。區(qū)塊鏈豐富的應(yīng)用場景,基本上都基于區(qū)塊鏈能夠解決信息不對稱問題,實(shí)現(xiàn)多個(gè)主體之間的協(xié)作信任與一致行動。2工業(yè)大數(shù)據(jù)安全技術(shù)區(qū)塊鏈技術(shù)的架構(gòu)及類型圖3-17區(qū)塊鏈技術(shù)架構(gòu)一般說來,區(qū)塊鏈系統(tǒng)由數(shù)據(jù)層、網(wǎng)絡(luò)層、共識層、激勵(lì)層、合約層和應(yīng)用層組成,如圖3-17所示。其中,數(shù)據(jù)層封裝了底層數(shù)據(jù)區(qū)塊以及相關(guān)的數(shù)據(jù)加密及時(shí)間戳等基礎(chǔ)數(shù)據(jù)和基本算法;網(wǎng)絡(luò)層則包括分布式組網(wǎng)機(jī)制、數(shù)據(jù)傳播機(jī)制和數(shù)據(jù)驗(yàn)證機(jī)制等;共識層主要封裝網(wǎng)絡(luò)節(jié)點(diǎn)的各類共識算法;激勵(lì)層將經(jīng)濟(jì)因素集成到區(qū)塊鏈技術(shù)體系中來,主要包括經(jīng)濟(jì)激勵(lì)的發(fā)行機(jī)制和分配機(jī)制等;合約層主要封裝各類腳本、算法和智能合約,是區(qū)塊鏈可編程特性的基礎(chǔ);應(yīng)用層則封裝了區(qū)塊鏈的各種應(yīng)用場景和案例。該模型中,基于時(shí)間戳的鏈?zhǔn)絽^(qū)塊結(jié)構(gòu)、分布式節(jié)點(diǎn)的共識機(jī)制、基于共識算力的經(jīng)濟(jì)激勵(lì)和靈活可編程的智能合約是區(qū)塊鏈技術(shù)最具代表性的創(chuàng)新點(diǎn)。2工業(yè)大數(shù)據(jù)安全技術(shù)區(qū)塊鏈一般可分為以下幾種:1)公有區(qū)塊鏈(publicblockchain):是指世界上任何個(gè)體或者團(tuán)體都可以發(fā)送交易,且交易能夠獲得該區(qū)塊鏈的有效確認(rèn),任何人都可以參與其共識過程。公有區(qū)塊鏈?zhǔn)亲钤绲膮^(qū)塊鏈,,也是應(yīng)用最廣泛的區(qū)塊鏈,各大比特幣系列的虛擬數(shù)字貨幣均基于公有區(qū)塊鏈,世界上有且僅有一條該幣種對應(yīng)的區(qū)塊鏈。2)行業(yè)區(qū)塊鏈(consortiumblockchain):由某個(gè)群體內(nèi)部指定多個(gè)預(yù)選的節(jié)點(diǎn)為記賬人,每個(gè)塊的生成由所有的預(yù)選節(jié)點(diǎn)共同決定(預(yù)選節(jié)點(diǎn)參與共識過程),其他接入節(jié)點(diǎn)可以參與交易,但不干預(yù)記賬過程(本質(zhì)上還是托管記賬,只是變成分布式記賬,預(yù)選節(jié)點(diǎn)的多少、如何確定每個(gè)塊的記賬者成為該區(qū)塊鏈的主要風(fēng)險(xiǎn)點(diǎn)),其他任何人都可以通過該區(qū)塊鏈開放的API進(jìn)行限定查詢。3)私有區(qū)塊鏈(privateblockchain):僅僅使用區(qū)塊鏈的總賬技術(shù)進(jìn)行記賬,可以是一個(gè)公司,也可以是個(gè)人獨(dú)享該區(qū)塊鏈的寫入權(quán)限,本鏈與其他的分布式存儲方案沒有太大區(qū)別。傳統(tǒng)金融都是想實(shí)驗(yàn)嘗試私有區(qū)塊鏈,而公鏈的應(yīng)用例如比特幣已經(jīng)工業(yè)化,私鏈的應(yīng)用產(chǎn)品還在摸索當(dāng)中。2工業(yè)大數(shù)據(jù)安全技術(shù)區(qū)塊鏈技術(shù)的應(yīng)用區(qū)塊鏈技術(shù)在各個(gè)領(lǐng)域都有創(chuàng)新性的應(yīng)用。截至目前,金融領(lǐng)域是區(qū)塊鏈技術(shù)介入最多、應(yīng)用最廣泛的一個(gè)領(lǐng)域。首先,金融領(lǐng)域?qū)^(qū)塊鏈的第一個(gè)需求是數(shù)字貨幣,標(biāo)志性的應(yīng)用是比特幣;其次,數(shù)字貨幣的成功發(fā)行大大刺激了傳統(tǒng)銀行業(yè),銀行、股權(quán)/有價(jià)證券交易領(lǐng)域、保險(xiǎn)領(lǐng)域也紛紛表現(xiàn)出了對區(qū)塊鏈技術(shù)的強(qiáng)烈需求。由于金融領(lǐng)域與社會經(jīng)濟(jì)直接掛鉤,因此其對區(qū)塊鏈技術(shù)的探索也是走在時(shí)代最前沿的,技術(shù)需求會更快地轉(zhuǎn)化為動力,加速區(qū)塊鏈技術(shù)應(yīng)用的落地。目前,區(qū)塊鏈在金融領(lǐng)域的應(yīng)用主要集中在數(shù)字化貨幣、跨國支付與清算、私有證券及資產(chǎn)數(shù)字化記錄上。在工業(yè)領(lǐng)域,區(qū)塊鏈技術(shù)也有著極大的應(yīng)用前景。以下列舉了區(qū)塊鏈技術(shù)在工業(yè)互聯(lián)網(wǎng)領(lǐng)域的主要應(yīng)用。2工業(yè)大數(shù)據(jù)安全技術(shù)工業(yè)互聯(lián)網(wǎng)設(shè)備工控安全經(jīng)過智能化改造的“三啞”設(shè)備(沒有入網(wǎng)、不能自動匯報(bào)、不能透明化管理的設(shè)備)具備了互聯(lián)互通的能力,但伴隨而來的信息安全問題也從虛擬互聯(lián)網(wǎng)世界向物理世界中的真實(shí)工業(yè)制造設(shè)備上遷移。傳統(tǒng)的防火墻、網(wǎng)閘等中心化防護(hù)設(shè)備及工控防護(hù)策略缺乏有效的交互校驗(yàn)機(jī)制,仍存在較大的脆弱性。特別是對于流程工業(yè)而言,一旦關(guān)鍵控制邏輯被篡改,其故障流將隨生產(chǎn)的進(jìn)行向制造流程上下游傳遞?;趨^(qū)塊鏈設(shè)計(jì)思路,通過將設(shè)備安全信息基于去中心化存儲策略,存放于在網(wǎng)節(jié)點(diǎn),可有效避免因單點(diǎn)的工業(yè)流程控制程序遭到惡意篡改造成的工業(yè)制造安全問題。2工業(yè)大數(shù)據(jù)安全技術(shù)工業(yè)互聯(lián)網(wǎng)數(shù)據(jù)安全隨著云網(wǎng)公司對工業(yè)大數(shù)據(jù)應(yīng)用的不斷深入,將有海量數(shù)據(jù)匯入云網(wǎng)的存儲端,傳統(tǒng)的中心化數(shù)據(jù)管理難以確保能夠在不侵犯數(shù)據(jù)隱私的情況下開展數(shù)據(jù)資產(chǎn)運(yùn)營。區(qū)塊鏈具備可信任性、安全性和不可篡改性,可有效保障用戶數(shù)據(jù)資產(chǎn)的安全、可靠和不可篡改,為云網(wǎng)公司開展大數(shù)據(jù)運(yùn)營業(yè)務(wù)筑牢安全基礎(chǔ)。2工業(yè)大數(shù)據(jù)安全技術(shù)工業(yè)大數(shù)據(jù)存儲和挖掘工業(yè)大數(shù)據(jù)運(yùn)營的核心問題是數(shù)據(jù)存儲,隨著“互聯(lián)網(wǎng)+”行動的持續(xù)推進(jìn),不斷增加的工業(yè)數(shù)據(jù)資源也加大了存儲、計(jì)算介質(zhì)的負(fù)載?;趨^(qū)塊鏈技術(shù)的去中心化理念,通過共享經(jīng)濟(jì)模式,盤活網(wǎng)絡(luò)上的存量存儲和計(jì)算資源,將有效緩解工業(yè)大數(shù)據(jù)運(yùn)營商的數(shù)據(jù)存儲及運(yùn)維壓力,進(jìn)一步有效實(shí)現(xiàn)數(shù)據(jù)挖掘和價(jià)值增值。2工業(yè)大數(shù)據(jù)安全技術(shù)云制造認(rèn)證服務(wù)供應(yīng)鏈管理機(jī)制難以實(shí)現(xiàn)物流全流程實(shí)時(shí)追溯,為工業(yè)物料中間鏈的偷、跑、冒、漏提供了風(fēng)險(xiǎn)漏洞。以區(qū)塊鏈設(shè)計(jì)理念,將供應(yīng)鏈管理與工業(yè)互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)新云制造認(rèn)證服務(wù)技術(shù)和模式,利用區(qū)塊鏈數(shù)據(jù)庫的源頭追蹤功能實(shí)時(shí)追蹤物料流轉(zhuǎn)信息,可以為供應(yīng)鏈中的物流信息提供云制造認(rèn)證服務(wù),支撐工業(yè)互聯(lián)網(wǎng)跨企業(yè)業(yè)務(wù)協(xié)同,實(shí)現(xiàn)供應(yīng)鏈全鏈透明。2工業(yè)大數(shù)據(jù)安全技術(shù)云制造協(xié)同管理隨著工業(yè)制造向小批量個(gè)性化制造的趨勢發(fā)展,對企業(yè)精益制造的要求持續(xù)升高。然而,當(dāng)前的中國制造企業(yè)普遍存在
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年廣州市正骨醫(yī)院合同制人員招聘備考題庫及完整答案詳解1套
- 后勤上半年工作總結(jié)15篇
- 2025年博思睿招聘(派遣至海寧市硤石街道辦事處)備考題庫及完整答案詳解1套
- 2026年網(wǎng)絡(luò)平臺責(zé)任保險(xiǎn)合同中
- 2026年航空貨運(yùn)包機(jī)服務(wù)合同
- 2025年綿竹市衛(wèi)生健康局綿竹市人力資源和社會保障局關(guān)于大學(xué)生鄉(xiāng)村醫(yī)生專項(xiàng)招聘的備考題庫附答案詳解
- 鄭州市規(guī)劃勘測設(shè)計(jì)研究院有限公司2026年崗位招聘備考題庫及1套完整答案詳解
- 2025年民生銀行沈陽分行社會招聘備考題庫及參考答案詳解一套
- 2026年物業(yè)管理軟件數(shù)據(jù)遷移合同
- 2025年威海市檢察機(jī)關(guān)公開招聘聘用制書記員31人備考題庫完整答案詳解
- 《病區(qū)醫(yī)院感染管理規(guī)范》試題及答案
- 園林綠化養(yǎng)護(hù)項(xiàng)目投標(biāo)書范本
- 烷基化裝置操作工安全培訓(xùn)模擬考核試卷含答案
- 汽車租賃行業(yè)組織架構(gòu)及崗位職責(zé)
- 全國碩士研究生2024年-管理類綜合能力真題(管理類聯(lián)考)
- 長津湖課件教學(xué)課件
- 聚焦前沿:2025年職業(yè)教育產(chǎn)教融合共同體建設(shè)難題與對策研究
- 2025年廣西國家工作人員學(xué)法用法考試試題及答案
- DB41T 990-2014 生產(chǎn)建設(shè)項(xiàng)目水土保持單元工程質(zhì)量評定標(biāo)準(zhǔn)
- (2025秋新版)蘇教版科學(xué)三年級上冊全冊教案
- 《金融風(fēng)險(xiǎn)合規(guī)管理》全套教學(xué)課件
評論
0/150
提交評論