馬曉亭
數字圖書館大數據分布式存儲架構模式與策略研究
馬曉亭
數字圖書館傳統的關系數據庫數據存儲方式已不能滿足大數據存儲與處理需求,為解決傳統關系型數據庫在海量數據存儲和訪問效率中的瓶頸問題,論文提出了一種數字圖書館安全、有效的大數據公布式存儲架構。該存儲架構具有良好的可擴展性、容錯性和存儲性能,尤其針對海量的非結構化、半結構化數據,其性能優勢更加明顯。
數字圖書館大數據海量數據存儲分布式存儲架構非結構化數據半結構化數據
隨著信息技術的發展與讀者閱讀需求轉變,云計算、大數據、物聯網和傳感器網絡等技術,已成為數字圖書館構建與用戶服務保障的關鍵技術。新技術的應用與服務模式的變革,大幅提高了圖書館服務系統的結構科學性、保障力和用戶滿意度。但是,圖書館在用戶服務與系統管理、讀者閱讀活動保障、自動傳感器數據采集和移動閱讀終端閱讀等過程中,產生了海量和級數遞增的大數據資源,圖書館數據環境呈現數據體量巨大(Volume)、類型繁多(Variety)、價值密度低(Value)、處理速度快(Velocity)的4V大數據特征。此外,非結構化數據占據圖書館總量的85%以上,并且讀者對大數據資源的價值密度和可用性要求較高。因此,加強大數據存儲系統架構的科學性、安全性、可用性和可擴展性,確保大數據資源可以安全、高效、靈活和經濟地被存儲、訪問、查詢和分析,是關系圖書館數據存儲與管理效率,保證大數據資源挖掘和數據價值發現有效的關鍵[1]。
1.1圖書館大數據資源具有海量、多源的特點
圖書館大數據資源通常由讀者個體特征數據、社會關系數據、系統運營與管理數據、視頻監控數據、物聯網傳感器數據、閱讀終端日志、讀者閱讀行為數據(主要由用戶博客、微博、論壇和讀者反饋信息)等組成,具有數據海量、多源、非結構化和數據總量級數增長的特點。隨著用戶閱讀模式和需求的轉變,傳統的存儲體系已不能滿足海量激增的大數據資源存儲需求,要求大數據資源庫具備PB級的數據存儲規模,并可根據未來服務需求進行存儲性能升級和擴展。此外,要求大數據存儲平臺應完成對結構化數據、非結構化數據和對象數據的統一存儲與管理,并保證存儲系統具有高效、簡單、經濟和高資源整合的優點。存儲系統應支持核心大數據的安全、即時備份,且備份空間應占據總系統總存儲空間的30%以上[2]。
1.2存儲架構應實現從傳統IT環境向大數據環境的平衡過渡
首先,大數據時代,圖書館傳統IT環境下的集中式存儲架構,已不能滿足用戶對大數據存儲服務海量、高效的需求,管理員難以通過對存儲設備容量、性能的擴展,滿足圖書館大數據服務對存儲系統的功能需求。其次,傳統IT環境下,圖書館通常會通過增加存儲系統模塊的方式來擴展數據存儲能力,導致存儲系統結構復雜、管理難度大、存儲負載不均衡和易產生數據孤島。因此,存儲架構必須實現由傳統IT環境下的集中式存儲向大數據環境下的分布式存儲架構轉變。第三,隨著讀者大數據服務需求的發展,圖書館應將存儲系統轉變為以讀者大數據服務保障能力建設為中心,提高大數據存儲、管理、部署和遷移的安全性、效率、可用性與可控性。第四,大數據存儲架構必須增強軟、硬件平臺的開放性,消除傳統存儲平臺不同系統與功能模塊之間的層次化、封閉性和隔離性,實現大數據資源的最優化存儲與部署[3]。
1.3大數據存儲的可用性與成本控制問題
大數據存儲的可用性與成本控制問題,關系圖書館大數據資源挖掘、價值發現和分析決策的有效性。首先,大數據存儲系統應具備多核并行處理和快速閃存的功能,可滿足大數據應用對存儲系統IOPs(每秒進行讀寫操作次數)的需求。其次,大數據存儲平臺應具備較高的存儲效率和資源利用率,可通過監控系統對存儲工作負載、系統存儲效率、動態資源配置與分配、存儲資源的優化水平進行實時監控。第三,大數據存儲平臺應具備較強的兼容性和可擴展性,可滿足傳統存儲架構向大數據存儲演進的系統硬件功能需求。第四,大數據存儲管理算法應適應新的存儲系統架構與存儲介質運營需求,堅持以讀者需求和大數據服務驅動原則,大幅降低大數據存儲的能量損耗和成本投入。
1.4大數據存儲系統應構建新型的指標參數體系
根據圖書館大數據存儲系統的結構科學性、系統功能性、存儲可用性和可控性需求,存儲平臺系統指標體系應重點關注系統的結構復雜性、可擴展性、運行效率、靈活性、數據庫弱一致性和建設經濟性等。涉及大數據存儲系統功能性和可控性的指標體系,主要應包括數據的安全性、長期可存儲性、數據可訪問性、數據定位與查詢的效率、存儲系統的數據吞吐量與延遲、大數據存儲節點的部署科學性等參數指標。此外,還應根據指標參數對圖書館大數據存儲系統的結構科學性與功能影響力,以及讀者大數據服務的內容與模式轉變程度,及時對指標的內容、參數和影響因子進行動態調整[4]。
1.5云計算技術在大數據存儲服務中具有局限性
對于云存儲圖書館可通過購買云服務商公共云存儲服務、自建私有云平臺、構建混合云存儲平臺(公有云與私有云相結合)三種方式,實現大數據資源的存儲、管理和應用。
公共云存儲服務由圖書館交付云服務商來保障完成,具有服務部署快捷、存儲成本低廉、按需分配資源和服務連續性的優點。但也存在著圖書館將所有大數據資源傳輸至公有云端,圖書館和其他用戶共享云服務商的存儲空間和管理服務,具有安全性低、數據可控性差和QOS(用戶服務質量)無保證的缺點。圖書館自建私有云存儲平臺的方式,雖然具備較高的安全性、存儲效率和數據可控性,但也存在著私有云平臺的建設、運營成本高昂,對用戶技術水平和管理員素質要求高的問題。混合云雖然有效解決了公共云和私有云在大數據存儲中存在的問題,但也存在著跨公共云和私有云分配應用復雜,大數據資源存儲安全需求評估和遷移管理難度大的問題[5]。
2.1圖書館大數據分布式存儲架構設計
圖書館大數據環境由于具有數據海量、級數遞增、數據結構多樣和價值密度低,存儲平臺用戶服務過程呈現數據一次寫入和多次讀出的特點,因而存儲平臺應具備系統存儲容量可依據大數據服務需求橫向擴展,可支持不同數據接口的數據采集設備和閱讀終端、多種數據訪問協議、全局命名空間和支持面向對象的數據管理。此外,圖書館在大數據存儲平臺部署過程中,應具備系統快速部署、高速存儲與讀取、大寬帶網絡連接、PB級海量存儲、多級數據冗余備份、智能的數據檢索和查詢能力。同時,存儲系統應具備較高安全性和7×24小時運行不中斷的能力,并支持系統的在線容量擴展和數據遷移。
結合圖書館大數據資源存儲和讀者服務需求,本文設計的圖書館大數據存儲平臺系統結構如圖1所示。

