基于Hive的用戶行為分析系統(tǒng)設計_第1頁
基于Hive的用戶行為分析系統(tǒng)設計_第2頁
基于Hive的用戶行為分析系統(tǒng)設計_第3頁
基于Hive的用戶行為分析系統(tǒng)設計_第4頁
基于Hive的用戶行為分析系統(tǒng)設計_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

湖南商務職業(yè)技術學院畢業(yè)設計

目錄

1引言............................................................................................................................1

1.1開發(fā)技術簡介..............................................................................................1

1.1.1Hive簡介..............................................................................................1

1.1.2Spark簡介............................................................................................1

1.1.3Hadoop簡介..........................................................................................2

1.1.4LAMP/LNMP簡介....................................................................................2

1.1.5項目開發(fā)環(huán)境版本和部署...................................................................2

1.2可行性需求分析..........................................................................................5

1.2.1技術可行性分析...................................................................................5

1.2.2項目價值可行性分析...........................................................................5

1.3關鍵技術分析..............................................................................................5

1.3.1大數據技術引擎...................................................................................5

1.3.2大數據文件采集...................................................................................6

1.3.3數據倉庫建設.......................................................................................6

2大數據環(huán)境搭建........................................................................................................6

2.1統(tǒng)一集群的環(huán)境配置..................................................................................6

2.2定義同步數據腳本......................................................................................9

2.3JDK環(huán)境的安裝...............................................................................................9

2.4MySQL環(huán)境的安裝.........................................................................................10

2.5Hadoop集群的安裝.......................................................................................11

3數據倉庫系統(tǒng)規(guī)劃..................................................................................................18

3.1安裝Hive環(huán)境..........................................................................................19

3.1.1使用編譯好的源碼軟件.....................................................................19

3.1.2配置環(huán)境變量.....................................................................................19

3.1.3修改配置文件.....................................................................................19

3.1.4初始化元數據信息.............................................................................20

3.1.5測試環(huán)境.............................................................................................20

I

湖南商務職業(yè)技術學院畢業(yè)設計

3.2Saprk安裝環(huán)境配置.....................................................................................22

3.2.1上傳安裝文件.....................................................................................22

3.2.2解壓軟件.............................................................................................22

3.2.3HDFS創(chuàng)建歷史服務信息日志............................................................23

3.2.4測試程序.............................................................................................23

3.3Hive-on-Spark..............................................................................................25

3.3.1上傳Spark依賴到HDFS上...............................................................25

3.3.2修改Hive的配置文件.......................................................................25

3.3.3啟動測試/創(chuàng)建/插入測試數據.........................................................25

3.4使用開發(fā)工具IDEA連接Hive.................................................................26

3.4.1后臺啟動程序.....................................................................................26

3.4.2使用IDEA軟件測試連接...................................................................26

4數據倉庫系統(tǒng)設計..................................................................................................27

4.1ODS源數據層.................................................................................................27

4.1.1創(chuàng)建用戶行為日志表.........................................................................27

4.1.2加載數據.............................................................................................28

4.1.3查看數據.............................................................................................30

4.2DWD明細層.....................................................................................................31

4.2.1創(chuàng)建DWD表數據.................................................................................31

4.2.2查詢數據.............................................................................................31

4.2.3查看數據.............................................................................................31

4.3DWS寬度匯總數據.........................................................................................32

4.3.1建表語句.............................................................................................32

4.3.2加載數據.............................................................................................32

4.3.3查詢數據.............................................................................................33

4.4創(chuàng)建維度表................................................................................................34

4.4.1時間維度表.........................................................................................34

4.4.2創(chuàng)建地區(qū)維度.....................................................................................34

II

湖南商務職業(yè)技術學院畢業(yè)設計

4.4.3用戶城市分布.....................................................................................35

4.4.4網站的上網形式.................................................................................36

5設計小結..................................................................................................................38

參考資料.........................................................................................................................39

III

湖南商務職業(yè)技術學院畢業(yè)設計

基于Hive的用戶行為分析系統(tǒng)設計

1引言

用戶行為分析,是指在獲得網站或APP等平臺訪問量基本數據的情況下,

