999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

高性能計算機資源管理系統(tǒng)改進設計與實現(xiàn)

2018-01-18 16:03:18顧文靜常飚李娟
計算技術與自動化 2017年4期

顧文靜+常飚+李娟

摘 要:為實現(xiàn)高性能計算機資源精細化的統(tǒng)計查詢和跨區(qū)域調配管理,調研中國氣象局(CMA)和各區(qū)域中心需求,分析現(xiàn)有資源管理系統(tǒng)的實現(xiàn)方法和不足,充分利用數(shù)據(jù)庫索引和預處理技術優(yōu)化數(shù)據(jù)結構,整合SSH和jQuery框架重新設計和實現(xiàn)資源管理系統(tǒng)。測試及業(yè)務應用表明,新系統(tǒng)在響應速度、系統(tǒng)可維護性、功能可擴展性和使用便捷性等諸多方面均得到提升。系統(tǒng)管理員可據(jù)此調整系統(tǒng)資源分配調度策略,用戶可選擇空閑時段和隊列提交作業(yè),從而更合理高效的利用系統(tǒng)資源,有效提高系統(tǒng)運行效益。

關鍵詞:高性能計算機;資源管理;系統(tǒng)改進;JQuery+Ajax;SSH;預處理

中圖分類號:TP302 文獻標識碼:A

Improved Design and Implementation of Resource Management System

GU Wen-jing,CHANG Biao,LI Juan

(National Meteorological Information Center,High Performance Computing Division,Beijing 100081,China)

Abstract:To achieve high performance computer resources statistical query refinement and cross-regional management,Investigating the demand of China Meteorological Administration(CMA) and the regional center .Analyzing the implementation method and defect of the existing resource management system .Redesigning and implementing the resource management system adopted the database index and pre-processing to improve data storage structure which based on SSH and jQuery framework .Test and business applications indicates that response speed,system maintainability,function extensibility and convenience of the resource management system has been improved.Through the platform,System administrators can adjust the resources allocation scheduling policy,Users can choose the free time and queue to submit jobs,Thus more reasonable and efficient use of system,Effectively improve the operation efficiency of the system.

Key words:HPC system;resource management;system improvement;JQuery+ Ajax;SSH;pre-processing

高性能計算機系統(tǒng)是天氣、氣候、地球環(huán)境數(shù)值模擬業(yè)務和相關科學研究所必須的基礎平臺。為了對高性能計算機系統(tǒng)進行資源記賬和統(tǒng)計分析,國家氣象信息中心組織研發(fā)了“高性能計算機資源管理系統(tǒng)”,系統(tǒng)開發(fā)完成后,為日常資源的統(tǒng)計管理提供了便捷。

自2013年起,依托“氣候變化應對決策支撐系統(tǒng)工程”項目,中國氣象局(CMA)陸續(xù)在國家局、廣東、上海、遼寧、湖北、四川以及甘肅和新疆等多個區(qū)域中心建設10套高性能計算機系統(tǒng),系統(tǒng)總體峰值能力為1759TFlops,存儲物理容量為6925TB,日均作業(yè)量近5萬個。

1 現(xiàn)狀分析

隨著新一代高性能計算機系統(tǒng)正式投入運行,系統(tǒng)資源使用量和作業(yè)量與日俱增,資源統(tǒng)計查詢需求也日趨復雜,現(xiàn)有的資源管理系統(tǒng)暴露出了諸多需要改進的問題,例如系統(tǒng)響應慢、可維護性和可擴展性差、查詢功能紛亂、無法自動生成統(tǒng)計圖等。

通過調研國家局及各區(qū)域中心對“高性能計算機資源管理系統(tǒng)”的功能需求,分析系統(tǒng)實現(xiàn)的具體方法,主要針對系統(tǒng)的響應速度、功能可擴展性、頁面結構和圖表展示等進行重新設計與實現(xiàn)。

2 關鍵問題

(1)記賬信息提取。

