스키마 구현
이제 스키마를 설계했으므로 Hive 에서 이를 구현할 차례입니다. 먼저, Hive 서버를 시작해 보겠습니다.
hive
Hive 서버가 실행되면 스키마 정의 스크립트를 실행할 수 있습니다.
SOURCE /home/hadoop/academy_data/academy_schema.hql;
이 명령은 앞에서 정의한 스키마를 기반으로 academy 데이터베이스와 books, scrolls, artifacts 테이블을 생성합니다.
EXIT;
다음으로, 샘플 데이터를 테이블에 채워 넣겠습니다. academy_data 디렉토리에 academy_data.txt라는 새 파일을 생성합니다.
touch academy_data.txt
텍스트 편집기에서 파일을 열고 다음 데이터를 추가합니다.
1,The Sorcerer's Stone,J.K. Rowling,1997,Fantasy
2,Scroll of Levitation,Merlinious the Wise,1023,Charms
3,Ancient Wand,A powerful wand crafted by the Elven Wandmakers,Elven Realm,2500
4,Fantastic Beasts and Where to Find Them,Newt Scamander,2001,Bestiary
5,Scroll of Healing,Gwendolyn the Healer,1157,Healing
6,Enchanted Mirror,A mirror that reveals one's true self,Avalon,5000
파일을 저장하고 텍스트 편집기를 종료합니다.
이제 데이터를 해당 테이블에 로드해 보겠습니다.
hive
USE academy;
LOAD DATA LOCAL INPATH '/home/hadoop/academy_data/academy_data.txt' OVERWRITE INTO TABLE books;
LOAD DATA LOCAL INPATH '/home/hadoop/academy_data/academy_data.txt' OVERWRITE INTO TABLE scrolls;
LOAD DATA LOCAL INPATH '/home/hadoop/academy_data/academy_data.txt' OVERWRITE INTO TABLE artifacts;
이러한 명령은 academy_data.txt 파일의 데이터를 해당 테이블에 로드합니다.
마지막으로, 데이터가 올바르게 로드되었는지 확인해 보겠습니다.
SELECT * FROM books;
SELECT * FROM scrolls;
SELECT * FROM artifacts;
각 테이블에 대해 해당 데이터가 표시되어야 합니다.