對有關數據進行統(tǒng)計、分析,從中發(fā)現用戶訪問網站或APP等平臺的規(guī)律,并

將這些規(guī)律與網絡營銷策略等相結合,從而發(fā)現網絡營銷活動中可能存在的問

題,并為進一步修正或重新制定網絡營銷策略提供依據。這是狹義的只指網絡

上的用戶行為分析。

通過對用戶行為監(jiān)測獲得的數據進行分析,可以讓企業(yè)更加詳細、清楚地

了解用戶的行為習慣,從而找出網站、推廣渠道等企業(yè)營銷環(huán)境存在的問題,

有助于企業(yè)發(fā)掘的高轉化率頁面,讓企業(yè)的營銷更加精準、有效,提高業(yè)務轉

化率,從而提升企業(yè)的廣告收益。

用戶行為分析是對用戶在產品上的產生的行為及行為背后的數據進行分

析,通過構建用戶行為模型和用戶畫像,來改變產品決策,實現精細化運營,

指導業(yè)務增長。在產品運營過程中,對用戶行為的數據進行收集、存儲、跟

蹤、分析與應用等,可以找到實現用戶自增長的病毒因素、群體特征與目標用

戶。從而深度還原用戶使用場景、操作規(guī)律、訪問路徑及行為特點等。

1.1開發(fā)技術簡介

1.1.1Hive簡介

Hive是基于Hadoop的一個數據倉庫工具,可以將結構化的數據文件映射

為一張數據庫表,并提供完整的SQL查詢功能,可以將SQL語句轉換為

MapReduce任務進行運行。其優(yōu)點是學習成本低,可以通過類SQL語句快速實

現簡單的MapReduce統(tǒng)計,不必開發(fā)專門的MapReduce應用,十分適合數據倉

庫的統(tǒng)計分析。可以將SQL語句轉換為MapReduce任務運行,通過自己的SQL

查詢分析需要的內容,這套SQL簡稱HiveSQL,使不熟悉MAPREDUCE的用戶可

以很方便地利用SQL語言查詢、匯總和分析數據。而MAPREDUCE開發(fā)人員可以

把自己寫的mapper和reducer作為插件來支持Hive做更復雜的數據分析。它

與關系型數據庫的SQL略有不同,但支持了絕大多數的語句如DDL、DML以及常

見的聚合函數、連接查詢、條件查詢。

1.1.2Spark簡介

Spark是一個開源的、強大的分布式查詢和處理引擎,它提供MapReduce

1

湖南商務職業(yè)技術學院畢業(yè)設計

的靈活性和擴展性,但速度明顯要快上很多;取數據存儲在內存中的時候來

說,它比ApacheHadoop快100倍,訪問磁盤時也要快上10倍。運行速度快:

Spark使用先進的DAG(Directed-Acyclic-Graph,有向無環(huán)圖)執(zhí)行引擎,以

支持循環(huán)數據流與內存計算,基于內存的執(zhí)行速度可比HadoopMapReduce快上

百倍,基于磁盤的執(zhí)行速度也能快十倍;容易使用:Spark支持使用Scala、

Java、Python和R語言進行編程,簡潔的API設計有助于用戶輕松構建并行程

序,并且可以通過Spark-Shell進行交互式編程;通用性:Spark提供了完整

而強大的技術,包括SQL查詢、流式計算、機器學習和圖算法組件,這些組件

可以無縫整合在同一個應用中,足以應對復雜的計算。

1.1.3Hadoop簡介

Hadoop是一個由Apache基金會所開發(fā)的分布式系統(tǒng)基礎架構。用戶可以

在不了解分布式底層細節(jié)的情況下,開發(fā)分布式程序。充分利用集群的威力進

行高速運算和存儲。Hadoop實現了一個分布式文件系統(tǒng)(DistributedFile

System),其中一個組件是HDFS(Hadoop-DistributedFileSystem)Hadoop

的框架的核心的設計就是:HDFS和MapReduce。HDFS為海量的數據提供了存

儲,而MapReduce則為海量的數據提供了計算,Hadoop得以在大數據處理應用

中廣泛應用得益于其自身在數據提取、變形和加載(ETL)方面上的天然優(yōu)勢。

