Presto로 Hive Warehouse 데이터 분석
  • PDF

Presto로 Hive Warehouse 데이터 분석

  • PDF

VPC 환경에서 이용 가능합니다.

이 가이드에서는 Presto의 Hive Connector를 사용하여 Hive data warehouse에 저장한 데이터를 분석하는 방법을 설명합니다.

아키텍처

Presto는 Interactive Query 용도로, Hive는 위주로 사용합니다. Oozie, Airflow와 같은 애플리케이션을 사용해서 배치 작업을 스케줄링할 수 있습니다.

Presto는 Connector를 사용해서 다양한 데이터 소스에 접근할 수 있을 뿐만 아니라, 하나의 쿼리에서 여러 데이터 소스에 질의할 수 있습니다. Hive Connector를 사용하면, Presto는 Hive metadata와 warehouse에 저장된 데이터만 사용하고 HiveQL이나 Hive의 쿼리 실행 엔진(MapReduce)는 사용하지 않습니다.

chadoop-4-8-001_ko.png

Presto connector 구성

Ambari UI 페이지에서 Presto connector 관련 구성 설정을 변경할 수 있습니다.
Ambari UI 접속 및 사용에 대한 자세한 내용은 Ambari UI를 참고해 주십시오.

Presto의 connector 구성을 변경하는 방법은 다음과 같습니다.

  1. Ambari UI에 접속한 후 Presto > Configs > Advanced connectors.properties를 클릭해 주십시오.
  2. 구성 설정 화면에서 connectors.to.add에는 추가할 connector, connectors.to.delete에는 삭제할 connector를 입력한 후 [Save] 버튼을 클릭해 주십시오.

chadoop-4-8-002_ko.png

  • Presto는 사용할 Connector 개체마다 /etc/presto/catalog 아래에 config 파일 {connector-name}.propertie이 필요합니다. 따라서 여러 개의 Hive 클러스터를 Presto와 연동하려면, 그 클러스터마다 각각 config 파일이 필요합니다.

connector-name-1.properties, connector-name-2.properties 파일을 만들려면 connectors.to.add에 다음과 같이 설정해 주십시오.

    ```json
    {"connector-name-1":["key1=value1",
            "key2=value2",
            "key3=value3"],
    "connector-name-2": ["key1=value1"]
            }
    ```

이 가이드 예시에서는 Hive Connector를 추가해야 하므로, connectors.to.add에 아래와 같이 입력해 주십시오.

{"hive":["connector.name=hive-hadoop2",
        "hive.metastore.uri=thrift://<METASTORE-HOST-IP>:9083",
        "hive.config.resources=/etc/hadoop/conf/core-site.xml,/etc/hadoop/conf/hdfs-site.xml",
        "hive.s3.use-instance-credentials=false",
        "hive.s3.aws-access-key=<API-ACCESS-KEY>",
        "hive.s3.aws-secret-key=<API-SECRET-KEY>",
        "hive.s3.endpoint=https://kr.object.ncloudstorage.com"]
        }
  1. 서비스를 재시작해 새로운 구성을 반영해 주십시오.
참고

Hadoop 구성파일(/etc/hadoop/conf/core-site.xml, /etc/hadoop/conf/hdfs-site.xml)이 Presto를 실행하는 노드에 존재해야 합니다.

참고

Presto 구성(configuration)에 대한 자세한 내용은 Presto Documentation을 참조해 주십시오.

Hive 테이블 쿼리 실행

Hive 테이블 쿼리를 실행하는 방법은 다음과 같습니다.

  1. Presto CLI 컴포넌트가 설치된 노드에 접속한 후 아래와 같이 CLI를 실행해 주십시오.

     ```
     /usr/lib/presto/bin/presto-cli --server <COORDINATOR-HOST-IP>:8285 --catalog hive --schema default
     ```
    
  2. Hive의 default 데이터베이스 안에 있는 테이블을 대상으로 쿼리를 수행한 후 결과를 확인해 주십시오.(테이블 예: ')

chadoop-4-8-003_ko.png

chadoop-4-8-004_ko.png


이 글이 도움이 되었나요?