데이터분석

44. 다양한 시각화 툴

장수우 2024. 1. 30. 19:31
학습 주제
  • 다양한 시각화 툴 소개
  • Superset 소개
  • Superset으로 만드려는 대시보드 소개
  • Superset 설치 방법
  • Preset 설정
  • Superset을 Docker로 설치
  • Redshift 설정하고 MAU 차트 만들기
  • Cohort 차트 만들고 대시보드 만들기
주요  학습 내용
  • 시각화툴이란?
    • 대시보드 혹은 BI(Business Intelligence)툴이라고 부르기도 한다
    • KPI, 지표, 중요한 데이터 포인트들을 데이터기반으로 계산 / 분석 / 표시해주는 툴
    • 결국은 결정권자들로 하여금 흔히 이야기하는 데이터 기반 의사결정을 가능하게 한다
      - 데이터 기반 결정
      - 데이터 참고 결정
  • 다양한 툴
    1. Excel, Google Spreadsheet: 사실상 가장 많이 쓰이는 시각화 툴
    2. Looker (구글)
      • 2012년 미국 캘리포니아 산타크루즈에서 시작
      • 구글이 2019년 6월에 $2.6B에 인수
      • LookML이 자체언어로 데이터 모델을 만드는 것으로 시작
      • 내부 고객뿐만 아니라 외부 고객을 위한 대시보드 작성가능
      • 고가의 라이센스 정책을 갖고 있으나 굉장히 다양한 기능 제공
    3. Tableau (세일즈포스)
      • 2002년 미국 캘리포니아 마운틴뷰에서 시작하여 2013년 상장
      • 세일즈포스가 2019년 6월에 $15.7B에 인수
      • 다양한 제품군 보유, 일부는 사용이 무료
      • 제대로 배우려면 시간이 꽤 필요하지만 강력한 대시보드 작성가능
      • Looker가 뜨기 전까지 오랫동안 마켓 리더로 군림
    4. Power BI (마이크로소프트)
    5. Apache Superset (오픈소스)
    6. Mode Analytics, ReDash
      • 2013년에 샌프란시스코에서 창업
      • SQL, R, Python 등을 기반으로 데이터 분석 가능
      • 조금 더 테크니컬한 인력을 대상으로한 애널리틱스 기능 제공
      • KPI 대시보드라기 보다는 EDA 툴에 가깝다
    7. Google Studio, AWS Quicksight
    8. Python: 데이터 특성 분석(EDA: Exploratory Data Analysis)에 더 적합
  • 어떤 시각화 툴을 선택할 것인가?
    • Looker 혹은 Tableau가 가장 많이 사용되는 추세
      - 두 툴 모두 처음 배우는데 시간이 필요하다
      - Tableau의 가격이 더 싸고 투명하며 무료 버전도 존재해서 공부가 가능
    • 중요한 포인트는 셀프서비스 대시보드를 만드는 것
      - 매번 사람의 노동이 들어가지 않게 만들면 좋다
      - 6~70%의 질문을 셀프서비스 대시보드로 할 수 있다면 대성공
      - 이런측면에서는 Looker가 더 좋지만 가격이 상당히 비싸다

  • Superset
    • Airbnb에서 시작된 오픈소스
    • 상용화 서비스도 시작 
    • https://preset.io/ 여기에 무료 어카운트 생성 후 실습 
    • 다양한 형태의 visualization과 손쉬운 인터페이스 지원
    • 대시보드 공유 지원
    • 엔터프라이즈 수준의 보안과 권한 제어 기능 제공
    • SQLAlchemy와 연동
      - 다양한 DB 지원
    • Druid.io와 연동하여 실시간 데이터의 시각화도 가능
    • API와 플러그인 아키텍처 제공으로인한 확장성이 좋다
  • Superset 구조와 용어
    • Flask 와 React JS로 구성되었다
    • 기본으로 sqlite을 메타데이터 데이터베이스로 사용
    • Redis를 캐싱 레이어로 사용
    • SqlAlchemy가 백엔드 DB접근에 사용된다.
    • Database / Dataset
      - Databvase == 관계형 데이터베이스 (예: Redshift)
      - Dataset == 테이블
    • Dashboard / Chart
      - Dashboard는 하나 이상의 chart로 구성
  • Superset 설치 방법
    • Docker 이용 설치 vs Preset.io에 있는 서비스 사용
    • Docker에 익숙하고 개인컴퓨터 사양이 충분히 좋다면 Docker가 더 좋다
      - superset 오픈소스를 그대로 쓰는 형태
    • Preset.io는 무료 Starter플랜이 있기는 하지만 회사 이메일이 있는 경우에만 사용 가능
      - Superset 오픈소스 기반으로 변경된 버전을 사용하는 형태, 하지만 오픈소스 버전과 크게 다르지않다
  • Docker
    • MySQL을 다른 OS에서 설치하려면 다양한 변수가 존재
      - Docker는 특정 프로그램과 (프로그램을 실행하는데) 필요한 기타 소프트웨어들을 하나의 패키지로 만듦으로써
        해당 프로그램의 개발과 사용을 도와주는 오픈소스 플랫폼
    • 이 패키지는 먼저 파일 시스템 형태로 만드는데 이를 Docker Image라고 한다
      - 이 Image는 다른 이들과 공유가능
      - Docker Image 공유소를 Docker Registry(Docker Hub)라고 부른다.
    • Docker Image를 실행시킨 것을 Docker Container라고 부르며 이 안에서 해당 프로그램이 실행된다.
      - 이 때 Docker Engine이 먼저 실행되어 있어야한다
공부하면서 어려웠던 점
  • -
반응형