華北電力大學(xué)控制與計(jì)算機(jī)工程學(xué)院 魏育坤
隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)及存儲(chǔ)技術(shù)的不斷發(fā)展,數(shù)據(jù)的存儲(chǔ)不再局限于本地,越來越多的用戶選擇將個(gè)人數(shù)據(jù)部署到云服務(wù)器。云服務(wù)的廣泛應(yīng)用極大地增強(qiáng)了互聯(lián)網(wǎng)數(shù)據(jù)的流通、降低了用戶存儲(chǔ)數(shù)據(jù)的成本,為未來的發(fā)展帶來了無限的可能。
就目前而言,民用市場(chǎng)上存在著各式各樣的云存儲(chǔ)服務(wù),如:Google Drive、iCloud等。然而,使用這些云存儲(chǔ)服務(wù)通常需要付出高昂的服務(wù)費(fèi)用,數(shù)據(jù)的傳輸速率隨網(wǎng)絡(luò)狀況而波動(dòng),且信息泄露的狀況時(shí)有發(fā)生[1-3]。針對(duì)上述問題,本文提出了一種便攜式無線存儲(chǔ)器的設(shè)計(jì)方法,以搭載Ubuntu系統(tǒng)的Raspberry Pi為硬件依托,具有成本低廉、傳輸速率穩(wěn)定、安全性強(qiáng)等特點(diǎn),在一定程度上彌補(bǔ)了傳統(tǒng)云存儲(chǔ)服務(wù)存在的不足。此外,存儲(chǔ)器采用“太陽能+蓄電池”雙供電的設(shè)計(jì)模式,兼具環(huán)保性。
本文技術(shù)框架主要由五個(gè)部分構(gòu)成,從下到上依次為:硬件層、數(shù)據(jù)庫層、數(shù)據(jù)訪問層、業(yè)務(wù)邏輯層、表示層。如圖1所示:
圖1 系統(tǒng)架構(gòu)
硬件層作為系統(tǒng)架構(gòu)的最底層,擔(dān)負(fù)著支持軟件系統(tǒng)運(yùn)行的任務(wù)。系統(tǒng)的硬件部分主要由微型開發(fā)板樹莓派(Raspberry Pi)、蓄電池、太陽能板及光伏控制器組成。其中,Raspberry Pi搭載Ubuntu操作系統(tǒng),在此基礎(chǔ)上可進(jìn)行云服務(wù)的開發(fā);蓄電池支持外部充電,其存儲(chǔ)的電能可為Raspberry Pi供電;太陽能板將太陽能轉(zhuǎn)化為電能,經(jīng)光伏控制器調(diào)節(jié)后為蓄電池充電。
數(shù)據(jù)庫是存儲(chǔ)用戶信息、用戶數(shù)據(jù)及系統(tǒng)資源的重要容器。用戶對(duì)用戶信息、用戶數(shù)據(jù)的訪問與管理均是基于數(shù)據(jù)庫進(jìn)行的。在選擇數(shù)據(jù)庫的類型時(shí),要以實(shí)際需求為導(dǎo)向,以確保管理效率的最大化。
數(shù)據(jù)訪問層區(qū)分了用戶訪問數(shù)據(jù)庫數(shù)據(jù)的類型。用戶訪問云服務(wù)時(shí),首先需要驗(yàn)證用戶名及口令,驗(yàn)證通過后可以訪問對(duì)應(yīng)賬戶的數(shù)據(jù),這兩個(gè)部分在邏輯上是相互獨(dú)立的。與數(shù)據(jù)庫不同的是,數(shù)據(jù)訪問層是以用戶交互劃分的,它屏蔽了底層細(xì)節(jié),對(duì)上層提供統(tǒng)一接口,增強(qiáng)了系統(tǒng)的安全性。
業(yè)務(wù)邏輯層描述了系統(tǒng)的主要功能。就本系統(tǒng)而言,系統(tǒng)功能主要體現(xiàn)在:用戶信息管理、用戶數(shù)據(jù)管理及數(shù)據(jù)空間管理。用戶信息管理包括對(duì)用戶信息進(jìn)行的一系列操作,如:更改密碼、設(shè)置用戶組等;用戶數(shù)據(jù)管理則與用戶存儲(chǔ)在云端的數(shù)據(jù)密切相關(guān),用戶可以對(duì)存儲(chǔ)在云端的數(shù)據(jù)進(jìn)行下載、刪除、移動(dòng)、在線預(yù)覽等操作,其中,在線預(yù)覽包括對(duì)圖片、視頻、文本文檔的實(shí)時(shí)查看;數(shù)據(jù)空間管理涉及到用戶數(shù)據(jù)的規(guī)劃,主要體現(xiàn)在存儲(chǔ)空間的分配及數(shù)據(jù)存儲(chǔ)位置的設(shè)置。此外,業(yè)務(wù)邏輯層還包括用戶與界面的基本交互,圖中不再單獨(dú)列出。
表示層是最終展現(xiàn)給用戶的界面。用戶可使用Web瀏覽器或通過專門的應(yīng)用訪問云服務(wù)器。Web端具有界面友好、訪問便捷、多平臺(tái)兼容等特性,而移動(dòng)端App相較于Web端功能更加豐富、性能也更為穩(wěn)定,但需要針對(duì)不同的操作系統(tǒng)進(jìn)行定制開發(fā)。
存儲(chǔ)器主要由觸控屏、Raspberry Pi、供電模塊及外殼四部分組成,設(shè)備的概念設(shè)計(jì)如圖2所示:
圖2 概念設(shè)計(jì)
各部分的功能介紹如下:
·電容式觸控屏:位于存儲(chǔ)器的頂部,與Raspberry Pi相連,用于數(shù)據(jù)庫文件的實(shí)時(shí)預(yù)覽及可視化管理。具體配置為:3.5英寸IPS屏幕,分辨率為800*480,刷新率為60Hz。系統(tǒng)待機(jī)時(shí),屏幕處于關(guān)閉狀態(tài)以降低能耗、延長(zhǎng)存儲(chǔ)器的續(xù)航時(shí)間;
·Raspberry Pi:位于存儲(chǔ)器的中部,是設(shè)備的核心部分。具體配置為:ARM Cortex-A53 1.4Ghz CPU,1GB LPDDR2 RAM,且內(nèi)置有無線網(wǎng)卡,支持建立熱點(diǎn)以允許其它設(shè)備的連接。通過對(duì)應(yīng)用軟件的開發(fā),可將云服務(wù)程序部署并運(yùn)行于上述開發(fā)板之上;
·供電模塊:為觸控屏及開發(fā)板提供電能的模塊。供電模塊包括一塊可充放電的蓄電池、三塊太陽能電池板及光伏控制器。其中,太陽能電池板通過光伏控制器與蓄電池相連,太陽能電池板采用折疊式設(shè)計(jì),電池板之間通過鉸鏈連接。當(dāng)需要隨身攜帶存儲(chǔ)器時(shí)可將電池板折疊以增強(qiáng)設(shè)備的便攜性,每塊太陽能電池板的額定功率為2.5W;
·外殼:用于連接存儲(chǔ)器個(gè)各個(gè)組件。在確定存儲(chǔ)器各部件的參數(shù)信息后,可通過CAD、SolidWorks等設(shè)計(jì)軟件構(gòu)建外殼的三維模型,并使用3D 打印機(jī)進(jìn)行打印。
在實(shí)際開發(fā)過程中,選用MySQL數(shù)據(jù)庫,采用基于PHP開發(fā)的開源項(xiàng)目ownCloud作為云服務(wù)的服務(wù)器端及客戶端的解決方案。通過Raspberry Pi建立的熱點(diǎn),外部設(shè)備可通過WiFi連接至無線存儲(chǔ)器。
圖3給出了系統(tǒng)的Web界面,左側(cè)為登錄界面,用戶輸入用戶名及口令,并通過驗(yàn)證后即可訪問賬戶下的數(shù)據(jù)文件;右側(cè)為文件預(yù)覽界面,用戶可對(duì)存儲(chǔ)在數(shù)據(jù)庫中的文件進(jìn)行在線預(yù)覽、移動(dòng)、刪除或上傳新文件等操作。
圖3 Web界面
通過實(shí)際測(cè)試,系統(tǒng)支持用戶信息管理及用戶數(shù)據(jù)的基本操作。此外,系統(tǒng)支持視頻、圖片、Word文檔等格式的文件的在線預(yù)覽,可滿足用戶在數(shù)據(jù)高速傳輸、數(shù)據(jù)安全及數(shù)據(jù)的可視化管理等方面的需求。
從低速到高速、從有線到無線,存儲(chǔ)技術(shù)及計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的不斷進(jìn)步一次次地見證著時(shí)代的發(fā)展。本文提出的便攜式無線存儲(chǔ)器設(shè)計(jì)方法在一定程度上彌補(bǔ)了傳統(tǒng)云存儲(chǔ)服務(wù)存在的不足,為用戶提供了新選擇。然而,該方法仍存在一定的不足,具體體現(xiàn)在:(1).存儲(chǔ)器的存儲(chǔ)空間是基于外部存儲(chǔ)介質(zhì)的,這意味著數(shù)據(jù)的最大傳輸速率可能受制于外部存儲(chǔ)介質(zhì)的質(zhì)量;(2). Raspberry Pi在處理多用戶同時(shí)訪問存儲(chǔ)器的情形時(shí)便顯得捉襟見肘,在一定程度上影響了用戶體驗(yàn),有待進(jìn)一步研究。