坐落於北一女中及臺北市立大學中間的中央氣象局(簡稱氣象局),低調地維運一臺可進入排名全球百大的超級電腦,透過它,氣象主播們才能告訴觀眾,究竟今天上班要拿著雨傘出門,抑或注意今日防曬裝備是否準備充足。
這一臺超級電腦是來自於富士通所開發的超級電腦「京」,在2011年為排名全球第一的超級電腦,運算速度達到1.2PFLOPS,目前可列入百大等級的超級電腦。
氣象局目前提供的氣象預報尺度為3公里,逐步在向2公里邁進,為了要提升預報準確率,每天新增的資料集多達數十TB,現有儲存架構也達到10PB的等級,未來還可望擴充到50PB。
一手掌管氣象局IT架構的中央氣象局氣象資訊中心主任程家平表示,氣象局資訊中心成立的目的,就是要支援中央氣象局數值天氣預報作業,「將人類理解的科學現象,用數學公式表達,再用電腦求解。」而數值天氣預報作業是全世界所有氣象局最核心的任務,都必須借助超級電腦的複雜運算能力。
用分散式系統概念打造IT架構
利用超級電腦模擬大氣現象,需經過一長串複雜的過程,從最起頭的接收氣象資料、過濾資料,中間經由電腦運算,最後才產生民眾常見的降雨機率、溫度,以及一周天氣預報等訊息,因此,必須打造一套自動化系統才能完成如此的任務,程家平稱它叫即時導向批次處理系統(Real Time Oriented Batch Processing System)。
從小喜歡玩積木的程家平,高中時開始接觸無線電、音響等類比電子設備,到了大學雖然就讀氣象學系,仍然自己摸索電子學、邏輯電路等學問。程家平表示,資訊科學學習的是基本原則,就像玩積木,「可以用元件組合出想要的東西。」而他也將這樣的思維落實在工作中。
在1995年至2001年,資訊中心正在處於氣象業務全面電腦化的第三期計畫,當時程家平利用分散式系統的概念,設計了一個應用程式框架,叫做網路資訊交換環境系統(Network Information exChange Environment,NICE),「這套系統,就是利用組裝積木的概念設計。」
「理論相當重要,不能只靠直覺式的設計。」因此,在開發NICE框架時,程家平大量地借鏡分散式系統、物件導向的理念,像是在上世紀末開始流行物件導向的設計概念,其中包含多型(Polymorphism)、繼承(Inheritance)、封裝的想法,而每個獨特概念,都能解決開發者所面對的不同問題。程家平認為,要設計物件導向系統時,首先要利用抽象角度審視問題,將特定領域問題抽象化,化約為結構化的思考形式,「開發者就可以利用更廣泛角度,面對不同類型的問題。」
「NICE是一個高度抽象化、物件導向框架」,其中總共有包含數個重要元件,包含管理資訊脈動的資訊路由系統(Information Routing)、程序管理系統(Process Management)、系統監控管理系統(System Monitoring Control)等組件,藉以串接起整套自動化流程。
程家平解釋,首先是掌管資訊流動的資訊路由系統,由於NICE是由許多子系統所組成,而資訊在各系統元件中流竄,因此必須透過資訊路由系統,控制各元件間資訊傳遞的過程。
第二則是程序管理系統,管理系統程序的啟動時機、啟動條件,以及某程序和其他程序間的流程關係。
再者是系統監控管理系統,程家平表示,由於系統所牽涉到的程序、運行邏輯複雜,萬一某子系統故障,將會影響到後續的系統作業,「因此必須在早期階段偵測系統運作。」但是,數以萬計的程序同時在系統中運行,無法透過人力管理,「一定得要藉由電腦管理電腦。」
用電腦管理電腦才有效率
這套監控管理系統總共分為3層架構,第一層是運行程序的電腦,第二層則是集結數百臺機器系統的運作狀況,統一整合至訊息中心。最後一層,則是透過人工解讀監控系統回報的結果,「這個觀念叫做儀表板,但是氣象局已經行之有年。」
設計這套系統時,程家平也引入了溯源(Drill Down)的設計想法,除了把系統切分成子系統,進一步把子系統劃分成更小的元件。當系統故障時,也使用不一樣的燈色警示。他認為,透過整合不同層次系統的資訊,「這樣才能提升監控效率。」
「這樣就算是一統天下了。」程家平表示,過去還沒有NICE這個通用的框架時,每個資訊部門人員都是各自作業,「開發者都會碰上自動化的難題,像是程序管理、擷取資料等操作。」
他認為,資訊系統是為了服務業務而存在。因此,資訊部門若能使用統一應用程式框架進行開發,IT人員就可以專注在其真正負責的業務領域。因此,利用NICE開發框架,資訊部門就可以降低發展壓力,在開發人員都熟悉這套自動化機制後,「資訊人員也比較容易互相支援。」
程家平認為,NICE可以帶來兩項好處,第一是減輕開發人員壓力,第二則是讓各系統負責人能互相備援,即使碰上故障問題,其他人也能較簡單地排除。他解釋,自動化系統在運作時,常因為網路、電力及設備等原因而故障,「但是只要應用程式可正常運作,通常問題不大」,即使特定功能的程序出問題,往往也只要重新啟動,就能進行問題排除。
中央氣象局氣象資訊中心主任程家平表示,資訊科學學習的是基本原則,就像玩積木,「可以用元件組合出你想要的東西。」
不只系統架構,硬體架構也要能水平擴展
儘管設計了自動化流程,在管理全臺灣規模最大的超級電腦時,程家平仍然免不了許多例行公事。他表示,其中最重要就是資源管理,目前中央氣象局資料儲存的規模達到10PB,在未來還預計要擴展到50PB。為了節省不必要硬體開支,他並不打算一次購入過多卻又用不到的閒置硬體,但是考量到未來發展,「得要讓系統具備高度擴充性。」
目前總共有兩種可行做法,第一種是垂直擴展(Scale-up),在單一機器內預留未來升級空間,例如記憶體、硬碟插槽。但程家平認為,採用垂直擴展得提前多花預算預留升級空間,「成本門檻很高。」
因此,就如NICE的設計理念,程家平使用分散式系統中水平擴展(Scale-out)的想法,將每個運算、儲存叢集都視為可擴充元件,隨著運算、儲存需求增加,未來再讓規模逐一擴張即可。
根據各業務重要性,分配超級電腦資源
但是,管理超級電腦讓程家平最為苦惱的問題,就是如何有效地分配資源,以及優化使用效率。因為這臺超級電腦不僅提供氣象局內部使用,也開放部分資源給學術機構,或是美國海洋暨大氣總署(NOAA)。
「不管多快的電腦,對氣象局來說永遠都不夠用。」程家平表示,最耗費精神的工作為協調各個單位使用電腦時間,避免系統過度負荷,「不要讓大家為了資源而搶破頭。」所以,他得根據各單位業務的重要性,訂定使用權重順序,例如,天氣預報是氣象局的首要目標,當碰上使用尖峰時刻,仍然以產出預報結果需求為第一順位。
目前氣象局的正式環境主要架構在內部私有雲中,程家平表示,無論是公有雲、私有雲,還是混合雲,其適用環境都不一。氣象局在導入雲端運算時,他認為其中重要考量因素為:「必須謹慎地管理資源需求」,在進行運算、模擬時,常常會突然增加許多新的資源請求。雖然市面上有為數不少公有雲服務,但程家平仍認為,現階段還沒有業者能夠達到氣象局的要求,「因為我們的運算有即時性、高計算量、高儲存量、高頻寬,以及24小時作業等特性。」
因此,在架構私有雲時,氣象局也採用了虛擬化技術,將單一伺服器細分為不同虛擬機器,讓硬體資源更充分被利用,同時,也可以根據不同應用程式消耗資源的尖峰時段,安排不一樣的使用排程,「讓效率變得更好。」
其實公有雲、私有雲也並非新概念,都可追溯至過去的網格運算(Grid Computing),只是隨著實務面需求增加,技術逐漸成熟,「開始有人用系統面的方式檢視此類問題。」程家平笑著說,雲端一詞出現頻繁的現今,氣象局早在10年前,就已經與中華電信合作,準備額外伺服器,應付突然暴增的系統請求。
像是中央氣象局網站,1年瀏覽人數約落在1.3億,相較於商務網站,並非很大的瀏覽次數,但程家平表示:「資料傳送量相當大」,例如光是1張衛星雲圖資訊,動輒超過100KB,加上颱風天前夕,一天300萬、400萬的瀏覽人次,「後端得要有穩固的基礎建設才能支撐住。」
雖然資訊中心已經具備扎實IT能力,但是要求嚴格的程家平,期許它未來還要更上軌道,「我認為目前的運作效率還不夠好。」
理工背景出生的程家平笑說,每天都自我檢討哪些技能還不夠精熟,又該去何處尋求幫助。同時他期許,氣象局內每個IT人都能持續進步,「每年都比過去的自己還要更好。」
CIO小檔案
程家平
中央氣象局氣象資訊中心主任
● 學歷:臺灣大學大氣科學所碩士
● 經歷:深耕中央氣象局30年,從1986年至2009年,在中央氣象局資訊中心從技佐開始,一路從技士、課長、技正升遷至副主任,期間也主導應用程式框架NICE的開發,在2010年至2016年期間,擔任中央氣象局科技中心主任,在今年7月重返資訊中心。
機關檔案
中央氣象局
● 地址:臺北市公園路64號
● 成立時間:民國30年於重慶成立
● 主要業務:掌理氣象、地震以及和氣象有關的海象與天文業務
● 員工數:696人
● 局長:辛在勤
資訊部門檔案
● 資訊部門主管職稱:氣象資訊中心主任
● 資訊部門主管姓名:程家平
● 直屬主管:辛在勤
● 資訊部門人數:68人
● IT預算:4億元
IT部門大事紀:
● 1976年:配合預報電腦化成立電子計算機中心.
● 1984年:成立臺北資訊測站
● 1983-1989年:執行「氣象業務全面電腦化第一期計畫」
● 1987年1月:第1代高速運算(超級)電腦系統CDC Cyber 205啟用
● 1989年:改名氣象資訊中心
● 1990-1994年:執行「氣象業務全面電腦化第二期計畫」
● 1992年:第2代高速運算(超級)電腦系統CRAY Y-MP8I啟用
● 1995-2001年:執行「氣象業務全面電腦化第三期計畫」
● 2000年:第3代高速運算(超級)電腦系統FUJITSU VPP5000啟用
● 2002-2009年:執行「氣候變異與劇烈天氣監測預報系統發展計畫」
● 2006年:第4代高速運算(超級)電腦系統IBM P5-575 Cluster1600啟用
● 2007年:建置第1代無線網路管理系統,於會議室提供無線網路服務
● 2010-2015年:執行「災害性天氣監測與預報作業建置計畫」
● 2014年12月:第5代高速運算(超級)電腦系統FUJITSU PRIMEHPC FX10第3期系統驗收
● 2016-2019年:執行「氣象資訊之智慧應用服務計畫」