Hadoop大數據開發基礎與案例實戰(微課版)-教案 項目七 Hive實戰_第1頁
Hadoop大數據開發基礎與案例實戰(微課版)-教案 項目七 Hive實戰_第2頁
Hadoop大數據開發基礎與案例實戰(微課版)-教案 項目七 Hive實戰_第3頁
Hadoop大數據開發基礎與案例實戰(微課版)-教案 項目七 Hive實戰_第4頁
Hadoop大數據開發基礎與案例實戰(微課版)-教案 項目七 Hive實戰_第5頁
已閱讀5頁,還剩4頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

Hive實戰教學單元名稱Hive簡介及應用場景教學目標能力目標獨立查閱相關資料的能力知識目標掌握Hive的工作原理和特點。了解Hive的應用場景。了解Sqoop的原理及特點。素質目標接受新知識、自主學習、查閱資料的能力教學重點1、Hive的工作原理和特點。2、Hive的應用場景。3、Sqoop的原理及特點。教學難點Hive的工作原理和特點教學方法提問法、討論法、講授法教學時數2學時教學過程設計教學環節教學內容教師活動學生活動新課引入數據倉庫的應用場景講解聽講記錄任務描述提出本次學習的任務——了解Hive講解聽講記錄課程要點講解Hive概述關鍵字:特性、產生歷程講解搜集資料、交流Hive應用場景講解對不同子項目進行綜合講解詳細講解1.Hive概述ApacheHive是由Apache軟件基金會的志愿者Facebook提供的開源項目,開源用于解決海量結構化日志的數據統計工具,最初是ApacheHadoop下的一個子項目,后來升級為Apache的頂級項目。Hive的本質是將HQL轉化成MapReduce程序,HQL轉化成MapReduce的流程如圖所示:講解分組討論2、Hive應用場景使用Hive進行數據分析時具有以下優點:(1)操作接口采用類SQL語法,提供快速開發的能力,便于理解。(2)Hive的執行延遲比較高,因此Hive常用于數據分析對實時性要求不高的場合。(3)Hive優勢在于處理大數據,對于處理小數據沒有優勢,因為Hive的執行延遲比較高。(4)Hive支持用戶自定義函數,用戶可以根據自己的需求來實現自己的函數。使用Hive在數據分析時處理具有以上優點以外,還有其缺點,主要體現在以下幾個方面:(5)Hive的HQL表達能力有限迭代式算法無法表達遞歸算法;Hive不擅長數據挖掘方面操作,即不擅長數據挖掘和算法機器學習。(6)Hive的效率比較低Hive自動生成的MapReduce作業,通常情況下不夠智能化,Hive調優比較困難,粒度較粗。講解聽講記錄、交流教學小結根據課堂教學情況,之處學生對本堂課中知識點難以理解的地方,結合教學重點和難點,對所學知識進一步強化。講解學生記錄布置作業1.簡述MySQL在Hive中的作用。2.簡述Sqoop是如何進行數據導入導出的?Hive實戰教學單元名稱Hive安裝及操作教學目標能力目標具有獨立自主的開發能力和解決問題的能力知識目標掌握Hive環境搭建掌握本地數據上傳至本地倉掌握sqoop環境的配置掌握Hive與MySql數據互傳素質目標接受新知識、自主學習解決問題、創新的能力教學重點1、掌握Hive環境搭建2、掌握本地數據上傳至本地倉3、掌握sqoop環境的配置4、掌握Hive與MySql數據互傳教學難點本地數據上傳至本地倉和Hive與MySql數據互傳教學方法項目向導、任務驅動、分組討論教學時數16學時教學過程設計教學環節教學內容教師活動學生活動新課引入介紹Hive數據倉和Mysql數據庫講解聽講記錄任務描述提出本次學習的任務——Hive環境搭建及其數據倉應用講解聽講記錄任務部署1完成Hive環境搭建講解搜集資料、交流任務實施11.將Hive安裝包傳送到Linux操作系統服務器端scp./apache-hive-2.3.4-bin.tarhadoop@192.168.153.134:/home/hadoop講解演示模仿操作2.將Hive安裝包解壓到/usr/local目錄下,并進行解壓,解壓完成之后進行更名tar-zxvfapache-hive-2.3.4-bin.tar-C/usr/localmvapache-hive-2.3.4-bin.tarhive講解演示模仿操作3.修改組用戶屬性sudochown-Rhadoop:hadoophive講解演示模仿操作4.配置Hive環境變量 ·vim~/.bashrc ·在最下方加入如下代碼: #Hive_ENV exportHIVE_HOME=/usr/local/hive exportPATH=$PATH:$HIVE_HOME/bin

