999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

大數據Hadoop集群下Sqoop數據傳輸技術研究

2024-05-23 08:37:16周少珂郭璇張振平付媛冰
河南科技 2024年6期
關鍵詞:大數據

周少珂 郭璇 張振平 付媛冰

摘 要:【目的】Hadoop系統是大數據分布式集群系統,其開源的生態圈中有眾多功能組件,通過在大數據Hadoop集群系統上部署Sqoop組件,將本地關系型Mysql數據庫中的數據和Hive數據倉庫中存儲的數據進行快速導入導出,進一步研究數據傳輸性能?!痉椒ā渴紫仍谄髽I服務器上部署配置Hadoop分布式集群系統,其次在該集群上部署Sqoop組件并測試與Mysql數據庫和Hive數據倉庫的連通性,最后使用Sqoop技術測試本地Mysql數據庫和Hive數據倉庫之間的導入和導出?!窘Y果】通過Sqoop技術能夠更加便捷快速地從本地Mysql數據庫上傳到Hadoop集群系統,與傳統方式下先將本地Mysql數據庫中數據導出TXT文檔格式后再使用Hive數據倉庫的Load數據批量加載功能相比,在時間和效率方面大為提升?!窘Y論】驗證了Sqoop組件在Hadoop集群中部署運行的正確性,為大數據技術學習者提供一定程度的參考借鑒。

關鍵詞:大數據;Hadoop;分布式集群;Sqoop

中圖分類號:TP311? ? ?文獻標志碼:A? ? ?文章編號:1003-5168(2024)06-0025-04

DOI:10.19968/j.cnki.hnkj.1003-5168.2024.06.005

Research on Sqoop Data Transmission Technology Based on Big Data Hadoop Cluster

ZHOU Shaoke GUO Xuan ZHANG Zhenping FU Yuanbing

(College of Information Science and Engineering, Henan Vocational College of Applied Technology, Zhengzhou 450042, China)

Abstract:[Purposes] The Hadoop system is a big data distributed cluster system with numerous functional components in its open source ecosystem. By deploying the Sqoop component on the big data Hadoop cluster system, the data in the local relational MySQL database and the data stored in the Hive data warehouse can be quickly imported and exported, further studying the data transmission performance. [Methods] This article first deploys and configures the Hadoop distributed cluster system on the enterprise server, and then deploys the Sqoop component on the cluster and tests its connectivity with the MySQL database and Hive data warehouse. Finally, this paper uses Sqoop technology to test the import and export between the local MySQL database and Hive data warehouse. [Findings] Through Sqoop technology, it is more convenient and fast to upload data from the local MySQL database to the Hadoop cluster system. Compared to traditional methods of exporting data from the local MySQL database to TXT document format and then using the Hive data warehouse's Load data batch loading function, the technology greatly improves time and efficiency. [Conclusions] This paper verifies the correctness of deploying and running Sqoop components in Hadoop clusters, providing a certain degree of reference for big data technology learners.

Keywords: big data; Hadoop; distributed clustering; Sqoop

0 引言

Hadoop起始于2002年Apache項目中的Nutch項目。開發者通過學習和借鑒Google的開源GFS、MapReduce、BigTable三篇論文,開發創建出Hadoop項目。隨著技術的發展,Hadoop版本已經發展到Apache Hadoop 3.3.6[1]。

目前,Hadoop生態圈發展日益完善,其中包括HDFS分布式文件系統、MapReduce計算模型、Zookeeper協調一致性服務、Hbase列式數據庫、Hive數據倉庫、Flume日志采集、Sqoop數據泵等眾多生態圈中的組件[2]。Sqoop組件功能是完成關系型(如Mysql、Oracle)和大數據集群型(如Hbase)數據庫、Hive數據倉庫、HDFS分布式文件系統之間數據導入導出的存儲[3]。

1 Hadoop集群部署

Hadoop項目整體包括底層的大數據分布式集群部署和上層的大數據應用開發,本研究主要針對底層大數據分布式集群部署進行研究。在Hadoop分布式集群部署中可以分為三類:單機版Hadoop集群;偽分布式Hadoop集群;完全分布式Hadoop集群。其中完全分布式集群部署是真實集群環境,前兩類集群僅僅作為初學者進行學習的參考。

本研究使用三臺Linux系統進行Hadoop分布式集群系統配置[4]。在運行CentOS7.5發行版的三臺Linux系統服務器上進行完全分布式Hadoop集群系統部署。

