강의
시각화 툴
"시각화 툴"은 대시보드 혹은 BI(Business Intelligence)툴이라고 부릅니다.
KPI(Key Performance Indicator), 지표, 데이터 포인트를 데이터 기반(Data-Driven)으로 계산/분석/표시해주는 툴 입니다.
시각화 툴 종류
Looker 혹은 Tableau를 많이 사용하는 추세 입니다.
- Excel, Google Spreadsheet
- Python
- Looker
- LookML : 자체언어로 데이터 모델 생성
- 내부 및 외부 고객을 위한 대시보드 작성 가능
- 생성 후 수정 용이
- 정보 과부하 문제 가능성
- Tableau
- 초기 사용이 어렵지만 강력한 대시보드 작성 가능
- Power BI
- Apache Surperset
- Mode Analytics
- KPI 대시보드보다 EDA(Exploratory Data Analysis)에 가까움
- ReDash
- Superset과 매우 유사
- 쿼리 에디터 용이
- 사용자 권한 관련 기능 부족
- Google Studio
- AWS Quicksight
Superset
"Superset"은 시각화 툴 입니다.
- 다양한 형태의 시각화(visualization) 및 쉬운 인터페이스 지원
- 대시보드 공유 지원
- 엔터프라이즈 수준의 보안 및 권한 제어 기능 제공
- SQLAlchemy 연동
- Druid.io 연동 → 실시간 데이터 시각화 가능
- API 및 플러그인 아키덱처 제공 → 확장성 용이
Superset 구조
- Flask 및 React JS로 구성
- sqlite 기반 메타데이터 데이터베이스
- Redis 캐싱 레이어 사용
- SQLAlchemy가 백엔드 DB 접근에 사용
Superset 용어
- Database : 관계형 데이터베이스(ex Redshift)
- Dataset : 테이블
- Dashboard : 다수의 Chart로 구성
- Chart
Superset 설치
- Docker 이용
- Docker 익숙할 경우
- 개인 컴퓨터 사양이 충분할 경우
git clone https://github.com/apache/superset.git
cd superset
git checkout 1.4.0
docker-compose -f docker-compose-non-dev.yml pull
docker-compose -f docker-compose-non-dev.yml up
- Preset.io 서비스 이용
- 회사 이메일이 있는 경우
- 리눅스 서버 이용
코호트 분석
"코호트"(Cohort)는 특정 속성을 바탕으로 나뉘어진 사용자 그룹 입니다.
"코호트 분석"은 코호트를 기반으로 사용자의 이탈률 혹은 잔존률, 총 소비금액 등을 계산하는 것입니다.
일반적으로 월기반으로 시각화 합니다.
# cohort_summary 생성
CREATE TABLE analytics.cohort_summary as
SELECT cohort_month, visited_month, cohort.userid
FROM (
SELECT userid, data_trunc('month', MIN(ts)) as cohort_month
FROM raw_data.user_session_channel AS USC
JOIN raw_data.session_timestamp AS T
ON T.sessionid = USC.sessionid
GROUP BY 1
) as cohort
JOIN (
SELECT DISTINCT userid, date_trunc('mont', ts) as visited_month
FROM raw_data.user_session_channel AS USC
JOIN raw_data.session_timestamp AS T
ON T.sessionid = USC.sessionid
) as visit
ON cohort.cohort_month <= visit.visited_month and cohort.userid = visit.userid;
# 코호트 시각화용 전처리
SELECT
DATEDIFF(month, cohort_month, visited_month) as month,
cohort_month,
COUNT(userid) as users
FROM analytics.cohort_summary
GROUP BY 1, 2
ORDER BY 1, 2;
'데브코스 TIL' 카테고리의 다른 글
Github Actions 소개 (0) | 2023.12.20 |
---|---|
리눅스 이해하기 (0) | 2023.12.12 |
Snowflake 운영과 관리 (0) | 2023.11.30 |
데이터 웨어하우스 옵션 (1) | 2023.11.27 |
상속(Inheritance)과 오버라이딩(Overriding) (0) | 2023.11.06 |