Hadoop的分布式架構,將大數據處理引擎盡可能的靠近存儲,對例如像ETL這

樣的批處理操作相對合適,因為類似這樣操作的批處理結果可以直接走向存

儲。Hadoop的MapReduce功能實現了將單個任務打碎,并將碎片任務(Map)發(fā)

送到多個節(jié)點上,之后再以單個數據集的形式加載(Reduce)到數據倉庫里,

Hadoop由許多元素構成。其最底部是Hadoop-DistributedFileSystem

(HDFS),它存儲Hadoop集群中所有存儲節(jié)點上的文件。

1.1.4LAMP/LNMP簡介

Linux作為操作系統(tǒng),Apache或Nginx作為Web服務器,MySQL作為

數據庫,PHP/Perl/Python作為服務器端腳本解釋器。由于這四個軟件都是免

費或開放源碼軟件(FLOSS),因此使用這種方式不用花一分錢(除開人工成

本)就可以建立起一個穩(wěn)定、免費的網站系統(tǒng),被業(yè)界稱為LAMP或LNMP組

合。

1.1.5項目開發(fā)環(huán)境版本和部署

我們選擇采用版本3.0以上的工具來完成本次研究,其中包括Hadoop

3.1.3、Spark3、以及Hive3.1.2。在工具方面,我們將主要使用Hive、

2

湖南商務職業(yè)技術學院畢業(yè)設計

Spark、Hadoop、MySQL和QuickBI。具體地,我們將通過搭建Hadoop基本環(huán)

境,實現大數據環(huán)境的統(tǒng)一配置,并配置HDFS分布式存儲環(huán)境和Yarn分布式

任務調度。同時,我們還將安裝MySQL數據庫并應用于項目中。接著,我們會

分析SpringBoot項目中生成日志的流程,并梳理Flume日志采集到HDFS的過

程,并完成相關shell腳本的編寫。最后,我們還將探討如何搭建

HiveOnSpark環(huán)境,為我們的研究打好堅實的基礎。

如圖1-1所示,我們規(guī)劃了一個由四臺虛擬機組成的集群,其中biz01用

于業(yè)務系統(tǒng),而Hadoop01、Hadoop02和Hadoop03則是集群的服務器。項目環(huán)

境搭建所需的組件包括:JDK1.8、MySQL5.7、HDFS、YARN、歷史服務器、

Flume、Spark、Hive和Data-X。下圖展示了環(huán)境部署服務器的相關配置信息。

1-1集群規(guī)劃

如圖1-2為正確安裝Hadoop并成功啟動成功后的截圖。

圖1-2安裝Hadoop成功顯示

集群Web訪問UI如下圖1-3所示。

“Hadoop01:9870/”,“Hadoop02:19888/Jobhistory”

3

湖南商務職業(yè)技術學院畢業(yè)設計

圖1-3集群Web訪問

Hadoop自帶了一個歷史服務器,可以通過歷史服務器在web端查看已經運

行完的作業(yè)記錄,比如用了多少個Map、用了多少個Reduce、作業(yè)提交時間、

作業(yè)啟動時間、作業(yè)完成時間等信息。默認情況下,Hadoop歷史服務器是沒有

啟動的,需要自行啟動。HadoopYARN是一個用于作業(yè)調度和集群資源管理的

框架。

圖1-4為啟動后,在下圖中點擊history可跳轉至歷史服務器查看信息。

圖1-4歷史服務器

圖1-5為HadoopDistributedFileSystem(HDFS):分布式文件系統(tǒng),提

供對應用程序數據的高吞吐量訪問。

圖1-5文件系統(tǒng)

HadoopMapReduce:這是基于YARN的用于并行處理大數據集的系統(tǒng)。其中

核心的設計就是:HDFS和MapReduce。HDFS為海量的數據提供了存儲,

MapReduce為海量的數據提供了計算。

4

湖南商務職業(yè)技術學院畢業(yè)設計

1.2可行性需求分析

1.2.1技術可行性分析

Hadoop是一個能夠對大量數據進行分布式處理的軟件框架。Hadoop以一種