首先,進行分布式集群中的Java環境變量的基礎配置。由于Hadoop項目的底層環境為Java,因此需要在三臺服務器中的/etc/profile目錄下配置JDK1.8環境變量。在配置完畢后需要使用Source命令對文檔進行刷新,使用Java -version命令查看JDK的具體版本信息是否正確。在配置部署前需將各主機防火墻進行關閉,SeLinux功能禁用,并配置使用本地Yum軟件源,同時分別修改主機名為Hadoop01、Hadoop02、Hadoop03,其中Hadoop01為主節點(即NameNode節點),Hadoop02和Hadoop03為從節點(即DataNode節點),并修改主機名和IP地址的映射。

其次,在三臺CentOS7.5系統服務器節點上配置六個文檔,分別為:hadoop-env.sh文檔;core-site.xml文檔;yarn-site.xml文檔;mapred-site.xml文檔;hdfs-site.xml文檔;master-slave文檔。該文件主要保存和記錄分布式集群數量和名稱,使集群成為統一運行整體。該文件中需把所有DataNode數據節點的主機名添加至文件中,且每個DataNode數據節點名稱單獨占用一行記錄[5]。

再次,對Hadoop分布式集群系統NameNode控制節點在Shell終端環境下進行Hadoop namenode format格式化命令操作。在格式化節點過程中不要進行多次操作,以免造成NameNode節點和DataNode節點不同步,影響系統的穩定性,通過使用Start-all.sh命令啟動集群。

最后,Hadoop分布式集群系統運行成功后,就可以隨機選擇任何一臺主機進行測試,有兩種方式進行測試。一種是瀏覽器Web界面登錄方式。使用瀏覽器輸入http://主節點IP地址(或域名):50070,進入HDFS分布式文件系統界面,如圖1所示。另一種是通過Shell終端命令方式。輸入“JPS”“hadoop fs –ls / ”等命令。

2 Sqoop配置部署

Sqoop組件是Hadoop系統生態圈中的組件之一,也稱作“數據泵”。主要是本地關系型(如Mysql、Oracle)數據庫和大數據Hadoop集群中的非關系型(如Hbase)數據庫、Hive數據倉庫、HDFS分布式文件系統之間數據的導入導出,Sqoop組件技術更加方便數據之間傳輸的高效性和便捷性。在Hadoop分布式集群系統、Hive數據倉庫、Mysql關系型數據庫已正確完成部署后,本研究以Linux系統中Mysql本地數據庫和Hadoop分布式集群中的Hive數據倉庫二者為研究對象,進行數據間的傳輸測試,其Sqoop組件工作原理,如圖2所示。

Sqoop組件是開源免費的,可以在開源鏡像站中下載,本研究使用Sqoop-1.4.7.bin__hadoop-2.7.6.tar.gz壓縮包,Sqoop版本為1.4.7。為了避免操作權限的影響,Linux操作系統中使用root管理員權限身份操作,在Hadoop完全分布式集群(三臺服務器)運行的基礎上,通過Hadoop01(即Master節點)進行Sqoop組件的安裝部署。

①上傳服務器Sqoop組件。使用將SecureCRT遠程登錄軟件,將Sqoop壓縮包上傳至/root目錄下,并將/root/Sqoop-1.4.7.bin__hadoop-2.7.6.tar.gz壓縮包解壓到/usr/local/src目錄。將解壓后生成的Sqoop-1.4.7.bin__hadoop-2.7.6文件夾更名為Sqoop。

②修改并配置Sqoop環境。復制Sqoop-env-template.sh模板,并將模板重命名為Sqoop-env.sh。修改Sqoop-env.sh文件,添加Hdoop、Hbase、Hive等組件的安裝路徑。

④配置連接Mysql數據庫。為了使Sqoop能夠連接MySQL數據庫,需要將Mysql-connector-java-5.1.46.jar文件放入Sqoop的lib目錄中。該jar文件版本需要與MySQL數據庫的5.7版本相對應,否則Sqoop導入數據時會報錯。

⑤測試Sqoop組件連接Mysql數據庫。在Master服務器節點上啟動Hadoop分布式集群系統,測試Sqoop組件是否能夠正常連接Mysql數據庫。使用“sqoop list-databases --connect jdbc:mysql://hadoop01:3306/ --username root -P Mysql數據庫密碼”命令,能夠查看到MySQL數據庫中的information_schema、hive、mysql、performance_schema、sys等數據,說明Sqoop可以正常連接MySQL數據庫。

