2020년 10월 6일 화요일

Apache Sqoop [2] - 유저가이드1 [ Sqoop Tools ]


[ 1. Sqoop Tools ]


스쿱은 도구모음이다. 커맨드라인에 커맨드와 인자를 입력하여 사용한다. 다른 프로그램없이 자체 스쿱소스로 컴파일 될 경우, bin/sqoop 프로그램을 실행하여 sqoop을 사용할 수 있다. 스쿱 패키지 배포(apache bigtop과 함께 제공된 RPM등) 사용자는 프로그램을 /usr/bin/sqoop으로 설치하게 된다. 

Sqoop의 사용설명서는 'help'로 볼 수 있다.

$sqoop help

Available commands:
  codegen            Generate code to interact with database records
  create-hive-table  Import a table definition into Hive
  eval               Evaluate a SQL statement and display the results
  export             Export an HDFS directory to a database table
  help               List available commands
  import             Import a table from a database to HDFS
  import-all-tables  Import tables from a database to HDFS
  import-mainframe   Import datasets from a mainframe server to HDFS
  job                Work with saved jobs
  list-databases     List available databases on a server
  list-tables        List available tables in a database
  merge              Merge results of incremental imports
  metastore          Run a standalone Sqoop metastore
  version            Display version information

특정 인자에 대한 설명은 아래와 같이 메뉴얼을 확인할 수 있다.

$ sqoop help import



1-1. 커맨드별칭(Using Command Aliases)

sqoop import를 sqoop-import로, sqoop export를 sqoop-export 별칭으로 사용가능하다.



1-2. 하둡 설치 제어 (Controlling the hadoop Installation)

스쿱을 통해 하둡 bin/hadoop 스크립트를 실행 할 수 있다. 여러 개의 하툽이 설치되어 있는 경우 $HADOOP_CONMANY_HOME 또는 $HADOOP_MAPRED_HOME 환경변수를 이용해 하둡을 선택하여 설치한다.

예시 :

$ HADOOP_COMMON_HOME=/path/to/some/hadoop \
  HADOOP_MAPRED_HOME=/path/to/some/hadoop-mapreduce \
  sqoop import --arguments...

또는 :

$ export HADOOP_COMMON_HOME=/some/path/to/hadoop
$ export HADOOP_MAPRED_HOME=/some/path/to/hadoop-mapreduce
$ sqoop import --arguments...



1-3. 인수사용 ( Using Generic and Specific Arguments )

* 일반 인수

  • --connect <jdbc-uri> : 접속할 JDBC 주소
  • --connect-manager <class-name> : 사용할 연결 관리자
  • --driver <class-name> : JDBC driver class 지정
  • --hadoop-mapred-home <dir> : Override $HADOOP_MAPRED_HOME
  • --help : 도움말
  • --password-file : 인증관련 파일 경로
  • -P : 콘솔에서 비밀번호를 읽을 때
  • --password <password> : 인증패스워드 SET
  • --username <username> : 유저이름 SET
  • --hadoop-home <dir> : Override $HADOOP_HOME

* 하둡 관련 인수

  • -conf : 특성 어플리케이션 설정파일 지정
  • -D <property=value> : 주어진 property-value를 사용한다.
  • -fs <local | namenode:port> : 네임노드 지정
  • -files <comma separated list of files> :  지정할 맵리듀스 클러스터 파일
  • -libjars <comma separated list of jars> : 지정할 jar파일 경로
  • -archives <comma separated list of archives> : 지정할 아카이브


-conf, -D와 같은 인수는 --connect와 같은 인수 앞에 같이 사용 할 수 있다. 하둡인수는 단일 대쉬문자(-)로 표현되고 도구별 인수는 (--)더블 대쉬로 표현된다.

-files, -libjars, -archives 인수는 sqoop과 함께 사용되지 않지만, 하둡 내부 인수로 시스템 일부에 포함되어있다. 



1.4 옵션 파일을 이용한 명령어

$sqoop import --connect jdbc:mysql://localhost/db --username john --table TT

$sqoop --options-file /user/home/work/import.txt --table TT


*import.txt 내용

import
--connect
jdbc:mysql://localhost/db
--username
foo






댓글 없음:

댓글 쓰기