• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      監(jiān)控系統(tǒng)大數(shù)據(jù)并行計算框架研究

      2019-09-03 03:14:08趙振中
      數(shù)字通信世界 2019年8期
      關鍵詞:參數(shù)表分布式計算集群

      趙振中,廖 駿

      (中國人民解放軍95794 部隊,廣水 432700)

      1 引言

      大數(shù)據(jù)的處理模式主要分為流處理和批處理兩種[1],批處理是先存儲后處理,而流處理則是直接處理。面對大數(shù)據(jù)的存儲、管理和分析需求,業(yè)界通常做法是使用分布式計算平臺來解決。Hadoop 是一種開源分布式計算平臺,它采用分布式存儲方式,數(shù)據(jù)讀寫速度得以提升,并且存儲容量得到擴充。采用MapReduce 整合重組分布式文件系統(tǒng)上的數(shù)據(jù),提高了分析和處理數(shù)據(jù)的效率,同時采用存儲冗余數(shù)據(jù)的方式確保了數(shù)據(jù)的安全性[2]。

      監(jiān)控系統(tǒng)的數(shù)據(jù)包括各系統(tǒng)參數(shù)、視頻數(shù)據(jù)、圖像數(shù)據(jù)、文本數(shù)據(jù)等,僅用傳統(tǒng)的關系型數(shù)據(jù)庫(sqlserver 或者oracle)和常規(guī)的文件系統(tǒng)來存儲、管理這些數(shù)據(jù)已不能滿足需求,需要使用非關系型數(shù)據(jù)庫(NoSQL)來存儲文本數(shù)據(jù),使用分布式文件系統(tǒng)(HDFS)來存儲視頻數(shù)據(jù)和圖像數(shù)據(jù),并使用一種并行化計算框架(MapReduce)來整合各種數(shù)據(jù)。

      2 大數(shù)據(jù)并行計算框架介紹

      2.1 Hadoop 體系結構介紹

      Hadoop 作為一種分布式計算平臺,用戶容易輕松搭建和使用,可以開發(fā)和運行處理海量數(shù)據(jù)的應用程序,具有以下幾個優(yōu)點:

      (1)高可靠性,數(shù)據(jù)采用按位存儲方式,并且具有多個備份,處理結果較為可靠。

      (2)高擴展性,數(shù)據(jù)分派和計算工作在計算機集群中實現(xiàn),容易拓展添加新的節(jié)點,完成集群的擴大。

      (3)高效率性,數(shù)據(jù)可以在節(jié)點間動態(tài)移動并保持平衡,數(shù)據(jù)的并發(fā)處理提高了處理速度。

      (4)高容錯性,文件存儲、讀取出錯時,系統(tǒng)會調(diào)用其他節(jié)點上的備份文件確保程序正常運行;對于失敗任務,系統(tǒng)能夠自動重啟或者重新分配。

      目前,Hadoop 已經(jīng)發(fā)展成為包含多個子項目的集合,最核心的兩個部分是HDFS(分布式文件系統(tǒng))和MapReduce(并行計算框架)。

      2.2 分布式文件系統(tǒng)(HDFS)體系結構介紹

      圖1 分布式文件系統(tǒng)web管理界面

      HDFS 具有主/從架構,一個HDFS 集群包含單個NameNode(主服務器)和若干個DataNode,其中NameNode 負責管理文件系統(tǒng)命名空間并調(diào)整客戶端對文件的訪問權限,維護系統(tǒng)元數(shù)據(jù);集群的DataNode 負責管理存儲的實際數(shù)據(jù),根據(jù)客戶端的請求執(zhí)行讀寫操作,遵照NameNode 的指令進行數(shù)據(jù)塊的創(chuàng)建、刪除和復制。

      2.2.1 文件寫入

      (1)Client(客戶端)向NameNode 發(fā)出寫文件請求,NameNode 檢查目標文件的權限、路徑并作出響應,若通過檢查,則返回輸出流對象。

      (2)Client 將文件切分為若干個Block,按照分配的DataNode 地址信息,依次寫入每個DataNode 塊中,DataNode 寫完后會返回確認信息。

      (3)關閉輸出流,Client 向NameNode 反饋數(shù)據(jù)傳輸完成信號。

      2.2.2 文件讀取

      (1)Client 訪問NameNode 發(fā)起讀文件請求,NameNode 查詢目標文件的元數(shù)據(jù)(包括文件存儲的DataNode 信息),返回輸入流對象。

      (2)Client 接收到信息后,與對應的DataNode 連接,開始讀取數(shù)據(jù)。

      (3)結束讀操作,關閉輸入流。

      2.2.3 文件塊復制

      當部分文件Block 不符合最小復制數(shù)要求或者部分DataNode失效時,NameNode 會指令DataNode 互相復制Block。

      體系結構如圖2所示:

      圖2 分布式文件系統(tǒng)體系結構圖

      2.3 并行計算框架(MapReduce)體系結構介紹

      MapReduce 是一種易于編程,并以可靠、容錯的方式快速地并行處理大量數(shù)據(jù)集的軟件框架,由一個單獨運行在主節(jié)點上的JobTracker 和運行在每個集群從節(jié)點上的TaskTracker 共同組成。主節(jié)點負責作業(yè)的調(diào)度和資源的管理,將作業(yè)拆分為任務分發(fā)給從節(jié)點,跟蹤監(jiān)控其執(zhí)行情況,發(fā)現(xiàn)任務故障或失敗即重新運行;從節(jié)點負責接收并執(zhí)行主節(jié)點指派的任務。

      MapReduce 通過Map 和Reduce 函數(shù)來實現(xiàn):自定義的Map函數(shù)接收一個<key,value>形式的輸入,產(chǎn)生一個<key,value>形式的中間輸出,集合所有具有相同key 值的value 全部傳遞給Reduce 函數(shù);Reduce 函數(shù)接收key 和相關value 集合的輸入進行合并處理,產(chǎn)生0或1個<key,value>形式的輸出[3]。

      圖3 MapReduce工作的簡易圖

      圖4 MapReduce運行時web端的任務管理器

      3 并行計算框架在監(jiān)控系統(tǒng)中的應用

      3.1 實驗環(huán)境

      在單機上搭建一個由兩臺虛擬機組成的Hadoop 集群,環(huán)境配置如下:

      表1 Hadoop集群節(jié)點配置表

      程序集成開發(fā)環(huán)境使用Eclipse+Hadoop Eclipse plugin,程序開發(fā)語言使用java,Hadoop 開源版本號為0.18.0,數(shù)據(jù)庫采用oracle。

      圖5 兩臺虛擬機組成的Hadoop集群

      圖6 程序集成開發(fā)環(huán)境

      圖7 Hadoop分布式文件系統(tǒng)

      3.2 多表關聯(lián)

      3.2.1 問題描述

      在監(jiān)控系統(tǒng)軟件開發(fā)過程中使用數(shù)據(jù)庫時,多數(shù)情況會將兩張甚至多張表關聯(lián)起來使用。如查詢最新的理論位移參數(shù)時,需要結合理論位移參數(shù)配置表和理論位移實時參數(shù)表來查詢。具體如下:

      表2 理論位移參數(shù)配置表

      表3 理論位移實時參數(shù)表

      第一張表將參數(shù)編號(PARANO 字段)和參數(shù)名稱(PARANAME 字段)映射起來,第二張表將參數(shù)編號(PARANO字段)和參數(shù)值(PARA 字段)映射起來,而在監(jiān)控系統(tǒng)軟件中需要將參數(shù)名稱和參數(shù)值映射起來,因此需要用到多表關聯(lián)。

      當系統(tǒng)中需要做關聯(lián)的表越來越多,并且每張表中的數(shù)據(jù)越來越多時,多表關聯(lián)操作就會變得很復雜,需要在分布式計算平臺上利用并行算法來實現(xiàn)。

      3.2.2 算例描述

      本例選擇監(jiān)控系統(tǒng)數(shù)據(jù)庫中所有數(shù)值型參數(shù)配置表和參數(shù)數(shù)據(jù)表作為計算對象,設計MapReduce 算法做多表關聯(lián)。

      輸入:數(shù)據(jù)庫中所有配置表和數(shù)據(jù)表。

      輸出:將所有參數(shù)名稱(PARANAME 字段)和參數(shù)值(PARA字段)映射起來,輸出到文本文件中。

      3.2.3 算法描述

      (1)對輸入進行預處理,提取出其中影響輸出的部分,形式如下:

      配置表PARANO -> PARANAME參數(shù)表PARANO -> PARA

      則輸出形式如下:

      PARANAME -> PARA

      (2)Map 函數(shù)對輸入的行進行分辨,確定其表的歸屬,接著對其進行拆分,在key 中存放連接的列值,對應地在value 中存放配置表、參數(shù)表標志和另一列,然后輸出。

      (3)Reduce 函數(shù)接收連接數(shù)據(jù)后,解析并處理value 內(nèi)容,按照標志分開保存配置表和參數(shù)表內(nèi)容,求出笛卡爾積,然后輸出。

      3.2.4 結果

      本例共使用100 張數(shù)據(jù)表,在Hadoop 集群上運行MapReduce 算法,輸出結果截圖如圖8所示:

      圖8 Hadoop系統(tǒng)啟動

      圖9 MapReduce程序運行圖

      圖10 并行化多表關聯(lián)的結果

      3.3 其他應用

      多表關聯(lián)是并行化算法在監(jiān)控系統(tǒng)大數(shù)據(jù)背景下的一個應用。大數(shù)據(jù)排序、大數(shù)據(jù)指標統(tǒng)計、大數(shù)據(jù)結果快速評估、通過數(shù)據(jù)挖掘方法進行故障診斷等都是大數(shù)據(jù)的應用。Hadoop 中Pig子項目對大型數(shù)據(jù)集展開分析和評估工作,基礎結構上的優(yōu)勢確保其能夠順利通過并行化的高度檢測;Mahout 子項目提供了經(jīng)典的機器學習算法,包括聚類、分類、協(xié)同過濾和頻繁項集的挖掘[2]。

      4 結束語

      本文結合實際,利用實驗用分布式計算環(huán)境,對監(jiān)控系統(tǒng)中大數(shù)據(jù)應用進行簡單研究。隨著大數(shù)據(jù)時代的到來,學術界對其研究仍處于初步階段,[1]中介紹了大數(shù)據(jù)研究面臨的新挑戰(zhàn),還有很多基礎性問題有待解決。

      猜你喜歡
      參數(shù)表分布式計算集群
      鋼結構有限元參數(shù)化分析系統(tǒng)研究
      海上小型無人機集群的反制裝備需求與應對之策研究
      一種無人機集群發(fā)射回收裝置的控制系統(tǒng)設計
      電子制作(2018年11期)2018-08-04 03:25:40
      WPS在成形管生產(chǎn)過程中的運用
      EXCEL在調(diào)度自動化系統(tǒng)數(shù)據(jù)庫維護中的應用
      Python與Spark集群在收費數(shù)據(jù)分析中的應用
      勤快又呆萌的集群機器人
      基于云計算的移動學習平臺設計與實現(xiàn)
      軟件導刊(2016年11期)2016-12-22 21:47:07
      云計算中MapReduce分布式并行處理框架的研究與搭建
      面向異構分布式計算環(huán)境的并行任務調(diào)度優(yōu)化方法
      德清县| 博湖县| 永兴县| 尼玛县| 噶尔县| 肥城市| 新和县| 德化县| 宜宾市| 文水县| 房产| 临海市| 伊宁县| 大安市| 长葛市| 隆子县| 临城县| 苏尼特右旗| 红河县| 石泉县| 栾城县| 龙井市| 象山县| 永定县| 禹州市| 荔波县| 合江县| 沅江市| 桐梓县| 台江县| 田东县| 贞丰县| 凌云县| 枣庄市| 抚顺市| 罗城| 武定县| 河北区| 贵定县| 罗江县| 宁德市|