記賬信息是統(tǒng)計查詢的基礎,因此必須保證記賬信息采集的準確性和時效性。

(2)合理組織數(shù)據(jù)。

針對原有資源系統(tǒng)響應速度慢的問題,設計合理的數(shù)據(jù)存儲結構,有助于提升系統(tǒng)響應速度,同時能夠降低系統(tǒng)開發(fā)的復雜度。

(3)架構改進。

原資源管理系統(tǒng)功能簡單,使用JSP+Servlet+JavaBean進行B/S架構的系統(tǒng)開發(fā),Html標簽與Java代碼的混合體嚴重影響系統(tǒng)可維護性和可擴展性;伴隨著系統(tǒng)需求的不斷增加,軟件開發(fā)也變得越來越復雜,如何代碼復用,如何設計一個靈活松耦的系統(tǒng),成為系統(tǒng)設計中重點研究的問題。

(4)界面的設計。

為滿足資源的跨區(qū)域調配管理及多方面統(tǒng)計查詢需求,查詢粒度大幅增加,功能復雜,各模塊的設計及圖表展示是系統(tǒng)開發(fā)成敗的主要因素之一。優(yōu)良合理的頁面布局對用戶而言,能方便清晰地展現(xiàn)用戶所關心的信息[1]。endprint

3 系統(tǒng)設計與實現(xiàn)

資源管理系統(tǒng)是“氣候變化應對決策支撐系統(tǒng)工程”的子系統(tǒng)之一,用戶管理部分單獨建設,因此用戶注冊、登錄和修改信息等功能本文不做贅述。資源管理系統(tǒng)主體功能如圖1所示,開發(fā)環(huán)境:Eclipse Luna Release (4.4.0);后臺數(shù)據(jù)庫:Oracle 11g;Web服務器:Tomcat8.0。

3.1 記賬信息提取

作業(yè)被Loadleveler提交到高性能計算機系統(tǒng)的計算節(jié)點上,用戶作業(yè)運行之前作業(yè)管理軟件調用prolog.sh,提取用戶作業(yè)的相關信息,放至相應的日志文件中;用戶作業(yè)結束時,調用epilog.sh程序,提取用戶作業(yè)的相關運行信息,存入相應的日志文件中;batchchargework.sh腳本解析作業(yè)日志,獲取作業(yè)信息各關鍵字段,將作業(yè)以記錄形式存入資源使用信息數(shù)據(jù)庫中[2]。

原資源管理系統(tǒng),作業(yè)結束后啟動batchchargework.sh腳本解析作業(yè)日志入庫,由于大量氣候模式作業(yè)運行時間長達幾天甚至十幾天,當作業(yè)結束后再解析日志入庫,會導致作業(yè)運行期間資源統(tǒng)計量少于實際值,新系統(tǒng)修改batchchargework.sh腳本,當作業(yè)提交后,啟動解析腳本,將作業(yè)信息入庫,結束時間實時更新,直至作業(yè)運行結束。

3.2 數(shù)據(jù)預處理

原資源管理系統(tǒng)部署在IBM cluster 1600和神威4000A高性能計算機系統(tǒng)上,兩套系統(tǒng)總理論峰值約55TFlops(萬億次浮點運算每秒)[3],而新一代高性能計算機系統(tǒng)總理論峰值達1759TFlops;源數(shù)據(jù)表job表總記錄由原來的不足300萬條增加到現(xiàn)有的3000多萬條;job表的日增量由原來的6000多條增加到5萬條。

伴隨數(shù)據(jù)量的迅速增長,對于用戶的統(tǒng)計請求,如果實時的從海量原始數(shù)據(jù)中進行統(tǒng)計計算,給系統(tǒng)造成較大壓力,并且讓用戶等待較長時間。從用戶角度出發(fā),充分利用Oracle數(shù)據(jù)庫索引技術,提高SQL語句的執(zhí)行效率,將有索引的字段放在Where條件的前面,避免全表掃描。同時對海量數(shù)據(jù)進行統(tǒng)計預處理,形成符合需求的中間統(tǒng)計結果進行存儲,對于統(tǒng)計訪問請求,能夠直接在中間統(tǒng)計結果中進行查詢,大幅減少等待時間。

