• 
    

    
    

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

      ?

      基于TDH+Hiveす菇ù笫據(jù)離線計(jì)算平臺(tái)的方法和實(shí)現(xiàn)

      2021-09-16 03:36:56王敏
      科技風(fēng) 2021年20期

      王敏

      摘?要:當(dāng)前,傳統(tǒng)的數(shù)據(jù)庫(kù)技術(shù)及單純基于Hadoop的分布式計(jì)算方法已無(wú)法滿足離線數(shù)據(jù)和業(yè)務(wù)量的快速增長(zhǎng)需求,運(yùn)行成本大、工作效率低、用戶(hù)體驗(yàn)差。文章提出基于TDH+Hive的離線計(jì)算平臺(tái),采用TDH作為離線數(shù)據(jù)存儲(chǔ)平臺(tái),并通過(guò)Azkaban任務(wù)調(diào)度工具在Hive中對(duì)數(shù)據(jù)進(jìn)行相應(yīng)的ETL轉(zhuǎn)換,根據(jù)不同作業(yè)對(duì)實(shí)時(shí)性要求的差異,將運(yùn)行時(shí)間分散到不同時(shí)間段,實(shí)現(xiàn)系統(tǒng)性能的平衡,提升離線大數(shù)據(jù)的處理效率,同時(shí)能夠精簡(jiǎn)數(shù)據(jù)、節(jié)省存儲(chǔ)空間,降低后續(xù)的開(kāi)發(fā)成本,提升開(kāi)發(fā)效率。

      關(guān)鍵詞:離線數(shù)據(jù);TDH;Hive;Azkaban

      中圖分類(lèi)號(hào):TP392

      1?緒論

      自20世紀(jì)90年代“大數(shù)據(jù)”的概念被提出以來(lái),其重要性備受關(guān)注,“人類(lèi)的大數(shù)據(jù)時(shí)代已經(jīng)到來(lái)”更是在2012年麥肯錫咨詢(xún)公司的研究報(bào)告中被強(qiáng)調(diào)?!按髷?shù)據(jù)”是需要新處理模式才能具有更強(qiáng)的決策力、洞察發(fā)現(xiàn)力和流程優(yōu)化能力來(lái)適應(yīng)海量、高增長(zhǎng)率和多樣化的信息資產(chǎn)[1]。由此可見(jiàn),運(yùn)用新技術(shù)手段對(duì)大數(shù)據(jù)進(jìn)行專(zhuān)業(yè)的“加工”和“處理”才能激發(fā)其內(nèi)在價(jià)值,實(shí)現(xiàn)數(shù)據(jù)的“增值”。

      本文基于TDH+Hive構(gòu)建大數(shù)據(jù)的離線計(jì)算平臺(tái),采用TDH作為離線數(shù)據(jù)存儲(chǔ)平臺(tái),并通過(guò)Azkaban任務(wù)調(diào)度工具在Hive中對(duì)數(shù)據(jù)進(jìn)行相應(yīng)的ETL轉(zhuǎn)換。相對(duì)于傳統(tǒng)的單純基于Hadoop的分布式計(jì)算方法運(yùn)行成本大、工作效率低、用戶(hù)體驗(yàn)差等問(wèn)題,本文構(gòu)建的離線大數(shù)據(jù)計(jì)算平臺(tái),能夠在兼容各類(lèi)數(shù)據(jù)源的前提下,大大提高數(shù)據(jù)的處理能力,同時(shí)可以通過(guò)對(duì)數(shù)據(jù)的精簡(jiǎn)來(lái)達(dá)到節(jié)省存儲(chǔ)空間的目的,進(jìn)而降低后續(xù)的開(kāi)發(fā)成本,提升開(kāi)發(fā)效率。

      2?TDH、Hive、Azkaban概述

      2.1?TDH大數(shù)據(jù)平臺(tái)

      TDH是國(guó)內(nèi)外較為領(lǐng)先的一款大數(shù)據(jù)基礎(chǔ)軟件,也是目前國(guó)內(nèi)應(yīng)用最為廣泛的一站式Hadoop發(fā)行版,性能較開(kāi)源Hadoop2有很大優(yōu)勢(shì),已應(yīng)用在各行各業(yè)。TDH整合高度容錯(cuò)、高效索引、內(nèi)存計(jì)算、執(zhí)行優(yōu)化等技術(shù)來(lái)高效率、低成本的實(shí)現(xiàn)平臺(tái)處理10GB至100PB的海量數(shù)據(jù)。同時(shí),它引入不停機(jī)擴(kuò)容機(jī)制來(lái)滿足客戶(hù)動(dòng)態(tài)數(shù)據(jù)的變動(dòng)需求,以此來(lái)解決MPP或混合架構(gòu)數(shù)據(jù)遷移的問(wèn)題。

      TDH主要在HDFS和YARN之上對(duì)Hadoop進(jìn)行了改進(jìn),它提供了高速的Erasure?Code編碼方式,適合nearline?storage類(lèi)應(yīng)用,降低一半磁盤(pán)容量需求的同時(shí)提高了一倍的容錯(cuò)性能。它的這個(gè)功能主要為擁有PB級(jí)別的客戶(hù)所應(yīng)用,比如電信行業(yè)的話單數(shù)據(jù)、交通/電力行業(yè)的傳感器數(shù)據(jù)、金融行業(yè)的歷史交易數(shù)據(jù)等。在YARN上進(jìn)行改進(jìn)的目的主要是為了能更全面的管理CPU/內(nèi)存等資源,并有效地支持Spark和Map/Reduce應(yīng)用集群。它的技術(shù)優(yōu)勢(shì)主要表現(xiàn)在以下3個(gè)方面:極致的性能與可擴(kuò)展性;簡(jiǎn)易的操作和管理;完整的SQL和ACID支持。

      2.2?Hive數(shù)據(jù)倉(cāng)庫(kù)

      Hive是建立在Hadoop上的數(shù)據(jù)倉(cāng)庫(kù)基礎(chǔ)構(gòu)架。在Hive中,定義了一種類(lèi)似于SQL的查詢(xún)語(yǔ)言HQL,用戶(hù)只要熟悉SQL語(yǔ)句就可以進(jìn)行查詢(xún)數(shù)據(jù)操作,也可以不需要開(kāi)發(fā)專(zhuān)門(mén)的MapReduce應(yīng)用來(lái)進(jìn)行不太復(fù)雜的MapReduce統(tǒng)計(jì),這就可以非常便利的用于數(shù)據(jù)倉(cāng)庫(kù)的統(tǒng)計(jì)分析,因此它具有學(xué)習(xí)成本低的優(yōu)勢(shì)。除此之外,對(duì)于熟練應(yīng)用MapReduce的用戶(hù)可以在Hive中方便的開(kāi)發(fā)出自定義的Mapper和Reducer來(lái)應(yīng)對(duì)復(fù)雜的操作。同時(shí),它為數(shù)據(jù)抽取、轉(zhuǎn)換、加載(ETL)提供了一系列的工具,實(shí)現(xiàn)了存儲(chǔ)、查詢(xún)和分析存儲(chǔ)在Hadoop中海量數(shù)據(jù)的功能。

      在Hive中,Hadoop、Mapreduce是架構(gòu)的基礎(chǔ),它主要由服務(wù)端組件以及客戶(hù)端組件兩個(gè)類(lèi)構(gòu)成,涉及的組件有:CLI、JDBC/ODBC、Thrift?Server、WEB?GUI、metastore和Driver。下面就對(duì)兩大類(lèi)組件進(jìn)行簡(jiǎn)單介紹。服務(wù)端組件中的Metastore作為元數(shù)據(jù)服務(wù)組件提供存儲(chǔ)Hive元數(shù)據(jù)的服務(wù);為了使不同類(lèi)型的編程語(yǔ)言能夠進(jìn)行Hive接口的調(diào)用,在服務(wù)端組件中使用Thrift服務(wù)來(lái)實(shí)現(xiàn)可擴(kuò)展而且跨語(yǔ)言的開(kāi)發(fā);Complier、Optimizer和Executor組成了服務(wù)端組件中的Driver組件,目的是能夠?qū)QL語(yǔ)句進(jìn)行解析、編譯優(yōu)化以后生成相應(yīng)的執(zhí)行計(jì)劃,再通過(guò)調(diào)用底層的mapreduce來(lái)計(jì)算框架。在另一類(lèi)的客戶(hù)端組件中:CLI為命令行接口;諸如JDBC、ODBC等許多客戶(hù)端接口在Hive的架構(gòu)中是被設(shè)計(jì)在thrift客戶(hù)端之上的;在Hive客戶(hù)端中,啟動(dòng)Hive?Web?Interface(HWI)組件后,用戶(hù)便可以使用網(wǎng)頁(yè)方式來(lái)進(jìn)行訪問(wèn)服務(wù)。

      2.3?Azkaban任務(wù)調(diào)度工具

      Azkaban是一套簡(jiǎn)單的任務(wù)調(diào)度服務(wù),其功能是在某一個(gè)工作流內(nèi)按照規(guī)定好的流程或順序來(lái)執(zhí)行一組工作,它是由Linkedin開(kāi)源的一個(gè)批量工作流任務(wù)調(diào)度器,整體包括三部分Webserver、Dbserver、Executorserver,是Linkin的開(kāi)源項(xiàng)目,開(kāi)發(fā)語(yǔ)言為Java。它定義了一種KV文件格式來(lái)設(shè)立了各個(gè)任務(wù)之間的耦合、依存關(guān)系,同時(shí),它還提供了一種便于web用戶(hù)界面維護(hù)和跟蹤的工作流服務(wù)功能。

      Azkaban是一個(gè)相似于Oozie的工作流控制引擎,在這種架構(gòu)中,它可以用來(lái)應(yīng)對(duì)多個(gè)Hadoop離線計(jì)算任務(wù)之間的耦合、依存關(guān)系問(wèn)題,用它來(lái)替代Crontab對(duì)周期性的任務(wù)進(jìn)行調(diào)度也具有易操作性,擁有美觀的可視化管理界面的同時(shí)更加直觀,可靠性更強(qiáng)。

      3?基于TDH+Hive的離線計(jì)算平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)

      延庆县| 乌苏市| 东安县| 马山县| 马龙县| 阿拉善左旗| 溧水县| 连山| 大同县| 桐庐县| 金沙县| 吉林省| 江门市| 洛扎县| 鄂州市| 砚山县| 新巴尔虎左旗| 隆子县| 福安市| 宣恩县| 长宁县| 浦江县| 东乡县| 蒙城县| 元氏县| 星座| 甘南县| 临漳县| 辽宁省| 务川| 阆中市| 江川县| 盘锦市| 云阳县| 南川市| 隆子县| 娱乐| 泰宁县| 凤山县| 正阳县| 宽城|