• 티스토리 홈
  • 프로필사진
    홀쑥
  • 방명록
  • 공지사항
  • 태그
  • 블로그 관리
  • 글 작성
홀쑥
  • 프로필사진
    홀쑥
    • 분류 전체보기 (55)
      • Language (14)
        • Java (1)
        • Python (13)
      • DataBase (4)
        • NoSQL (1)
        • RDBMS (3)
      • OS (12)
        • Linux (10)
      • Etc (5)
        • 오류 모음 (5)
      • hadoop ecosystem (9)
        • Hadoop (4)
        • Hive (2)
        • Sqoop (1)
        • Zeppelin (1)
      • Cloud Service (0)
      • ELK STACK (2)
        • ElasticSearch (2)
      • Airflow (0)
      • Infra (0)
        • Docker (0)
        • Kubernetes (0)
      • Algorithm & Data Structure (7)
        • 백준 알고리즘 (6)
  • 방문자 수
    • 전체:
    • 오늘:
    • 어제:
  • 최근 댓글
      등록된 댓글이 없습니다.
    • 최근 공지
        등록된 공지가 없습니다.
      # Home
      # 공지사항
      #
      # 태그
      # 검색결과
      # 방명록
      • [Sqoop] 설치 및 시작
        2020년 06월 25일
        • 홀쑥
        • 작성자
        • 2020.06.25.:24

        하둡 기준 import, export

         

        스쿱 다운로드

         

        Sqoop은 1버전이 복잡해서 간소한 것이 2버전이라 1버전으로

        dn01의 root 계정에서

        # cd /tmp

        # wget http://mirror.apache-kr.org/sqoop/1.4.7/sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz

         

        # tar xzvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz

        # mkdir -p /opt/sqoop/1.4.7

        # mv sqoop-1.4.7.bin__hadoop-2.6.0/* /opt/sqoop/1.4.7/

        # ln -s /opt/sqoop/1.4.7 /opt/sqoop/current

         

         

        MYSQL Connector 다운로드 및 sqoop 의  lib로 복사

        sqoop은 데이터베이스 드라이버가 필요하기 때문에 Connector 필요함

        # cd /tmp

        # wget http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.38.tar.gz

        # tar xzvf mysql-connector-java-5.1.38.tar.gz

        # cd mysql-connector-java-5.1.38

        # mv mysql-connector-java-5.1.38-bin.jar /opt/sqoop/current/lib/

        # cd ~

         

        소유권 hadoop에게 넘겨주기

        # chown -R hadoop:hadoop /opt/sqoop/

        # su - hadoop

         

        hadoop 계정에서 환경변수 설정

        # vi ~/.bash_profile

        맨 밑에 추가

        #### SQOOP 1.4.7 ######################
                export SQOOP_HOME=/opt/sqoop/current
                export PATH=$PATH:$SQOOP_HOME/bin
        #### SQOOP 1.4.7 ######################

        저장하고 확인하기 이후 적용

        # source ~/.bash_profile

         

        스쿱 환경설정

        # cd $SQOOP_HOME/conf

        # mv sqoop-env-template.sh sqoop-env.sh

        # vi sqoop-env.sh

        export HADOOP_COMMON_HOME=/opt/hadoop/current

        export HADOOP_MAPRED_HOME=/opt/hadoop/current

        export HIVE_HOME=/opt/hive/current

        맞는 값 주석 풀고 입력

        저장 후 확인

         

        스쿱 설치 확인

        # sqoop-version

         

        스쿱 라이브러리를 하둡에 복사

        # cd $SQOOP_HOME

        # cp sqoop-1.4.7.jar /opt/hadoop/current/share/hadoop/tools/lib/

        mariadb active인지 확인

        # systemctl status mariadb.service

         

        dn02에서 

        # ssh dn01

        # mysql -u root -p

        > create database sqoopdemo;

        > use sqoopdemo;

        create table departments(
        department_id int(10) unsigned not null,
        department_name varchar(30) not null,
        primary key (department_id));

        > show tables;

        insert into departments (department_id,department_name) values
        (1,"Fitness"),(2,"Footware"),(3,"Apparel"),(4,"Golf"),(5,"Outdoor"),(6,"Fanshop");

        dn01 에서

        RDBMS -> Hadoop (import)
        -- 1) 데이터베이스명 가져오기 (hive 계정에 접속)
        sqoop list-databases --connect jdbc:mysql://dn01 --username hive --password hive

        -- 2) 테이블명 가져오기 (hive 계정에 접속)
        sqoop list-tables --connect jdbc:mysql://dn01/sqoopdemo --username hive --password hive

        -- 3) 테이블의 데이터를 HDFS에 가져오기(**)
        sqoop import --connect jdbc:mysql://dn01/sqoopdemo --table departments --username hive --password hive

        # hdfs dfs -ls /user/hadoop

        분산되어 저장되었다.
        한번에 보기

        Hadoop -> RDBMS (export)

        RDBMS에 형식에 맞는 테이블 구조가 존재해야함

        dn02의 mariadb에서

        > create table dept like departments;

        sqoop export --connect jdbc:mysql://dn01/sqoopdemo --table dept --username hive --password hive --export-dir /user/hadoop/departments

        성공적으로 들어옴

        dept테이블 hadoop으로

        특정 값만 import하기

        > insert into dept values (7,"IT")

        import

        결과

        다음글
        다음 글이 없습니다.
        이전글
        이전 글이 없습니다.
        댓글
      조회된 결과가 없습니다.
      스킨 업데이트 안내
      현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
      ("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)
      목차
      표시할 목차가 없습니다.
        • 안녕하세요
        • 감사해요
        • 잘있어요

        티스토리툴바