為了提高數(shù)據(jù)安全性和降低數(shù)據(jù)的冗余,新資源管理系統(tǒng)數(shù)據(jù)庫創(chuàng)建13張數(shù)據(jù)表,其中基礎信息表包括用戶信息表(userinfo)、部門信息表(organization)、計算機系統(tǒng)信息表(machineinfo)、文件系統(tǒng)信息表(gpfsinfo),資源分配信息表(allocation);記賬信息表包括作業(yè)信息表(job)、存儲資源信息表(disk)、CPU使用情況信息表(cpu_usage),實時概覽信息表(realtimeinfo);對job表和disk表進行統(tǒng)計預處理,生成隊列資源信息表(queueu_amt)、模式資源信息表(model_amt)、系統(tǒng)記賬信息表(machine_chg)和用戶記賬信息表(user_chg);其中記賬信息表的可統(tǒng)計屬性均與基礎信息表建立主外鍵關系。改進后的數(shù)據(jù)庫表結構如圖2所示[3]。

3.3 SSH+jQuery框架

3.3.1 系統(tǒng)實現(xiàn)模型

新系統(tǒng)采用MVC模式的SSH(Struts2+Spring+Hibernate)和jQuery兩個框架整合實現(xiàn),大大提高了軟件開發(fā)的效率,系統(tǒng)的可維護性和可擴展性都有所改進。

視圖層采用Struts2框架與jQuery框架實現(xiàn),Struts2提供對Ajax的支持,與jQuery框架配合,可將程序的觸發(fā)事件直接封裝在JS代碼中,Struts2與jQuery整合過程中,還需Json插件來輔助實現(xiàn)Ajax功能[4];配置文件struts.xml負責前、后臺文件的映射關系。業(yè)務邏輯層由Spring和Struts2整合實現(xiàn),Struts2根據(jù)用戶請求調用相應Action控制器,Action調用Service實現(xiàn)業(yè)務邏輯處理,將Json對象和參數(shù)傳入到了后臺Service層,在Service層封裝解析數(shù)據(jù)對象;數(shù)據(jù)持久層由Spring和Hibernate整合實現(xiàn),Service調用Dao實現(xiàn)對數(shù)據(jù)庫的操作,Dao通過調用Hibernate API對持久化對象進行操作,Hibernate將Dao連接oracle數(shù)據(jù)庫,將配置文件裝載到applicationContext.xml中,最終實現(xiàn)對數(shù)據(jù)庫的增刪改查操作[5]。

3.3.2 實現(xiàn)舉例

用戶資源統(tǒng)計模塊包含4個子模塊,分別為申請與分配、分配與使用、計費與收費和繳費記錄,下面以分配與使用子模塊為例詳述后臺查詢及前臺展示的實現(xiàn)。

用戶資源分配與使用模塊的JSP頁面引入jQuery的JS文件庫和UserRes.js文件,用戶在UserRes.jsp頁面上選擇查詢條件后提交,JQuery+Ajax通過get方式向服務器提交請求[6,7],服務器接收請求后,根據(jù)struts.xml找到UserResInfo-Allocation

used.json對應UserResInfoAction對象,調用其AllocationUsed( ) 方法;UserResInfoAction對象調用UserResInfo

-Service對象的getAllocationUsed( )方法,UserResInfoService對象調用UserRes-

InfoDao對象的getAllocationUsed( )方法最終實現(xiàn)用戶資源分配與使用的查詢,并將查詢結果逐級返回給UserResInfoAction對象。當UserResInfoAction返回結果為success時,UserResInfoAction將查詢出需要返回的數(shù)據(jù)轉換為Json類型,返回的Json串通過正則表達式進行解析,回調函數(shù)callback處理請求返回的結果data。UserRes.jsp頁面顯示用戶資源分配與使用的查詢結果,UserRes.JSP和UserRes.js部分代碼如下。endprint