圖1 圖書館大數據分布式存儲平臺系統結構圖
大數據存儲系統由現有數據存儲平臺、分布式數據存儲層、分布式數據處理層和大數據服務接口層4部分組成。現有數據存儲平臺主要完成所采集數據的初選和過濾,通過減少原始大數據資源的數據總量和增加其價值密度,降低大數據的存儲負載和縮短大數據應用時間。分布式數據存儲層主要由閃存和直連存儲(DAS)系統組成。閃存作為DAS系統的二級緩存,具有平均無故障運營時間長、安全性高、數據讀寫速度快、能耗低和無噪音的特點。DAS基于閃存的二級存儲服務支持,可安全、高效地通過存儲系統感知器件端、中間層和應用層的服務,安全、高效、均衡、經濟地實現大數據的分布式協同存儲。分布式數據處理層主要由分布式并行計算框架和大數據管理、挖掘、處理、分析系統組成,基于分布式數據存儲層支持而完成大數據的價值提取和知識發現。大數據服務接口層是圖書館大數據服務的數據接口,可為不同的大數據應用系統提供安全、高效、經濟、可靠的數據傳輸服務[6]。
2.2圖書館大數據分布式存儲平臺構建與管理策略
2.2.1存儲平臺構建應以大數據應用保障為核心
圖書館大數據應用呈現“4V”的特性。因此,在大數據存儲平臺構建中,應以大數據應用保障能力建設和發揮大數據“4V”價值為核心,構建安全、高效、經濟和低碳的圖書館大數據資源存儲平臺。
首先,管理員應仔細分析圖書館讀者大數據服務的內容、模式和方法,將構建符合用戶大數據服務需求的存儲與管理架構放在首要位置,再依據大數據服務對存儲平臺的安全性、功能性、容量、I/O吞吐能力和硬件設施投資收益等要求,保障存儲平臺硬件設施在設備參數、接口協議標準和管理方式上滿足大數據服務的需求。其次,大數據存儲平臺構建應注重系統的可擴展性建設,應采用Scale-Out(橫向擴展)的系統架構,實現多存儲節點的全冗余部署,并依據圖書館大數據業務的需求變化和數據存儲量增長實際,對存儲空間、帶寬和處理能力進行實時的動態擴展。第三,大數據存儲平臺構建應以大數據存儲服務生命周期規律為依據,重點關注系統的海量并行存儲能力、全局命名空間、接口標準、讀寫性能、可管理性、系統架構開放性、多級數據冗余和多級存儲備份等,實現大數據資源存儲、復制、重構、遷移、分析和歸檔一體化的全生命周期管理[7]。
2.2.2存儲系統構建應以讀者服務需求為依據
圖書館大數據除呈現海量、級數增長、非結構化和價值密度低的特征外,還具有數據一致性強弱不同、訪問冷熱度不均勻、數據讀寫操作負載波峰與波谷差異大的特點。因此,讀者大數據服務要求存儲系統具有高效、安全、低延遲、高并發、快流量和可擴展的特點。
大數據時代,圖書館服務數據呈現多媒體表現、更新頻繁、讀寫速度高和頁面數據量龐大的特點。因此,管理員應采用可預測網頁變化的增量式更新模型,通過將磁盤的隨機寫入轉化為批量的順序寫入,來大幅縮短網頁數據的更新周期和提高用戶信息搜索的時效性。其次,應根據大數據存儲系統的結構、熱點數據特征和用戶數據讀寫模式,對大數據存儲訪問、數據索引、熱點數據緩存、I/O緩存等方面進行全局優化,并通過提高數據的讀取速率和系統吞吐量來降低讀者在線訪問延遲。第三,對于關系讀者服務質量、圖書館管理與運營效率的重要數據,應采取子數據中心備份和多副本存儲的模式,提高數據的安全性和可用性。第四,在圖書館大數據存儲平臺構建中,應將大數據存儲系統、存儲分析系統、大數據挖掘與過濾系統、計算系統整合到一個大的系統平臺之上,實現數據采集、數據過濾和挖掘、數據存儲、數據分析與歸檔一體化,提高大數據存儲的效率、安全性、可控性和可用性。
2.2.3大數據存儲平臺應具備智慧管理功能
圖書館大數據存儲系統應具備較強的智慧管理功能,可高效、自動地實現大數據融合存儲、查詢、分析和歸檔的全生命周期管理。同時,應支持對多種設備接口、通信協議和數據類型的結構化與非結構化數據,進行統一存儲、歸檔與分析,避免數據孤島現象發生。其次,管理系統應結構簡單和易于控制,可對存儲系統硬件設備、軟件系統和存儲區域網絡進行統一的管理。通過對所采集的存儲系統運營狀態反饋數據進行性能統計和智能分析,實現系統的自動化精簡配置和存儲空間的動態分配。第三,圖書館應增強基于大數據存儲管理算法的科學性,實現大數據資源存儲的智能、虛擬化管理,解決大數據環境下圖書館大數據存儲系統所存在的存儲介質異構、數據分片和存儲資源分配難度大的問題。第四,大數據存儲平臺建設和系統運營過程應加強能耗管理。圖書館在存儲系統構建中應盡量使用閃存、PCM等低能耗的新型存儲介質。同時,還應采用能耗查詢優化、數據存儲節點負載均衡、能耗均衡的集群存儲分配、面向集群的高能效緩沖區置換算法等,實現大數據存儲平臺的低碳運營和綠色存儲[8]。
2.2.4存儲平臺應安全、可控和易于動態擴展
在大數據存儲系統基礎設施建設中,圖書館應采用分布式存儲系統結構來保證系統架構的可擴展性。通過對存儲節點的平均負載配置實現節點間的存儲負荷均衡,保證系統整體具有較高的安全性、存儲效率、可控性和可用性。其次,在大數據存儲平臺建設中,應利用圖書館原有存儲系統平臺資源,對所采集的大數據資源進行數據分析、數據過濾和降噪處理,在降低大數據平臺建設成本前提下增強大數據資源的價值密度,減輕大數據存儲平臺的計算、存儲和網絡傳輸負荷。第三,系統管理員應仔細分析圖書館的大數據存儲業務,并購買或者開發相應的存儲系統監控、決策軟件,實現對存儲磁盤I/O、磁盤總容量、磁盤占用率、CPU使用量、內存占用和存儲系統傳輸網絡效率等,進行全面、實時的運營狀態監控和性能分析,并依據監控結果對存儲系統的參數與資源進行配置和動態分配。
2.2.5大數據存儲系統構建應堅持公有云與私有云相結合的原則
利用云存儲技術,圖書館可以保障讀者在任何時間、任何地點,通過任何可連網的裝置連接到云上,方便地存取數據和進行云閱讀活動。但是,不科學的云基礎設施架構和云應用策略,會導致云系統的構建與云服務成本上升,以及云存儲數據安全性和個人隱私受到侵犯,嚴重影響了圖書館大數據應用與用戶服務決策的安全、有效性。圖書館大數據存儲具有數據安全級別、讀寫頻率、結構特征和價值密度不統一的特點。因此,應根據圖書館大數據存儲和大數據閱讀服務需求,構建安全、高效的云存儲系統和管理策略。
結合圖書館大數據存儲環境特點和服務需求,應采用混和云的方式對圖書館大數據資源進行存儲和管理。讀者對圖書館大數據服務具有安全、高效、經濟、便捷的需求。因此,在對海量、多類型、低安全需求的服務數據進行數據模式統一轉化后,應存儲于公共云平臺上,并與云服務商簽署相應的云服務租賃協議,保證圖書館租賃的公共云資源和存儲空間,可隨大數據服務需求和數據量變化動態彈性調整。此外,云服務商還應依據讀者所處地理位置分布實際,在世界不同地域構建若干個服務數據備份存儲空間,保證讀者可就近、實時、高效、經濟和便捷地閱讀訪問。而對于高安全級別的讀者個體特征數據、社會關系數據、閱讀行為數據和圖書館系統運營監控數據等,應存放在圖書館的私有云上,并制定安全、高效的數據管理與保密措施,實現對保密數據的統一管理、擴展、升級和集中備份與容災[9]。
隨著讀者大數據服務的深入與發展,大數據環境的數據海量、級數遞增、類型復雜和低價值密度的矛盾將更加突出,大數據存儲與管理的安全性、效率、經濟性和實時性,會直接影響圖書館讀者大數據決策與服務的科學性和可用性。因此,在大數據存儲平臺建設中,圖書館必須以讀者大數據服務和大數據存儲需求為依據,堅持大數據存儲技術與讀者需求相結合的原則,依靠云計算和大數據技術構建基于分布式的大數據存儲系統,才能保證圖書館大數據存儲與應用安全、高效、經濟和個性化,才能為讀者提供基于用戶需求感知和客戶關系管理的大數據智慧服務。
[1]孟小峰,慈祥.大數據管理:概念、技術與挑戰[J].計算機研究與發展,2013(1):146-149.
[2]史英杰,孟小峰.云數據管理系統中查詢技術研究綜述[J].計算機學報,2013(2):209-225.
[3]金培權,郝行軍,岳麗華.面向新型存儲的大數據存儲架構與核心算法綜述[J].計算機工程與科學,2013(10):12-24.
[4]黃冬梅,杜艷玲,賀琪.混合云存儲中海洋大數據遷移算法的研究[J].計算機研究與發展,2014(1):199-205.
[5]張天宇,賀金鑫,王陽,等.基于NoSQL數據庫的地學大數據高效存儲方法[J].吉林大學學報,2013(6):604-608.
[6]覃雄派,王會舉.大數據分析:RDBMS與Map Reduce的競爭與共生[J].軟件學報,2012(1):32-45.
[7]Wilkipedia.Big data[EB/OL].[2014-03-15].http://en. wikipedia.org/wiki/Big_data.
[8]李國杰,程學旗.大數據研究:未來科技及經濟社會發展的重大戰略領域大數據的研究現狀與科學思考[J].中國科學院院刊,2012(6):647-657.
[9]王元卓,靳小龍,程學旗.網絡大數據:現狀與展望[J].計算機學報,2013(6):1126-1136.
馬曉亭蘭州商學院信息工程學院副教授。甘肅蘭州,730020。
Study on the Big Data Distributed Storage Architecture Model and Policies of the Digital Library
Ma Xiaoting
Storing and processing big data by using ordinary relational database comes across some problems in the digital library.To solve the bottleneck problems of the traditional relationship database in big data storage and access efficiency,this paper presents a secure and efficient big data distributed storage architecture for the digital library,which has better scalability,fault tolerance and enhanced storage performance.Especially for the mass unstructured and semi-structured data,the performance advantage is more obvious.
Digital library.Big data.Mass data storage.Distributed storage architecture.Unstructured data.Semi-structured data.
G250.76
(2014-08-29編校:劉明)