Apache Sqoop adalah alat yang dirancang untuk mentransfer data massal secara efisien antara Apache Hadoop dan penyimpanan data terstruktur seperti database relasional. Misalnya MySQL, Oracle, Microsoft SQL Server. Anda dapat mengimpor dan mengekspor data antara database relasional dan hadoop. Anda juga dapat mengimpor/mengekspor dari / ke sumber data semi terstruktur, misalnya HBase dan Cassandra (database NoSQL). Sqoop dikirimkan sebagai satu paket biner yang menggabungkan dua bagian terpisah - klien dan server.
- Server- Anda perlu menginstal server pada satu node di cluster Anda. Node ini kemudian akan berfungsi sebagai titik masuk untuk semua klien Sqoop.
- Klien- Klien dapat diinstal pada sejumlah mesin.
Di bawah ini adalah langkah-langkah untuk men-setup Apache Sqoop di Ubuntu 16.04. Unduh paket Sqoop yang diperlukan dan ini akan memiliki sqoop-1.99.7-bin-hadoop200.tar.gz
berkas.
1) Unduh Sqoop menggunakan wget
Unduh Sqoop menggunakan perintah di bawah ini pada sistem file Anda.
wget http://archive.apache.org/dist/sqoop/1.99.7/sqoop-1.99.7-bin-hadoop200.tar.gz
Periksa apakah file telah diunduh dengan benar.
2) Ekstrak file tar Sqoop
Ekstrak file yang diunduh.
tar -xvf sqoop-1.99.7-bin-hadoop200.tar.gz
Periksa apakah file telah diekstrak dengan benar.
3) Pindahkan Direktori Sqoop
Pindahkan direktori sqoop ke /usr/lib/
sudo mv sqoop-1.99.7-bin-hadoop200 /usr/lib/
Server Sqoop bertindak sebagai klien Hadoop, oleh karena itu perpustakaan Hadoop (file jar Benang, Mapreduce, dan HDFS) dan file konfigurasi (situs inti.xml, situs peta.xml, ...) harus tersedia di node ini.
4) Setel Variabel Lingkungan Hadoop dan Sqoop
Anda harus mengatur variabel lingkungan Hadoop di file .bashrc.
# Set Hadoop-related environment variables
export HADOOP_HOME=$HOME/hadoop-2.7.3
export HADOOP_CONF_DIR=$HOME/hadoop-2.7.3/etc/hadoop
export HADOOP_MAPRED_HOME=$HOME/hadoop-2.7.3
export HADOOP_COMMON_HOME=$HOME/hadoop-2.7.3
export HADOOP_HDFS_HOME=$HOME/hadoop-2.7.3
export HADOOP_YARN_HOME=$HOME/hadoop-2.7.3
Juga, atur variabel lingkungan sqoop di file .bashrc.
sudo gedit .bashrc
Letakkan baris di bawah ini dalam file .bashrc.
ekspor SQOOP_HOME=/usr/lib/sqoop-1.99.7-bin-hadoop200 ekspor PATH=$PATH:$SQOOP_HOME/bin ekspor SQOOP_CONF_DIR=$SQOOP_HOME/conf ekspor SQOOP_CLASS_PATH=$SQOOP_CONF_DIR
Gunakan perintah di bawah ini untuk menerapkan perubahan.
source .bashrc
5) Salin File Jar yang Diperlukan ke Direktori lib Server Sqoop
Salin hadoop-common, hadoop-mapreduce, hadoop-hdfs, hadoop-yarn jars ke /usr/lib/sqoop-1.99.7-bin-hadoop200/server/lib
(direktori lib server sqoop). Di bawah ini adalah jalur dari mana Anda perlu menyalin semua toples ke direktori lib server sqoop.
/home/ubuntu/hadoop-2.7.3/share/hadoop/common /home/ubuntu/hadoop-2.7.3/share/hadoop/common/lib /home/ubuntu/hadoop-2.7.3/share/hadoop/hdfs /home/ubuntu/hadoop-2.7.3/share/hadoop/hdfs/lib /home/ubuntu/hadoop-2.7.3/share/hadoop/mapreduce /home/ubuntu/hadoop-2.7.3/share/hadoop/mapreduce/lib /home/ubuntu/hadoop-2.7.3/share/hadoop/yarn /home/ubuntu/hadoop-2.7.3/share/hadoop/yarn/lib
6) Edit core-site.xml
Server Sqoop perlu menyamar sebagai pengguna untuk mengakses HDFS dan sumber daya lain di dalam atau di luar cluster sebagai pengguna yang mulai diberi pekerjaan daripada pengguna yang menjalankan server. Anda perlu mengonfigurasi core-site.xml Hadoop dan menambahkan 2 properti di bawah ini.
<property>
<name>hadoop.proxyuser.ubuntu.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.ubuntu.groups</name>
<value>*</value>
</property>
7) Inisialisasi Repositori Metadeta
Repositori metadata perlu diinisialisasi sebelum memulai server Sqoop 2 untuk pertama kalinya.
./bin/sqoop2-tool upgrade
8) Mulai Server Sqoop
Mulai server sqoop.
./bin/sqoop2-server start
Periksa apakah layanan server sqoop telah dimulai.
jps
9) Mulai Klien Sqoop
Cukup salin artefak distribusi Sqoop pada mesin target dan unzip di lokasi yang diinginkan dan Anda dapat memulai klien Anda. Saya menggunakan mesin yang sama dengan klien juga. Mulai klien Sqoop
./bin/sqoop2-shell
10) Unduh Konektor RDBMS
Unduh konektor MySQL, Oracle dan SQL Server menggunakan tautan di bawah ini. Konektor ini diperlukan untuk membuat koneksi antara Sqoop dan RDBMS.
Konektor MySQL:Unduh
Konektor Oracle:Unduh
Konektor Microsoft SQL Server :Unduh
Periksa apakah semua konektor telah diunduh.
ls Downloads/
11) Setel Variabel Lingkungan untuk menggunakan Konektor RDBMS
Pindahkan semua konektor ke direktori dan setel direktori tersebut sebagai variabel lingkungan.
sudo mkdir -p /var/lib/sqoop2/
sudo chmod 777 /var/lib/sqoop2/
mv Downloads/*.jar /var/lib/sqoop2/
ls -l /var/lib/sqoop2/
export SQOOP_SERVER_EXTRA_LIB=/var/lib/sqoop2/
Kesimpulan
Voila! Anda telah berhasil mengatur Apache Sqoop di Ubuntu 16.04. Sekarang Anda siap untuk mengimpor/mengekspor data menggunakan Sqoop. Langkah selanjutnya adalah menggunakan salah satu konektor RDBMS dan mengimpor/mengekspor data dari RDBMS ke HDFS atau HDFS ke RDBMS.