(1)獲取參數(shù)值,并以json的數(shù)據(jù)形式保存到params中

var params = {

params.queue = $('#queuename').val();

params.starttime = $("#starttimeymd").val();

params.endtime = $("#endtimeymd").val();

params.username = $('#username').val();

params.apptype = $('#apptype').val();

$('.system-select ul li a.active').each(

function(index,dom) {

params.machines += "," + $(dom).attr("id");

});

params.center = $('#userunit option:

selected').text();

}

(2)使用$.get方式處理請求返回結果data

$.get("UserResInfo-allocationused.json",

<!--服務器要接受的url->

params, //表單中傳遞的參數(shù)

function(data) {//回調函數(shù)

if (data == null || data.success == 'false') {

return;

}

var list = data.list;

$.each(list,function(index,data) { }

});

(3)struts.xml配置

<!--指定需要struts2處理請求后綴-->

value="page,json,file,index,action/>

<!--用通配符方式配置Action跳轉路徑-->

text/plain

outFileStream

用戶資源分配與使用模塊類圖如圖3所示。

本系統(tǒng)數(shù)據(jù)庫中有13個表,用來存儲系統(tǒng)中所有數(shù)據(jù)信息;用spring配置數(shù)據(jù)源和hibernate,數(shù)據(jù)庫連接采用BoneCP連接池的方式,以提高數(shù)據(jù)庫的使用效率。

本例中hibernate將數(shù)據(jù)庫中user_chg表和allocation表映射為持久化類UserRes-Element和映射文件UserRes.hbm.xml,該表中存儲用戶的分配與使用詳細信息;UserResInfoDao對象調用hibernateTemplate對象的方法getAllocattionUsed( ),實現(xiàn)對UserResElement中數(shù)據(jù)查詢。

dataSource,sessionFactory,hibernate-Template等對象被配置在applicationContext.xml文件中,通過依賴注入,dataSource被注入到sessionFactory中,sessionFactory被注入到hibernateTemplate中,hibernate-Template被注入到UserResInfoDAO中[6]。

applicationContext.xml部分代碼如下:

<! --數(shù)據(jù)庫的配置-->

"oracle.jdbc.driver.OracleDriver">

……….//配置信息

<! -- Hibernate配置 -->

class="org.springframework.orm.hibernate3.

LocalSessionFactoryBean">

<!--注入數(shù)據(jù)源 -->

<!--注入映射文件 -->

com/urw/hibernate/beans/

Home.hbm.xml

com/urw/hibernate/beans/

UserRes.hbm.xml

……….

com/urw/hibernate/beans/

Jobstat.hbm.xml

3.4 Highcharts與jQuery的整合

HighCharts支持ASP,PHP,JAVA,.NET等多種語言,用瀏覽器運行時不需要插件,運行速度快、并且能夠支持當前大多數(shù)瀏覽器[8,9]。

資源統(tǒng)計數(shù)據(jù)是時間序列化的數(shù)據(jù),通過動態(tài)曲線能夠更直觀地顯示數(shù)據(jù)在一個時間段中的變化過程。應用HighCharts來顯示資源統(tǒng)計數(shù)據(jù),可以極大地提高開發(fā)效率和顯示效果,以CPU使用情況->用戶時段使用情況為例,HighCharts部分代碼如下,圖表效果如圖4所示:

$target.highcharts({

//圖表類型選擇

chart : {

type : chartType

},

//圖表標題

title : {

……….//參數(shù)設置

}

},

// X軸的坐標值

xAxis : {

categories : names,

},

// Y軸的坐標值設置

yAxis : {

……….//參數(shù)設置

},

//當鼠標懸置數(shù)據(jù)點時的格式化提示

tooltip : {

valueSuffix : '%'

},

//數(shù)據(jù)點相關屬性

plotOptions : {

……….//參數(shù)設置

},

//【圖例】位置樣式

legend : {

……….//參數(shù)設置

}

},

series : value

});

