• 
    

    
    

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

      基于Hadoop搭建高可用數(shù)據(jù)倉(cāng)庫(kù)的研究和實(shí)現(xiàn)

      2023-06-21 21:18:31劉曉莉李滿(mǎn)熊超秦黃劉曉娟
      現(xiàn)代信息科技 2023年1期
      關(guān)鍵詞:數(shù)據(jù)倉(cāng)庫(kù)大數(shù)據(jù)

      劉曉莉 李滿(mǎn) 熊超 秦黃 劉曉娟

      摘? 要:目前,網(wǎng)購(gòu)交易的日益增加使得電商數(shù)據(jù)量呈現(xiàn)瘋狂增長(zhǎng)的態(tài)勢(shì),數(shù)據(jù)量的大增需要引入數(shù)據(jù)倉(cāng)庫(kù),用以支持對(duì)大容量數(shù)據(jù)的分析和處理。在數(shù)據(jù)倉(cāng)庫(kù)的架構(gòu)設(shè)計(jì)過(guò)程中,將HDFS作為底層文件存儲(chǔ)系統(tǒng),避免因某些原因而導(dǎo)致的系統(tǒng)崩潰。該文對(duì)高可用數(shù)據(jù)倉(cāng)庫(kù)的應(yīng)用進(jìn)行深入的研究,通過(guò)搭建高可用數(shù)據(jù)數(shù)倉(cāng)平臺(tái),解決Hadoop單節(jié)點(diǎn)故障問(wèn)題,提高數(shù)據(jù)采集和存儲(chǔ)的效率,有效解決了傳統(tǒng)數(shù)據(jù)分析的局限性,具有一定的應(yīng)用推廣價(jià)值。

      關(guān)鍵詞:數(shù)據(jù)倉(cāng)庫(kù);高可用;大數(shù)據(jù);Hadoop

      中圖分類(lèi)號(hào):TP311? 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2096-4706(2023)01-0099-03

      Research and Implementation of Building High Availability Data Warehouse

      Based on Hadoop

      LIU Xiaoli, LI Man, XIONG Chao, QIN Huang, LIU Xiaojuan

      (Guangzhou College of Technology and Business, Guangzhou? 510850, China)

      Abstract: At present, the growing number of online shopping transactions has led to a crazy growth of E-commerce data volume, which requires the introduction of data warehouses to support the analysis and processing of large volume data. During the architecture design of the data warehouse, HDFS is used as the underlying file storage system to avoid system crash for some reasons. This paper conducts in-depth research on the application of high availability data warehouse. By building a high availability data warehouse platform, it solves the problem of Hadoop single node failure, improves the efficiency of data collection and storage, effectively solves the limitations of traditional data analysis, and has certain application promotion value.

      Keywords: data warehouse; high availability; big data; Hadoop

      0? 引? 言

      隨著信息化時(shí)代的到來(lái),數(shù)據(jù)倉(cāng)庫(kù)技術(shù)逐漸受到國(guó)內(nèi)外工業(yè)界和學(xué)術(shù)界的高度重視,Hadoop大數(shù)據(jù)平臺(tái)可以看作迭代更新后的數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng),具有低成本、高性能、高容錯(cuò)和可拓展等特征。它主要實(shí)現(xiàn)了MapReduce計(jì)算模型和分布式文件系統(tǒng)HDFS功能,并且擁有許多不同特點(diǎn)的相關(guān)組件,這些組件為相關(guān)工程提供各種服務(wù),逐漸形成一系列的組件系統(tǒng),通常被稱(chēng)為Hadoop生態(tài)系統(tǒng)。

      基于大數(shù)據(jù)倉(cāng)庫(kù)的決策系統(tǒng)可以對(duì)大容量的數(shù)據(jù)進(jìn)行分析、挖掘、模型訓(xùn)練等。大數(shù)據(jù)的數(shù)據(jù)倉(cāng)庫(kù)建設(shè)能夠響應(yīng)靈活多變、對(duì)實(shí)時(shí)性有不同程度要求的多元化需求,除了面向DSS、BI等傳統(tǒng)應(yīng)用外,還要響應(yīng)用戶(hù)畫(huà)像、個(gè)性化推薦、機(jī)器學(xué)習(xí)、數(shù)據(jù)分析等各種復(fù)雜的應(yīng)用場(chǎng)景;更多的是基于非商業(yè)、開(kāi)源的技術(shù),常見(jiàn)的是基于Hadoop生態(tài)構(gòu)建,所涉技術(shù)較為廣泛、復(fù)雜,同時(shí)相對(duì)于商業(yè)產(chǎn)品,穩(wěn)定性、服務(wù)支撐較弱,需要自己維護(hù)更多的技術(shù)框架,數(shù)據(jù)倉(cāng)庫(kù)模型設(shè)計(jì)更靈活,能夠很好地滿(mǎn)足電商數(shù)據(jù)平臺(tái)現(xiàn)有的需求。

      Hadoop2.x引入高可用集群的概念,一方面避免Hadoop1.x中單點(diǎn)故障問(wèn)題導(dǎo)致HDFS集群不可用的情況,另一方面提高系統(tǒng)和應(yīng)用的可能性。在Hadoop2.x引入高可用集群概念的基礎(chǔ)上,文本將對(duì)HDFS高可用架構(gòu)的搭建進(jìn)行研究和實(shí)現(xiàn),為后續(xù)大數(shù)據(jù)開(kāi)發(fā)做好準(zhǔn)備工作。

      1? HDFS高可用架構(gòu)概述

      Hadoop的三大核心是分布式文件系統(tǒng)HDFS、分布式計(jì)算框架MapReduce以及集群資源管理器YARN。其中,HDFS是一個(gè)分布式,用于存儲(chǔ)、管理和維護(hù)文件的系統(tǒng)。HDFS的組成架構(gòu)包括Namenode、Datanode、客戶(hù)端、Secondary Namenode,Namenode是管理所有Datanode(從節(jié)點(diǎn))的主節(jié)點(diǎn)。它記錄存儲(chǔ)在集群(Datanode)上所有文件的元數(shù)據(jù)信息,例如存儲(chǔ)塊的位置、文件的大小、權(quán)限、層次結(jié)構(gòu)等。Namenode決定是否將文件映射到Datanode上的復(fù)制塊上。當(dāng)Namenode不可用時(shí),會(huì)導(dǎo)致整個(gè)集群暫停運(yùn)作,為解決Namenode不可用的問(wèn)題,利用高可用HDFS文件系統(tǒng)搭建Hadoop大數(shù)據(jù)數(shù)倉(cāng),而且HDFS很適合一次寫(xiě)入、多次讀出的場(chǎng)景,非常適合用來(lái)做數(shù)據(jù)分析。

      HDFS高可用架構(gòu)在高可用集群中有兩個(gè)同時(shí)運(yùn)行的Namenode——Active Namenode和StandBy Namenode,如圖1所示。Active Namenode負(fù)責(zé)對(duì)外提供服務(wù),StandBy Namenode負(fù)責(zé)數(shù)據(jù)的同步。如果一個(gè)Namenode宕機(jī),另外一個(gè)Namenode將切換為Active Namenode狀態(tài),兩者之間可以通過(guò)Journalnode進(jìn)程共享資源和同步數(shù)據(jù),能夠在Namenode由于某些原因崩潰不可用時(shí)自動(dòng)進(jìn)行故障轉(zhuǎn)移,也可以是維護(hù)人員在維護(hù)期間手動(dòng)進(jìn)行故障轉(zhuǎn)移。

      保證有且僅有一個(gè)Active Namenode,如果存在兩個(gè)Active Namenode,則會(huì)導(dǎo)致數(shù)據(jù)損壞,其中一個(gè)集群會(huì)被劃分為更小的集群,每個(gè)集群都認(rèn)為它是唯一活動(dòng)的集群,為了避免這種情況的發(fā)生需要進(jìn)行一定的防護(hù),而Fencing是確保在特定時(shí)間內(nèi)只有一個(gè)Namenode保持活動(dòng)的過(guò)程。

      2? 高可用大數(shù)據(jù)數(shù)庫(kù)平臺(tái)

      2.1? 高可用架構(gòu)的實(shí)現(xiàn)

      2.1.1? 使用仲裁日志節(jié)點(diǎn)

      Active Namenode和StandBy Namenode通過(guò)Journal Nodes保持相互同步,其中Journal Nodes遵循環(huán)拓?fù)洌?jié)點(diǎn)彼此之間成環(huán)。Journal Nodes能在發(fā)生故障時(shí)提供容錯(cuò)功能,將數(shù)據(jù)信息分發(fā)到環(huán)中的其他節(jié)點(diǎn)中,Active Namenode負(fù)責(zé)更新Journal Nodes中的EditLog信息,StandBy Namenode讀取對(duì)Journal Nodes中的EditLog更改信息。

      在故障轉(zhuǎn)移期間,StandBy Namenode確保自己成為新的Active Namenode之前已經(jīng)從Journal Nodes中更新了元數(shù)據(jù)信息,保證當(dāng)前狀態(tài)與故障轉(zhuǎn)移之前的狀態(tài)同步。

      StandBy Namenode具有集群中塊位置的更新信息,能提供快速故障轉(zhuǎn)移功能,Active Namenode和StandBy Namenode的IP地址對(duì)所有Datanode都是可用的,Datanode向它們發(fā)送自己的心跳和塊位置信息。StandBy Namenode可感知到Active Namenode節(jié)點(diǎn)是否正常。如果發(fā)現(xiàn)異常,監(jiān)控進(jìn)程負(fù)責(zé)將StandBy Namenode切換為Active Namenode。

      2.1.2? 使用共享存儲(chǔ)

      Active Namenode和StandBy Namenode通過(guò)共享存儲(chǔ)設(shè)備保持信息同步,Active Namenode將其名稱(chēng)空間中所做的修改記錄記錄到EditLog中。StandBy Namenode讀取對(duì)這個(gè)共享存儲(chǔ)中的EditLog所做的更改,應(yīng)用到自己的名稱(chēng)空間中。

      如果發(fā)生故障轉(zhuǎn)移,StandBy Namenode使用共享存儲(chǔ)中的EditLog更新元數(shù)據(jù),Active Namenode使得當(dāng)前的命名空間狀態(tài)與之前的狀態(tài)同步。HDFS高可用集群提供自動(dòng)故障轉(zhuǎn)移功能,協(xié)調(diào)數(shù)據(jù),將數(shù)據(jù)的更改通知給客戶(hù)端,并監(jiān)視客戶(hù)機(jī)的故障。

      2.2? Hadoop集群配置高可用性

      高可用的主要目的就是消除單點(diǎn)故障,HDFS集群規(guī)劃如表1所示。

      以Hadoop102為例,其基本配置信息如下:

      (1)光盤(pán)映像(ISO)鏡像系統(tǒng):64位CentOS-7;

      (2)對(duì)虛擬機(jī)命名:Hadoop102;

      (3)處理器數(shù)量為1,內(nèi)核數(shù)量為2;

      (4)內(nèi)存大?。? 048 MB;

      (5)設(shè)置網(wǎng)卡類(lèi)型:NAT模式;

      (6)磁盤(pán)容量:20 GB,類(lèi)型:虛擬磁盤(pán);

      (7)子網(wǎng)IP:192.168.10.0,網(wǎng)關(guān)IP:192.168.10.2。

      2.2.1? HDFS-HA手動(dòng)模式

      在原有的Hadoop集群中,配置core-site.xml,hdfs-site.xml,分發(fā)配置好的hadoop環(huán)境到其他節(jié)點(diǎn)。啟動(dòng)HDFS-HA集群,啟動(dòng)journalnode服務(wù),在nn1上進(jìn)行hdfsnamenode-format格式化,在nn2和nn3上同步nn1元數(shù)據(jù)信息,啟動(dòng)nn2和nn3。在所有節(jié)點(diǎn)上啟動(dòng)DataNode,將nn1切換為Action。

      2.2.2? HDFS-HA自動(dòng)模式

      自動(dòng)故障轉(zhuǎn)移為HDFS部署增加了兩個(gè)新組件——ZooKeeper和ZKFailover Controller(ZKFC)進(jìn)程,ZooKeeper負(fù)責(zé)維護(hù)少量協(xié)調(diào)數(shù)據(jù),通知客戶(hù)端這些數(shù)據(jù)的改變以及監(jiān)視客戶(hù)端故障的高可用服務(wù)。Zookeeper是Google的Chubby一個(gè)開(kāi)源的實(shí)現(xiàn)。它是一個(gè)針對(duì)大型分布式系統(tǒng)的可靠協(xié)調(diào)系統(tǒng),提供的功能包括:配置維護(hù)、名字服務(wù)、分布式同步、組服務(wù)等。ZooKeeper的目標(biāo)就是封裝好復(fù)雜易出錯(cuò)的關(guān)鍵服務(wù),將簡(jiǎn)單易用的接口和高效穩(wěn)定的系統(tǒng)提供給用戶(hù)。自動(dòng)故障轉(zhuǎn)移的集群規(guī)劃如表2所示。

      在原有基礎(chǔ)上,配置hdfs-site.xml和core-site.xml文件,分別添加啟用nn故障自動(dòng)轉(zhuǎn)移和指定zkfc要連接的zkServer地址,啟動(dòng)Zookeeper后,初始化HA在Zookeeper中的狀態(tài),再啟動(dòng)HDFS服務(wù)。

      2.3? 高可用節(jié)點(diǎn)部署及測(cè)試

      在Hadoop102、Hadoop103和Hadoop104三個(gè)節(jié)點(diǎn)上部署Zookeeper,啟動(dòng)HDFS-HA集群,在各個(gè)Journalnode節(jié)點(diǎn)上啟動(dòng),對(duì)nn1進(jìn)行格式化,將nn1的元數(shù)據(jù)同步到nn2,啟動(dòng)nn2,能查看到Web頁(yè)面顯示standby,在nn1上啟動(dòng)Datanode,將nn1切換為Active,能查看到Web頁(yè)面顯示Active。

      修改配置文件core-site.xml、hdfs-site.xml并添加自動(dòng)故障轉(zhuǎn)移,初始化Zookeeper轉(zhuǎn)臺(tái),在各個(gè)Namenode節(jié)點(diǎn)上啟動(dòng)ZKFailover Controller,將Active Namenode進(jìn)程殺死,斷開(kāi)網(wǎng)絡(luò),查看網(wǎng)頁(yè)端三臺(tái)Namenode的狀態(tài)由standby變?yōu)閍ctive,如圖2所示。

      3? 結(jié)? 論

      隨著計(jì)算機(jī)技術(shù)和互聯(lián)網(wǎng)技術(shù)的迅猛發(fā)展,預(yù)計(jì)未來(lái)5年,大數(shù)據(jù)市場(chǎng)將以近13%的速度增長(zhǎng),這是IT整體預(yù)期增速的兩倍之多,充分利用大數(shù)據(jù)分析協(xié)助企業(yè)進(jìn)行運(yùn)營(yíng)和營(yíng)銷(xiāo)的決策。而Hadoop已經(jīng)被證明是解決大數(shù)據(jù)相關(guān)問(wèn)題的有效工具,搭建高可用大數(shù)據(jù)數(shù)倉(cāng)平臺(tái),能夠解決Hadoop單節(jié)點(diǎn)故障問(wèn)題,提高數(shù)據(jù)采集和存儲(chǔ)的效率,既能提高信息的安全性,又能提高信息的利用效率,有效克服了傳統(tǒng)數(shù)據(jù)分析的局限性,它可以存儲(chǔ)和處理海量的數(shù)據(jù),挖掘出有價(jià)值的信息,提高查詢(xún)性能,給用戶(hù)帶來(lái)極大的便利,具有一定的參考價(jià)值。

      參考文獻(xiàn):

      [1] 鄒群.一種基于Hadoop的數(shù)字圖書(shū)存儲(chǔ)系統(tǒng)設(shè)計(jì)方案 [J].黑龍江史志,2014(1):212.

      [2] 翟永東.Hadoop分布式文件系統(tǒng)(HDFS)可靠性的研究與優(yōu)化 [D].武漢:華中科技大學(xué),2011.

      [3] 李聰.HDFS元數(shù)據(jù)管理的高可用性?xún)?yōu)化技術(shù)研究 [D].哈爾濱:哈爾濱工業(yè)大學(xué),2016.

      [4] 宋繼紅,李夢(mèng)楠,郝得智.基于Hadoop分布式文件系統(tǒng)的單點(diǎn)問(wèn)題的研究 [J].軟件工程師,2014,17(12):9-10+6.

      [5] 楊帆.Hadoop平臺(tái)高可用性方案的設(shè)計(jì)與實(shí)現(xiàn) [D].北京:北京郵電大學(xué),2012.

      [6] 陳磊,吳曉暉.基于Hadoop的分布式集群大數(shù)據(jù)動(dòng)態(tài)存儲(chǔ)系統(tǒng)設(shè)計(jì) [J].中國(guó)電子科學(xué)研究院學(xué)報(bào),2019,14(6):593-598.

      作者簡(jiǎn)介:劉曉莉(2001.04—),女,漢族,廣東深圳人,本科在讀,研究方向:大數(shù)據(jù)技術(shù);李滿(mǎn)(1966.12—),女,漢族,河南南陽(yáng)人,副教授,碩士,研究方向:虛擬現(xiàn)實(shí)技術(shù)、人工智能;熊超(2001.02—),男,漢族,四川南部人,本科在讀,研究方向:大數(shù)據(jù)開(kāi)發(fā);秦黃(2001.04—),男,漢族,廣西桂林人,本科在讀,研究方向:大數(shù)據(jù)存儲(chǔ)、深度學(xué)習(xí);劉曉娟(1990.07—),女,瑤族,廣西賀州人,講師,碩士,研究方向:大數(shù)據(jù)存儲(chǔ)。

      收稿日期:2022-09-07

      基金項(xiàng)目:廣州工商學(xué)院2022年國(guó)家級(jí)大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃立項(xiàng)項(xiàng)目(202213714006)

      猜你喜歡
      數(shù)據(jù)倉(cāng)庫(kù)大數(shù)據(jù)
      基于數(shù)據(jù)倉(cāng)庫(kù)的住房城鄉(xiāng)建設(shè)信息系統(tǒng)整合研究
      分布式存儲(chǔ)系統(tǒng)在液晶面板制造數(shù)據(jù)倉(cāng)庫(kù)中的設(shè)計(jì)
      電子制作(2016年15期)2017-01-15 13:39:15
      探析電力系統(tǒng)調(diào)度中數(shù)據(jù)倉(cāng)庫(kù)技術(shù)的應(yīng)用
      基于大數(shù)據(jù)背景下的智慧城市建設(shè)研究
      科技視界(2016年20期)2016-09-29 10:53:22
      基于數(shù)據(jù)倉(cāng)庫(kù)的數(shù)據(jù)分析探索與實(shí)踐
      龙川县| 舒城县| 调兵山市| 霍州市| 喜德县| 保亭| 吉首市| 梅河口市| 亚东县| 夏邑县| 文成县| 南雄市| 闽侯县| 任丘市| 平山县| 花垣县| 锦州市| 涪陵区| 黔东| 漳浦县| 明星| 高淳县| 从化市| 广东省| 时尚| 芦溪县| 和龙市| 塔河县| 图们市| 南丰县| 亳州市| 海城市| 通山县| 资中县| 宜昌市| 盐边县| 固镇县| 黄大仙区| 鄂托克前旗| 连州市| 乐陵市|