程耀東 張 瀟 王培建 查 禮 侯 迪 齊 勇 馬 燦
1(中國科學院高能物理研究所 北京 100049)2(西安交通大學計算機科學與技術系 西安 710049)3(中國科學院計算技術研究所 北京 100190)4 (中國科學院信息工程研究所 北京 100093) (chyd@ihep.ac.cn)
高能物理大數據挑戰與海量事例特征索引技術研究
程耀東1張 瀟2王培建2查 禮3侯 迪2齊 勇2馬 燦4
1(中國科學院高能物理研究所 北京 100049)2(西安交通大學計算機科學與技術系 西安 710049)3(中國科學院計算技術研究所 北京 100190)4(中國科學院信息工程研究所 北京 100093) (chyd@ihep.ac.cn)
新一代高能物理實驗裝置的建成與運行,產生了PB乃至EB量級的數據,這對數據采集、存儲、傳輸與共享、分析與處理等數據管理技術提出了巨大挑戰.事例是高能物理實驗的基本數據單元,一次大型實驗即可產生萬億級的事例.傳統高能物理數據處理以ROOT文件為基本存儲和處理單位,每個ROOT文件可以包含數千至數億個事例.這種基于文件的處理方式雖然降低了高能物理數據管理系統的開發難度,但物理分析僅對極少量的稀有事例感興趣,這導致了數據傳輸量大、IO瓶頸以及數據處理效率低等問題.提出一種面向事例的高能物理數據管理方法,重點研究海量事例特征高效索引技術.在這種方法中,將物理學家感興趣的事例的特征量抽取出來建立專門的索引,存儲在NoSQL數據庫中.為便于物理分析處理,事例的原始數據仍然存放在ROOT文件中.最后,通過系統驗證和分析表明,基于事例特征索引進行事例篩選是可行的,優化后的HBase系統可以滿足事例索引的需求.
高能物理;數據管理;事例索引;HBase;查詢優化
為了研究宇宙起源、天體演化、物質結構組成等科學問題,人類建造了許多大科學設施,包括歐洲大型強子對撞機(large hadron collider, LHC)、北京正負電子對撞機(Beijing electron-positron collider, BEPC)、大亞灣中微子實驗、江門中微子實驗(Jiangmen underground neutrino observatory, JUNO)、高海拔宇宙線實驗(large high altitude air shower observatory, LHAASO)等.隨著實驗裝置規模不斷擴大和精度的提高,產生了越來越多的數據,比如LHC在線數據率高達每秒1 PB,需要長期保存和處理的數據達到每年50 PB.當前,高能物理領域總體累積的數據已經接近1 000 PB,并且還在不斷增加,全球有近萬名物理學家利用這些數據進行物理研究.這樣大的數據量需要超大規模的存儲、計算及網絡資源,大量的計算任務需要由所有高能物理合作單位共同承擔.物理學家把分布于全世界的存儲、計算資源整合到一起,形成一個超高性能的通用計算基礎設施——WLCG(worldwide LHC computing grid)網格[1],提供大量的計算和存儲資源,用于數據的處理、模擬和分析.
高能物理數據處理過程包括數據篩選、數據重建、物理模擬以及分析等.目前,高能物理的實驗數據以文件為單位進行管理,每個文件包含了若干個事例.事例是基本的數據單元,指一次粒子對撞或者一次粒子間的基本相互作用產生的數據,包含了條件參數以及相關的物理量,比如光子數、帶電徑跡數、電子數等,一個大型高能物理實驗可以產生數十億甚至萬億級別數量的事例.另一方面,由于高能物理實驗裝置的規模及數據量巨大,通常一家單位難以處理全部的數據,數據由分布在全球的高能物理單位合作完成.這種分布式的、以文件為基礎的存儲方式,大大簡化了數據管理的復雜度,在很長一段時間內促進了高能物理領域的發展.
然而,隨著實驗數據的飛速增長以及新技術的出現,這種傳統的數據存儲和處理方式也暴露出越來越多的弊端.首先,文件形式的數據雖然存儲方便,但不利于數據的檢索.而數據檢索在高能物理的數據處理中占很大比重.因此,以文件為基礎的存儲,大大降低了數據處理的效率.其次,數據處理程序只能運行在存儲數據的站點,所以需要提前將數據以文件的方式傳輸到指定的站點.這種方式難以實現計算資源的靈活調度,而文件傳輸到目標站點后只有其中少部分被使用,造成帶寬的浪費.因此,提高數據處理效率和資源利用率是高能物理軟件領域亟待解決的一個重要問題.

