빅데이터 관리/Hadoop

Hive - 2

2023. 5. 16. 15:40
목차
  1. Hive Tables 이해하기
  2. 외부 테이블 실습
  3. 테이블로 데이터 불러오기

Hive Tables 이해하기

  • hive에서 names 테이블 생성
create table names (id int, name string) ROW 
FORMAT DELIMITED FIELDS TERMINATED BY '\t' 
STORED AS TEXTFILE;
  • 터미널 쉘에서 names.txt 파일 생성
0   Rich
1   Barry
2   George
3   Ulf
4   Danielle
5   Tom
6   manish
7   Brian
8   Mark
  • hadoop fs -put names.txt /warehouse/tablespace/managed/hive/names/ 로 저장
  • 기존에는 비어있던 names 테이블이 (왜인지 모르게 데이터가 깨지긴 하지만) names.txt에 넣은 값이(개수가 같긴 하니까..) 들어감을 볼 수 있음.

  • drop table names;
  • 터미널에서 hadoop fs -ls /warehouse/tablespace/managed/hive/names 를 실행해 보면 아래 그림처럼 해당 names안에 있어야 할 names.txt(데이터 값들) 도 사라졌음을 볼 수 있음.
  • 내부 테이블로 생성하였기에 테이블 삭제시에 HDFS에도 데이터가 삭제된다.

외부 테이블 실습

  • 하둡에 names.txt 파일 넣어주기
hadoop fs -put names.txt /user/root
hadoop fs -ls /user/root
hadoop fs -mkdir hivedemo /user/root
  • 외부 테이블 생성
create external table names (id int, name string) ROW 
FORMAT DELIMITED FIELDS TERMINATED BY '\t' 
STORED AS TEXTFILE LOCATION '/user/root/hivedemo';
  • Hortonworks의 경우 위 명령으로 테이블을 생성하면 권한 에러가 발생한다.
  • /user/root/hivedemo 디렉토리 권한이 root에게 있어 hive 사용자가 접근할 수 있도록 터미널에서 권한 수정하는 명령어가 필요하다.
  • hadoop fs -chmod 777 /user/root/hivedemo
  • 외부 테이블 생성 명령어를 다시 입력하면 정상 생성된다.

테이블로 데이터 불러오기

  • 테이블 만들어놓고 쭉 데이터 밀어넣을때 넣으려는 txt 파일이 테이블과 동일한 구조로 만들어져 있어야 함 
  • names.txt 파일과 /user/root도 권한 부여가 필요함
hadoop fs -chmod 777 /user/root/
hadoop fs -chmod 777 /user/root/names.txt
  • 데이터 불러오기 명령어
load data inpath '/user/root/names.txt' into table names;
  • select 문으로 찍어보면 잘 들어가..는 것 같.. 흠..
  • 왜 그러는지 이유를 발견을 못해서 넘아가겠습니다. externaml을 이해하는 게 목적이니까요...

  • 터미널에서 hadoop fs -ls /user/root/hivedemo로 데이터를 확인해 보면 names.txt가 잘 존재 함을 볼 수 있습니다.

  • 이제 hive로 이동하여 table을 삭제한 후 확인해보면 table이 지워짐을 볼 수 있습니다.
dropt table names;
show tables;

  • 다시 터미널에서 hadoop fs -ls /user/root/hivedemo 로 데이터를 확인해보면 names.txt가 존재하여 table은 지워져도 데이터는 남는 것을 볼 수 있습니다.

'빅데이터 관리 > Hadoop' 카테고리의 다른 글

Spark 설치  (0) 2023.05.19
SPARK 이론  (1) 2023.05.19
Hive - 1  (0) 2023.05.16
PIG 기본명령어 - 6  (0) 2023.05.16
PIG 기본 명령어 - 5  (1) 2023.05.16
  1. Hive Tables 이해하기
  2. 외부 테이블 실습
  3. 테이블로 데이터 불러오기
'빅데이터 관리/Hadoop' 카테고리의 다른 글
  • Spark 설치
  • SPARK 이론
  • Hive - 1
  • PIG 기본명령어 - 6
잘잔디
잘잔디
4학년이 되고 취업 준비를 위해 2023-01-01부터 공부한 내용을 정리한 블로그입니다.
MBCS 공부일지4학년이 되고 취업 준비를 위해 2023-01-01부터 공부한 내용을 정리한 블로그입니다.
잘잔디
MBCS 공부일지
잘잔디
전체
오늘
어제
  • 분류 전체보기 (217)
    • 파이썬 (28)
      • 파이썬 이론 (8)
      • NumPy (3)
      • Pandas (6)
      • 파이썬 시각화 (8)
      • 응용 (2)
    • Java (3)
    • Back (38)
      • DataBase이론 (12)
      • MySQL (2)
      • JSP (8)
      • JSTL (2)
      • Spring (0)
      • Django (8)
      • MongoDB (6)
      • FastAPI (0)
    • Front (8)
      • HTML (3)
      • CSS (2)
      • JS (1)
    • 회고록 (10)
    • 알고리즘 문제 풀이 (95)
      • 알고리즘 이론 공부 (14)
      • 프로그래머스 (69)
      • 백준 (12)
    • 머신러닝 (0)
    • 딥러닝 (0)
    • Git (3)
    • R 프로그래밍 (3)
    • 빅데이터 관리 (16)
      • 리눅스 (4)
      • Hadoop (12)
    • AWS (2)
    • 일상 (10)
      • 책 리뷰 (5)
      • TOEIC (2)
      • 자잘하게 공부한 것들 (2)
    • 사이버보안 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • JavaScript
  • git
  • CSS
  • HTML
  • Java
  • playdata
  • 백준
  • 즐거웠다
  • Database
  • JS
  • 독산역
  • 이중우선순위 큐
  • backend
  • 골드
  • OOP
  • 객체지향
  • web
  • db
  • Encore

최근 댓글

최근 글

hELLO · Designed By 정상우.
잘잔디
Hive - 2
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.