Sqoopの構成と使用
14241 ワード
一、sqoop.tar圧縮パッケージを指定ディレクトリに解凍する
二、配置Zookeeperを開く クラスタサービスオープン プロファイル(sqoop-env.sh): コピーjdbc駆動sqoopのlibディレクトリ下 配置環境変数 sqoopが接続可能かどうかをテスト 三、ケース
1. RDBMS -> HDFS全て導入 クエリーインポート 導入指定列 sqoopキーワードでクエリーインポートデータをフィルタリング 2. RDBMS --> Hive
3. Hive/HDFS --> RDBMS
4. RDBMS --> HBASE
二、配置
#Set path to where bin/hadoop is available
export HADOOP_COMMON_HOME=/usr/local/hadoop-2.7.3
#Set path to where hadoop-*-core.jar is available
export HADOOP_MAPRED_HOME=/usr/local/hadoop-2.7.3
#set the path to where bin/hbase is available
export HBASE_HOME=/usr/local/hbase-1.3.2
#Set the path to where bin/hive is available
export HIVE_HOME=/usr/local/hive
#Set the path for where zookeper config dir is
export ZOOCFGDIR=/usr/local/zookeeper-3.4.6
export ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.6
cp -a mysql-connector-java-5.1.47-bin.jar /usr/local/sqoop-1.4.7/lib/
//
vim /etc/profile
export SQOOP_HOME=/usr/local/sqoop-1.4.7
export PATH=$PATH:$SQOOP_HOME/bin
//
source /etc/profile
sqoop list-databases --connect jdbc:mysql://hadoop01:3306/metastore_db \
--username root --password root
1. RDBMS -> HDFS
sqoop import
--connect jdbc:mysql://hadoop01:3306/test
--username root
--password root
--table test01
--target-dir /tmp/test01
--delete-target-dir
--num-mappers 1
--fields-terminated-by "\t"
sqoop import
--connect jdbc:mysql://hadoop01:3306/test
--username root
--password root
--target-dir /tmp/test01
--delete-target-dir
--num-mappers 1
--fields-terminated-by "\t"
--query 'select name,sex from test01 where id >= 2 and $CONDITIONS;'
sqoop import
--connect jdbc:mysql://hadoop01:3306/test
--username root
--password root
--target-dir /tmp/test01
--delete-target-dir
--num-mappers 1
--fields-terminated-by "\t"
--columns id, sex
--table test01
sqoop import
--connect jdbc:mysql://hadoop01:3306/test
--username root
--password root
--target-dir /tmp/test01
--delete-target-dir
--num-mappers 1
--fields-terminated-by "\t"
--table test01
--where "id=3"
sqoop import
--connect jdbc:mysql://hadoop01:3306/test
--username root
--password root
--table test01
--num-mappers 1
--hive-import
--fields-terminated-by "\t"
--hive-overwrite
--hive-table test.test02
3. Hive/HDFS --> RDBMS
sqoop export
--connect jdbc:mysql://hadoop01:3306/test
--username root
--password root
--table test01
--num-mappers 1
--export-dir /user/hive/warehouse/test.db/test02
--input-fields-terminated-by "\t"
4. RDBMS --> HBASE
sqoop import
--connect jdbc:mysql://hadoop01:3306/zlh
--username root
--password root
--table t_shop
--columns "id,name,price"
--column-family "infos"
--hbase-create-table
--hbase-row-key "id"
--hbase-table "h_shop"
--num-mappers 1
--split-by id