⑥測試Sqoop組件連接Hive數據倉庫。為使Sqoop能夠連接Hive,需要將Hive組件/usr/local/src/hive/lib目錄下的hive-common-2.0.0.jar放入Sqoop安裝路徑的lib目錄中,該jar包為內部調用普通庫函數時所需要使用的包。

通過以上六步的配置,完成了Hadoop分布式集群系統中Sqoop組件的安裝部署,并能夠使用Sqoop相關命令進行本地Mysql數據庫和Hive數據倉庫的連接。其中Hive數據倉庫并非數據庫而是一種數據庫引擎,通過Hive將數據存儲在HDFS分布式文件系統中。

3 Sqoop功能測試

根據Sqoop組件功能,其測試包含兩個方面。一方面是,將本地Mysql數據庫中的數據進行導出,通過Sqoop技術再次將該數據導入到Hive數據倉庫中。另一方面是,將Hive數據倉庫中的數據導出,通過Sqoop技術再次將該數據導入到本地Mysql數據庫中。測試完成后,通過實際的運行結果,驗證Sqoop配置的正確性和性能。

①創建Mysql數據庫和數據表的樣本數據。使用Root管理員權限身份登錄Linux本地系統的Mysql數據庫,創建Example數據庫和樣例Student表,該表格有Snumber學號主鍵列和Sname姓名列?!癱reate table Student(Snumber char(9) primary key,Sname varchar(10));”并向該表格中插入三行詳細數據“insert into Student values(‘01,‘ZhangSan);”“insert into Student values(‘02,‘LiSi);”“insert into Student values(‘03,WangWu);”

②創建Hive數據倉庫中的Example數據庫和Student數據表。在運行的Hadoop分布式集群系統中啟動Hive數據倉庫并創建Example數據庫“hive> create database sample;”進而創建Student數據表“hive> create table Student(Snumber STRING,Sname STRING) row format delimited fields terminated by ‘| stored as textfile;”此時Hive中的Student數據表是使用“|”進行、列之間的分割,并最終以textfile文件格式進行數據存儲,此時Hive中的數據庫和表格格式已創建完成。

③將本地Mysql數據導出,導入Hive數據倉庫測試。本地Mysql數據庫中已創建數據庫和數據表,并插入部分行數據,所以可以直接在Master服務器中使用“sqoop import--connectjdbc:mysql://master:3306/Example --username root --password Password123?。〝祿烀艽a) --table student --fields-terminated-by ‘| --delete-target-dir --num-mappers 1 --hive-import --hive-database Example --hive-table Student”命令進行測試。其中數據庫密碼設定符合密碼復雜度即可,在該命令底層運行過程中會轉換成一個MapReduce計算模型的工作任務,如圖3所示。

④將Hive數據倉庫導出,導入本地Mysql數據測試。由于Mysql數據庫中已插入部分數據,因此需要先刪除表格中的數據,但無須刪除表格框架結構,使用命令“mysql>use Example; mysql>delete from Student;”在Master節點中使用“sqoop export --connect jdbc:mysql://master:3306/Example?useUnicode=true &characterEncoding=utf-8 --username root --password Password123?。〝祿烀艽a) --table Student --input-fieldsterminated-by ‘| --export-dir /user/hive/warehouse/Example.db/Student/*”命令。在從Hive導出數據過程中,底層需要轉換為MapReduce計算模型的程序進行調用系統程序,因此是以MapReduce程序進行運行。Hive數據倉庫中的數據成功導入到本地Mysql數據庫中的過程,如圖4所示。

4 結語

Sqoop組件是Hadoop系統生態圈中的組件之一,其主要功能是進行本地數據和Hadoop分布式集群系統中數據間的傳輸。通過Sqoop技術能夠更加便捷、快速地從本地Mysql數據庫上傳到Hadoop集群系統,與傳統方式下將本地Mysql數據庫中數據導出TXT文檔格式后,再使用Hive數據倉庫的Load數據批量加載功能相比,在時間和效率方面大為提升。下一步,可以在此基礎上運用海量數據,從使用Sqoop技術導入和Hive的Load批量加載兩個方面,將數據導入到Hive數據倉庫中進行對比研究,并進行性能優化。

參考文獻:

[1]劉曉莉,李滿,熊超,等.基于Hadoop搭建高可用數據倉庫的研究和實現[J].現代信息科技,2023,7(1):99-101.

[2]李霄揚,朱恒.基于HHS的離線數據分析平臺的設計與實現[J].電腦知識與技術,2023,19(10):75-77.

[3]吳建.基于Linux的Hadoop集群搭建的探索與實現[J].物聯網技術,2023,13(7):134-137,141.

[4]王建軍,張英成,戰非,等.基于Sqoop的高校海量結構化數據導入研究[J].無線互聯科技,2018,15(20):52-53.

[5]周少珂,王雷,崔琳,等.大數據Hadoop技術完全分布式集群部署[J].工業控制計算機,2021,34(8):101-103.

猜你喜歡
大數據
基于在線教育的大數據研究
中國市場(2016年36期)2016-10-19 04:41:16
“互聯網+”農產品物流業的大數據策略研究
中國市場(2016年36期)2016-10-19 03:31:48
基于大數據的小微電商授信評估研究
中國市場(2016年35期)2016-10-19 01:30:59
大數據時代新聞的新變化探究
商(2016年27期)2016-10-17 06:26:00
淺談大數據在出版業的應用
今傳媒(2016年9期)2016-10-15 23:35:12
“互聯網+”對傳統圖書出版的影響和推動作用
今傳媒(2016年9期)2016-10-15 22:09:11
大數據環境下基于移動客戶端的傳統媒體轉型思路
新聞世界(2016年10期)2016-10-11 20:13:53
基于大數據背景下的智慧城市建設研究
科技視界(2016年20期)2016-09-29 10:53:22
數據+輿情:南方報業創新轉型提高服務能力的探索
中國記者(2016年6期)2016-08-26 12:36:20
主站蜘蛛池模板: 婷婷色婷婷| 日韩精品无码一级毛片免费| 天天做天天爱夜夜爽毛片毛片| 中国国产高清免费AV片| 日韩黄色精品| 伊人精品视频免费在线| 国禁国产you女视频网站| 久久人体视频| 久久久久国产一区二区| 亚洲综合在线最大成人| 国产黄色片在线看| 国产人人射| 国产福利观看| 国产成人精品三级| 国产不卡国语在线| 欧美精品v欧洲精品| 亚洲国产看片基地久久1024 | 国产视频久久久久| 99热这里只有免费国产精品| www.日韩三级| 一级毛片在线播放免费| 88av在线看| 国产欧美综合在线观看第七页| 日韩精品专区免费无码aⅴ| 影音先锋丝袜制服| 亚洲综合二区| 亚洲高清在线天堂精品| 全午夜免费一级毛片| 亚洲欧美一区二区三区麻豆| 亚洲日本精品一区二区| 色欲色欲久久综合网| 91九色视频网| 青青青视频免费一区二区| 亚洲天堂网2014| 中文字幕亚洲乱码熟女1区2区| 免费观看男人免费桶女人视频| 国产成人a毛片在线| 亚洲视频在线网| 国产欧美另类| 国产精品自拍露脸视频 | 日本一区二区三区精品国产| 久久a毛片| 国产激爽大片在线播放| 欧美性爱精品一区二区三区 | 国产va在线| 国产成人亚洲无码淙合青草| 欧美日本一区二区三区免费| 就去吻亚洲精品国产欧美| 国产精品偷伦在线观看| 夜夜操天天摸| 五月婷婷综合色| 欧美人人干| 日本三级欧美三级| 色135综合网| 久久久久久高潮白浆| 久久精品国产亚洲麻豆| 亚洲电影天堂在线国语对白| 性欧美精品xxxx| 亚洲激情99| 手机在线国产精品| 亚洲国产成人在线| 十八禁美女裸体网站| 久久婷婷国产综合尤物精品| 国产麻豆va精品视频| 国产精品va免费视频| 亚洲欧洲日产无码AV| 欧美成人一区午夜福利在线| 国产成人8x视频一区二区| 欧美伦理一区| 亚洲天堂2014| 91成人在线免费视频| 久久亚洲天堂| 亚洲精品va| 成人在线亚洲| 毛片久久网站小视频| 亚洲精品视频在线观看视频| 欧美区国产区| 色偷偷男人的天堂亚洲av| 色播五月婷婷| 日韩麻豆小视频| 欧美专区日韩专区| 欧美怡红院视频一区二区三区|