[DevCourse] 10-4 Superset 배워보기

한상우·2024년 1월 25일

Data Science Devcourse

목록 보기
18/25

다양한 시각화 툴 소개

  • 대시보드, 혹은 BI(Business Intelligence) 툴이라고 부르기도 한다

  • 중요한 데이터 포인트들(KPI, 각종 지표)를 계산/분석/시각화 해주는 도구

  • Excel, Google Spreadsheet : 가장 많이 사용되며 가장 쉬운 시각화 툴

  • Python : EDA에 더 적합함

  • Power BI

  • Apache Superset

  • AWS Quicksight

  • Looker

    • LookML이라는 자체언어를 사용. 처음 대시보드를 만들 때 어렵지만, 유지/보수가 쉽다는 장점이 있음. 즉, 전문 인력이 없어도 유지/보수를 할 수 있다.
  • Tableau

    • 유지/보수가 어려우며 배우기 어렵다. 즉, 전문 인력이 있어야 한다
  • ReDash

    • SQL로 query를 작성할 수 있지만, 몰라도 사용 가능하다.
  • Mode Analytics

    • SQL, R, Python을 기반으로 데이터 분석이 가능하다. 조금 더 전문적인 인력을 위한 도구이며, KPI 대시보드라기 보다는 EDA 툴에 가깝다
  • 보통 Looker / Tableau를 많이 사용한다

  • 데이터 민주화(self-service dashboard) 관점에서 봤을때는 Looker가 승리

Superset 소개

  • 오픈소스이며, 다양한 형태의 시각화 및 손쉬운 인터페이스를 지원한다
  • 대시보드 공유 기능이 있다
  • 꽤 높은 수준의 보안 및 권한 제어 기능을 제공한다
  • SQLAlchemy와 연동이 가능하다
  • Druid.io와 연동하여 실시간 데이터의 시각화도 가능하다
  • API를 제공하며, 플러그인 아키텍쳐 제공으로 인해 확장성이 좋다
  • Superset의 용어 설명
    • Database : 관계형 데이터베이스 ex. Redshift
    • Dataset : 테이블
    • Chart : 하나의 시각화
    • Dashboard : 하나 이상의 Chart로 구성된 시각화

Google Spreadsheet로 시각화 연습해보기

  • 저번 시간에 사용한 Snowflake에서 "COHORT_SUMMARY"라는 테이블을 만들어준다.

  • 새로운 worksheet를 사용해 원하는 형태를 갖는 csv파일로 만들어 준 뒤 다운받는다.

  • Spreadsheet에서 해당 데이터를 pivot table로 시각화 해준다.

Superset 실습 준비 (Docker 설치 및 Redshift 연결 설정)

  • 실습을 진행할 Table은 아래와 같다

    • raw_data.user_session_channel
    • raw_data.session_timestamp
    • raw_data.session_transaction
    • analytics.user_session_summary
    • analytics.cohort_summary
  • Docker를 이용하여 설치하는 방법과 Preset.io에 있는 서비스로 사용하는 방법이 있다.

  • Preset.io의 경우는 회사 이메일이 있는 경우에만 사용 가능하기 때문에, Docker로 실습 진행

    • Docker : OS나 설치된 software에 dependent하지 않게 가상환경 위에서 특정 프로그램을 실행할 수 있도록 도와주는 오픈소스 플랫폼. 특정 프로그램에 대해 Docker Image라는 패키지를 만들어 다른 사람들과 공유가 가능하다.

MAU 차트 만들어 보기

  • 우선 실습용 Redshift DB에 연결한다

  • 필요한 Dataset을 추가해준다

  • Superset에서 사용 가능한 차트의 종류는 아래와 같이 다양하다

  • line chart를 사용하여 MAU 차트를 만들어보자

  • dimension (채널)을 추가한 차트는 아래와 같다

Cohort 차트 만들어 보고 Dashboard 만들어 보기

  • 필요한 데이터셋을 추가한 후 pivot chart를 만들어준다

  • 앞에서 만든 MAU 차트 및 Cohort 차트로 하나의 DashBoard를 만든다

profile
개인 공부용 블로그입니다

0개의 댓글