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

基于NGAS的多點觀測數(shù)據(jù)存儲與同步方法*

2019-04-19 08:56:10石聰明衛(wèi)守林鋒1
天文研究與技術(shù) 2019年2期
關(guān)鍵詞:方法

石聰明,鄧 輝,戴 偉,衛(wèi)守林,王 鋒1,,4

(1. 昆明理工大學(xué)管理與經(jīng)濟學(xué)院,云南 昆明 650093;2. 廣州大學(xué)天體物理中心/物理與電子工程學(xué)院,廣東 廣州 510006;3. 昆明理工大學(xué)云南省計算機技術(shù)應(yīng)用重點實驗室,云南 昆明 650500;4. 中國科學(xué)院云南天文臺,云南 昆明 650011)

由中國、澳大利亞、南非、英國等國家共同參與建設(shè)的平方千米陣列望遠(yuǎn)鏡是目前最大的天文實驗裝置,具有前所未有的靈敏度、巡天速度和視場[1-3]。SKA望遠(yuǎn)鏡由分布在澳大利亞西部沙漠上的工作頻率為50~350 MHz的低頻螺旋對數(shù)天線和南非及南部非洲8個國家的工作頻率為350 MHz~15 GHz的高頻蝶形天線構(gòu)成,總接收面積達(dá)1平方千米[4-5]。SKA將產(chǎn)生超海量的觀測數(shù)據(jù),在SKA-1階段,每秒產(chǎn)生高達(dá)數(shù)十TB的原始數(shù)據(jù),需要長期保存的科學(xué)數(shù)據(jù)每年新增50~300 PB;在SKA-2階段,每年新增的科學(xué)數(shù)據(jù)將達(dá)到SKA-1階段的100倍[3,6]。

為了應(yīng)對當(dāng)前面臨的預(yù)算和數(shù)據(jù)量處理的限制等相關(guān)問題,SKA提出建設(shè)區(qū)域數(shù)據(jù)中心,實現(xiàn)數(shù)據(jù)的異地存儲與歸檔,通過各國科學(xué)中心的建設(shè)推動科學(xué)研究工作的方案。這一目標(biāo)的達(dá)成要求海量觀測數(shù)據(jù)能夠高速地從觀測地(南非和澳大利亞)的數(shù)據(jù)中心同步傳輸、存儲到區(qū)域數(shù)據(jù)中心,從當(dāng)前的技術(shù)水平來看,這一需求具有非常大的挑戰(zhàn)。

下一代歸檔存儲系統(tǒng)是當(dāng)前射電天文領(lǐng)域最為常用的一套成熟的觀測結(jié)果歸檔軟件,系統(tǒng)采用Python開發(fā),功能豐富,具有高度的移植性。NGAS設(shè)計之初是為了解決歐洲南方天文臺在20世紀(jì)末期面臨的每天新增55 GB觀測數(shù)據(jù)進(jìn)行高效且低成本的數(shù)據(jù)歸檔、處理、檢索及同步的問題[7]。在SKA先導(dǎo)默奇森寬場陣列(Murchison Widefield Array, MWA)中,NGAS被用于默奇森寬場陣列與美國麻省理工學(xué)院和新西蘭惠靈頓維多利亞大學(xué)[8]間的數(shù)據(jù)同步,也被歐洲南方天文臺用來歸檔管理產(chǎn)生的海量觀測數(shù)據(jù)及同步存儲到不同的站點[9-12];阿塔卡馬大型毫米波/亞毫米波陣列(ALMA)使用NGAS將收集的觀測數(shù)據(jù)同步到美國、日本和德國的區(qū)域數(shù)據(jù)中心[11-12]。

然而,在面對SKA這一類具有更高時效性要求的數(shù)據(jù)同步與歸檔需求時,NGAS仍然面臨著一些問題。遠(yuǎn)程數(shù)據(jù)同步效率是其中一個重要方面,根本原因在于NGAS在同步傳輸數(shù)據(jù)的過程中使用基于HTTP的方式,由于HTTP協(xié)議封裝效率較低,導(dǎo)致整個數(shù)據(jù)傳輸性能較差。SKA-1的數(shù)據(jù)同步量相對較少,采用HTTP協(xié)議封裝可以滿足要求。隨著SKA-2的建設(shè),數(shù)據(jù)量呈指數(shù)增長,研究新的封裝方法,提高效率就成為一種必然。

