"Presto & Apache Superset Docker 설치 가이드" (28 characters, und
AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

Presto와 Apache Superset을 Docker로 설정하는 실습 가이드

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

개발 툴

대상자

  • 데이터 엔지니어, BI 전문가, 개발자
  • 중간~고급 수준 (Docker 및 데이터 툴 사용 경험 필요)

핵심 요약

  • Docker Compose를 사용하여 Presto와 Apache Superset을 통합한 분석 스택 구성
  • MySQL 및 MongoDB 데이터 소스를 Presto 카탈로그에 연결하는 방법
  • Superset에 Presto 드라이버(pyhive[presto]) 설치 및 데이터베이스 연결 설정
  • docker-compose up -d 명령어로 모든 서비스 자동 시작

섹션별 세부 요약

1. 프로젝트 구조 및 Docker Compose 설정

  • docker-compose.yml 파일에서 Superset, PostgreSQL, MySQL, MongoDB, Presto 서비스 정의
  • Superset 환경 변수 설정 (SUPERSET_SECRET_KEY, PYTHONUNBUFFERED)
  • PostgreSQL 데이터베이스 컨테이너 설정 (POSTGRES_DB, POSTGRES_USER)
  • Presto 컨테이너에 MySQL/MongoDB 카탈로그 파일 마운트

2. Presto 카탈로그 파일 생성

  • MySQL 연결: mysql.properties 파일에서 connector.name=mysql, connection-url=jdbc:mysql://mysql:3306 설정
  • MongoDB 연결: mongodb.properties 파일에서 connector.name=mongodb, mongodb.seeds=mongodb:27017 설정
  • 카탈로그 파일 경로: ./presto/etc/catalog/

3. 서비스 실행 및 상태 확인

  • docker-compose up -d 명령어로 모든 컨테이너 자동 시작 (3~5분 소요)
  • docker ps 명령어로 컨테이너 상태 확인
  • Superset: http://localhost:8088/, Presto: http://localhost:8081/ 접속

4. Superset에 Presto 연결

  • Superset 컨테이너에 접속: docker exec -it superset bash
  • Presto 드라이버 설치: pip install "pyhive[presto]"
  • Superset 재시작: docker restart superset
  • 데이터베이스 연결: Settings -> Database Connections -> Database에서 Presto 연결 확인

5. SQL 쿼리 실행 및 검증

  • Superset에서 MySQL 및 MongoDB를 카탈로그로 인식
  • Presto 쿼리 실행: SELECT * FROM mysql.testdb.table
  • 실행 결과 확인: 쿼리 성공 시 MySQL/MongoDB 데이터 표시

결론

  • Presto와 Superset 통합 시 docker-compose.yml 파일의 서비스 정의와 카탈로그 설정이 핵심
  • Superset에서 Presto 연결 시 pyhive[presto] 패키지 설치 필수
  • 서비스 실행 후 docker ps 명령어로 상태 확인 및 포트(8088, 8081) 접속 테스트