圖4 用戶時段使用情況數(shù)據(jù)顯示圖

4 與舊系統(tǒng)比較

4.1 功能完善

新資源管理系統(tǒng)增加3大模塊,13個子模塊,其中首頁和作業(yè)運行情況模塊,實時展示作業(yè)運行和資源使用情況,系統(tǒng)管理員可據(jù)此調整系統(tǒng)資源分配調度策略,用戶可選擇空閑的時段和隊列提交作業(yè),從而更合理高效的利用系統(tǒng)資源;用戶資源統(tǒng)計模塊,便于用戶查詢本人資源申請、分配、使用和繳費情況。擴展CPU使用情況,資源綜合統(tǒng)計和模式應用模式使用情況等模塊,大幅增加統(tǒng)計粒度,實現(xiàn)資源精細化管理。

4.2 響應速度

使用LoadRunner對系統(tǒng)進行測試,測試主要關注響應時間,分別訪問新舊系統(tǒng)相同的功能模塊,業(yè)務場景中設置100個并發(fā)用戶進行查詢任務,初始連接用戶2人,每15秒增加2人,直到同時連接用戶數(shù)100,100用戶持續(xù)訪問10分鐘,然后每隔30秒減少5人,直到場景結束。各模塊的系統(tǒng)響應速度最少提高13倍,最高達到99倍。CPU占用率和應用模式計算資源統(tǒng)計模塊的平均事物響應時間對比數(shù)據(jù)如表1和表2所示,結果表明采用數(shù)據(jù)庫索引、預處理優(yōu)化數(shù)據(jù)結構取得明顯效果。

4.3 用戶體驗

1)新系統(tǒng)通過數(shù)據(jù)結構優(yōu)化,提升系統(tǒng)響應速度,大幅減少了查詢時間。

2)設計查詢條件繼承機制,模塊間具有的相同查詢條件時,不用重復選擇。

3)舊系統(tǒng)中查詢模塊雜亂,用戶很難找到需要的統(tǒng)計信息,新系統(tǒng)對所有查詢模塊精細分類,并從用戶操作習慣考慮合理布局,系統(tǒng)使用便捷性明顯提升。

4)舊系統(tǒng)只提供數(shù)據(jù)查詢,所有統(tǒng)計圖需通過excel繪制,新系統(tǒng)圖表由HighCharts自動生成,圖形豐富,并提供導出和打印功能,大幅減少統(tǒng)計工作量。

5 結束語

本文針對原資源管理系統(tǒng)中出現(xiàn)的問題進行重新設計與實現(xiàn),目前系統(tǒng)已在國家級氣象業(yè)務內網(wǎng)中投入使用,下一步將推廣到各區(qū)域中心,根據(jù)需求繼續(xù)發(fā)展完善。隨著天氣、氣候模式預報精度的提高、物理過程的復雜化,以及集合預報樣本的增加,導致模式計算規(guī)模越來越大,模式運算所需的計算資源和存儲資源也將迅速增加,如何利用有限的資源為氣象用戶做到最優(yōu)、最好的服務,是需要我們系統(tǒng)資源管理工作者認真思考的問題[10]。

參考文獻

[1] 孫周軍,肖文明,宋遠清,等.氣象信息實時監(jiān)視系統(tǒng)改進設計與實現(xiàn)[J].成都信息工程學院學報,2008,19(4):507-511.

[2] 沈瑜,李娟,常飚,等.高性能計算機統(tǒng)一資源管理系統(tǒng)的設計與實現(xiàn)[J].計算機技術與自動化,2014,33(1):148-150.