由于當(dāng)前SKA正在設(shè)計評估階段,部分需求還沒有最終確定。因此,對于SKA數(shù)據(jù)歸檔和遠(yuǎn)程同步工作均在預(yù)研與測試階段,本文正是在這方面開展的基礎(chǔ)性工作。為提高遠(yuǎn)程數(shù)據(jù)同步性能,針對我國建設(shè)區(qū)域數(shù)據(jù)中心的需要,進(jìn)一步研究了基于ZeroMQ的多點觀測數(shù)據(jù)存儲與同步方法。

1 NGAS的底層實現(xiàn)分析

NGAS的核心是一個多線程并發(fā)HTTP服務(wù)器,NGAS通過關(guān)系型數(shù)據(jù)庫(RDBMS)管理歸檔文件的元數(shù)據(jù)、訂閱者信息、磁盤信息等。NGAS[注]https://ngas.readthedocs.io/en/latest/index.html實現(xiàn)了STATUS,ONLINE,OFFLINE,ARCHIVE,SUBSCRIBE,UNSUBSCRIBE等20多個自定義命令,這些命令的主要功能是實現(xiàn)基本的數(shù)據(jù)歸檔與檢索、服務(wù)器端數(shù)據(jù)壓縮和過濾、自動鏡像數(shù)據(jù)、磁盤跟蹤、離線數(shù)據(jù)傳輸、數(shù)據(jù)一致性校驗、數(shù)據(jù)訂閱(數(shù)據(jù)存儲與同步)等功能。

NGAS的數(shù)據(jù)同步傳輸功能是通過NGAS的數(shù)據(jù)訂閱線程調(diào)度訂閱者對應(yīng)的數(shù)據(jù)發(fā)送線程,實現(xiàn)將數(shù)據(jù)從數(shù)據(jù)發(fā)布者同步傳輸給數(shù)據(jù)訂閱者。數(shù)據(jù)發(fā)送線程的流程如圖1。

圖1 NGAS數(shù)據(jù)發(fā)送線程執(zhí)行流程圖Fig.1 A flowchart of data delivery

NGAS數(shù)據(jù)發(fā)布方將一個數(shù)據(jù)文件傳輸給數(shù)據(jù)訂閱方需要經(jīng)歷如下過程:用HTTP協(xié)議封裝數(shù)據(jù)文件,將封裝好的數(shù)據(jù)文件發(fā)送出去,等待接收數(shù)據(jù)訂閱方響應(yīng)的成功存儲數(shù)據(jù)文件的消息,處理下一數(shù)據(jù)文件。NGAS在同步傳輸數(shù)據(jù)過程中需要數(shù)據(jù)發(fā)布方等待接收數(shù)據(jù)訂閱方反饋消息而導(dǎo)致整個數(shù)據(jù)傳輸性能較差,同時由于HTTP協(xié)議封裝效率較低,也導(dǎo)致整個數(shù)據(jù)傳輸性能較差。

2 多點觀測數(shù)據(jù)存儲與同步方法的改進(jìn)

針對NGAS中數(shù)據(jù)同步傳輸功能是基于HTTP實現(xiàn)的,本文提出一種基于零消息隊列(ZeroMQ[13])改進(jìn)NGAS中多點觀測數(shù)據(jù)存儲與同步的方法。該方法使用ZeroMQ中的PUB-SUB套接字組合實現(xiàn)高效快速的數(shù)據(jù)同步傳輸與存儲。然而,PUB-SUB套接字的組合存在這些問題[注]http://zguide.zeromq.org/page:all:(1)訂閱方崩潰導(dǎo)致訂閱數(shù)據(jù)丟失;(2)訂閱者取回消息很慢導(dǎo)致發(fā)布方的發(fā)布隊列溢出而造成數(shù)據(jù)丟失;(3)網(wǎng)絡(luò)超載導(dǎo)致數(shù)據(jù)丟失;(4)訂閱方加入太遲錯失了發(fā)布方已經(jīng)發(fā)布的數(shù)據(jù)。

為了在改進(jìn)方法實現(xiàn)的系統(tǒng)中解決PUB-SUB套接字組合帶來的問題,加入近實時感知端口連接狀態(tài)的機制規(guī)避發(fā)布方在沒有訂閱方連接的情況下發(fā)布數(shù)據(jù),同時加入數(shù)據(jù)重發(fā)機制克服因為網(wǎng)絡(luò)超載、訂閱方崩潰等導(dǎo)致的數(shù)據(jù)丟失造成訂閱方無法完全同步數(shù)據(jù)的問題。為了使基于改進(jìn)方法實現(xiàn)的數(shù)據(jù)同步傳輸與存儲子系統(tǒng)能夠獨立于NGAS運行,在子系統(tǒng)中加入了使用ZeroMQ中的DEALER與ROUTER實現(xiàn)的訂閱與退訂功能模塊。