可靠、高效、可伸縮的方式進行數據處理。Hadoop是可靠的,因為它假設計算

元素和存儲會失敗,因此它維護多個工作數據副本,確保能夠針對失敗的節(jié)點

重新分布處理。Hadoop是高效的,因為它以并行的方式工作,通過并行處理加

快處理速度。Hadoop還是可伸縮的,能夠處理PB級數據。此外,Hadoop依賴

于社區(qū)服務,因此它的成本比較低,任何人都可以使用。Hadoop是一個能夠讓

用戶輕松架構和使用的分布式計算平臺。用戶可以輕松地在Hadoop上開發(fā)和運

行處理海量數據的應用程序。

1.2.2項目價值可行性分析

項目價值可行性分析是指對研究項目的經濟效益、技術可行性、市場前景

以及社會影響等因素進行評估,以確定項目合理性和可行性。以下是關于該項

目各方面的價值可行性分析。為相關統(tǒng)計部門提供數據支持。比如上網的用戶

時長,上網的用戶人數,上網模式的占比等等。為行業(yè)發(fā)展的預測提供數據支

撐。

企業(yè)發(fā)展提供數據支撐,分析每個網站的訪問情況。為了提高客戶滿意度

和減少客戶流失率,電信運營商需要從客戶需求出發(fā),并了解客戶最關心的方

面,例如通話時長、流量使用量、價格等。通過收集市場調研、問卷調查和客

戶反饋等渠道獲取客戶需求信息,電信運營商可以為客戶設置不同的優(yōu)惠套

餐,以吸引更多用戶并降低客戶流失率。定制精準的市場營銷策略也是非常重

要的。在此基礎上提供個性化的營銷服務,例如推出針對某一類客戶偏好的優(yōu)

惠套餐和升級服務等,以提高客戶忠誠度和降低客戶流失率。

1.3關鍵技術分析

1.3.1大數據技術引擎

Hadoop、Spark與Hive是大數據技術領域中備受矚目的三大框架。Hadoop

已成為大數據處理的事實標準,其中MapReduce適用于對大規(guī)模數據集合進行

批處理操作。相比之下,Spark提供了廣泛類型的RDD計算模型,涵蓋20多種

數據集操作,而不僅限于Map和Reduce操作,這使得它在實現各種復雜功能時

更加便捷,如二次排序等復雜操作。此外,Spark的調度機制更加先進,開發(fā)

者可以使用DAG開發(fā)復雜的多個步驟數據管道,靈活控制中間結果的存儲和分

5

湖南商務職業(yè)技術學院畢業(yè)設計

區(qū),各個處理結點之間的通信模型不再像Hadoop一樣只有Shuffle模式。

除此之外,Spark還有以下優(yōu)勢:速度快:通過基于實時數據流的數據

處理方式,Spark能夠在數百毫秒內完成任務;易用性好:Spark提供多語言

支持,包括Java、Scala和Python等;通用性強:Spark可與多種數據存儲

和處理平臺集成,包括HDFS、Cassandra、Hbase等;隨處運行:Spark可在

本地計算機、集群或云平臺上運行。

因此,Hadoop、Spark與Hive都是大數據處理領域重要的技術框架,在

實際應用中,選擇最適合自身場景的框架來完成任務是非常關鍵的。

1.3.2大數據文件采集

Flume是一款分布式、可靠、高可用的海量日志采集、聚合和傳輸系統(tǒng),

被廣泛應用于大數據平臺中的數據采集環(huán)節(jié)。它支持從不同的數據源(如文

件、socket數據包等)采集數據,并將它們輸出到外部存儲系統(tǒng)中,比如

HDFS、HBase、Hive、Kafka等。

Flume對于數據采集方面有很好的表現,主要因為它解決了多種問題,例

如數據源多樣化,Flume能夠從不同來源的數據源中采集數據,例如文本文

件、數據庫甚至是網絡上的數據,海量數據采集,Flume具有高可伸縮性和高可

用性,可以處理大數據量的實時流式數據。數據變化快速和更新頻繁,Flume能

夠靈活地配置、修改和管理數據流,確保數據在數據湖中得到準確保存和追蹤。

1.3.3數據倉庫建設