Fig. 1 CDF (cumulative distribution function) of the simulated event selection圖1 模擬篩選返回的事例數及所占百分比
提高現有系統的處理效率并不是一個簡單的任務,存在諸多挑戰:1)文件格式的存儲方式未提供有效的屬性查詢功能,致使事例檢索效率非常低下.當物理學家檢索事例時,關心的屬性只有少數幾個,關心的事例也通常少于原始數據的1100,甚至11000000(如圖1所示).但針對文件進行檢索,需要訪問某一范圍內的所有文件,并讀取每個事例的所有屬性值.大量的IO操作都是無用的.2)分站點存儲空間不足且網絡傳輸速度有限,這給計算任務在分站點運行提出挑戰.由于分站點的規模往往遠小于主站點,無法存儲所有數據的完整拷貝,需要在計算時再臨時復制數據到分站點.由于網絡傳輸速度和數據量之間的矛盾,實時復制數據會造成很大的延遲以及文件系統的開銷,甚至系統宕機.3)數據格式在存儲和處理上具有不一致性.數據存儲的方式是文件,而數據處理的單位是事例,系統需要大量的轉化操作,造成極大的開銷.4)已有系統極為復雜,新的處理方式難以兼容.高能物理領域針對每一個實驗裝置都會開發各自的離線數據處理軟件系統,長期以來形成了獨立的體系,系統的優化不能對這些應用軟件造成太大的影響.
本文研究一個重要的問題:如何提高高能物理數據管理系統的效率.為了應對以上挑戰,本文設計了面向事例的數據管理系統,有效解決事例數據處理效率低以及分站點資源利用率低的問題.首先設計了一個基于NoSQL數據庫[2]的事例索引系統.通過事例數據特征抽取,選取物理學家最感興趣的屬性作為索引,存儲在數據庫中,并采用倒排索引技術,提高事例數據檢索的效率.接著,針對事例數據進行緩存優化,減少數據轉化和存儲開銷.然后,提出事例級跨域傳輸方案,降低分站點處理數據的延遲.作者在一個小型的原型系統上實現了事例索引并進行了試驗驗證.實驗結果表明,事例級的索引技術能夠顯著提高事例數據的檢索效率.
本文首先介紹高能物理的數據處理流程以及面向事例管理的相關工作,然后重點介紹面向事例的科學數據管理系統設計,最后給出系統驗證與分析結果,分析性能提升的原因.
1.1 高能物理數據處理流程
高能物理實驗主要有3個要素,分別是粒子源、用以觀察和記錄各種高能粒子的相關信息的探測器以及用于獲取和處理這些信息的電子學系統.探測器電子學系統的結構比較復雜,有時甚至需要計算機程序來控制,因此制造的技術難點也相對較高.高能物理數據處理過程的過程如圖2所示,主要包括數據篩選、重建、分析和模擬等部分.

Fig. 2 Data processing workflow in high energy physics圖2 高能物理數據處理過程示意圖
粒子在加速器中經高速對撞后產生的信息會被傳感器捕獲,交由在線系統進行篩選,之后傳送到離線系統中,以文件的形式保存在磁盤系統中,并在磁帶庫中進行永久保存,同時在隨機讀寫存儲系統中進行緩存,這些數據叫做原始數據(Raw Data),由事例(Event)組成.之后這些原始數據會借助對撞和取數時的參數進行重建,并被賦予真實的物理意義.重建之后的數據保存為 ROOT格式[3]的DST文件,由于軟件升級等原因,重建的過程可能進行多次.不同條件下產生的重建數據被標記為不同的版本以便區分,如655,664等.最后,物理學家利用數據分析框架對重建后的數據做深入的分析,并生成用于繪制圖表的結果ROOT文件.在數據分析階段,不同的物理學家會根據自己的需要或建立的模型設計并實現一組數據分析篩選算法,算法通常由頂點擬合、徑跡篩選、4C擬合、5C擬合等多個部分構成.數據分析過程往往涉及大量的數據讀取工作,但最終滿足條件的事例數通常僅占整體數據量的1‰左右,之后高能物理學家還會對這些挑選出來的數據做進一步的分析和計算.有時物理學家為驗證分析結果正確與否,還要使用蒙特卡羅模擬軟件產生與原始數據規模相當的模擬數據,之后對這些數據進行重建,最后再對重建后的數據進行相同的分析,用以與之前的分析結果進行比對.
當前,高能物理實驗以文件為單位進行數據管理與計算.由于事例之間的無關性和獨立性,高能物理往往把一系列的事例組成一個文件,多個文件可以在多個機器上同時處理,而不需要相互通信.因此,高能物理計算的特點是高吞吐率的數據并發.基于這些特點,目前高能物理領域普遍采用集群計算系統以及計算和存儲分離的模式,典型的系統結構如圖3所示:

Fig. 3 Typical architecture of HEP computing system圖3 高能物理計算系統典型結構
1.2 面向事例管理的相關工作
為了能夠快速得到物理學者感興趣的數據集,最初的方案是把索引信息存儲到高能物理領域中常用的ROOT文件格式中,稱為索引文件.實際上,真正的事例數據仍然存儲在數據文件中.這樣,物理學家在進行研究時,先讀取索引文件,篩選出感興趣的事例ID,最終通過事例ID在數據文件中提取感興趣的事例.中國科學院高能物理研究所的劉北江從事例數據中抽取一系列的特征量(稱為TAG),存儲在單獨的ROOT文件中,形成索引文件.用戶篩選時首先在該索引文件中查找,減少遍歷數據文件的次數,應用于北京譜儀BESIII的實驗中[4].澳大利亞墨爾本大學的Bloomfield等人將特定篩選條件選取的事例位置信息存儲在ROOT文件中,應用到日本的BELLE2實驗中[5].這樣,用戶在做分析時直接免去預篩選過程,但是這種方法只能適用于固定模式的篩選,無法滿足用戶個性化的需求.
采用文件存儲索引的方式在管理、共享和訪問性能方面難以滿足更大規模的實驗數據,因此在有些大型高能物理實驗中采用關系型數據庫來存儲事例索引.物理學者在進行事例篩選時,通過數據庫查詢語句獲得符合條件的事例ID,最后再從原始數據文件中提取出事例.比如,歐洲核子中心CERN的Goosens以及美國阿貢國家實驗室的Cranshaw等人采用Oracle數據庫存儲ATLAS實驗(超環面儀器)的索引信息,通過水平分區、縱向分區等數據庫優化等技術手段實現了10億級別的事例索引TAGDB[6].
隨著事例數量不斷增加,近年來有很多研究人員提出采用NoSQL來存儲索引信息.西班牙的Sánchez等人采用HBase構建了ATLAS實驗(超環面儀器)事例索引數據庫EventIndex[7].中國科學院高能物理研究所的孫功星等人提出將事例數據存儲在HBase中并建立特征事例索引,以加快數據分析過程[8].
值得指出的是,21世紀初曾經一段時間,有相關人員提出將高能物理全部的實驗數據存儲到面向對象的數據庫中,比如美國斯坦福直線加速器中心SLAC的Becla將BaBar的實驗數據完全存入到ObjectivityDB中[9].歐洲核子中心CERN的Düllmann提出將LHC的海量數據存儲到ObjectivityDB中[10].但是,這些方案最終沒有成功實施,目前高能物理的數據存儲仍然采用文件管理的方式.
從以上的分析可以看出,完全將事例數據存儲到關系型、面向對象或者NoSQL中的方案,在高能物理領域還沒有得到廣泛的應用.將數據文件存儲與特征索引結合起來是一個可行的方案,但是目前的工作都是針對某個實驗或者解決具體問題開展,缺乏通用、可擴展和全面的解決方案及系統.
結合高能物理海量數據管理需求和研究現狀,本文采用ROOT文件存儲和NoSQL事例特征索引融合的管理架構,提出一個通用、可擴展的方案,設計面向事例的科學數據管理系統,實現高能物理海量數據的高效管理、快速處理以及遠程訪問等.
該系統主要包括4個部分:事例特征抽取、事例索引數據庫、面向事例的緩存、面向事例的傳輸,其架構如圖4所示.在傳統的高能物理計算環境中,高能物理數據處理軟件,比如BOSS(BESIII Offline Software System)[11],SNiPER(Software for Non-collider Physics Experiments)[12],LodeStar(LHAASO Offline Data Processing Software Framework)等,直接訪問實驗數據的存儲系統,比如Lustre,GPFS,EOS等分布式文件系統.在本文的設計中,面向事例的科學數據管理系統位于高能物理數據處理軟件與實驗數據存儲系統之間,提供事例級的海量數據管理.同時,數據處理軟件仍然可以使用原有的方式,直接訪問數據存儲系統,從而保證了系統的兼容性.

