--- title: "Hive External Table로 json 파일 연동" slug: "hadoop-vpc-use-ex-json" updated: 2026-08-20T09:03:19Z published: 2026-08-20T09:03:19Z canonical: "guide-gov.ncloud-docs.com/hadoop-vpc-use-ex-json" --- > ## Documentation Index > Fetch the complete documentation index at: https://guide-gov.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # Hive External Table로 json 파일 연동 VPC 환경에서 이용 가능합니다. Hive External Table은 Hive에서 테이블 생성 시 External 키워드로 생성하는 테이블입니다. Hive External Table은 `hive.metastore.warehouse.dir` 속성이 가리키는 디렉터리에 데이터를 저장하지 않으며, 테이블 생성 시 설정한 경로에 데이터를 저장합니다. 이미 Hadoop에 있는 데이터를 기반으로 테이블을 만들기 때문에 스키마만 정해주면 생성할 수 있습니다. 참고 [Hive 사용](/docs/chadoop-app1-vpc) 가이드에서도 Hive External Table에 관련된 예제를 볼 수 있습니다. 이 가이드에서는 json 데이터를 Cloud Hadoop에서 제공하는 Hive의 External Table로 연동하여 사용하는 방법을 설명합니다. ## 샘플 데이터 준비 샘플 데이터를 준비하는 방법은 다음과 같습니다. 1. hive 사용자로 전환시켜 주십시오. ``` $ sudo su - hive ``` 1. [해당 데이터](https://cdn.document360.io/f2d93c92-8957-408f-94df-b9b370f76a32/Images/Documentation/bookstat.json)를 다운로드해 주십시오. 참고 해당 데이터는 ndjson(Newline Delimited JSON) Data형태입니다. ## HDFS에 json 파일 업로드 HDFS json 파일 업로드하는 방법은 다음과 같습니다. 1. HDFS에 디렉터리를 생성하십시오 ``` $ hdfs dfs -mkdir /user/hive/bookstat ``` 1. HDFS 에 json 파일을 업로드하십시오. ``` $ hdfs dfs -put bookstat.json /user/hive/bookstat ``` 1. HDFS 파일 리스트를 확인하십시오. ``` $ hdfs dfs -ls -R /user/hive/bookstat -rw-r--r-- 2 hive hdfs 193 2023-06-28 14:41 /user/hive/bookstat/bookstat.json ``` ## json포맷을 사용하는 Hive External Table 생성 Hive External Table을 생성하는 방법은 다음과 같습니다. 1. Cloud Hadoop 클러스터의 엣지 노드에 SSH로 접속해 주십시오. - 클러스터 노드에 SSH로 접속하는 방법에 대한 자세한 내용은 [SSH로 클러스터 노드 접속](/docs/hadoop-chadoop-3-2-vpc) 가이드를 참고해 주십시오. 2. Hive 클라이언트 명령어를 이용하여 External Table을 생성합니다. ``` $ hive ``` ``` hive> CREATE DATABASE book; ``` ``` hive> USE book; ``` ``` hive> CREATE EXTERNAL TABLE IF NOT EXISTS bookstat_serde1 ( statTime STRING, bizCode STRING, saleInfo STRUCT < bookName:STRING, saleCount:INT > ) ROW FORMAT SERDE 'org.apache.hive.hcatalog.data.JsonSerDe' STORED AS TEXTFILE LOCATION '/user/hive/bookstat' ; ``` - 데이타베이스 생성 - 생성한 데이타베이스 사용 - 테이블 생성 ## json포맷을 사용하는 Hive External Table 조회 - 테이블이 생성되면 `SELECT` 쿼리를 수행하여 데이터를 확인할 수 있습니다. - 테이블 조회 ``` hive> select * from bookstat_serde1; OK 20130710180059 BOOK {"bookname":"book61","salecount":749} 20230628140059 BOOK {"bookname":"book800","salecount":899} ``` ## Hive External Table 삭제 Hive External Table을 삭제하는 방법은 다음과 같습니다. 1. 생성된 Hive External Table 다음 명령어를 사용하여 삭제해 주십시오. - 아래는 앞서 생성한 Hive External Table(bookstat_serde1)을 삭제하는 예시입니다. ``` DROP TABLE bookstat_serde1; ``` 1. 삭제된 테이블에 SELECT 쿼리를 수행해 주십시오. 에러가 발생하여 정상적으로 테이블이 삭제된 것을 확인할 수 있습니다. 또한 Show Tables를 통해 테이블 삭제 여부를 확인하실 수 있습니다. - SELECT 쿼리 이용 ``` SELECT * FROM bookstat_serde1; Error: Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:14 Table not found 'bookstat_serde1' (state=42S02,code=10001) ``` - SHOW TABLES로 테이블 목록 확인 ``` SHOW TABLES; ```