數倉架構是將一個整體工作按需切分成不同部分的內容,由不同角色完成

這些分工,并通過建立不同部分相互溝通的機制,使得這些部分能夠有機連結

為一個整體,并完成支持數據分析所需要的所有活動。

因此,數倉架構旨在將通過數據操作、明細與倉庫層之間的分層處理流

程,對數據進行先進規(guī)劃和管理,實現數據的高效開發(fā)、部署、執(zhí)行和管理,

并最終實現業(yè)務價值的發(fā)掘。

2大數據環(huán)境搭建

2.1統(tǒng)一集群的環(huán)境配置

圖2-1為IP地址設置。

6

湖南商務職業(yè)技術學院畢業(yè)設計

圖2-1IP地址

使用Systemctlrestartnetwork重啟網絡服務。

測試網絡的方法通常是使用ping命令。如果能夠成功

ping通公網,說明IP地址和網關都被正確配置了。如果在通過ipaddr命

令查看IP地址時無法顯示(或者不能打開Google的首頁),則說明存在配置

錯誤。另外,如果可以ping通內網地址,比如,但無法訪問外

網,這說明可能存在網關配置問題。

為確保系統(tǒng)的穩(wěn)定性,我們需要編輯主機名配置文件,輸入命令vi

/etc/hostname即可編輯/修改主機名。例如,將主機名設置為Hadoop01。

還需設置域名解析映射,可以編輯hosts文件完成此步驟。在編輯

hosts文件過程中,應該根據需要添加新的域名記錄,以便在其他計算機上訪

問本地主機。

如圖2-2主機映射,為編輯主機名配置文件。

圖2-2主機映射

關閉防火墻和Selinux。

Systemctlstopfirewalld.serverice

Systemctldisablefirewalld.service

如圖2-3為關閉Selinux系統(tǒng)設置。

7

湖南商務職業(yè)技術學院畢業(yè)設計

圖2-3系統(tǒng)設置

配置免密登錄。

1.在所有節(jié)點生成公鑰和私鑰

Ssh-kengen-trsa

2.拷貝公鑰到每臺服務器

Ssh-copy-idHadoop01

Ssh-copy-idHadoop02

Ssh-copy-idHadoop03

3.驗證ssh登錄

SshHadoop01

4.配置服務器節(jié)點時間同步

如圖2-4在所有節(jié)點安裝ntpdate增加定時任務。

圖2-4定時任務

安裝常用軟件,如圖2-5為安裝常用軟件的命令。

圖2-5常用軟件

使用如下命令創(chuàng)建統(tǒng)一目錄。

Mkdir-p/bigdata/{soft,server}

8

湖南商務職業(yè)技術學院畢業(yè)設計

/bigdata/soft

/bigdata/server

2.2定義同步數據腳本

1.安裝軟件rsync

Yuminstall-yrsync

2.配置同步腳本

3.創(chuàng)建works文件

Cd/root/bin

Viworkers

Hadoop01

Hadoop02

Hadoop03

圖2-6為添加系統(tǒng)的環(huán)境變量。

圖2-6環(huán)境變量

2.3JDK環(huán)境的安裝

1.把安裝的軟件上傳到/bigdata/soft目錄。

2.解壓到指定目錄。

Tar-zxvf/bigdata/soft/JDK-8u241-liunx-x64.tar.gz-c

/bigdata/server/

3.配置環(huán)境變量。

如圖2-7重新加載配置文件。

9

湖南商務職業(yè)技術學院畢業(yè)設計

圖2-7配置文件

圖2-8為java環(huán)境系統(tǒng)配置測試成功。

圖2-8Java環(huán)境

圖2-9為同步至所有節(jié)點的位置。

圖2-9節(jié)點位置

2.4MySQL環(huán)境的安裝

1.卸載已經安裝的MySQL數據庫。

##查詢MySQL相關依賴

Rpm-qa|grepmySQL

如果存在,則通過rpm-e–nodeps進行卸載。

2.獲取rpm在線安裝倉庫文件。

Wgethttps://dev.mySQL.com/get/mySQL80-community-release-el7-

6.noarch.rpm

3.修改mySQL倉庫的配置文件。

