Hadoop 7. Sqoop

skh951225·2023년 4월 12일
0

Hadoop 입문

목록 보기
7/14

Sqoop 개요

What is Sqoop

  • SQL to Hadoop
  • Hadoop과 관계형 데이터베이스 간에 데이터를 전송할 수 있도록 설계된 오픈소스 소프트웨어
  • 데이터를 importing, exporting하는데 MapReduce가 사용된다.
  • -m 옵션으로 job을 진행하는데 쓰일 mapper의 수를 제한할 수 있다.

Import

  • localhost에게 movielens database에 대한 모든 권한 부여
    GRANT ALL PRIVILEGES ON movielens.* to ''@'localhost';
  • Import data from MySQL to HDFS
sqoop import --connect jdbc:mysql://localhost/movielens --driver
com.mysql.jdbc.Driver --table movies
  • Import data from MySQL directly into Hive
sqoop import --connect jdbc:mysql://localhost/movielens --driver
com.mysql.jdbc.Driver --table movies --hive-import
  • Incremental imports
    • Hadoop과 database를 주기적으로 동기화
    • --check-column, --last-value
    • --check-column 으로 지정된 colum의 값이 --last-value에 지정된 값보다 큰 행만 import

Export

  • Export data from Hive to MySQL
sqoop export --connect jdbc:mysql://localhost/movielens -m 1 --driver
com.mysql.jdbc.Driver --table exported_movies --export-dir
/apps/hive/warehouse/movies --input-fields-terminated-by '\0001‘
  • 타겟 table이 MySQL에 존재한 상태여야함, 여기서는 exported_movies
  • --input-fields-terminated-by 는 delimeter를 통해 구분되는지, 여기서는 ASCII value가 1인 것

0개의 댓글