講解演示模仿操作5.測試Hadoop是否安裝成功source~/.bashrc講解演示模仿操作6.配置hive配置文件(注意該配置文件中的密碼與在mysql中創建的hive密碼應該一致。創建hive用戶,密碼為dashuju168)講解演示歸納總結模仿操作記錄任務部署2安裝MySQL講解演示模仿操作任務實施21.升級系統安裝包sudoapt-getupdatesudoapt-getinstallmysql-server(注意:在該步驟中如果遇到mysql被鎖的情況(locked),則執行sudorm/var/lib/dpkg/locksudodpkg--configure-a)講解演示模仿操作2.配置root用戶名sudomysql_secure_installation設置root用戶名,密碼為123456(在該步驟中都選擇y(yes))登錄mysqlsudomysql-uroot-p講解演示模仿操作3.將mysql-connector-java-8.0.16.tar上傳至Linux操作系統中(Linux下mysql必須安裝驅動)解壓到當前目錄下tar-xzvfmysql-connector-java-8.0.16.tar講解演示模仿操作4.cd到connector-java-8.0.16.tar解壓包目錄下,將該目錄下的mysql…….jar拷貝到/usr/local/hive/lib/下,并切換回~目錄cdcon+TABcpmysql…….jar/usr/local/hive/lib/cd~講解演示模仿操作5.進入root用戶sudomysql-uroot-p創建hive用戶,密碼為dashuju168createuser'hive'@'localhost'identifiedby'dashuju168';講解演示歸納總結模仿操作記錄6.配置mysql允許hive接入grantallprivilegeson*.*to'hive'@'localhost'withgrantoption;flushprivileges(保存,表同步)驗證hive用戶是否能用sudomysql-uhive-p任務部署3本地數據上傳至本地倉講解演示模仿操作任務實施31.將user.zip文件上傳至CentOS7中scp./user.ziphadoop@IP地址:/home/hadoop講解演示模仿操作2.在/usr/local下面創建bigdatacase目錄,在bigdatacase目錄下創建dataset目錄 cd/usr/local mkdirbigdatacase cdbigdatacase mkdirdataset講解演示模仿操作3.將user.zip上傳至CentOS7中scp./user.ziphadoop@IP地址:/home/hadoop講解演示歸納總結模仿操作記錄4.下載unzip軟件

sudoapt-getinstallunzip

將user.zip解壓至datatcase目錄中

unzipuser.zip-d/usr/local/bigdatacase/datatset5.數據集的預處理

(1)刪除文件第一行記錄

sed-i'1d'small_user.csv

head-10small_user.csv

(2)對字段進行預處理

編寫pre_deal.sh

(3)執行pre_deal.sh

cd/usr/local/bigdatacase/dataset

bash./pre_deal.shsmall_user.csvuser_table.txt

head-10user_table.txt講解演示歸納總結模仿操作記錄任務部署4導入數據庫講解演示模仿操作任務實施41.將user_table.txt上傳至HDFS上

在HDFS上創建/bigdatacase/dataset

cd/usr/local/hadoop

hdfsdfs-mkdir-p/bigdatacase/dataset

在hadoop目錄下操作命令:hdfsdfs-put/usr/local/bigdatacase/dataset/user_table.txt/bigdatacase/dataset

查看HDFS上user_table.txt的前10行

hdfsdfs-cat/bigdatacase/dataset/user_table.txt|head10講解演示模仿操作2.在Hive上創建數據庫(1)啟動mysql服務service mysqlstart(2)啟動hivecd/usr/local/hiveHive(3)在hive中創建一個數據庫dblab;createdatabasedblab;usedblab;講解演示模仿操作創建外部表講解演示模仿操作4.查詢hive中的數據select*frombigdata_userlimit10;講解演示模仿操作任務部署5Sqoop的安裝及配置講解演示模仿操作任務實施5安裝sqoop講解演示模仿操作配置sqoop-env.sh文件講解演示模仿操作配置環境變量講解演示模仿操作講解演示模仿操作測試與mysql是否連通講解演示歸納總結模仿操作記錄任務部署6mysql數據導入到hive中講解演示模仿操作任務實施6進入到mysql中sudomysql-uhive-pdashuju168

showdatabases;

createdatauserdb;

createtableifnotexistsuuser(idintunsignedauto_incrementunamevarchar(128)notnull,uphonevarchar(11)notnull,PRIMARYKEY(id))ENGINE=InnoDBDEFAULTCHARSET=utf8;

insertintouuservalue(NULL,'JackMa','12345678901');

insertintouuservalue(NULL,'ZhangSan','11111111111');

insertintouuservalue(NULL,'LiSi','22222222222');講解演示模仿操作2.將mysql數據導入到hive中

sqoopimport--connectjdbc:mysql://localhost:3306/userdb--usernamehive--passworddashuju168--tableuuser--hive-import-m1--fields-terminated-by','--hive-tableuuser2(uuser位于hadoop偽分布式下的/user/hadoop/uuser)

cp/usr/local/hive/lib/hive-common-…….jar/usr/local/sqoop/lib/

hadoopfs-rm-ruuser講解演示模仿操作3.查看mysql數據導入到hive中

showtables;

select*fromuuser2;講解演示模仿操作4.將hive中的數據導入到mysql中

(1)進入mysql

sudomysql-uhive-pdashuju168

useuserdb;

createtableuuser3likeuuser;(復制表結構)

descuuser3;查看表結構

(2)從hive中導出數據到mysql中

sqoopexport--connectjdbc:mysql://localhost:3306/userdb--usernamehive--passworddashuju168--tableuuser3

溫馨提示

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

評論

0/150

提交評論