Cd/etc/yum.repos.d/

MySQL-community.repo:用于制定哪個版本的安裝包。

MySQL-community-sourec.repo:指定哪個版本的源碼。

4.安裝MySQL5.7。

10

湖南商務職業(yè)技術學院畢業(yè)設計

#導入簽名信息Key

Rpm–importhttps://repo.mySQL.com/RPM-GP-KEY-mySQL-2022

Yuminstal-ymySQL-community-server

5.登錄數據庫。

Less/var/log/mySQLd.log|greppass

MySQL-uroot-p’XRY0460efv<7’

6.修改MySQL數據庫密碼策略

Setglobalvalidate_password_length=4;

Setglobalvalidate_password_policy=0;

7.創(chuàng)建遠程登錄用戶。

如圖2-10創(chuàng)建遠程登錄用戶的用戶權限。

圖2-10遠程登錄

8.設置服務器編碼為utf8。

Vi/etc/f

##在mySQL下面設置

Characte_set_server=utf8

##重啟服務

Systemctlrestartmysqld

2.5Hadoop集群的安裝

如圖2-11為集群規(guī)劃Hadoop01Hadoop02Hadoop03的NameNode

DataNodeResourceManagerSecondaryNameNodeHistoryserver的主從節(jié)點的

規(guī)劃。

圖2-11集群規(guī)劃

11

湖南商務職業(yè)技術學院畢業(yè)設計

上傳安裝包到Hadoop01解壓到指定目錄。

Tar-zxvf/bigdata/soft/Hadoop-3.3.3.tar.gz-C/bigdata/server

在進行Hadoop的安裝過程時,我們需要對一些關鍵的配置文件進行相應的

修改。這些配置文件包括但不限于Hadoop的核心配置文件(如core-

site.xml、HDFS-site.xml、mapred-site.xml等)以及Hadoop用戶界面(Web

UI)的配置文件等。這些配置文件的修改通常都由主節(jié)點來完成,并確保其順

利地同步至各個從節(jié)點機器中。

此外,在完善Hadoop安裝配置之前,我們還需要對網絡環(huán)境,服務器部署

以及系統(tǒng)軟件的版本等方面進行適當的規(guī)劃和準備。

綜上所述,Hadoop安裝需要進行多個環(huán)節(jié)的配合與調整。其中,主節(jié)點的

配置文件修改是至關重要的一環(huán),可有效保障Hadoop集群的穩(wěn)定運行和高效工

作,使得不同節(jié)點之間能夠正確地協(xié)同工作,實現數據的高效處理與存儲。

圖2-12文件末尾的系統(tǒng)配置跟改為系統(tǒng)root。

圖2-12系統(tǒng)配置

Hadoop的默認配置文件core-default.xml和核心配置文件core-site.xml

在Hadoop集群中有著非常重要的作用。它們通過提供一系列的參數配置信息來

定義了Hadoop的運行模式、數據存儲模式、任務執(zhí)行模式等重要內容,使得

Hadoop的不同節(jié)點之間可以自動協(xié)同工作,從而保證了整個集群運行的穩(wěn)定性

和高效性。

圖2-13在文件的configuration的標簽中添加圖中的內容core-

default.xml和核心配置文件的配置。

12

湖南商務職業(yè)技術學院畢業(yè)設計

圖2-13核心配置

HDFS(Hadoop分布式文件系統(tǒng))在配置時也經常用到兩個核心配置文件:

HDFS-default.xml和HDFS-site.xml。其中HDFS-default.xml是默認的HDFS

配置文件,而HDFS-site.xml是用戶自定義的配置文件。

當需要修改HDFS的配置時我們可以通過修改HDFS-site.xml文件來改變默

認設置。

圖2-14配置信息

如圖2-14SecondaryNamenode的運行位置因此在HDFS配置過程中,我們

必須確保這兩個配置文件的正確使用才能讓整個Hadoop集群保持高效穩(wěn)定的運

行狀態(tài)。

在Hadoop中,MapReduce是一個非常重要的組件,其優(yōu)化和配置涉及到很

多需求。MapReduce的核心配置文件mapred-default.xml也起到了至關重要的

