Help us understand the problem. What is going on with this article?

がんばってEMRからSqoopつかってRDS(Mysql)へエクスポート

More than 5 years have passed since last update.

かなり疲れた...

sqoopって

sqoopってのはHDFS....まぁこちらを読んでもらうのが一番良い
http://www.ne.jp/asahi/hishidama/home/tech/apache/sqoop/

さて早速インストール。

ここを参考にね。
http://blog.kylemulka.com/2012/04/how-to-install-sqoop-on-amazon-elastic-map-reduce-emr/

bootstrapとしてやるんじゃなくとりあえず試したいのでガスガスやってみる.
注意としては、Sqoopダウンロードしたものにsqoop-1.4.5.jarが含まれてないのもあるので
ダウンロードするときはsqoop-x.x.x.bin__hadoop-xxx-yyy.tar.gzこっちをダウンロードする、

$ cd

# sqoopのダウンロード
$ wget http://ftp.jaist.ac.jp/pub/apache/sqoop/1.4.5/sqoop-1.4.5.bin__hadoop-2.0.4-alpha.tar.gz
$ tar -xzf sqoop-1.4.5.bin__hadoop-2.0.4-alpha.tar.gz

# mysql-connector-javaだけど
# EMR+Hive環境なら、すでにあるからコピーしちゃう
$ cp ~/hive/lib/mysql-connector-java-5.1.30.jar sqoop-1.4.5.bin__hadoop-2.0.4-alpha/lib/

これでセットアップ自体はOK
ここからが疲れた

sqoop実行できない!

これはsqoop-1.4.5.jarが含まれていなかったから。
ダウンロードしたものが悪かった。
さっき書いたけどsqoop-x.x.x.bin__hadoop-xxx-yyy.tar.gzこっち!

HDFSを指定してORC形式のファイルはエクスポートできない!

どうも、区切り文字付きのtext形式、Avro、SequenceFilesこいつらに対応していて、
それ以外は対応していない...

ここでHCatalogの出番。
http://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.1.3-Win/bk_dataintegration/content/ch_using-sqoop-hcat-integration.html

$ export HCAT_HOME=/home/hadoop/hive/hcatalog 

こいつを実行してから

$ ./sqoop-1.4.5.bin__hadoop-2.0.4-alpha/bin/sqoop export --connect jdbc:mysql://mysql-host:3306/test --username admin --password admin --table mysql_table --hcatalog-table hive_table 

partitionはStringだけ

INT型でpartitionしてたのでStringに変更。。。

これで、やっとexportが成功する。
Avro、SequenceFilesとかはデリミタの設定とかしなくていいからとっても助かる。
実行前に特定のレコードのdeleteとかはsqoopではできないのかな?

このあとは、これをbootstrap化してあげる。

4cteru
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away