[3] 呂爽,馬艷軍,劉一謙,等.國家氣象網(wǎng)絡計算資源管理和共享方案的應用[J].貴州氣象,2013,37(5):40-42.

[4] 孫長明,徐立建.基于Hibernate+Spring+Struts的Web應用開發(fā)框架[J].鐵路計算機應用,2007,16(3):31-33.

[5] 趙曉君,崔建濤,鄧璐娟,等.基于SSH和jQuery的大學生校園綜合服務平臺的設計與實現(xiàn)[J].鄭州輕工業(yè)學院學報,2014,29(3):100-104.

[6] HighCharts官網(wǎng).http://www.highcharts.com/demo[OL],2015.

[7] 常飚,王斌.氣象計算資源管理系統(tǒng)設計[J].計算機工程,2014,37(8):281-284.

[8] 孫周軍,肖文明,宋遠清,等.氣象信息實時監(jiān)視系統(tǒng)改進設計與實現(xiàn)[J].成都信息工程學院學報,2008,19(4):507-511.

[9] 吳孟春,丁嵐.HighCharts組件在氣象業(yè)務中的開發(fā)和應用[J].計算機與網(wǎng)絡,2014,(12):65-68.

[10] 陳志雄.利用Struts2 框架和jQuery 框架實現(xiàn)AJAX 的開發(fā)[J].現(xiàn)代計算機,2011,(8):77-80.endprint

主站蜘蛛池模板: 国产又爽又黄无遮挡免费观看| 大陆精大陆国产国语精品1024| 日韩小视频网站hq| 精品福利网| 五月婷婷精品| 欧美亚洲第一页| 99激情网| 国产香蕉在线| AV不卡在线永久免费观看| 国产理论精品| 好吊日免费视频| 国产大片黄在线观看| 99国产精品国产高清一区二区| 国产丝袜第一页| 久久久久青草大香线综合精品| 欧美午夜一区| 久爱午夜精品免费视频| a级毛片免费在线观看| 伊人久久大线影院首页| 国产真实乱了在线播放| 亚洲视频四区| av在线5g无码天天| 5555国产在线观看| 极品尤物av美乳在线观看| 日韩福利视频导航| 欧美日本在线| 日韩免费毛片| 国产永久免费视频m3u8| 午夜免费视频网站| 亚洲一区二区日韩欧美gif| 国产精品亚洲五月天高清| 国产制服丝袜无码视频| 被公侵犯人妻少妇一区二区三区| 午夜福利在线观看入口| 精品无码视频在线观看| 国产亚洲精| 亚洲精品无码AⅤ片青青在线观看| 欧美日韩午夜| 1级黄色毛片| 97亚洲色综久久精品| 午夜福利视频一区| 亚洲欧美日韩天堂| 国产精品林美惠子在线播放| 欧美亚洲一二三区| 亚洲看片网| 亚洲 日韩 激情 无码 中出| 亚洲资源站av无码网址| 四虎永久在线精品影院| 国产理论最新国产精品视频| 在线国产欧美| 亚洲欧美成人| 欧美成人精品一级在线观看| 久久中文字幕av不卡一区二区| 日本不卡在线视频| 欧美成人精品在线| 亚洲视频黄| 欧美日韩国产成人高清视频| 69av在线| 无码高潮喷水专区久久| 99爱视频精品免视看| www.av男人.com| 日韩成人免费网站| 久久这里只有精品66| 久久亚洲国产一区二区| 欧美爱爱网| 久久青青草原亚洲av无码| 亚洲一区二区成人| 亚洲人成影院在线观看| 一区二区三区国产精品视频| 麻豆精品久久久久久久99蜜桃| 国产亚洲精| 国产香蕉在线| 日韩第一页在线| 亚洲色图另类| 国产最新无码专区在线| 97av视频在线观看| 亚洲精品成人福利在线电影| 国内精自线i品一区202| 67194成是人免费无码| 好吊色妇女免费视频免费| 无码中文字幕精品推荐| 欧美成人午夜影院|