作用。該文件包含了一些默認的配置項,這些會影響MapReduce程序的運行效

果。

同時如果某些屬性沒有在該文件中被指定,那么Hadoop將自動獲取

mapred-default.xml中相同屬性的默認值,并使用該默認值為MapReduce程序

的運行提供支持。

13

湖南商務職業(yè)技術學院畢業(yè)設計

如圖2-15Hadoop提供了另一個重要的配置文件mapred-site.xml,用于

設置用戶自定義的參數值。當我們在MapReduce的程序中需要對某些屬性進行

更改時,可以通過修改mapred-site.xml文件來實現。

圖2-15配置文件

YARN(YetAnotherResourceNegotiator)是Hadoop2.x系列中的一個

重要組件,其主要功能是負責對資源進行統(tǒng)一管理和調度。在YARN的配置文件

中,我們同樣會用到兩個核心的配置文件:yarn-default.xml和yarn-

site.xml。其中,yarn-default.xml是默認的YARN配置文件,而yarn-

site.xml則表示用戶自定義的文件。

如圖2-16所示需要修改YARN的配置時,可以通過改變yarn-site.xml文

件來實現。如果在該文件中沒有設置新增或修改某些屬性時,則會自動獲取

yarn-default.xml中相應屬性的默認值。

圖2-16YARN配置

圖2-17表示yarn-site.xml的歷史服務器和文件的保存時間的位置設置。

14

湖南商務職業(yè)技術學院畢業(yè)設計

圖2-17配置

在Hadoop集群中,通常會使用一個名為“workers”的文件來記錄集群中

所有從節(jié)點(datanode和nodemanager)的主機名。該文件的主要作用是協(xié)助

一鍵啟動腳本進行集群啟動和關閉。

當我們使用類似于start-dfs.sh、stop-yarn.sh這樣的腳本來控制

Hadoop集群時,它們會自動讀取workers文件中記錄的主機名,并逐一啟動或

關閉集群中的每個從節(jié)點。因此,在修改集群節(jié)點時,我們需要及時更新

workers文件,以確保所有節(jié)點都能被正確地加入或退出集群。

總的來說,workers文件在Hadoop集群中不可或缺。它提供了一個方便的

方式來管理集群中的從節(jié)點,讓集群的啟動和關閉變得更加簡單快速,從而極

大地提高了Hadoop集群的維護效率。

同步Hadoop軟件包到Hadoop02和Hadoop03。

Scp-rHadoop-3.3.3/Hadoop02:$PWD

Scp-rHadoop-3.3.3/Hadoop03:$PWD

圖2-18配置環(huán)境變量的環(huán)境。

圖2-18環(huán)境配置

總的來說一旦完成格式化操作并配置了完整的從節(jié)點列表和SSH免密登

錄。

圖2-19啟動Hadoop集群時需要先啟動HDFS和YARN兩個組件。在首次啟

動HDFS時必須進行格式化操作以準備好HDFS的元數據。我們就可以用程序腳

15

湖南商務職業(yè)技術學院畢業(yè)設計

本啟動所有Hadoop集群的相關進程,實現集群的快速啟動和高效運行。

圖2-19集群啟動

圖2-20為成功腳本啟動。

Star-all.sh#啟動所有的HDFS和yarn腳本

Stop-all.sh#停止所有的HDFS和yarn腳本

圖2-20集群

圖2-21為Hadoop集群HDFS:http://Hadoop01:9870網址。

圖2-21Web訪問UI

圖2-22為Hadoop啟動yarn:http://Hadoop01:8088網址。

16

湖南商務職業(yè)技術學院畢業(yè)設計

圖2-22Web網址

MapReduceJobHistory歷史服務器,日志信息存放于HDFS目錄中,默認

情況下沒有開啟此功能,我們注意的點是需要在mapred-site.xml中配置并

且我們自行設置為手動啟動。

圖2-23圖表示MapReduceJobHistory歷史服務器JobHistory用來記錄

已經finished的mapreduce運行日志。

圖2-23歷史服務器配置

圖2-24歷史服務器信息。

圖2-24歷史服務器

圖2-25歷史服務器的守護進程成功的截圖信息。

