張光亞
摘要:針對高校實驗室設備管理,設計了一種基于Microsoft Azure的云實驗室設備管理系統(tǒng)。該系統(tǒng)以Azure云計算為依托,對云數(shù)據(jù)存儲、應用開發(fā)做出了設計和說明,實現(xiàn)了項目審批、儀器管理、系統(tǒng)維護等功能。系統(tǒng)的開發(fā)實現(xiàn),不僅為實驗設備的管理提供了便利,而且為當前高校信息化建設由傳統(tǒng)模式向云平臺遷移的探索提供了借鑒。
關鍵詞:云計算;微軟云;SQLAzure;實驗室設備管理系統(tǒng)
實驗室設備是高校教學中必不可少的重要部分,是培養(yǎng)高級專門人才的保障,是科技創(chuàng)新的基地,是社會服務的基礎。一個高效可靠的實驗室設備管理系統(tǒng)是目前高校信息化的重要組成部分。
高校信息化系統(tǒng)部署的傳統(tǒng)方式是將系統(tǒng)部署到本地服務器和本地存儲,筆者單位在信息化的過程中,也是為了部署各類信息系統(tǒng)不斷架設單獨的服務器、存儲和網(wǎng)絡。信息化建設一方面在服務器、存儲等方面需要不間斷的巨大投入;另外一方面設備資源在高峰時期往往出現(xiàn)性能瓶頸,低峰時期的閑置又會造成很大的浪費,投入和產(chǎn)出并不能成正比。
云計算(Cloud Computing)是一種將共享的軟硬件和信息按需提供給計算機和其他設備的基于互聯(lián)網(wǎng)的計算方式。云計算的核心思想.是將大量用網(wǎng)絡連接的計算資源統(tǒng)一管理和調(diào)度,構成一個計算資源池向用戶按需服務。提供資源的網(wǎng)絡被稱為“云”。
中國的Microsoft Azure公有云平臺是由世紀互聯(lián)運營的,在技術上與微軟Azure技術一致,但在物理和邏輯上與微軟運營的全球其他地區(qū)的Azure服務獨立。在中國建有中國東部(上海)和中國北部(北京)的兩個數(shù)據(jù)中心,實現(xiàn)1000公里以上的異地復制,保證了Azure服務的業(yè)務連續(xù)性和數(shù)據(jù)的可靠性。Microsoft Azure在中國的兩個數(shù)據(jù)中心采用BGP方式直接鏈接運營商的核心網(wǎng)絡節(jié)點,由于采用相同的地址廣播和路由策略,使得用戶可以就近訪問數(shù)據(jù)中心的Azure服務,網(wǎng)絡性能良好。
綜上,筆者提出基于Microsoft Azure的實驗室設備管理系統(tǒng)的設計與實現(xiàn),旨在幫助項目負責人和實驗室管理員在線管理儀器和設備。通過Azure云,可以實現(xiàn)客戶端和數(shù)據(jù)源的分離,保護數(shù)據(jù)的安全;Azure云的高效性和可伸縮性,也大大降低學校系統(tǒng)部署的成本。
1基于Microsoft Azure的實驗室設備管理系統(tǒng)的設計
按照層結構的設計方法,將系統(tǒng)基本分為:用戶表現(xiàn)層、業(yè)務邏輯層、數(shù)據(jù)層。如圖1三層結構圖所示。
1.1用戶表示層
用戶表示層就是應用軟件系統(tǒng)的人機界面,實現(xiàn)用戶和系統(tǒng)之間的信息交互,本系統(tǒng)是由Visual Studio C#來實現(xiàn)的。友好的用戶界面不僅可以帶給用戶舒適感,而且促進用戶更快地適應并使用軟件系統(tǒng);反之,即使實現(xiàn)了相應的功能,但用戶的不適很可能使開發(fā)的軟件被棄之不用。本系統(tǒng)的用戶表示層主要包括用戶登陸窗體、項目審批窗體、項目管理窗體、儀器管理窗體、維護窗體等,具體實現(xiàn)將在第4部分系統(tǒng)關鍵各模塊功能的實現(xiàn)中詳細展示。
1.2業(yè)務邏輯層
業(yè)務邏輯層是針對具體的問題的操作,也可以理解成對數(shù)據(jù)業(yè)務的邏輯處理;如果說數(shù)據(jù)層是“積木”,那邏輯層就是對這些“積木”的組合和搭建。業(yè)務邏輯層是用戶表示層和數(shù)據(jù)層之間的橋梁,實現(xiàn)云數(shù)據(jù)庫和應用程序的連接,它的功能是將用戶請求生成檢索語句提交給數(shù)據(jù)庫,并將數(shù)據(jù)庫檢索的結果返回給用戶表示層。本系統(tǒng)實現(xiàn)了項目審批、項目購置、儀器管理、系統(tǒng)維護等業(yè)務邏輯類。
1.3數(shù)據(jù)層
信息系統(tǒng)涉及大量的數(shù)據(jù),需要借助于數(shù)據(jù)庫技術存儲到特定的存儲空間。本系統(tǒng)數(shù)據(jù)層運用Azure SQL數(shù)據(jù)庫及Azure存儲空間來存儲管理數(shù)據(jù)。
Azure sQ數(shù)據(jù)庫是Microsoft云的關系數(shù)據(jù)庫服務。AzureSQL數(shù)據(jù)庫基于SQL Server引擎,提供.陛能預測、不停機的數(shù)據(jù)庫縮放、業(yè)務連續(xù)性、數(shù)據(jù)保護和實時管理等功能。MicrosoftAzure把SQL作為服務提供給了用戶,這項服務名為SQL數(shù)據(jù)庫。盡管后臺也是SQL Server,但它無需配置(對用戶隱藏了數(shù)據(jù)庫文件、日志文件的存儲位置和后臺操作系統(tǒng)、文件系統(tǒng)等的配置細節(jié));不需要HA(Azure后臺已經(jīng)自動為每個數(shù)據(jù)庫配置了1主2備,任何一份數(shù)據(jù)都會同步寫到3個不同的物理服務器上,確保了高可用性。);價格經(jīng)濟(SQL數(shù)據(jù)庫采用實際存儲容量計費,傳統(tǒng)數(shù)據(jù)庫按CPU授權收費);管理方便(sOL數(shù)據(jù)庫提供了一個基于瀏覽器的可以進行數(shù)據(jù)庫建表、查詢、SQL執(zhí)行統(tǒng)計等常用的功能管理工具,無需安裝客戶端管理軟件)。
Microsoft Azure存儲空間具備高度伸縮性、可用性。開發(fā)人員借助于Azure存儲服務,可以使任何類型(云、桌面、手機或平板等移動設備)的應用程序從任意位置訪問Azure存儲的數(shù)據(jù)并與云存儲的數(shù)據(jù)保持同步。Azure存儲服務支持Windows和Linux等多種操作系統(tǒng)及.NET、Java、Node.is、Pvthon、Rubv、PHP等多種編程語言。Azure存儲服務通過HTrP/HTTP協(xié)議將收發(fā)的數(shù)據(jù)提供給基于REST API的客戶端使用。Azure存儲還提供高性能、低延遲的磁盤支持,滿足密集型工作負載的Azure虛擬機對于高I/O性能的需求。
Azure存儲空間提供Blob、表、隊列和文件四種存儲服務。Blob存儲也稱對象存儲,用于存儲非結構化對象數(shù)據(jù)。表存儲用于存儲結構化數(shù)據(jù)集。隊列存儲為云服務的各個組件之間的工作流處理和通信提供可靠的消息傳送。文件存儲使用標準SMB協(xié)議為應用程序提供共享存儲,Azure虛擬機和云服務、本地應用程序可通過文件服務REST API來訪問共享文件數(shù)據(jù)。
2Azure SQL數(shù)據(jù)庫部署
在準確了解了本單位實驗室設備管理的現(xiàn)狀和分析用戶需求后,進行了系統(tǒng)數(shù)據(jù)庫的概念設計、邏輯設計、物理設計。為重點闡述Azure SQL數(shù)據(jù)庫的部署,因此本文在這里省去其他階段的介紹,僅給出邏輯設計和物理設計部分以供參考。
2.1系統(tǒng)數(shù)據(jù)庫邏輯設計
根據(jù)前期需求分析和概念設計,我們進行了數(shù)據(jù)庫的邏輯設計。邏輯設計如圖2實驗室設備管理系統(tǒng)ER圖所示。
根據(jù)ER圖的設計,進一步轉換為如圖3 SQL數(shù)據(jù)庫關系圖所示。
2.2系統(tǒng)數(shù)據(jù)庫物理設計
通過SQL數(shù)據(jù)庫提供的REST API、PowerShell、MicrosoftAzure管理門戶、SQL Server Management Studio等任一管理工具,都能夠創(chuàng)建Azure SQL數(shù)據(jù)庫。本系統(tǒng)利用SQL ServerManagement Studio管理工具,將數(shù)據(jù)庫部署到云端。Azure SQL創(chuàng)建好數(shù)據(jù)庫后,我們依次進行項目購置計劃表、項目審批負責表、儀器表、用戶表等的物理創(chuàng)建。如圖4項目購置計劃表創(chuàng)建的SQL語句。篇幅受限,其他數(shù)據(jù)表的創(chuàng)建不再累贅,方法雷同。