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