Fig. 4 Architecture of event-oriented scientific data management system圖4 面向事例的科學數據管理系統結構
采用面向事例的科學數據管理系統以后,事例特征抽取模塊會掃描實驗數據存儲系統,從中抽取出物理學家過濾事例的特征量,并保存到事例索引數據庫中.事例特征數據庫記錄了事例的特征屬性以及事例的存儲位置和偏移量,并且將特征屬性值編碼至NoSQL數據庫的主鍵中,同時提供事例查詢接口.高能物理數據處理軟件在做分析時,首先通過篩選條件查詢事例索引數據庫,得到感興趣的事例集合.接著,調用事例緩存的接口.如果該事例已經在緩存系統中,就會直接給數據處理軟件返回該事例數據.如果數據處理軟件運行在遠程站點,當需要某個事例時,系統還會觸發面向事例的傳輸系統將事例數據從網絡上實時傳輸給數據處理軟件.
2.1 事例特征抽取
由于原有物理數據被封裝在ROOT等高能物理處理框架的數據對象中,數據在相關物理軟件外對用戶是不可見.所以為了能夠快速查找相關物理事例,需要預先提取事例粒度的相關特征數據,以供后續的查找.
事例特征抽取模塊負責識別不同實驗、不同格式的數據文件,并從中抽取出對于數據處理有意義的特征變量,比如BESIII(北京譜儀)實驗中,包含了運行號、事例號、總徑跡數、總帶電徑跡數、總不帶電徑跡數、好的光子數、好的正負帶點徑跡數、好的正負介子數、好的正負k-介子數、好的正負質子數、可見光能量定義等16個特征屬性.識別出這些特征屬性后,事例抽取模塊根據用戶定義,將其中的特征存儲到事例索引數據庫中.
事例特征抽取模塊基于ROOT框架實現,與具體的實驗無關.為了保證系統的通用性,該模塊定義了一個規范的接口.每個高能物理實驗通過配置接口定義文件即可實現相應的事例特征抽取功能,可以指定需要將哪些特征屬性存儲到事例特征數據庫中.高能物理中存在多種不同的文件格式,該模塊會分類識別,主要包括AOD(Analysis Object Data),重建數據摘要信息,用于物理分析);ESD(Event Summary Object),全部的重建輸出數據;EVNT(蒙特卡羅模擬產生的事例);RDO(Raw Data Objects),原始數據及其產生原始數據的條件信息.一般情況下,不需要對原始數據Raw Data建立索引.原始數據是探測器產生的字節流,其中的事例信息可以從重建后的AOD或者ESD中獲得.
2.2 事例索引數據庫及查詢條件歸并
在提取了物理事件級別的特征后,我們還要能夠有效地組織并索引千億甚至萬億級別的事例數據,達到能夠在現有文件中快速提出物理事例集合的目的.
高能物理實驗中的事例數量龐大,單個大型實驗可以達到百億甚至萬億級別.事例的屬性從幾十到幾百個不等.高能物理數據處理并發訪問量非常高,大型集群和網格計算的并發任務量可達到十萬級別.這要求事例索引數據庫具有非常好的可擴展性和性能.基于以上的需求,本系統采用基于HBase集群[13]來構建是索引數據庫.
首先,由于HBase中主鍵的構建采用了按字典序排序的索引結構,并且通常緩存在內存中[14],因而具備很好的查詢效率.所以我們在HBase中將前一步中提取到的事例界別的屬性名及其具體值編碼到了HBase的Rowkey中,以支持使用在主鍵上進行二分查找.此外,利用提取后的事件特征數據進行查詢條件的歸并,滿足相同查詢條件的事例集合會被歸并到HBase的一條記錄中,可以使得滿足同一條件的所有事例信息可以在一次查詢中返回.HBase的事例特征索引構建如圖5所示:

Fig. 5 Building event index in HBase圖5 在HBase中構建事例特征索引示意圖
2.3 面向事例的緩存
物理學者感興趣的數據集通常會呈現出一定的訪問模式.為了能夠減少重復查詢中消耗的IO資源,系統需要將現有的查詢熱區緩存起來.
一次高能物理數據分析過程中,僅僅對某些稀有事例感興趣,而這些稀有事例分布在不同的ROOT文件中.所以,物理分析過程中,僅僅讀取文件的一小部分數據,針對文件的預讀和緩存等存儲系統優化方法難以發揮作用.中國科學院高能物理研究所對BESIII實驗數據分析過程的文件訪問模式分析發現,大部分的文件讀連續請求的大小分布在256 KB~4 MB之間,每兩個連續請求之間都有offset,65%的offset絕對值分布在1~4 MB之間,也就是說文件的讀訪問方式為大記錄塊的跳讀.如果打開文件系統的預讀選項,會讀取大量無效數據,導致性能急劇下降[15].
為此,本系統引入了面向事例的緩存.系統記錄事例數據的訪問頻次,將高訪頻度的事例數據緩存到SSD以及內存中,從而減少索引和事例數據文件之間的IO開銷.面向事例的緩存模塊檢測到需要緩存的事例后,將該事例進行序列化存儲.當數據處理軟件調用接口獲取事例時,面向事例的緩存模塊再將存儲在SSD及內存的事例進行反序列化,以ROOT的對象直接返回,而不需要再從底層存儲系統中讀出.
2.4 面向事例的數據傳輸
高能物理領域廣泛采用分布式計算,將計算任務分布到全球合作站點上運行.歐洲大型強子對撞機產生海量數據便是由WLCG(Worldwide LHC Computing Grid)負責存儲和處理的.WLCG采用了三級站點的網格形式[16],主要分為Tier0,Tier1和Tier2.Tier0主要負責獲取并保存對撞機產生的原始數據,同將其發送給多個Tier1站點作為副本進行保存;Tier1主要負責對原始數據進行重建以及一些后續的處理工作;Tier2主要負責產生模擬數據和物理分析等工作.在WLCG的Tier結構中,數據并不是完全復制到所有的站點中,因此計算任務會被調度到存儲數據的地方.如果某個站點需要分析感興趣的數據,需要提前進行數據訂閱,將數據預先傳輸到指定的站點.CMS(緊湊μ子線圈)實驗使用PhEDEx系統[17]實現WLCG站點之間傳輸數據.
不同于WLCG預先傳輸文件,面向事例的數據傳輸系統僅傳輸物理分析程序所感興趣的事例,所需數據量大幅降低,隨著網絡帶寬不斷提升,將可以支持計算任務實時傳輸數據.數據傳輸系統的結構如圖6所示:

Fig. 6 Architecture of event-oriented data transfer system圖6 面向事例的數據傳輸系統結構
數據傳輸系統由數據傳輸服務器和數據傳輸客戶端2部分構成,分別運行在2個不同的站點.運行在遠程站點的高能物理數據處理軟件在做物理分析時不用考慮數據是否在本地站點,它可以通過ROOT框架或者本地文件系統接口來訪問所需要的事例數據.首先,數據處理軟件調用時事例索引數據庫獲得事例索引信息,然后通過數據傳輸客戶端向數據傳輸服務器發送事例請求.數據傳輸服務器從數據存儲系統或者事例緩存中將事例數據序列化傳輸到客戶端,然后客戶端再將事例反序列化以ROOT對象的方式返回給數據處理軟件.如果數據處理軟件以文件系統接口調用,數據傳輸系統僅傳輸所需要的數據塊,以減少傳輸量.為了提升數據訪問性能,在數據傳輸客戶端也設置了基于事例和數據塊的緩存系統.數據傳輸基于HTTP協議,支持分塊、多流及斷點續傳等功能.
3.1 實驗條件
本文在Hadoop 2.6.2平臺上建立了驗證系統,采用4臺服務器構建Hadoop集群,其中1臺主節點,3臺數據節點.硬件選用曙光A620服務器,每臺服務器配備2顆AMD Operon 6320服務器、64 GB內存、1塊1 TB 7200 RPM SAS硬盤.節點之間采用千兆以太網互聯,操作系統為Ubuntu 14.04.
實驗過程中選用了北京譜儀BESIII的真實運行數據,共包含384個DST文件、1 400萬個事例.基于以上數據我們構建了事例索引數據庫.事例索引中包含7個特征量,即:entry(事例文件內編號),runNo(運行號),eventID(事例實驗全局編號),totalCharged(總的帶電粒子數),totalNeutral(總的中性粒子數),totalTrks(總的徑跡數),以及原始的DST文件名.
3.2 實驗結果分析
為驗證事例索引數據庫的有效性,實驗開展了如下工作:1)模擬用戶查詢;2)關系型數據庫查詢效率;3)對比未歸并查詢條件與經過查詢條件歸并的HBase查詢效率;4)驗證在不同試驗中條件歸并效果.
1) 模擬用戶查詢
實驗中,首先指定RunNo,然后再選擇屬性值,模擬用戶真實的事例查詢模式,并使用蒙特卡洛方法隨機數產生查詢條件,用于模擬用戶的查詢.在測試的數據中,所有DST的文件中共包含了1 400萬個事例,查詢返回理論上限為1 400萬條.實驗中產生了1 000條模擬查詢條件,其中在1 400萬事例數據中有效的單值查詢的條件和對應事例數量的累計分布圖如圖1所示,有77%的查詢返回低于1萬條數據(少于千萬分之一).這說明了事例篩選是有效的,可以大大降低用戶遍歷原始數據文件的開銷.
2) 關系型數據庫查詢效率
關系型數據支持多個索引,能夠靈活支持結構化數據查詢,因此也是構建事例特征索引數據庫的一個選項.本實驗將事例索引存放到MySQL數據庫中,做1 000次模擬查詢,查詢時間大部分集中在200~500 ms之間.實驗結果如圖7所示.

Fig. 7 Number of returned event and time consumed in simulated selection using MySQL圖7 MySQL上模擬篩選返回的事例數及所用時間
3) HBase查詢效率
上面的實驗中對MySQL的各個字段都增加了索引.對比傳統RDBMS的實驗結果,查詢時間有了一定的降低,但是查詢效率提升并不明顯.此外,如果直接采用未優化的HBase,由于Schema固定,難以支持靈活的半結構化數據查詢,而且對于新增加的數據,需要更新相關的索引,對于大規模的應用及后期擴展仍然存在問題.
實驗中采用了流式處理的HBase以及新的Schema,歸并了查詢條件以及對應的事件結果.實驗結果顯示線性擴展性較好.而且,由于支持半結構化數據,也不用更新相關索引,容納條目數多.對于查詢優化,雖然不支持在重建或者模擬時直接加入數據,但是對于性能的提升極為明顯.在實際應用中可以與重建或者模擬程序接口,實現數據的自動化增加與索引構建.實驗結果如圖8所示:

Fig. 8 Number of returned event and time consumed in simulated selection using HBase and new Schema圖8 經過查詢優化后HBase上模擬篩選返回的事例數及所用時間
4) 條件歸并效果
由圖8結果可以看出查詢條件的歸并對于性能帶來了很大的提升,主要原因是條件歸并使得HBase中的條目數量大大降低.整體范圍內看,物理實驗的1 400萬個事例數據,由于一個屬性需要切分成為單獨的一個條目,所以在未歸并查詢條件前在HBase中共有4200萬條.進行查詢條件歸并后,僅剩5 564條.具體壓縮比的效果與實驗用例的關系圖9所示:

