1. 程式人生 > >sqoop的概念和安裝

sqoop的概念和安裝

sqoop: 概念及功能: 資料遷移的,資料移動 原來資料管理是集中式管理 將原來的集中式管理的資料 移動到分散式平臺下 sqoop就是將傳統的關係型資料庫的資料和大資料據平臺之間的資料遷移 遷移有兩個方向: 1)關係型資料庫mysql/oracle----》大資料平臺(hadoop,hive,hbase) 資料匯入 2)大資料平臺(hadoop hive hbase)----》關係型資料庫(mysql) 資料匯出 通常用於 分析結果資料從hive或hdfs匯出到mysql中 便於前臺展示 sqoop是關係型資料庫和大資料平臺的橋樑

	注意:這裡的大資料平臺指的是hadoop的廣義概念
		hadoop:
			1)狹義
				專門指hadoop元件
			2)廣義:
				hadoop生態圈的所有元件
				hadoop  hive   hbase   zookeeper ......

sqoop的資料匯入和資料匯出的本質: 資料匯入:mysql----》hadoop 將mysql的資料複製到hadoop上 實質上是將sqoop的命令轉換為MR任務進行執行 重新定義的資料輸入 將原來的資料輸入(hdfs)轉為 從mysql資料庫進行讀資料的資料輸入 資料匯出:hadoop-----》mysql 實質上相當於重新定義了MR的輸出 實質上是將sqoop的命令轉換為MR任務進行執行 輸出是mysql或oracle資料庫 這裡的sqoop的命令轉換的MR任務 不需要reduce任務的 只需要Map任務

sqoop的安裝: sqoop1.4.6 版本介紹: sqoop1.0版本 主流 1.99.3 sqoop2.0版本 只需要安裝一個節點: mysql hdfs hive hbase 保證節點上有以上的大資料相關服務 hadoop02 安裝步驟: 1)上傳 2)解壓 tar -xvzf sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz 3)配置環境變數 export SQOOP_HOME=/home/hadoop/apps/sqoop-1.4.6.bin__hadoop-2.0.4-alpha export HIVE_HOME=/home/hadoop/apps/apache-hive-2.3.2-bin export PATH=P

ATH:PATH:JAVA_HOME/bin:HADOOPHOME/bin:HADOOP_HOME/bin:HADOOP_HOME/sbin:ZOOKEEPERHOME/bin:ZOOKEEPER_HOME/bin:HIVE_HOME/bin:$SQOOP_HOME/bin 4)生效環境變數 並驗證 source /etc/profile sqoop version 5)修改配置檔案 cp sqoop-env-template.sh sqoop-env.sh 修改配置檔案解析:

		#Set path to where bin/hadoop is available
		#export HADOOP_COMMON_HOME=

		#Set path to where hadoop-*-core.jar is available
		#export HADOOP_MAPRED_HOME=
		

		#set the path to where bin/hbase is available
		#export HBASE_HOME= hbase的目錄

		#Set the path to where bin/hive is available
		#export HIVE_HOME=HIVe的安裝目錄

		#Set the path for where zookeper config dir is
		#export ZOOCFGDIR=zokeeper的conf檔案的目錄

hadoop的common  mapreduce為什麼需要分開配置:
			開源:
			hadoop來說  common  mapreduce都在一個安裝包中
			對於開源的來說上面的兩個都是hadoop的安裝目錄
			商業版:
				CDH
				HDP
				對於商業版本的hadoop來說  common和mapreduce分別、
				安裝在不同的目錄下的
	6)將mysql的驅動放在sqoop的lib包下
		/home/hadoop/apps/sqoop-1.4.6.bin__hadoop-2.0.4-alpha/lib
	7)測試:
	
	sqoop list-databases \
	--connect jdbc:mysql://hdp1:3306/ \
	--username root \
	--password 123456