基于改進(jìn)方法實現(xiàn)的系統(tǒng)主要包括如下子系統(tǒng)模塊:數(shù)據(jù)發(fā)布端服務(wù)器(Pub-Server)、數(shù)據(jù)訂閱端服務(wù)器(Sub-Server)、訂閱者服務(wù)器(Subscriber-Server)、訂閱者客服端(Subscriber-Client)。數(shù)據(jù)發(fā)布端服務(wù)器和數(shù)據(jù)訂閱端服務(wù)器負(fù)責(zé)數(shù)據(jù)發(fā)布方與訂閱方之間的數(shù)據(jù)同步傳輸與存儲,如圖2;訂閱者服務(wù)器和訂閱者客服端負(fù)責(zé)發(fā)布方與訂閱方之間的消息訂閱與退訂,如圖3。

2.1 數(shù)據(jù)發(fā)布端服務(wù)器與數(shù)據(jù)訂閱端服務(wù)器設(shè)計與實現(xiàn)

數(shù)據(jù)發(fā)布端服務(wù)器主要負(fù)責(zé)啟動數(shù)據(jù)發(fā)布端、數(shù)據(jù)同步傳輸、存儲相關(guān)的守護(hù)線程,其執(zhí)行流程如圖4。數(shù)據(jù)發(fā)布端服務(wù)器主要包含如下功能模塊:啟動訂閱者對應(yīng)的發(fā)布數(shù)據(jù)守護(hù)線程、啟動接收反饋消息的守護(hù)線程、啟動處理反饋消息的守護(hù)線程、啟動更新積壓文件的守護(hù)線程、啟動更新發(fā)布隊列的守護(hù)線程、啟動處理新增訂閱者的守護(hù)線程、啟動處理新增退訂者的守護(hù)線程。數(shù)據(jù)訂閱端服務(wù)器的功能與數(shù)據(jù)發(fā)布端服務(wù)器類似,只是處理對象不同。

數(shù)據(jù)發(fā)布端服務(wù)器與數(shù)據(jù)訂閱端服務(wù)器之間的數(shù)據(jù)同步傳輸與存儲中涉及兩種消息:Pub_msg和Sub_msg,如圖2。Pub_msg是數(shù)據(jù)發(fā)布方(Publisher)發(fā)布的消息,格式為SI_SP, PI_PP, BFR, BFD;Sub_msg是數(shù)據(jù)訂閱方(Subscriber)發(fā)布的已成功接收與存儲的反饋信息,格式為SI_SP, PI_PP, BFR。SI表示數(shù)據(jù)訂閱方的IP;SP表示數(shù)據(jù)訂閱方為某個數(shù)據(jù)發(fā)布方申請的用于發(fā)布反饋消息的固定端口;PI表示數(shù)據(jù)發(fā)布方的IP;PP表示數(shù)據(jù)發(fā)布方為某個數(shù)據(jù)訂閱方申請預(yù)留的用于發(fā)布數(shù)據(jù)的固定端口;BFR由文件名、文件ID、文件版本、文件類型組成;BFD表示BFR對應(yīng)的積壓文件數(shù)據(jù)。

當(dāng)數(shù)據(jù)發(fā)布端服務(wù)器上的近實時端口連接狀態(tài)守護(hù)線程能檢測到某個數(shù)據(jù)發(fā)布方的數(shù)據(jù)發(fā)布端口被數(shù)據(jù)訂閱方連接時,觸發(fā)該數(shù)據(jù)發(fā)布方對應(yīng)的數(shù)據(jù)發(fā)布線程開始產(chǎn)生并發(fā)布Pub_msg;否則觸發(fā)停止數(shù)據(jù)發(fā)布線程。同時,數(shù)據(jù)重發(fā)機制會在某個數(shù)據(jù)發(fā)布方發(fā)布某個數(shù)據(jù)文件超過一段時間仍未收到數(shù)據(jù)訂閱方發(fā)布的已成功接收和存儲的反饋信息時,將讓數(shù)據(jù)發(fā)布方重新向數(shù)據(jù)訂閱方發(fā)布該數(shù)據(jù)文件。

2.2 訂閱者服務(wù)器與訂閱者客服端設(shè)計與實現(xiàn)

