亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        面向結(jié)構(gòu)化篇級科技文獻(xiàn)數(shù)據(jù)治理的高性能分布式計(jì)算框架研究*

        2024-03-02 03:08:46常志軍錢力郭
        情報(bào)雜志 2024年3期
        關(guān)鍵詞:科技

        范 萌 常志軍錢 力郭 丹

        (1.中國科學(xué)院文獻(xiàn)情報(bào)中心 北京 100190;2.中國科學(xué)院大學(xué)經(jīng)濟(jì)與管理學(xué)院信息資源管理系 北京 100190)

        0 引 言

        加強(qiáng)科技基礎(chǔ)能力建設(shè)是加快建設(shè)世界技術(shù)強(qiáng)國的必然要求[1],為加強(qiáng)科技基礎(chǔ)能力建設(shè)需要推動關(guān)鍵軟件技術(shù)國產(chǎn)化,以應(yīng)對科技脫鉤,保障科技文獻(xiàn)服務(wù)的戰(zhàn)略安全。在科技圖書文獻(xiàn)數(shù)據(jù)中心建設(shè)過程中,數(shù)據(jù)治理、數(shù)據(jù)存儲、數(shù)據(jù)檢索是技術(shù)維度上要解決的主要問題,其中又以數(shù)據(jù)治理問題最為突出。

        目前科技文獻(xiàn)數(shù)據(jù)中心的數(shù)據(jù)體量達(dá)4億篇,主要數(shù)據(jù)類型包括論文、專利、項(xiàng)目、圖書、標(biāo)準(zhǔn)、政策、獎項(xiàng)、會議等10種,需要進(jìn)行多樣性數(shù)據(jù)治理的結(jié)構(gòu)化數(shù)據(jù)都存儲在Elasticsearch和Mysql中。在科技文獻(xiàn)數(shù)據(jù)整體治理的架構(gòu)中,數(shù)據(jù)治理包括數(shù)據(jù)的可獲得性、可用性、完整性和安全性[2],多樣化數(shù)據(jù)治理主要發(fā)生在基礎(chǔ)數(shù)據(jù)治理、增值數(shù)據(jù)治理、精編數(shù)據(jù)加工、異質(zhì)網(wǎng)絡(luò)數(shù)據(jù)建設(shè)四個階段。數(shù)據(jù)處理需求來源分為3種:a.數(shù)據(jù)資產(chǎn)組織結(jié)構(gòu)要求;b.數(shù)據(jù)質(zhì)量控制核對需求;c.業(yè)務(wù)應(yīng)用需求。其中業(yè)務(wù)應(yīng)用需求占較多的比例。比如很多數(shù)據(jù)處理需求是業(yè)務(wù)人員在撰寫情報(bào)分析報(bào)告時,需要對多類數(shù)據(jù)進(jìn)行臨時處理和統(tǒng)計(jì),這種計(jì)算只需要使用一次。

        在上述背景下,本文提出一種高靈活、低門檻的高性能計(jì)算框架ArticleCF,其可有效規(guī)避MapReduce、Spark、Storm等計(jì)算框架研發(fā)周期長、技術(shù)門檻高的問題,同時還可以通過分布式形式,實(shí)現(xiàn)數(shù)據(jù)的高效處理,以滿足數(shù)智驅(qū)動情報(bào)分析的文獻(xiàn)情報(bào)數(shù)據(jù)治理需求。

        1 相關(guān)研究

        1.1 分布式數(shù)據(jù)治理

        目前,數(shù)據(jù)治理已經(jīng)成為企業(yè)治理和國家治理的重點(diǎn)領(lǐng)域和重要方式[3,4]??萍嘉墨I(xiàn)數(shù)據(jù)治理全流程如下圖1所示。在科技文獻(xiàn)智慧數(shù)據(jù)中心建設(shè)的協(xié)同治理階段,源于業(yè)務(wù)的定制化處理需求是數(shù)據(jù)持續(xù)治理的關(guān)鍵環(huán)節(jié),這就依賴于一種高效、易用的數(shù)據(jù)治理平臺,其不僅實(shí)現(xiàn)可視化、模板化數(shù)據(jù)篩選、數(shù)據(jù)處理、數(shù)據(jù)輸出等功能,還能使得業(yè)務(wù)人員直接參與數(shù)據(jù)治理任務(wù),有效解決數(shù)據(jù)研發(fā)團(tuán)隊(duì)支持能力的瓶頸難題,為文獻(xiàn)情報(bào)在數(shù)智時代的變革打好堅(jiān)實(shí)的軟件基礎(chǔ)。

        圖1 科技文獻(xiàn)數(shù)據(jù)治理全流程

        ArticleCF在功能上針對科技文獻(xiàn)數(shù)據(jù)特點(diǎn)進(jìn)行多個維度的設(shè)計(jì),以滿足篇級結(jié)構(gòu)化數(shù)據(jù)的處理需求,重點(diǎn)設(shè)計(jì)滿足該業(yè)務(wù)場景的分布式任務(wù)分發(fā)策略、并行計(jì)算策略以及故障轉(zhuǎn)移機(jī)制。同時為給用戶提供任務(wù)執(zhí)行信息,專門設(shè)計(jì)豐富的跟蹤機(jī)制,全面報(bào)告任務(wù)的進(jìn)展及可能存在的問題。設(shè)計(jì)要點(diǎn)包括:a.限定處理數(shù)據(jù)的格式為結(jié)構(gòu)化數(shù)據(jù),可簡化算子函數(shù)的輸入、輸出設(shè)計(jì)。b.通過可視化在線編程技術(shù),降低入門難度,用戶通過簡單拖拽即可實(shí)現(xiàn)串行數(shù)據(jù)處理流程的設(shè)計(jì)。c.提供豐富的函數(shù)庫,類似SQL語法中的count、sum、distinct等函數(shù),為功能實(shí)現(xiàn)節(jié)省研發(fā)成本,提升代碼質(zhì)量,提供新功能函數(shù)發(fā)布功能,提升用戶體驗(yàn),用戶可以發(fā)布新函數(shù),不斷豐富函數(shù)庫。d.控制用戶資源使用量,對集群資源進(jìn)行科學(xué)分配,尤其加強(qiáng)對空閑資源的利用率以及對用戶資源的及時回收保障。e.增加權(quán)限管理機(jī)制,為任務(wù)安全、數(shù)據(jù)安全、代碼安全做好保障。f.采用Sql、Python語言作為支撐語言用于處理數(shù)據(jù)子集篩選和功能編碼。g.支持串行處理模塊的熱插拔功能,執(zhí)行節(jié)點(diǎn)具有模塊版本核對和動態(tài)加載Python模塊的能力。h.集群具有彈性擴(kuò)展能力,通過增加處理節(jié)點(diǎn)的數(shù)量,近線性提升數(shù)據(jù)處理能力。

        本文以需求為導(dǎo)向、以場景為牽引,提出的ArticleCF是專門為結(jié)構(gòu)化科技文獻(xiàn)數(shù)據(jù)多樣性協(xié)同治理研發(fā)的計(jì)算框架。通過設(shè)計(jì)調(diào)查問卷,向業(yè)務(wù)人員征求需求和意見,力求保證ArticleCF能夠滿足日常工作中常見的數(shù)據(jù)治理需求。為科技文獻(xiàn)情報(bào)向數(shù)智驅(qū)動模式演化提供堅(jiān)實(shí)的數(shù)據(jù)基礎(chǔ)和高效的數(shù)據(jù)治理能力。

        1.2 分布式計(jì)算框架

        提高科技文獻(xiàn)數(shù)據(jù)治理水平是提供高質(zhì)量文獻(xiàn)情報(bào)分析與服務(wù)的基礎(chǔ),而文獻(xiàn)數(shù)據(jù)計(jì)算框架的性能高低直接影響科技文獻(xiàn)數(shù)據(jù)治理水平。面對激增的海量數(shù)據(jù),Huwe認(rèn)為圖書館的科技文獻(xiàn)數(shù)據(jù)治理需要依靠Hadoop與Spark計(jì)算框架[5];王海萍提出基于Spark內(nèi)存計(jì)算框架的圖書館文獻(xiàn)檢索服務(wù),從而提高目前圖書館在對大量文獻(xiàn)數(shù)據(jù)進(jìn)行檢索的準(zhǔn)確率和效率,提升文獻(xiàn)數(shù)據(jù)治理能力,優(yōu)化文獻(xiàn)服務(wù)質(zhì)量[6];蒙杰提出基于Hadoop的海量科技信息資源管理系統(tǒng),實(shí)現(xiàn)對科技信息資源的安全存儲與高效訪問[7]。由此可見,目前面向結(jié)構(gòu)化篇級文獻(xiàn)數(shù)據(jù)的計(jì)算框架主要是以Mapreduce、Spark為代表的分布式計(jì)算框架。

        1.2.1MapReduce計(jì)算框架

        MapReduce是Hadoop生態(tài)圈的核心分布式計(jì)算框架[8], 其核心思想是分而治之的數(shù)據(jù)計(jì)算策略,將大數(shù)據(jù)切分為小的Block數(shù)據(jù)塊,進(jìn)而分別獨(dú)立處理計(jì)算。該計(jì)算框架主要通過Map (映射)和 Reduce(歸約/化簡)兩個階段,實(shí)現(xiàn)各類業(yè)務(wù)的處理過程[9,10]。目前MapReduce被廣泛應(yīng)用于工業(yè)界的多種海量數(shù)據(jù)分析場景[11-13],除此以外還廣泛應(yīng)用于醫(yī)療臨床大數(shù)據(jù)篩選[14]、關(guān)聯(lián)規(guī)則挖掘[15]、水產(chǎn)農(nóng)業(yè)[16]等領(lǐng)域。MapReduce屬于離線計(jì)算框架,采用離線調(diào)度算法完成對全部任務(wù)的調(diào)度和管理[17]。MapReduce通過溢出寫盤技術(shù)和故障自動轉(zhuǎn)移技術(shù)降低對硬件資源的要求,因此MapReduce集群搭建成本低,只要有計(jì)算能力的服務(wù)器均可加入到集群中,進(jìn)而發(fā)揮一定的計(jì)算能力。由此可見,MapReduce計(jì)算框架適用于數(shù)據(jù)存儲在HDFS文件系統(tǒng)中,并且對時間響應(yīng)耗時要求不高的大規(guī)模數(shù)據(jù)的計(jì)算場景?;诖?在設(shè)計(jì)ArticleCF的架構(gòu)時,需要著重考慮作業(yè)啟動與完成的耗時,克服Mapreduce延遲較高的問題,以提高計(jì)算框架的靈活性,滿足對時間響應(yīng)與耗時要求較高的任務(wù)場景。

        1.2.2Spark內(nèi)存計(jì)算框架

        Spark是面向迭代機(jī)器學(xué)習(xí)算法的新框架[18],它支持交互式數(shù)據(jù)分析的同時還保持了MapReduce的可伸縮性和容錯性。Spark在迭代機(jī)器學(xué)習(xí)作業(yè)中的表現(xiàn)可以超過Hadoop的 10倍,在ETL等數(shù)據(jù)處理任務(wù)中,兩者相差不明顯。Spark具有更豐富的算子,包括map、mapPartitions、flatMap、filter、reduceByKey、groupByKey、join、 reduce、aggregate、foreach等,支持更靈活的編程。Spark沒有獨(dú)立的存儲系統(tǒng),需要與其他的存儲系統(tǒng)進(jìn)行集成[19]。Spark適合具有大量迭代計(jì)算的場景,Spark在大規(guī)模圖像處理[20]、工業(yè)網(wǎng)絡(luò)安全[21]、心電信號數(shù)據(jù)挖掘[22]、電力系統(tǒng)監(jiān)控[23]等領(lǐng)域得到廣泛應(yīng)用,在硬件資源充足的情況下,其在實(shí)現(xiàn)數(shù)據(jù)排重、知識圖譜構(gòu)建、主題標(biāo)引等業(yè)務(wù)場景也具有出色表現(xiàn)。由此可見,Spark具有性能快速、算子豐富等計(jì)算優(yōu)勢,但是對于不熟悉分布式計(jì)算的開發(fā)人員而言,要想掌握其編程模型和調(diào)優(yōu)技巧,需要很高的學(xué)習(xí)成本。因此,ArticleCF計(jì)算框架考慮設(shè)計(jì)可視化在線編程模塊,對于那些晦澀難懂的程序函數(shù),用戶只需要進(jìn)行點(diǎn)擊拖拽,就能實(shí)現(xiàn)相應(yīng)的功能,降低用戶使用門檻。

        1.2.3Storm流式計(jì)算框架

        Apache Storm是一種低延遲分布式流處理框架[24],也被稱為實(shí)時Hadoop。通過Zookeeper進(jìn)行任務(wù)管理,具有較高集群容錯能力,運(yùn)行中模塊處于無狀態(tài)模式,隨時宕機(jī)重啟。Storm創(chuàng)新性提出的ack消息追蹤框架和復(fù)雜的事務(wù)性處理,能夠滿足很多級別的數(shù)據(jù)處理需求。使用 Netty作為其通信組件,Netty是一個基于TCP/IP協(xié)議棧的異步服務(wù)器/客戶端框架[25]。Topology是Storm的執(zhí)行任務(wù)單位,每個Topology 由Spout和Bolt構(gòu)成,Spout負(fù)責(zé)發(fā)出待處理的Tuple數(shù)據(jù), Bolt通過訂閱指定Spout或者Bolt發(fā)出的Tuple,并編寫具體的處理邏輯完成任務(wù)目標(biāo)。Apache Storm在電商領(lǐng)域用戶分析[26]、大規(guī)模圖像檢索[27]、實(shí)時生理信號采集與分析[28]等方面都有廣泛的應(yīng)用。Storm在處理大規(guī)模實(shí)時數(shù)據(jù)流和低延遲需求方面都具有很高的價值,不過與Spark一樣,學(xué)習(xí)成本很高,集群的部署和管理需要具備專業(yè)知識和經(jīng)驗(yàn),同時,其生態(tài)系統(tǒng)中可用的可視化和監(jiān)控工具較少。因此,ArticleCF計(jì)劃設(shè)計(jì)一個資源管理模塊,實(shí)現(xiàn)Slave節(jié)點(diǎn)與服務(wù)器信息的實(shí)時監(jiān)控,更好地管理計(jì)算集群。

        1.3 篇級文獻(xiàn)數(shù)據(jù)計(jì)算

        科技文獻(xiàn)大數(shù)據(jù)建設(shè)從國家“十三五”期間已經(jīng)開始,并逐步實(shí)現(xiàn)從0到1的突破,基于Hadoop生態(tài)群分布技術(shù)建設(shè)了完備的數(shù)據(jù)匯聚、通用治理、數(shù)據(jù)索引及服務(wù)的平臺和工具集。通過MapReduce實(shí)現(xiàn)多對億級別文獻(xiàn)數(shù)據(jù)的ETL處理,采用Hive作為數(shù)據(jù)倉庫,基于Spark完成了100億級知識圖譜的構(gòu)建,依托Elasticsearch搜索引擎實(shí)現(xiàn)知識檢索服務(wù),引入Spring cloud微服務(wù)架構(gòu),提升負(fù)載均衡和接口擴(kuò)展能力,部署Redis作為高速緩存保證在線服務(wù)性能。同時,隨著人工智能技術(shù)的發(fā)展,研究人員發(fā)現(xiàn)對數(shù)據(jù)的治理從基礎(chǔ)的ETL開始邁向?qū)?xì)粒度知識的智能挖掘?qū)用?對數(shù)據(jù)的應(yīng)用也從知識維度開始向智慧維度發(fā)展。在新一代技術(shù)的驅(qū)動下,文獻(xiàn)情報(bào)范式正在向數(shù)據(jù)驅(qū)動的方向轉(zhuǎn)變。但是,當(dāng)前的集群和技術(shù)明顯已不能滿足新階段的數(shù)據(jù)治理的需求,需要在現(xiàn)有的基礎(chǔ)上研發(fā)更符合數(shù)據(jù)治理要求的一套平臺和工具。比如在MapReduce的map函數(shù)中,讀取Elasticsearch中的數(shù)據(jù),不能控制并行度,Spark通過組件實(shí)現(xiàn)對數(shù)據(jù)的讀取,在程序段同樣無法控制并行度,無法控制計(jì)算給Elasticsearch帶來的壓力。目前,尚未出現(xiàn)面向科技文獻(xiàn)情報(bào)領(lǐng)域,支撐多情報(bào)分析、知識發(fā)現(xiàn)的多樣性數(shù)據(jù)治理需求的靈活、易用的計(jì)算框架。

        2 啟發(fā)式思考

        a.基于NoSQL數(shù)據(jù)Scroll讀取速度明顯高于寫入速度??萍嘉墨I(xiàn)結(jié)構(gòu)化數(shù)據(jù)的多樣性處理,需要經(jīng)過篩選讀取、串行治理、結(jié)果寫入三個基本階段。通過實(shí)驗(yàn)可知,在實(shí)際應(yīng)用中,結(jié)構(gòu)化數(shù)據(jù)的讀取速度比基礎(chǔ)處理速度要快2倍。以知識產(chǎn)權(quán)數(shù)據(jù)為例,存儲系統(tǒng)為Elasticsearch集群(15臺服務(wù)器,服務(wù)器:惠普HPE DL380,配置:CentOS 6.8操作系統(tǒng),RAID0 10*4T磁盤陣列,32核128GB內(nèi)存),數(shù)據(jù)總量為66 297 744篇,索引有效數(shù)據(jù)總量為65 977 583篇,數(shù)據(jù)的讀取和寫入均為單線程,讀取數(shù)據(jù)和寫入數(shù)據(jù)的時間耗時(見表1)。

        表1 知識產(chǎn)權(quán)數(shù)據(jù)讀取、寫入時間對比

        基于此規(guī)律,ArticleCF的讀取模塊可以基于Scroll的數(shù)據(jù)讀取以單節(jié)點(diǎn)的方式進(jìn)行,以簡化數(shù)據(jù)操作;寫入模塊則需要分布式模式進(jìn)行,通過并行度提升ArticleCF的數(shù)據(jù)處理性能。

        b.通常數(shù)據(jù)庫數(shù)據(jù)都具有唯一ID,體量小,適合用于任務(wù)分配、跟蹤。ID的數(shù)據(jù)容量與全字段數(shù)據(jù)體量具有很大的差距,以論文、專利元數(shù)據(jù)為例,ID的長度與全字段長度相比,達(dá)到1:20。因此ArticleCF的任務(wù)管理模塊,可通過數(shù)據(jù)的唯一ID進(jìn)行分組,構(gòu)成任務(wù)分配的最小單元batch,管理處理任務(wù)的執(zhí)行狀態(tài)。各處理節(jié)點(diǎn)收到batch后,以分布式形式進(jìn)行全量字段的數(shù)據(jù)獲取。

        c.建立數(shù)據(jù)寫入權(quán)限控制機(jī)制,區(qū)分原表寫入和臨時表寫入。數(shù)據(jù)串行處理得到結(jié)果數(shù)據(jù),本架構(gòu)僅支持寫回系統(tǒng)為Elasticsearch和Mysql兩種。為了區(qū)分原表寫入與臨時表寫入,結(jié)果數(shù)據(jù)回填原表之前,ArticleCF會對其進(jìn)行審核,保證操作不破壞原有數(shù)據(jù)整體設(shè)計(jì);若每個用戶處理的邏輯也表現(xiàn)多樣性,則參考MapReduce的文件輸出模式,存儲為結(jié)果文件形式,但為了輸出文件的管理,專門設(shè)計(jì)寫出功能。

        d.支撐函數(shù)級編程框架,構(gòu)建常用操作函數(shù)庫。本架構(gòu)面向的是結(jié)構(gòu)化數(shù)據(jù)處理,因此在數(shù)據(jù)規(guī)范性方面具有較大優(yōu)勢,對數(shù)據(jù)治理的操作也集中在對字段的規(guī)范化、合并、排重、拆分、映射等操作,這類操作具有很大的共性可挖掘。在結(jié)構(gòu)化優(yōu)勢基礎(chǔ)上,ArticleCF的可視化編程模塊引入函數(shù)級編程,借鑒map、reduce思想,明確定義各類函數(shù)統(tǒng)一的輸入、輸出結(jié)構(gòu),通過規(guī)范的思路,降低編程門檻。常用函數(shù)庫應(yīng)該是開放、可溯源、多版本管理的在線函數(shù)庫,通過檢索形式可直接引入到處理代碼中。除此以外,還可以構(gòu)建函數(shù)庫的應(yīng)用評價機(jī)制,經(jīng)過實(shí)際應(yīng)用對函數(shù)質(zhì)量進(jìn)行選擇,篩選出優(yōu)質(zhì)函數(shù),為用戶使用函數(shù)提供重要參考。

        e.每個算子功能單一化,通過串行機(jī)制完成多種處理需求。算子名稱格式為Operator_Function,算子通過調(diào)用功能函數(shù),實(shí)現(xiàn)目標(biāo)功能。在科技文獻(xiàn)數(shù)據(jù)治理任務(wù)中,存在較多需要幾個算子先后都執(zhí)行,才能完成整體任務(wù)的情況。比如計(jì)算SCI文獻(xiàn)的高被引數(shù)值,首先需要計(jì)算全部文獻(xiàn)的被引情況,再根據(jù)高被引公式計(jì)算滿足高被引條件的論文,最后將結(jié)果數(shù)據(jù)更新到數(shù)據(jù)庫中,支持服務(wù)檢索與展示。為此,新設(shè)計(jì)的ArticleCF的執(zhí)行任務(wù)單元Flow能夠一次性完成多個處理任務(wù),為了降低處理任務(wù)的耦合度,需要滿足每個算子的功能單一化,同時采用串行執(zhí)行機(jī)制,通過Flow Python單文件形式保存串行代碼,經(jīng)過可視化拓展過程,完成算子的自動銜接,用戶在線編輯SQL腳本和Python邏輯作為算子的具體實(shí)現(xiàn)代碼。

        3 篇級文獻(xiàn)數(shù)據(jù)分布式計(jì)算框架設(shè)計(jì)

        3.1 系統(tǒng)整體設(shè)計(jì)

        篇級文獻(xiàn)數(shù)據(jù)分布式計(jì)算框架以集群方式運(yùn)行,本文對處理數(shù)據(jù)、Master/Slave進(jìn)程、輸入、輸出以及執(zhí)行任務(wù)單元Flow進(jìn)行了整體架構(gòu)設(shè)計(jì)。ArticleCF整體架構(gòu)設(shè)計(jì)見圖2。

        圖2 ArticleCF整體架構(gòu)設(shè)計(jì)

        為保證ArticleCF正常、高效地進(jìn)行數(shù)據(jù)處理,對分布式計(jì)算框架所處理的數(shù)據(jù)格式提出以下要求:

        a.處理數(shù)據(jù)類型為科技文獻(xiàn)篇級結(jié)構(gòu)化數(shù)據(jù),并且必須已存儲在NoSQL數(shù)據(jù)庫中,比如Elasticsearch和Mysql等。

        b.在算子處理中,一條數(shù)據(jù)可以產(chǎn)生0條或多條結(jié)果數(shù)據(jù)。每個算子的輸入和輸出都是List數(shù)據(jù)結(jié)構(gòu)。

        c.本計(jì)算框架原則上是面向單篇數(shù)據(jù)處理,不支持對多篇數(shù)據(jù)的統(tǒng)計(jì)等操作,但可以借助外部系統(tǒng),如Redis等完成統(tǒng)計(jì)等需求。

        d.每條篇級文獻(xiàn)數(shù)據(jù)必須具有唯一性ID。該ID將作為數(shù)據(jù)質(zhì)量控制和任務(wù)管理的唯一依據(jù)。

        3.2 核心模塊功能

        Master是ArticleCF集群的管理者,是整個集群的“大腦”,每個運(yùn)行時刻有且具僅有一個Master節(jié)點(diǎn)。集群啟動后,Master以常駐進(jìn)程形式執(zhí)行,時刻管理整個集群的整體運(yùn)行。Master負(fù)責(zé)整個集群的用戶管理、資源管理、任務(wù)管理、可視化編程、執(zhí)行管理5個方面的功能。用戶管理功能主要實(shí)現(xiàn)對多用戶的集中管理,其為每個用戶分配資源總數(shù)量和執(zhí)行任務(wù)的優(yōu)先級。資源管理主要是對所有Slave進(jìn)行管理,監(jiān)控每個Slave節(jié)點(diǎn)上啟動的工作線程數(shù),并對所部署服務(wù)器的內(nèi)存、磁盤、網(wǎng)絡(luò)使用情況進(jìn)行預(yù)警處理。任務(wù)管理主要完成對用戶提交任務(wù)的分派與跟蹤??梢暬幊炭商嵘鼳rticleCF的易用性,為用戶提供豐富的函數(shù)庫,其可通過創(chuàng)建算子實(shí)現(xiàn)處理功能。Master主要功能設(shè)計(jì)見圖3。

        圖3 Master主要功能設(shè)計(jì)

        Flow是ArticleCF的最小執(zhí)行結(jié)構(gòu),Flow必須包括Input Data、Operators、Output Data三個處理階段。Flow主要實(shí)現(xiàn)對多個操作算子的串行管理。Flow分為Flow-head、Flow-body、Flow-tail三部分,Flow-head實(shí)現(xiàn)Input Data,Flow-body實(shí)現(xiàn)算子串行執(zhí)行,Flow-tail實(shí)現(xiàn)對結(jié)果數(shù)據(jù)的入庫操作。其中Flow-head、Flow-tail兩模塊屬于Master的特定功能,在Master執(zhí)行,Flow-body在Slave端執(zhí)行。Flow工作流功能設(shè)計(jì)見圖4。

        圖4 Flow工作流功能設(shè)計(jì)

        Slave是ArticleCF的任務(wù)執(zhí)行者,一個集群中有多個Slave進(jìn)程。每臺服務(wù)器可以部署多個Slave,并配置獨(dú)有SlaveID編碼。每個Slave進(jìn)程是一個可獨(dú)立執(zhí)行處理任務(wù)的最小單位,也是彈性擴(kuò)展集群計(jì)算能力的部署單位。Slave的主要功能包括任務(wù)處理和對Flow文件的動態(tài)加載與執(zhí)行。任務(wù)管理模塊獲取到任務(wù)batch后,根據(jù)數(shù)據(jù)ID批量檢索NoSQL數(shù)據(jù)庫以獲取對應(yīng)數(shù)據(jù)的完整信息,并更新數(shù)據(jù)緩沖池中的處理狀態(tài)。動態(tài)加載技術(shù)基于Python解釋性語言特性進(jìn)行設(shè)計(jì)開發(fā),實(shí)現(xiàn)在指定線程內(nèi)動態(tài)加載py文件并執(zhí)行。任務(wù)處理器流程圖見圖5。

        圖5 任務(wù)處理器流程

        3.3 數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)

        ArticleCF所有的功能實(shí)現(xiàn)都由Master和Slave兩個模塊進(jìn)行完成,兩者具有相同的軟件結(jié)構(gòu),在部署階段通過配置文件區(qū)分承擔(dān)角色,核心模塊遵循“高內(nèi)聚、低耦合”的軟件設(shè)計(jì)原則。ArticleCF主要模塊數(shù)據(jù)結(jié)構(gòu)的核心字段見表2。

        表2 ArticleCF主要模塊數(shù)據(jù)結(jié)構(gòu)

        FlowCache是Master端的核心數(shù)據(jù)結(jié)構(gòu),其屬于執(zhí)行時數(shù)據(jù)結(jié)構(gòu),存儲于內(nèi)存中,集群重啟將清空所有歷史記錄,并重新開始統(tǒng)計(jì)Flow的執(zhí)行情況。SlaveManager數(shù)據(jù)結(jié)構(gòu)主要用于存儲集群中所有Slave信息,Slave通過心跳與Master進(jìn)行周期匯報(bào),并更新Slave管理數(shù)據(jù)結(jié)構(gòu)信息,該數(shù)據(jù)結(jié)構(gòu)為后續(xù)任務(wù)管理模塊提供任務(wù)分配依據(jù)。Input Data數(shù)據(jù)結(jié)構(gòu)主要用于對篩選數(shù)據(jù)的獲取和緩存,該階段只處理真實(shí)數(shù)據(jù)的UUID,用于任務(wù)管理。Input Data數(shù)據(jù)結(jié)構(gòu)在Flow-head階段完成賦值。Output Data數(shù)據(jù)結(jié)構(gòu)主要用于對結(jié)果數(shù)據(jù)的存儲,ArticleCF的數(shù)據(jù)存儲只支持Elasticsearch和Mysql,簡化存儲也是為了更好的規(guī)范和提升通用性。用戶可以基于結(jié)果數(shù)據(jù)表進(jìn)行其他操作,比如導(dǎo)出、查詢、修改等。Output Data數(shù)據(jù)結(jié)構(gòu)在Flow-tail階段完成。

        4 實(shí)驗(yàn)分析

        ArticleCF的研究與設(shè)計(jì)源于智慧數(shù)據(jù)中心建設(shè)中遇到的多樣性數(shù)據(jù)治理難題,具有明顯的領(lǐng)域特性。為論證本文提出的分布式計(jì)算框架能較好的滿足結(jié)構(gòu)化科技文獻(xiàn)數(shù)據(jù)處理,本文設(shè)計(jì)了功能定性分析實(shí)驗(yàn),參考知識產(chǎn)權(quán)數(shù)據(jù)處理任務(wù),篩選出與科技文獻(xiàn)處理具有較高相關(guān)性的對比指標(biāo),將本文提出的ArticleCF與MapReduce、Spark、Storm分析計(jì)算框架進(jìn)行定性分析對比。分布式計(jì)算框架功能定性對比見表3。

        表3 分布式計(jì)算框架功能定性對比

        通過MapReduce、Spark、Storm與ArticleCF在21個指標(biāo)的對比實(shí)驗(yàn),可以看出,本文提出的分布式計(jì)算框架在編程模式、并行度控制、算法豐富程度、任務(wù)管理以及科技文獻(xiàn)領(lǐng)域特性支持方面,具有明顯優(yōu)勢??梢暬诰€編程是其他計(jì)算框架所不具備的,而這對降低分布式技術(shù)門檻,讓數(shù)據(jù)分析人員直接參與數(shù)據(jù)治理起著關(guān)鍵作用。建立完備的函數(shù)發(fā)布功能,保存、共享用戶的函數(shù)成果,不僅方便復(fù)用已有技術(shù)成果,還可以不斷加強(qiáng)用戶與ArticleCF的業(yè)務(wù)黏性。

        5 結(jié) 語

        本研究基于科技文獻(xiàn)數(shù)據(jù)后期治理多樣性的實(shí)際需求,簡化數(shù)據(jù)處理對象、處理需求以及數(shù)據(jù)結(jié)果輸出全鏈條中數(shù)據(jù)結(jié)構(gòu)和功能需求,提出一種面向篇級數(shù)據(jù)的輕量級分布式計(jì)算框架。探討了ArticleCF的整體系統(tǒng)架構(gòu),明確劃分主要集群角色和功能設(shè)定。闡述了關(guān)鍵功能的設(shè)計(jì)方案,為原型系統(tǒng)的研發(fā)提供了可行性指導(dǎo)。分析了關(guān)鍵數(shù)據(jù)結(jié)構(gòu)和核心模塊的設(shè)計(jì)原則,形成ArticleCF研發(fā)的底層設(shè)計(jì)和目錄結(jié)構(gòu)。本文設(shè)計(jì)對比實(shí)驗(yàn),定性分析ArticleCF功能特性,論證了其更適合用于海量結(jié)構(gòu)化科技文獻(xiàn)數(shù)據(jù)的多樣化處理需求。在未來工作中,一方面,盡快完成對ArticleCF的研發(fā),將其逐步應(yīng)用到具體業(yè)務(wù)中,切實(shí)讓數(shù)據(jù)業(yè)務(wù)人員從該系統(tǒng)中獲益。另一方面,加強(qiáng)本框架對人工智能技術(shù)的支持,為數(shù)據(jù)治理擴(kuò)展新能力。

        猜你喜歡
        科技
        點(diǎn)亮科技之光
        中國化妝品(2022年4期)2022-09-15 11:59:04
        科技向善
        科技智囊(2022年4期)2022-04-28 19:00:58
        科技賦能未來
        科技智囊(2022年4期)2022-04-28 19:00:58
        韋地科技
        中國核電(2021年3期)2021-08-13 08:57:04
        筆中“黑科技”
        春之希望:期待未來科技之花開放
        科技助我來看云
        科技在線
        科技在線
        科技在線
        国产精品成人一区二区三区| 亚洲国产性夜夜综合另类| 92午夜少妇极品福利无码电影| 久久丫精品国产亚洲av不卡| 黄色毛片视频免费| 好爽要高潮了在线观看| 91九色最新国产在线观看| 午夜裸体性播放| 中文字幕无码免费久久| 淫妇日韩中文字幕在线| 久久久人妻一区二区三区蜜桃d| 国产又大又黑又粗免费视频| 日日噜噜噜夜夜爽爽狠狠| 亚洲国产精品午夜电影| 偷窥偷拍一区二区三区| 欧美性xxxxx极品老少| 中国xxx农村性视频| 亚洲精品日本| 激情视频在线观看好大| 久久久中日ab精品综合| 蜜桃臀无码内射一区二区三区| AV无码人妻一区二区三区牛牛| 成年网站在线91九色| 在线观看视频播放| 国产精品久久久久久久久鸭| 黑人巨大亚洲一区二区久| 91九色最新国产在线观看| 亚洲av午夜福利精品一区二区| 一本一本久久a久久| 亚洲全国最大的人成网站| 国产亚洲视频在线播放| 性生交大全免费看| 91久久国产自产拍夜夜嗨| 日本淫片一区二区三区| 人妻少妇乱子伦无码视频专区| 秋霞午夜无码鲁丝片午夜精品| av永远在线免费观看| 亚洲中文字幕精品乱码2021| 日本公妇在线观看中文版| 亚洲AV无码国产精品久久l| 亚洲熟妇一区二区蜜桃在线观看|