陳大軍



關鍵詞:桌面云;數據模型;數據表設計;數據獲取
桌面云技術在我國的發展可追溯到2006年,歷經17年的發展歷程,近年來,隨著新一代信息技術進步的推動,對桌面云的需求節節攀升,伴隨著我國桌面云標準化進程的演進,桌面云在主流架構、部署模式以及解決方案等方面不斷完善,逐步深入應用到各行業,尤其在教育行業得到快速的發展[1]。
雖然桌面云技術的應用方案,研究成果豐富,但針對其數據模型設計方面研究較少,同時,在藝術類教學實踐保障中存在軟件更新部署耗時多,教學環境與考試環境不能快速切換,現有桌面云產品對GPU支持存在算力不足問題,無法滿足藝術教學的需求。因此,本文從桌面云數據模型設計的視角,研究桌面云的應用效果,期望利用桌面云技術解決教學中遇到的問題,可以輕松實現數據上云,集中管理,兼容原有設備,提高教學保障的效能。
1 平臺需求分析
1.1 業務場景分析
通過虛擬化技術,實現實驗室終端集中化管理,通過服務器在CPU、GPU方面的算力,存儲空間優勢,構建實驗平臺桌面云,用戶可在多場景中訪問資源,建設私有云網盤,實現移動教學辦公。
1.2 系統角色與用戶組設計
1) 系統管理員。角色具有管理平臺整體功能,平臺授權,分級管理的功能。
2) 教師用戶組。具有查看教室情況,終端運行情況,安裝鏡像文件等功能。
3) 學生用戶組。具有查看教室情況,使用系統環境,資源回看等功能。
4) 維修用戶組。具有查看設備情況,教室情況,報修情況,部署鏡像文件等權限。
1.3 功能性需求
1) 平臺軟件建設內容。構建桌面云融合管理平臺,滿足多媒體教室教學辦公場景需求,適應VDI、IDV、一體機、兼容PC等多終端并存現狀桌面架構的技術界限,平臺采用B/S架構模式,通過虛擬化技術為平臺提供統一的資源池支持;實現對資源、機房、終端、模板、場景和桌面等諸多業務處理邏輯,構建統一融合桌面云實驗管理平臺[2]。
2) 平臺硬件建設內容。平臺硬件主要涉及后端服務器與前端客戶機,其中后端服務器分為控制節點服務器和計算節點服務器,前端客戶機為IDV終端。
3) 平臺云盤功能。建立私有云云盤,為教師提供教學資源的個人存儲空間,無需U盤即可聯網上傳和下載資源,更高效、便捷、安全地管理個人教學資源,同時,提供組織工作組功能,便于在工作組內共享資料,協同開展虛擬教研室工作。
1.4 非功能性需求
在進行平臺架構規劃時,采用成熟先進的技術架構,在充分考慮應用性能的基礎上,保護原有資源。實現終端與數據的分離,終端通過網絡訪問云端資源,適應教育行業發展趨勢。
采用主流的技術和平臺框架,滿足IT信息化建設的擴展性需求,能支撐未來校園應用服務化,并實現斷網不影響教學使用的功能,保持教學業務連續性,支持主監控服務、支持虛實雙系統,實現系統的安全可靠。
采用市場上成熟先進的高性能硬件配置,實現設備運行與數據處理的高效性、穩定性和安全性,為用戶提供自由、靈活、快速、穩定的信息服務硬件保障。采用針對教育行業的專業解決方案系統,有豐富的本地化案例和售后服務團隊。
2 數據模型設計
2.1 設計思想
1) 數據庫設計原則。數據庫設計適當冗余,數據表字段設置豐富的標簽,字符類型設計充足的字長,數據設計遵守范式要求。
2) 邏輯結構設計。邏輯設計規范,設計清晰的數據庫表結構,規劃元數據設計體系和多源異構數據設計,做好自身數據、集成數據、推送數據的設計。
3) 數據庫安全設計。數據設計遵循安全性、完整性、可維護性原則,確保數據庫安全可靠[3]。
2.2 數據庫表設計
桌面云實驗平臺的數據模型設計的主要內容對桌面云鏡像的結構信息設計及優化,包括每個鏡像文件對應路徑、類型、格式、容量及CPU和內存的資源分配相關數據[4]。本文將桌面云鏡像的信息及所涉及的各類實體對象進行抽象、歸納,建立各類實體在數據庫系統中的映射,由此在數據模型中設計、定義了30 張數據表,以鏡像文件名稱為主鍵,通過鏡像名稱、用戶編號形成兩級索引,從而關聯各個數據表。主要由用戶組、教學組、存儲組、桌面組、網絡組5部分構成。
1) 用戶組
用戶表(Users) :存儲用戶的基本數據,包括用戶賬號、復雜密碼、個人郵箱等。
教師表(Teachers) :存儲教師賬號的相關數據,包括教師ID、是否在線、登錄時間等。
管理員(Admins) :存儲用戶在云桌面中的管理員及授權信息,包括用戶ID、虛擬機/虛擬桌面ID、權限級別等。
2) 教學組
課程表(Lessons) :存儲課程數據。包括課程ID、課程名、模板鏡像名等。
班級表(Classes) :存儲班級數據。包括班級ID、班級、學院、入學年月等。
班級學生表(Class_Students) :存儲班級與學生對應關系數據。包括班級ID、學生ID等。
課程班級表(Lession_Classes) :如果需要對用戶進行分組管理,可以設計一個用戶組表來記錄用戶組的信息和所屬用戶。
3) 存儲組
存儲池表(Pools) :如果存在多個物理服務器或資源池,可以存儲資源池的信息,例如資源池ID、物理服務器名稱、IP地址等。
模板鏡像表(Bases) :存儲模板鏡像的相關數據,包括鏡像ID、鏡像名稱、存儲路徑、鏡像類型、鏡像方式、容量、訪問時間等。
實例鏡像表(Images) :實例鏡像,如果需要提供不同的操作系統鏡像供用戶選擇,包括鏡像ID、名稱、版本、容量大小等。
數據表(Data) :模板鏡像,如果需要提供事先配置好的桌面環境作為模板給用戶使用,可以設計一個模板表來存儲模板的信息,例如模板ID、名稱、配置信息等。
鏡像表(Isos) :存儲安裝鏡像的相關數據,包括鏡像名、鏡像路徑、鏡像類型、鏡像格式、容量等。
存儲表(Storage) :如果需要存儲用戶的文件和數據,可以設計一個存儲表來管理用戶文件的存儲路徑、大小等信息。
容器表(Container) :如果云桌面支持容器化技術,可以設計一個容器表來存儲容器的信息,如容器ID、名稱、鏡像等。
分布式存儲表(Distributed Storage) :如果需要使用分布式存儲來提供高可用性和可擴展性,可以設計一個存儲表來記錄各個存儲節點的信息和狀態。
集群表(Cluster) :如果云桌面采用集群架構,可以設計一個集群表來存儲集群節點的信息、狀態和負載等。
備份表(Backup) :如果需要對用戶的虛擬機或桌面進行定期備份,可以設計一個備份表來記錄備份任務的信息,包括備份ID、備份時間、備份文件路徑等。
文件系統表(File System) :如果需要提供文件共享和存儲功能,可以設計一個文件系統表來存儲用戶文件的信息、路徑和訪問權限。
4) 桌面組
域表(Domains) :存儲桌面云配置基本信息,包括云桌面ID、云桌面名、操作系統、鏡像數據、網絡地址、CPU、內存及用戶組相關數據。
虛擬機表(Local_vms) : 存儲基于本地的虛擬機數據,包括虛擬桌面ID、虛擬機狀態、所屬用戶、所屬課程、對應模板鏡像和實例鏡像。
應用程序表(Application) :存儲各種可用的應用程序信息,包括應用程序ID、名稱、版本、描述等。
定時任務表(Scheduled Task) :如果需要執行定時任務,如定時清理過期數據或執行系統維護操作,可以設計一個定時任務表來存儲任務的信息,包括任務ID、執行時間、任務類型等。
消息隊列表(Message Queue) :如果需要實現異步消息處理和任務調度,可以設計一個消息隊列表來存儲消息的內容、狀態和處理結果。
統計表(Statistics) :如果需要統計和分析系統的使用情況和資源消耗,可以設計一個統計表來記錄各種指標,如用戶登錄次數、虛擬機使用率、網絡流量等。
日志表(Log) :記錄系統的操作日志、錯誤日志和審計日志等,以便進行故障排查、安全審計和性能優化。
5) 網絡組
虛擬網絡表(V Nets) :如果需要管理虛擬網絡的配置,可以設計一個網絡表來存儲虛擬網絡的相關信息,如網絡ID、子網、IP地址范圍等。
安全表(Security) :如果需要記錄用戶權限、安全策略等信息,可以設計一個安全表來管理這些信息,以提供安全性管理和訪問控制。
事件表(Event) :記錄系統的事件和警報信息,例如虛擬機啟動/關閉、資源使用超過閾值等。
告警表(Alert) :如果需要監控系統狀態并生成告警,可以設計一個告警表來存儲告警的信息,包括告警ID、告警級別、觸發條件等。
各表之間存在廣泛的依存關系,數據表關聯可以使得不同表之間相關數據連接在一起,提供更全面的數據信息,便于后續的數據分析和處理。在設計數據表結構時,需要注意關聯字段的屬性類型和值的準確性。主要數據表關系如圖1所示。
2.3 數據獲取與處理
1) 數據類型及特點。云桌面的數據類型特點包括虛擬機鏡像格式、遠程顯示協議格式、用戶數據文件格式以及配置信息文件格式、日志文件格式、元數據文件格式以及鏡像文件格式等。這些數據類型共同組成了云桌面的數據存儲和交互方式。云桌面的數據可以按照不同的分類編碼標準進行組織和管理。以下是一些常見的分類編碼標準:
文件類型: 根據文件的擴展名或MIME類型進行分類編碼,例如文本文件(TXT、DOCX、PDF) 、圖片文件(JPG、GIF、PNG) 、音頻文件(MP3、WMA、WAV、視頻文件(MP4、H.265、AVI) 等。
數據格式:根據數據的格式進行分類編碼,例如JSON、XML、CSV等。這些編碼標準可以幫助快速識別和解析數據。
日期時間:根據數據的創建時間、修改時間或者歸檔時間進行分類編碼,例如按年份、月份、周數等進行分類。
用戶身份及權限:根據用戶的身份或權限進行分類編碼,例如按照不同部門、崗位或者項目組劃分。
數據敏感性級別:根據數據的敏感性級別進行分類編碼,例如公開數據、內部數據、機密數據等。這有助于控制數據的訪問權限和安全性。
數據關聯性:根據數據之間的關聯關系進行分類編碼,例如按照相關項目、任務或者文件夾進行分類,以便于快速查找和管理相關數據。
2) 數據獲取的規劃與實施。用戶組與教學組數據一般通過與數據交換平臺建立的中間庫或視圖方式來獲取,數據交換平臺通過統一身份認證獲取一數一源的標準化數據,為各業務系統提供良好數據來源。學生數據源頭一般由教務系統產生,學號是主鍵,唯一標識學生信息。教工數據源頭一般由人事系統產生,教工號是主鍵,唯一標識教工信息。教學相關班級和課程數據一般由教務系統產生,以上信息推送至數據交換平臺,實現與各業務系統數據共享。
存儲類鏡像數據在數據庫管理員完成設計后,由系統管理員將鏡像文件上傳至系統,存儲到服務器或存儲中,供系統調用,服務器端負責鏡像模板的編輯、管理、下發、終端策略的管理等[5]。在鏡像文件上傳過程中,需添加充足的數據標簽,為檢索提供依據,并在鏡像文件命名時,遵循數據標準,讓命名有意義易識別。
為了方便用戶操作和使用,本平臺設計了對教學視頻數據的處理。云桌面播放高清視頻時占用大量帶寬資源,容易卡頓等問題,采用H.265 視頻壓縮編碼,更適合終端播放視頻的應用場景,具有一定的應用參考價值。
2.4 數據存儲設計
硬盤數量規劃設計:平臺采用超融合技術實現,數據存儲空間以各類鏡像為主。平臺采用容量4TB的硬盤進行存儲設計,考慮到硬盤格式化、分區等損耗問題,故4TB硬盤的實際容量為4TB×0.9=3.6TB。所需硬盤數量:所需存儲空間÷3.6TB=所需硬盤塊數(向上取整)。
服務器數量規劃設計:系統設計采用36盤位存儲服務器,按每臺設備做3個RAID5,并配置1塊熱備盤計算,共消耗4塊硬盤,每臺36盤位存儲服務器可用硬盤數為36-4=32塊。所需存儲服務器數量:所需硬盤塊數÷32=所需存儲服務器數量(向上取整)。
3 實證分析
3.1 平臺的運行環境
1) 物理環境。服務器:采用物理服務器,中央處理器:2顆8核;內存:64GB;存儲容量12T;支持虛擬桌面數量60臺。
學生端:采用品牌臺式電腦,中央處理器:英特爾i5 雙核;內存:4 GB;硬盤:500 GB / 7200 轉/分。顯卡:顯存1GB。
2) 軟件環境。采用銳捷課堂桌面云虛擬化平臺,平臺有教學環境部署、桌面應用環境、實驗互動教學、在線精細運維及教學云盤等功能模塊。
3.2 平臺的系統測試
平臺的系統測試通過10學時的課堂教學和一次模式考試為樣本,開展了教學環境和學生方面的實驗測試。
1) 教學環境測試
測試任務:通過平臺快速部署日常教學及考試環境。
測試內容:授課教師申請所需的環境,管理員制作鏡像,一鍵部署。
測試步驟:授課教師發起申請,提交所需操作系統環境和教學軟件列表,教學軟件包可一并提交;管理員審核申請通過后,開始制作鏡像文件,將教學鏡像和考試鏡像上傳至服務器;通過平臺分發部署鏡像、調試環境、測試效果。
2) 學生實驗測試
測試任務:操作桌面云終端的操作系統和教學軟件,對比桌面云安裝前后體驗差異。
測試內容:學生同時開啟測試終端,按對比項目測試效果。
測試步驟:學生操作系統進行體驗,通過任務管理器查看利用率;通過教學軟件分步操作來測試系統反應速度及穩定性。
3.3 平臺的性能評估
通過表1的對比項目評估,可以看出在桌面云平臺使用后,CPU、內存、硬盤的利用率都有顯著提高。
通過表2的對比項目評估,可以看出在桌面云平臺使用后,除增加服務器數量外,資源利用率得到提升,設備故障率降低,部署時間快,設備實現數字化管理,并降低能耗。
4 結論
桌面云實驗平臺能夠兼容現有設備,采用的TCI 模式,解決了網絡中斷影響正常使用問題,在數據庫設計中增加標簽冗余設計,有利于提高檢索性能,數據集成對接,實現數據的同步與共享,在平臺功能方面用戶體驗有待進一步提高,對數據的利用方面需進一步規劃提升。