訂閱者服務(wù)器與訂閱者客服端之間的異步通信模式如圖3。訂閱者服務(wù)器負(fù)責(zé)接收處理訂閱消息(Sub-Msg)和退訂消息(Unsub-Msg),并將訂閱成功消息(Sub-Msg-S)、訂閱失敗消息(Sub-Msg-F)或退訂成功消息(Unsub-Msg-S)回復(fù)給對應(yīng)的請求者,同時更新數(shù)據(jù)庫中的相應(yīng)訂閱者記錄。訂閱者客服端負(fù)責(zé)向訂閱者服務(wù)器發(fā)送訂閱消息和退訂消息,根據(jù)接收到的響應(yīng)消息更新數(shù)據(jù)庫中的相應(yīng)發(fā)布者記錄。其中訂閱消息、退訂消息、訂閱成功消息、訂閱失敗消息、退訂成功消息這5種消息的格式分別為:S_SI_SP_Datetime,U_SI_SP,SS_SI_SP_PI_PP,SF_SI_SP,US_SI_SP。同時,在訂閱者客服端加入消息重發(fā)機制確保訂閱者客服端能夠成功訂閱或者退訂相應(yīng)的數(shù)據(jù)發(fā)布者。

圖2 數(shù)據(jù)發(fā)布端服務(wù)器與數(shù)據(jù)訂閱端服務(wù)器之間的通信模式

Fig.2 Communication mode between Pub-Server and Sub-Server

圖3 訂閱者服務(wù)器與訂閱者客服端之間的通信模式

Fig.3 Communication mode between Subscriber-Server and Subscriber-Client

圖4 數(shù)據(jù)發(fā)布端服務(wù)器執(zhí)行流程圖
Fig.4 A flowchart of Pub-Server

3 實 驗

3.1 實驗環(huán)境

本文測試性能所用的硬件環(huán)境是1臺型號為IW4200-10G的思騰合力GPU服務(wù)器,該服務(wù)器具有16個雙核Intel?Xeon(R) CPU E5-2620 v4 @ 2.10 GHz處理器、256 GB R-ECC DDR4 內(nèi)存、2個Intel?I350千兆網(wǎng)卡。軟件環(huán)境為64位的Ubuntu 14.04 LTS,Python 2.7.6,MySQLdb 1.2.5,libzmq 4.2.5,pyzmq 17.1.2,MySQL 5.5.61。

由于NGAS能夠處理的標(biāo)準(zhǔn)FITS文件必須包含自定義的關(guān)鍵字ARCFILE (ARCFILE=′NCU.2003-11-11T11: 11: 11.111′),實驗數(shù)據(jù)為MUSER-I的40萬個已添加ARCFILE關(guān)鍵字的FITS文件,數(shù)據(jù)量約為75.102 GB(400 000 × 201 600 B),存放在分配了250 GB內(nèi)存的tmpfs(臨時文件系統(tǒng))中。

3.2 實驗結(jié)果

基于ZeroMQ改進(jìn)的多點觀測數(shù)據(jù)存儲與同步方法與NGAS中的數(shù)據(jù)存儲與同步方法的實驗結(jié)果性能對比如圖5。訂閱者使用基于ZeroMQ改進(jìn)的數(shù)據(jù)存儲與同步方法將40萬個FITS文件完全同步傳輸與存儲下來所耗費的時間約為333.834 s(約5.6 min),使用NGAS中的數(shù)據(jù)存儲與同步方法所耗費的時間約為13 330.998 s(約222.2 min)。NGAS中的數(shù)據(jù)存儲與同步方法用時是基于ZeroMQ實現(xiàn)的數(shù)據(jù)存儲與同步方法用時的39.933倍。

圖5 同步性能對比
Fig.5 Synchronization performance comparison

3.3 討 論

實驗結(jié)果表明,基于ZeroMQ改進(jìn)的NGAS的數(shù)據(jù)存儲與同步方法在數(shù)據(jù)存儲和同步方面性能明顯優(yōu)于NGAS的數(shù)據(jù)存儲與同步方法,但是該方法也存在一些不足:

(1)由于基于ZeroMQ實現(xiàn)的NGAS數(shù)據(jù)發(fā)布端服務(wù)器要為每一個數(shù)據(jù)訂閱者分配一個固定的端口和每個IP地址端口數(shù)為65 536的限制,造成其只能為有限數(shù)量的訂閱者提供服務(wù);

(2)基于ZeroMQ的NGAS多點觀測數(shù)據(jù)存儲與同步方法的系統(tǒng)存在訂閱端服務(wù)器因為無法及時存儲高速接收的訂閱數(shù)據(jù)而導(dǎo)致內(nèi)存不足,進(jìn)而導(dǎo)致訂閱端服務(wù)器被殺掉。在未來的工作中,將加入動態(tài)調(diào)整數(shù)據(jù)發(fā)布的機制優(yōu)化數(shù)據(jù)的同步傳輸效率。

