摘 要:AMS-02實驗的目的是利用獨特的太空環(huán)境來研究宇宙中的暗物質(zhì)、反物質(zhì)以及測量宇宙射線的來源和組成,。由于該實驗具有數(shù)據(jù)量大,、生產(chǎn)過程復雜、計算中心分布廣泛的特點,,本文首先介紹了AMS-02實驗的背景和數(shù)據(jù)需求,,然后詳細地分析了其數(shù)據(jù)類型以及處理流程,最后通過整合關鍵技術(shù),,為AMS-02實驗遠程計算中心設計并實現(xiàn)了一套基于腳本語言,、輕量級、易移植的自動化生產(chǎn)管理系統(tǒng),,大幅度地提高了該實驗中數(shù)據(jù)生產(chǎn)的效率,。
關鍵詞: AMS-02實驗;數(shù)據(jù)生產(chǎn);自動化,;輕量級
0 引言
阿爾法磁譜儀實驗(Alpha Magnetic Spectrometer)是由物理學家,、諾貝爾獎獲得者丁肇中教授領導的一個大規(guī)模國際物理實驗。阿爾法磁譜儀是安裝在國際空間站上的唯一大型高能粒子探測器,,它于2011年5月搭載NASA奮進號航天飛機送至國際空間站并成功安裝運行[1],。利用磁譜儀強大而特殊的磁場,探測器可以利用獨特的太空環(huán)境進行基礎物理研究,,例如從宇宙中捕捉粒子并將這些信息以數(shù)據(jù)形式記錄下來,,然后從國際空間站上源源不斷地將獲得的數(shù)據(jù)傳回歐洲核子中心(CERN)進行分析,進一步探索宇宙組成以及反物質(zhì),、暗物質(zhì)的存在,。
截止到2014年6月,探測器已經(jīng)采集到約 500億個太空粒子事件,,從探測器傳到地面的數(shù)據(jù)記錄了探測采集的原始電信號,,這些信號需要經(jīng)過分類、重建與存檔等過程才能將其轉(zhuǎn)化為可供物理學家進行分析的物理數(shù)據(jù),;另一方面,,為了檢查探測器的性能以及為更深度的物理分析提供支持,實驗中也使用蒙特卡羅方法模擬探測器產(chǎn)生仿真數(shù)據(jù),。物理學家在數(shù)據(jù)分析中同時參考這兩種數(shù)據(jù),,可以將誤差減小到最低以提高分析結(jié)果的精度。由此可見,,AMS-02實驗具有數(shù)據(jù)量大,、類型多樣并且數(shù)據(jù)處理過程復雜等特點。
此外,,AMS-02實驗是跨地區(qū)合作的國際性科研項目,,美、中,、俄,、意、德等16個國家的56所研究機構(gòu)均參與其中,。為了實現(xiàn)對現(xiàn)有資源的合理利用,,其大部分數(shù)據(jù)生產(chǎn)任務由這些合作單位來承擔并隨之建立了遠程計算中心。這種分布性也帶來了一系列的問題,,例如各個遠程計算中心地域上的分散性,、軟硬件配置的差異性等,,另外,,部分中心不僅要對探測器采集到的原始數(shù)據(jù)進行數(shù)據(jù)重建,還要進行蒙特卡羅仿真并對仿真數(shù)據(jù)進行分析和存儲,。
雖然另一大型物理實驗ATLAS已經(jīng)有一套完善的基于數(shù)據(jù)驅(qū)動的工作負載管理系統(tǒng)——PanDA,,該系統(tǒng)不僅可以很好地實現(xiàn)ATLAS實驗中的數(shù)據(jù)處理,、仿真和分析等功能,而且能夠滿足迅速變化的物理需求[2],。但是,,它是一個龐大的數(shù)據(jù)生產(chǎn)系統(tǒng),需要大型開發(fā)團隊的支持,,同時ATLAS實驗的計算中心較為集中,、系統(tǒng)資源統(tǒng)一,便于集中管理[3],,顯然PanDA 的管理模式對于AMS-02實驗并不適用,。因此,為AMS-02實驗設計和實現(xiàn)一套自動化生產(chǎn)管理系統(tǒng)是十分必要的,。
1 AMS-02數(shù)據(jù)的文件類型及處理流程
1.1 AMS-02數(shù)據(jù)的文件類型
AMS-02實驗數(shù)據(jù)生產(chǎn)中主要包括Raw文件和Root文件兩種文件類型,。Raw文件是指探測器在太空中收集到的電信號,這些參數(shù)需要經(jīng)過仔細的重建,、分類與存檔才能夠被物理學家用來分析,;Root文件則是Raw文件經(jīng)過數(shù)據(jù)重建過程所產(chǎn)生的,包括粒子的入射方向,、軌跡,、動量、質(zhì)量,、電荷,、能譜等具體的物理量信息,可以直接用來做物理分析[4],。
1.2 AMS-02實驗數(shù)據(jù)處理流程
AMS-02實驗的數(shù)據(jù)處理與分析涉及到三方面的內(nèi)容:蒙特卡羅仿真,、數(shù)據(jù)重建和物理分析。AMS-02的數(shù)據(jù)生產(chǎn)與分析流程圖如圖1所示,。
(1) 蒙特卡羅仿真: Geant4軟件使用蒙特卡羅方法模擬射入探測器的粒子以及其相互作用的過程,,整個過程以AMS-02探測器模型作為基礎,將Raw文件作為輸出,。
(2) 數(shù)據(jù)重建: 將AMS-02探測器采集到的原始數(shù)據(jù)或者是蒙特卡羅模擬數(shù)據(jù)進行解壓縮,、校正、數(shù)字化等一系列處理,,將電信號轉(zhuǎn)化為物理學家可直接用于分析的數(shù)據(jù)(電荷,、速度、能量等),,整個過程以Raw文件的形式作為輸入,,以Root文件作為輸出。
(3) 物理分析: 根據(jù)物理學家提供的不同物理分析參數(shù),實現(xiàn)與已存儲的AMS仿真數(shù)據(jù)以及重建數(shù)據(jù)的動態(tài)綁定,,進行相應的觀察,、分析,并給出相關結(jié)論和可視化圖表 [5] ,。
2 AMS-02自動化系統(tǒng)設計分析
2.1 數(shù)據(jù)生產(chǎn)類型的差異性
對于AMS-02實驗自動化生產(chǎn)系統(tǒng)來說,,其數(shù)據(jù)生產(chǎn)既包括數(shù)據(jù)重建的過程,也包括蒙特卡羅仿真的過程,,但這兩個過程并不相同,,其差異主要包括以下兩點:
(1) 并行程度的差異:數(shù)據(jù)重建一般需要16~24個線程處理,蒙特卡羅仿真過程則為單線程,;
(2) 運行時間差異:光子子數(shù)據(jù)流重建每個作業(yè)僅需要幾十秒,,標準數(shù)據(jù)重建需要幾個小時,而蒙特卡羅模擬則需要幾天,。
以上差異要求生產(chǎn)平臺能夠進行動態(tài)自適應,,這樣既可以保證作業(yè)提交效率,又能充分利用提交間隙進行其他作業(yè)管理操作,。
2.2 數(shù)據(jù)傳輸?shù)脑O計分析
基于AMS-02的實驗需求, 其大部分數(shù)據(jù)重建和蒙特卡羅仿真過程需要在遠程計算中心進行,,當生產(chǎn)完成后,再將產(chǎn)生的文件傳回歐洲核子中心進行統(tǒng)一的管理和存儲,。
考慮到遠程計算中心地域分布的廣泛性,,在進行系統(tǒng)設計時要求考慮到頻繁的數(shù)據(jù)傳輸,同時要保證實驗數(shù)據(jù)的可用性,、傳輸速率以及網(wǎng)絡的穩(wěn)定性,。
3 AMS-02自動化生產(chǎn)系統(tǒng)概述
3.1 系統(tǒng)流程簡介
AMS-02自動化生產(chǎn)系統(tǒng)是基于該實驗的數(shù)據(jù)需求而開發(fā)的一套完整的數(shù)據(jù)生產(chǎn)管理系統(tǒng),整個處理過程包括作業(yè)申請,、提取,、提交、更新,、驗證,、傳輸?shù)取T撓到y(tǒng)具體的生產(chǎn)流程圖如圖2所示,。
(1) 作業(yè)請求:用戶在Web端提交申請,,完成后將作業(yè)模板壓縮包自動發(fā)送到指定郵箱中;
(2) 作業(yè)提?。篏etmail自動讀取郵件并使用Munpack工具提取附件,,根據(jù)不同的作業(yè)類型配置適合的環(huán)境變量,并保存到特定路徑,;
(3) 作業(yè)注冊:讀取壓縮包中每個作業(yè)的詳細信息并寫入Sqlite數(shù)據(jù)庫中,;
(4) 作業(yè)提交:將作業(yè)提交到作業(yè)調(diào)度系統(tǒng) (例如LSF,、PBS等) ,不同系統(tǒng)根據(jù)各自的調(diào)度策略執(zhí)行作業(yè),,確保發(fā)揮最優(yōu)的系統(tǒng)性能,;
(5) 狀態(tài)更新:實時查詢隊列中作業(yè)狀態(tài)并更新數(shù)據(jù)庫信息,;
(6) 作業(yè)驗證:對已完成的作業(yè)進行CRC驗證,,確定數(shù)據(jù)結(jié)果的有效性和可用性;
(7) 作業(yè)傳輸:將作業(yè)的摘要文件和數(shù)據(jù)文件 (Raw,、Root文件) 傳回歐洲核子中心,。
3.2 系統(tǒng)特性分析
3.2.1 輕量級、可移植性
該系統(tǒng)不依賴于任何第三方商業(yè)軟件,,也不需要管理權(quán)限和安裝軟件,,且易于部署,例如采用輕型的SQLite數(shù)據(jù)庫,,它內(nèi)置于大多數(shù)Linux發(fā)行版本中,,使用方便,資源占用率低,,處理速度快,。因此,在系統(tǒng)部署時將所需的軟件包轉(zhuǎn)移到相應服務器上并進行參數(shù)化配置安裝即可,,同時在源代碼進行移植時,,根據(jù)不同計算中心的軟硬件配置情況(例如作業(yè)調(diào)度系統(tǒng)、數(shù)據(jù)傳輸軟件的差異),,只需要對相關代碼進行簡單的修改就可以快速應用,。
3.2.2 自動化
一方面,該系統(tǒng)設計了作業(yè)緩沖池機制,,可以智能地控制向作業(yè)調(diào)度系統(tǒng)中提交的作業(yè)數(shù)量,。通過實時更新狀態(tài)來判斷隊列中是否有空閑空間,若有則從緩沖池中讀取作業(yè)信息并提交,,否則繼續(xù)等待,,這樣既可以保證計算節(jié)點時刻滿負荷運轉(zhuǎn),又可以高效合理地利用CPU資源,。
另一方面,,為了提高該系統(tǒng)的生產(chǎn)效率,系統(tǒng)采用流水線的方式實現(xiàn)了整個生產(chǎn)過程的自動化管理:在系統(tǒng)設計時將各個子過程按照運行時間,、資源占用率的不同,,采用同步或者異步的策略進行作業(yè)提交。同時,,為了避免相同程序同時運行所帶來的問題,,在系統(tǒng)執(zhí)行前會檢測是否存在相同的進程,,若發(fā)現(xiàn)則自動退出。
3.2.3 并行化
根據(jù)不同批量作業(yè)系統(tǒng)的特點(如作業(yè)提交的反饋時間)以及作業(yè)運行時間采用同步或者異步的方式進行作業(yè)提交:以同步方式處理耗時短,、輕量級的生產(chǎn)流程(例如作業(yè)提取,、提交以及狀態(tài)更新等),以批量作業(yè)的方式進行異步處理耗時長,、CPU占用率高的生產(chǎn)步驟(例如作業(yè)驗證),,而對于運行時間長、CPU占用率低的作業(yè)傳輸過程來說,,則采用獨立多線程的運行方式,。
AMS-02實驗的遠程計算中心地域跨度大的特點對數(shù)據(jù)傳輸過程帶來了一定的挑戰(zhàn)。這里使用了IPv6和Bbftp/Lftp相結(jié)合的傳輸方式,,其中Bbftp/Lftp是數(shù)據(jù)傳輸軟件,,支持多線程并發(fā)傳輸,特別對大文件傳輸比傳統(tǒng)Ftp具有更高效率[6],。
此外,,對于數(shù)據(jù)庫訪問來說,采用了數(shù)據(jù)庫操作類來封裝數(shù)據(jù)庫查詢,、增加,、更改、刪除等操作,,這樣只要調(diào)用接口就可以實現(xiàn)數(shù)據(jù)庫操作,,方便快捷,結(jié)構(gòu)清晰,,實現(xiàn)了Sqlite3數(shù)據(jù)庫的多進程/線程的并發(fā)訪問,。
4 結(jié)論
AMS-02自動化生產(chǎn)管理系統(tǒng)能夠適應不同的批量作業(yè)處理平臺、不同的生產(chǎn)類型,,滿足了實驗的數(shù)據(jù)生產(chǎn)需求,。該系統(tǒng)已經(jīng)在德國Juropa、意大利Cnaf計算中心使用并且運行穩(wěn)定,。這不僅大幅度地提高了生產(chǎn)效率和資源使用率,,而且保證了數(shù)據(jù)有效性。
目前,,該系統(tǒng)正在法國Lyon計算中心試運行,,今后將進一步觀察和調(diào)試,并根據(jù)其實際情況逐步完善系統(tǒng)性能,。
參考文獻
[1] 楊民,,陳國明. 國際空間站上的AMS實驗[J]. 現(xiàn)代物理知識,2011,23(5):10-15.
[2] Maeno T. PanDA: distributed production and distributed analysis system for ATLAS[J]. Journal of Physics: Conference Series 119,2008: 062036.
[3] Nilsson P. Experience from a pilot based system for ATLAS[J]. Journal of Physics: Conference Series119,2008:062038.
[4] 楊鵬. 阿爾法磁譜儀實驗海量數(shù)據(jù)處理環(huán)境的研究[J]. 計算機科學, 2011,38(6):41-44.