17

湖南商務職業(yè)技術學院畢業(yè)設計

圖2-26歷史服務器

圖2-27表示其歷史服務器的守護進程成功的截圖信息。

Cdbigdata/server/Hadoop/bin./mapred–daemonstarthistoryserver

訪問web管理界面http://Hadoop02:19888/jobhistory。

圖2-27歷史服務器

3數據倉庫系統(tǒng)規(guī)劃

HiveonSpark是一種基于內存計算框架Spark的Hive執(zhí)行引擎,它主要

通過替換原有的執(zhí)行引擎MapReduce為Spark,從而提高了查詢數據的效率,

在處理大規(guī)模數據時大幅降低了計算時間。在這個架構中,Hive仍然負責數據

的存儲和SQL語句的解析,并將處理任務傳遞至Spark執(zhí)行引擎,借助其強大

的計算能力來加速SQL語句的執(zhí)行。

相比之下,SparkonHive選擇將數據存儲和元數據管理交由Hive來負

責,同時采用Spark執(zhí)行引擎進行數據處理和SQL查詢的解析。通過這種方

式,Spark可以從Hive中獲取必要的元數據信息,然后再利用圖形優(yōu)化技術進

行數據處理。然而,盡管這種架構在數據處理方面具備高效性,但相較于Hive

onSpark而言查詢速度會略遜一籌。

考慮到HiveonSpark采用了Spark的高速內存計算框架,并且Hive在數

據存儲和SQL解析方面處理得較為出色,因此在實踐中,使用Hive-on-Spark

的設計架構通常更具實用性和高效性。

18

湖南商務職業(yè)技術學院畢業(yè)設計

3.1安裝Hive環(huán)境

3.1.1使用編譯好的源碼軟件

#上傳安裝文件

Apache-Hive-3.1.2-bin.tar.gz

#解壓指定目錄

Tar-zxvfApache-Hive-3.1.2-bin.tar.gz-C/bigdata/server/

3.1.2配置環(huán)境變量

#同步環(huán)境變量

Xsync/etc/profile.d/custom_env.sh

#加載環(huán)境變量

3.1.3修改配置文件

如圖3-1創(chuàng)建配置文件Hive-site.xml,元數據存儲信息的位置,數據文

件的存儲目錄。

圖3-1配置文件

圖3-2表示Hive的客戶端的一些配置信息。

19

湖南商務職業(yè)技術學院畢業(yè)設計

圖3-2配置文件

3.1.4初始化元數據信息

圖3-3表示元數據解決亂碼的問題以及注釋中MySQL數據庫的設置信息。

圖3-3中文設置

3.1.5測試環(huán)境

啟動Hive客戶端

Bin/Hive

創(chuàng)建一張測試表

Createtablestudent(idint,namestring);

通過insert插入測試數據

Insertintostudentvalues(100,’wolf’)

圖3-4測試成功的結果查詢顯示。

20

湖南商務職業(yè)技術學院畢業(yè)設計

圖3-4測試成功

圖3-5圖3-6圖3-7分別表示啟動查詢insert插入測試數據的結果顯示。

圖3-5數據顯示

圖3-6數據記錄

21

湖南商務職業(yè)技術學院畢業(yè)設計

圖3-7數據記錄

3.2Saprk安裝環(huán)境配置

3.2.1上傳安裝文件

上傳預先下載好的軟件:spark-3.0.0-bin-without-Hadoop.tgz

3.2.2解壓軟件

Tar-zxvfspark-3.0.0-bin-without-Hadoop.taz-C

/bigdata/server/

#串鍵軟鏈接

In-sspark-3.0.0-bin-without-Hadoopspark。

圖3-8修改配置文件Spark-on的依賴配置。

圖3-8配置依賴

圖3-9表示其提交的歷史服務器的yarn的集群運行配置目錄。

圖3-9配置信息

22

湖南商務職業(yè)技術學院畢業(yè)設計

3.2.3HDFS創(chuàng)建歷史服務信息日志

#創(chuàng)建服務器的日志

HDFSdfs-mkdir-p/spark/log

3.2.4測試程序

如圖3-10如圖3-1

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論