Fig. 9 The relationship between compaction ratio and runNo圖9 壓縮比的效果與實驗用例的關系
其中,按照查詢條件進行歸并壓縮的壓縮率根據實驗的不同而不同,平均能夠到達2 486,中位數為2 402,75%的實驗用例能夠保證壓縮率在1 049以上.
針對高能物理海量數據以及萬億級事例管理帶來的挑戰,本文在現有數據管理的基礎上,提出采用基于文件存儲和NoSQL事例特征索引融合的管理架構,設計一套面向事例的科學數據管理系統,與原有的文件級管理方式相比,可以實現高效的事例索引、篩選與快速處理,提高數據分析的效率.同時,由于具備面向事例的細化管理,可以克服原有數據訪問局部性差的問題,實現事例級的緩存,提高數據IO性能.基于事例特征索引數據庫和面向事例的數據傳輸系統,可以支持計算任務實時訪問遠程站點數據,而不需要預先將所有文件傳輸到目標站點,使得分布式計算調度更加靈活,有利于提高資源利用率.驗證系統選用了真實的1 400萬高能物理實驗事例數據和相關特征變量,實驗結果說明基于特征查詢和篩選具有可行性,經過查詢優化的HBase系統具有非常好的查詢性能和可擴展性.下一步工作,我們將針對更多的高能物理實驗和更多的事例特征變量,開展大規模的研究和測試,最終實現萬億級別的事例索引和快速查詢,提高數據處理效率,更好地支撐高能物理領域的科學發現活動.
[1]Girone M, Shiers J. WLCG operations and the first prolonged LHC run[C] //Proc of the 18th Int Conf on Computing in High Energy and Nuclear Physics. Taipei: Journal of Physics Conference Series, 2011, 331: 072014
[2]Han Jing, E Haihong, Le Guan, et al. Survey on NoSQL database[C] //Proc of the 6th Int Conf on Pervasive Computing and Applications. Piscataway, NJ: IEEE, 2011: 363-366
[3]Rademakers F, Brun R. ROOT: An object-oriented data analysis framework[J]. Nuclear Instruments & Methods in Physics Research, 1998, 389(1/2): 81-86
[4]Liu Beijiang. High performance computing activities in hadron spectroscopy at BESIII[C] //Proc of the 15th Int Workshop on Advanced Computing and Analysis Techniques in Physics. Beijing: Journal of Physics Conference Series, 2014, 523: 012008
[5]Bloomfield T, Sevior M. Index files for Belle II-very small skim containers [C] //Proc of the 22nd Int Conf on Computing in High Energy and Nuclear Physics. San Francisco: IOP Publishing, 2016
[6]Cranshaw J, Goosens L, Malon D, et al. Building a scalable event-level metadata service for ATLAS[C] //Proc of the 16th Int Conf on Computing in High Energy and Nuclear Physics. Victoria, Canada: Journal of Physics Conference Series, 2008, 119: 072012
[7]Sánchez J, FernándezCasaní A, Gonzalez de la Hoz S, et al. Distributed data collection for the ATLAS eventIndex[C] //Proc of the 21st Int Conf on Computing in High Energy and Nuclear Physics. Okinawa: Journal of Physics Conference Series, 2015, 664: 042046
[8]Lei Xiaofeng, Li Qiang, Sun Gongxing. HBase-based storage and analysis platform for high energy physics data [J].Computer Engineering, 2015, 41(6): 49-55 (in Chinese)(雷曉鳳, 李強, 孫功星. 基于HBase的高能物理數據存儲及分析平臺[J]. 計算機工程, 2015, 41(6): 49-55)
[9]Becla J. Improving performance of object oriented databases, BaBar case studies [C] //Proc of the 11th Int Conf in High Energy and Nuclear Physics. Padova, Italy: InSPIRE, 2001: 410-413
[10]Düllmann D. Petabyte databases[C] //Proc of Int Conf on Management of Data. New York: ACM, 1999: 506-507
[11]Li W, Liu H, Deng Z, et al. The offline software for the BESIII experiment [C] //Proc of the 15th Int Conf in High Energy and Nuclear Physics. Mumbai, India: TIFR, 2006: 225-229
[12]Zou J H, Huang X T, Li W D, et al. SNiPER: An offline software framework for non-collider physics experiments[C] //Proc of the 21st Int Conf on Computing in High Energy and Nuclear Physics. Okinawa, Japan: Journal of Physics Conference Series, 2015, 664: 072053
[13]Vora M N. Hadoop-HBase for large-scale data[C] //Proc of Int Conf on Computer Science and Network Technology. Piscataway, NJ: IEEE, 2011: 601-605
[14]Chang F, Dean J, Ghemawat S, et al. Bigtable: A distributed storage system for structured data [J]. ACM Trans on Computer Systems, 2008: 26(2): 15-28
[15]Cheng Yaodong, Wang Lu, Huang Qiulan, et al. Design and optimization of storage system in HEP computing environment[J]. Computer Science, 2015, 42(1):54-58 (in Chinese)(程耀東, 汪璐, 黃秋蘭, 等. 高能物理計算環境中存儲系統的設計與優化[J]. 計算機科學, 2015, 42(1): 54-58)
[16]Bonacorsi D, Ferrari T. WLCG service challenges and tiered architecture in the LHC era[G] //IFAE 2006: Proc of Italian Meeting on High Energy Physics. Berlin: Springer, 2007: 365-368
[17]Rehn J, Barrass T, Bonacorsi D, et al. PhEDEx data service[C] //Proc of the 17th Int Conf in High Energy and Nuclear Physics. Prague, Czech Republic: Journal of Physics Conference Series, 2010, 219: 062010