4 結(jié)束語

本文詳細(xì)介紹了NGAS中的數(shù)據(jù)同步功能,討論了基于ZeroMQ改進(jìn)的NGAS多點觀測數(shù)據(jù)存儲與同步方法及基于該方法實現(xiàn)的系統(tǒng),通過實驗驗證了基于ZeroMQ改進(jìn)的NGAS多點觀測數(shù)據(jù)存儲與同步方法實現(xiàn)的系統(tǒng)在數(shù)據(jù)同步傳輸和存儲效率方面性能明顯優(yōu)于NGAS中的數(shù)據(jù)存儲與同步。下一步工作將在更加真實的實驗環(huán)境中測試新方法的遠(yuǎn)程數(shù)據(jù)同步性能并進(jìn)一步優(yōu)化其性能。本文的工作對SKA區(qū)域數(shù)據(jù)中心與SKA天文臺數(shù)據(jù)中心之間的數(shù)據(jù)同步傳輸和存儲有較好的參考價值。

致謝:感謝國家天文臺-阿里云天文大數(shù)據(jù)聯(lián)合研究中心對本文工作的支持。

猜你喜歡
方法
中醫(yī)特有的急救方法
中老年保健(2021年9期)2021-08-24 03:52:04
高中數(shù)學(xué)教學(xué)改革的方法
河北畫報(2021年2期)2021-05-25 02:07:46
化學(xué)反應(yīng)多變幻 “虛擬”方法幫大忙
變快的方法
兒童繪本(2020年5期)2020-04-07 17:46:30
學(xué)習(xí)方法
可能是方法不對
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
最有效的簡單方法
山東青年(2016年1期)2016-02-28 14:25:23
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
賺錢方法
主站蜘蛛池模板: 欧美爱爱网| 国产精品无码制服丝袜| 国产色婷婷| 久久综合丝袜日本网| 99热这里只有精品国产99| 在线精品自拍| 日韩二区三区无| 久久精品娱乐亚洲领先| 久久精品无码国产一区二区三区| 国产成人乱码一区二区三区在线| 国产99精品久久| 婷婷色中文网| 亚洲中文字幕无码爆乳| 欧美激情视频二区| 99这里只有精品在线| 久久毛片免费基地| 亚洲天堂.com| 国产特一级毛片| 亚洲精品无码在线播放网站| 亚洲最新在线| 亚洲三级电影在线播放| 91在线免费公开视频| 国产91在线|日本| 午夜国产大片免费观看| 国产99久久亚洲综合精品西瓜tv| 人妻一区二区三区无码精品一区| 2022国产无码在线| 亚洲男人天堂2018| 国产凹凸视频在线观看| 欧美精品H在线播放| 5388国产亚洲欧美在线观看| 欧美成在线视频| 久草视频中文| 国产91成人| 19国产精品麻豆免费观看| 国产高清精品在线91| 亚洲综合18p| www.亚洲色图.com| 久久男人视频| 国产www网站| 国产成人亚洲精品无码电影| 亚洲欧美在线精品一区二区| 老色鬼久久亚洲AV综合| 曰AV在线无码| 欧洲一区二区三区无码| av一区二区三区在线观看| 香蕉久久国产超碰青草| 欧美第一页在线| 伊人久久婷婷五月综合97色| 澳门av无码| 青青青伊人色综合久久| 91人妻日韩人妻无码专区精品| 日本不卡在线视频| 日韩视频免费| 亚洲国产成人久久77| 国产精品原创不卡在线| 精品国产91爱| a毛片在线免费观看| 99视频在线免费观看| 亚洲国产黄色| 无码网站免费观看| 超清无码一区二区三区| 亚洲人成色77777在线观看| 99久久免费精品特色大片| 小说区 亚洲 自拍 另类| 无码丝袜人妻| 五月六月伊人狠狠丁香网| 日韩小视频在线观看| 精品无码视频在线观看| 国产免费网址| a毛片免费在线观看| 国产亚洲精品va在线| 欧美一区二区福利视频| 国产对白刺激真实精品91| 2022国产91精品久久久久久| 亚洲国产在一区二区三区| 久久影院一区二区h| 国产福利免费视频| 国产男女免费视频| 亚洲国产天堂在线观看| 超碰精品无码一区二区| 国产办公室秘书无码精品|