Cheng Yaodong, born in 1977. PhD and associate professor at the Institute of High Energy Physics, Chinese Academy of Sciences. His main research interests include distributed storage system, cloud computing and big data technologies.

Zhang Xiao, born in 1991. PhD candidate of Xi’an Jiaotong University. His main research interests include cloud computing, anomaly detection and big data.

Wang Peijian, born in 1984. PhD, assistant professor of Xi’an Jiaotong University. Member of CCF. His main research interests include cloud computing and big data.

Zha Li, born in 1974. PhD. Associate professor at the Institute of Computing Technology, Chinese Academy of Sciences. Member of CCF. His main research interests include distributed system, big data management system and resource management in data center.

Hou Di, born in 1960. Associate professor of Xi’an Jiaotong University. Member of CCF. His main research interests include database, middleware, big data theory and technology.

Qi Yong, born in 1957. PhD and professor of Xi’an Jiaotong University. His main research interests include operating systems, distributed systems, cloud computing, big data system and system security.

Ma Can, born in 1984. Senior engineer of the Institute of Information Engineering, Chinese Academy of Sciences. His main research interests include cloud computing and big data.
Data Management Challenges and Event Index Technologies in High Energy Physics
Cheng Yaodong1, Zhang Xiao2, Wang Peijian2, Zha Li3, Hou Di2, Qi Yong2, and Ma Can4
1(InstituteofHighEnergyPhysics,ChineseAcademyofSciences,Beijing100049)2(DepartmentofComputerScienceandTechnology,Xi’anJiaotongUniversity,Xi’an710049)3(InstituteofComputingTechnology,ChineseAcademyofSciences,Beijing100190)4(InstituteofInformationEngineering,ChineseAcademyofSciences,Beijing100193)
Nowadays, more and more scientific data has been produced by new generation high energy physics facilities. The scale of the data can be achieved to PB or EB level even by one experiment, which brings big challenges to data management technologies such as data acquisition, storage, transmission,sharing, analyzing and processing. Event is the basic data unit of high energy physics, and one large high energy physics experiment can produce trillions of events. The traditional high energy physical data processing technology adopts file as a basic data management unit, and each file contains thousands of events. The benefit of file-based method is to simplify the complexity of data management system. However, one physical analysis task is only interested in very few events, which leads to some problems including transferring too much redundant data, IO bottleneck and low efficiency of data processing. To solve these problems, this paper proposes an event-oriented high energy physical data management method, which focuses on high efficiency indexing technology of massive events. In this method, event data is still stored in ROOT file while a large amount of events are indexed by some specified properties and stored in NoSQL database. Finally,experimental test results show the feasibility of the method, and optimized HBase system can meet the requirements of event index.
high energy physics; data management; event index;HBase; query optimization
2016-11-15;
2017-01-09
國家重點研發計劃項目(2016YFB1000604) This work was supported by the National Key Research Program of China (2016YFB1000604).
TP311.133