์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- ๋น ๋ฐ์ดํฐ
- AQE
- Spark ์ค์ต
- Kubernetes
- DataFrame Hint
- topic
- CI/CD
- Speculative Execution
- ๋ฐ์ดํฐ ํ์ดํ๋ผ์ธ
- Spark Caching
- Airflow
- backfill
- Dag
- SQL
- Spark SQL
- Docker
- etl
- Spark
- disk spill
- KDT_TIL
- Spark Partitioning
- spark executor memory
- redshift
- mysql
- off heap memory
- Salting
- Kafka
- aws
- k8s
- colab
- Today
- Total
JUST DO IT!
Redshift๋ฅผ Superset์ ์ฐ๋ํ๊ณ ๋์๋ณด๋ ๋ง๋ค๊ธฐ - TIL230526 ๋ณธ๋ฌธ
Redshift๋ฅผ Superset์ ์ฐ๋ํ๊ณ ๋์๋ณด๋ ๋ง๋ค๊ธฐ - TIL230526
sunhokimDev 2023. 5. 26. 23:45๐ KDT WEEK 8 DAY 5 TIL
- ๋ค์ํ ์๊ฐํ ํด
- Superset
๐ฅ ๋ค์ํ ์๊ฐํ ํด
= ๋์๋ณด๋ ํน์ BI(Business Intelligence)ํด
- KPI(Key Performance Indicator), ์งํ, ์ค์ํ ๋ฐ์ดํฐ ํฌ์ธํธ๋ค์ ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ณ์ฐ/๋ถ์/ํ์ํ๋ ํด
- ์์ค๊ฐ ๋๋ ๋ฐ์ดํฐ์ ํ์ง์ด ์ค์ํ๋ค.
- ๋ฐ์ดํฐ ๋ถ์์ด ์ฌ์์ง๊ณ ๋ฐ์ดํฐ ๊ธฐ๋ฐ ์์ฌ๊ฒฐ์ ์ด ๊ฐ๋ฅํด์ง๋ค.
์๊ฐํ ํด์ ์ข ๋ฅ
์ฌ๋๋ค์ด ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํ๋ ํด : Excel, Google Spredsheet
์ ๋ฌธ์ ์ธ ํด : Looker(๊ตฌ๊ธ), Tableau, Power BI, Apache Superset(์คํ์์ค), AWS Quicksight
- Looker์ Tableau๊ฐ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๋ ์ถ์ธ์ง๋ง ๋ฐฐ์ฐ๋๋ฐ ์๊ฐ ํ์
- Tableau๊ฐ ๊ฐ๊ฒฉ์ด ์ธ๊ณ ๋ ํฌ๋ช ํ๋ฉฐ ๋ฌด๋ฃ๋ฒ์ ๋ ์์
- Looker๋ ์ ํ์๋น์ค ๋์๋ณด๋๋ฅผ ๋ง๋๋๋ฐ ๋ ์ข์
๋์๋ณด๋ ๋ง๋ค์ด๋ณด๊ธฐ
DB๋ Redshift์ฌ์ฉ
์ฑ๋๋ณ Monthly Active User ์ฐจํธ : ์ ๋ ฅ ํ ์ด๋ธ(Dataset)์ anlytics.user_session_summary
Monthly Cohort ์ฐจํธ
> ์ฝํธํธ(Cohort) ?
ํน์ ์์ฑ์ ๊ธฐ์ค์ผ๋ก ์ฌ์ฉ์ ๊ทธ๋ฃน์ ๋๋๋ ๊ฒ ex) ์ฌ์ฉ์์ ์๋น์ค ๋ฑ๋ก์์ด ๊ฐ์ ์ฌ๋๋ผ๋ฆฌ ๋ฌถ๊ธฐ
์ฝํธํธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ์ฉ์ ์ดํ๋ฅ , ์์กด๋ฅ , ์ด ์๋น๊ธ์ก ๋ฑ์ ๊ณ์ฐ
MAU ์์ฒด ๋ฐ์ดํฐ๋ง์ผ๋ก๋ ์๋ฏธ๊ฐ ํฌ์ง๋ ์๊ณ , MAU ๊ธฐ๋ฐ์ผ๋ก ์ฝํธํธ ๋ถ์์ ํ๋ ๊ฒ์ด ์ข๋ค.
๊ตฌ๊ธ ์คํ๋ ๋์ํธ์์ ์๊ฐํํด๋ณด๊ธฐ
Redshift์ ๊ฐ์ง๊ณ ์๋ ํ ์ด๋ธ์ ์ฌ์ฉํ์ฌ MAU ํ ์ด๋ธ์ ํ๋ ๋ง๋ค๊ณ , CSV ํ์ผ๋ก ์ ์ฅํ์๋ค.
๊ตฌ๊ธ ์ํธ๋ก ๊ฐ์ ธ์์ ์ฐจํธ๋ฅผ ์์ฑํ ๋ฐ์ดํฐ๋ฅผ ๋๋๊ทธํ๊ณ , ๋นจ๊ฐ ์ ๋ถ๋ถ์ ํด๋ฆญํ๋ฉด ์๋์ฒ๋ผ ์์ฑ๋๋ค.
Cohort ๋ฐ์ดํฐ๋ ํผ๋ด ์๊ฐํ๋ฅผ ํ๋ฒ ํด๋ณด์.
์๋๋ Cohort ํ ์ด๋ธ์ ๋ง๋ค๊ธฐ ์ํด ์ฌ์ฉํ SQL ์ฟผ๋ฆฌ๋ฌธ์ด๋ค.
CREATE TABLE analytics.cohort_summary as
SELECT cohort_month, visited_month, cohort.userid
FROM (
SELECT userid, date_trunc('month', MIN(ts)) cohort_month
FROM raw_data.user_session_channel usc
JOIN raw_data.session_timestamp t ON t.sessionid = usc.sessionid
GROUP BY 1
) cohort
JOIN (
SELECT DISTINCT userid, date_trunc('month', ts) visited_month
FROM raw_data.user_session_channel usc
JOIN raw_data.session_timestamp t ON t.sessionid = usc.sessionid
) visit ON cohort.cohort_month <= visit.visited_month and cohort.userid = visit.userid;
ํ ์ด๋ธ์๋ ์ฌ์ฉ์๊ฐ ์ฒซ ๋ฐฉ๋ฌธํ ๋ฌ(cohort_month) , ๋ฐฉ๋ฌธํ๋ ๋ฌ(visited_month), ์ฌ์ฉ์ ์์ด๋(userid)๊ฐ ๊ธฐ๋ก๋๋ค.
์ด๊ฑธ ์๊น์ฒ๋ผ CSV ํ์ผ๋ก ๋ง๋ค๊ณ ..
๊ตฌ๊ธ ์ํธ์์ ์ด์ด์ ํผ๋ด ํ ์ด๋ธ์ ๋ง๋ค์ด๋ณด์
ํผ๋ด ํ ์ด๋ธ์ ๋ฐ์ดํฐ ์ ํ(๋๋๊ทธ) > ์ฝ์ (Insert) > ํผ๋ด ํ ์ด๋ธ(Pivot table)๋ก ์ ํํ๋ค.
์์์ ๋ง๋ค๊ธฐ ๋ฒํผ์ ๋๋ฅด๊ณ ๋๋ฉด ํ, ์ด, ๊ฐ์ ์ด๋ค ๊ฐ์ผ๋ก ๋ฃ์์ง ๊ตฌ์ฑํ ์ ์๋ค.
๐ฆ Superset ์ฌ์ฉํ๊ธฐ
Superset
- ๋ค์ํ ํํ์ visualization๊ณผ ์์ฌ์ด ์ธํฐํ์ด์ค ์ง์ ๋ฐ ๊ณต์ ๊ฐ๋ฅ
- ์ํฐํ๋ผ์ด์ฆ ์์ค์ ๋ณด์๊ณผ ๊ถํ ์ ์ด ๊ธฐ๋ฅ ์ ๊ณต
- SQLAlchemy์ ์ฐ๋๋์ด ์ด๋ฅผ ์ง์ํ๋ ๋ค์ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ง์
- Druid.io์ ์ฐ๋ํ์ฌ ์ค์๊ฐ ์ฐ๋๋ ๊ฐ๋ฅ
- Flask + React JS๋ก ๊ตฌ์ฑ๋๋ฉฐ sqlite๋ฅผ ๋ฉํ๋ฐ์ดํฐ DB๋ก ์ฌ์ฉ
๊ฐ๋จํ ๊ตฌ์กฐ
- Database : ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ex) Redshift
- Dataset : ํ ์ด๋ธ
- Dashboard : ํ๋ ์ด์์ chart๋ก ๊ตฌ์ฑ
Superset์ ์ฌ์ฉํ๋ ค๋ฉด?
- Docker
- Preset.io์์ Starter ํ๋ ์ด์ฉํ๊ธฐ
Docker๋?
ํน์ ํ๋ก๊ทธ๋จ๊ณผ ํ์ํ ์ํํธ์จ์ด๋ค์ ํ๋์ ํจํค์ง๋ก ๋ง๋๋ ๊ฒ --> Docker Image
- Image๋ ๋ค๋ฅธ ์ฌ๋๋ค๊ณผ ๊ณต์ ๊ฐ๋ฅ
- ๋ค๋ฅธ ์ฌ๋๋ค๊ณผ ๊ณต์ ํ๋ ๊ณต์ ์ = Docker Registry(Docker Hub)
- Docker Image๋ฅผ ์คํ์ํจ ๊ฒ = Docker Container (Docker Engine ํ์)
Preset.io์์ ํ๋์ ์ด์ฉํ๋ ๊ฒฝ์ฐ, ์๋์ ๋งํฌ์์ ๊ฐ์ ํ๊ณ ์ ์ฐจ๋ง ๋ฐ๋ผ๊ฐ๋ฉด ์ฝ๋ค.
Modern BI Powered by Open Source Apache Superset™
Powerful, easy to use data exploration and visualization platform, powered by open-source Apache Superset™. Modern business intelligence for your entire organization.
preset.io
๋๋ Docker๋ฅผ ์ฌ์ฉํด์ ์คํ์์ค Superset์ ์ฌ์ฉํด๋ณด๊ธฐ๋ก ํ๋ค.
โก๏ธDocker Desktop ์ค์น ๋ฐ ์ค์
https://www.docker.com/products/docker-desktop/
Download Docker Desktop | Docker
Docker Desktop is available to download for free on Mac, Windows, or Linux operating systems. Get started with Docker today!
www.docker.com
์๋์ฐ์ ๊ฒฝ์ฐ Docker Desktop์ ์ฌ์ฉํ๋ ค๋ฉด ์๋์ ์ถ๊ฐ ์ค์ ์ด ํ์ํ๋ค.
1. Hyper-V(๊ฐ์๋๋ฐ์ด์ค) ์ค์ ํ๊ธฐ
์๋์ฐ ํ์์ ์ ๊ด๋ฆฌ์ ๊ถํ์ผ๋ก ์คํ ํ, ์๋์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๊ณ ์ฌ๋ถํ ํ๋ฉด ๋๋ค.
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
2. WSL2 ์ค์น
์๋์ ๋ธ๋ก๊ทธ๋ฅผ ์ฐธ๊ณ ํ์
https://goddaehee.tistory.com/313
[ Windows ] docker desktop ์ค์นํ๊ธฐ (WSL2 Ubuntu ํ์ฉ)
Windows ์ฉ Docker Desktop ์ค์นํ๊ธฐ ์๋ ํ์ธ์. ๊ฐ๋ํฌ ์ ๋๋ค. ์ด๋ฒ ํฌ์คํ ์ [ Docker Desktop ์ค์นํ๊ธฐ ] ์ ๋๋ค. : ) 0. Docker Desktop ์ด๋? - Docker Desktop์ ํตํด Docker๋ฅผ ๊ฐํธํ๊ฒ ์ค์ ํ์ฌ ์ฌ์ฉํ ์ ์๋ค.
goddaehee.tistory.com
โก๏ธ Docker Desktop ์ค์
Superset์ Container์์ ๊ตฌ๋ํ๊ธฐ ์ํด์๋ ์ต์ 8GB(์๋์ฐ์ ๊ฒฝ์ฐ)์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ ๋นํด์ผ ํ๋ค๊ณ ํ๋ค.
์ด๋ Docker Desktop ์ค์ ์์ ๋งฅ์ ๊ฒฝ์ฐ ๊ฐ๋จํ๊ฒ ์ค์ ํ ์ ์์ง๋ง, ์๋์ฐ์ ๊ฒฝ์ฐ๋ ์กฐ๊ธ ๋ค๋ฅด๋ค.
์กฐ๊ธ ์ฐพ์๋ณด๋, ๊ธฐ๋ณธ ์ค์ ์ผ๋ก ์๋์ฐ ๋ฉ๋ชจ๋ฆฌ์ 80%๊ฐ ์กํ์๋ค๊ณ ํ๋ค.
์ค์ ์ ๋ฐ๊ฟ์ฃผ๊ณ ์ถ๋ค๋ฉด .wslconfig ํ์ผ์ ์์ฑํ๊ฑฐ๋ ์์ ํด์ผํ๋ค.
๋ฐฉ๋ฒ์ ์๋ ๋ธ๋ก๊ทธ๋ฅผ ์ฐธ๊ณ ํ์.
https://kibua20.tistory.com/63
WSL 2.0 Global configuration (.wslconfig) ์ ํตํ ์ฑ๋ฅ ํฅ์
WSL 2.0 ์ ์๋์ฐ10์์ ๋ฆฌ๋ ์ค ์ปค๋์ ์ง์ ์ฌ๋ฆฐ ๊ฒ์ผ๋ก ์ต๊ทผ์ ๊พธ์คํ ๊ธฐ๋ฅ์ด ์ ๋ฐ์ดํธ๋๊ณ ์๋ค. ์ต๊ทผ MS Build 2020 ์ปจํผ๋ฐ์ค์์๋ CUDA์ Direct ML์ GPU ์ปดํจํ ์ ์ง์ํด์ WSL์์ AI์ machine learnig
kibua20.tistory.com
์ฐธ๊ณ ๋ก, ๋น์ฃผ์ผ ์คํ๋์ค๊ฐ ์๋ ๊ฒฝ์ฐ ํฐ๋ฏธ๋์์ code .wslconfig ๋ฅผ ํตํด ํธํ๊ฒ ์์ ๊ฐ๋ฅํ๋ค. (๊ฒฝ๋ก๋ ์ ๋ธ๋ก๊ทธ์ฐธ๊ณ )
โก๏ธ Superset ์คํ์์ค ๊ฐ์ ธ์ค๊ธฐ
ํฐ๋ฏธ๋์์ ํด๋ ํ๋๋ฅผ ๋ง๋ค๊ณ , ๊ทธ ์์ git clone์ ํด๋ณด์.
git clone https://github.com/apache/superset.git
git clone์ด ์๋ฃ๋๋ฉด ์์ฑ๋ superset ํด๋์ ๋ค์ด๊ฐ์ ๋ค์์ ๋ช ๋ น์ด๋ฅผ ์์๋๋ก ์คํํ๋ค.
๋ช ๋ น์ด๋ฅผ ์คํํ๊ธฐ ์ ์, Docker Desktop์ด ์คํ๋์ด ์์ด์ผ ํ๋ค.
docker-compose -f docker-compose-non-dev.yml pull
docker-compose -f docker-compose-non-dev.yml up -- ์คํ
์ด ๊ณผ์ ์ ์๊ฐ์ด ์กฐ๊ธ ๊ฑธ๋ฆฐ๋ค.
๊ณผ์ ์ด ์๋ฃ๋๋ฉด Docker Desktop์ด ์๋์ฒ๋ผ ๋ํ๋๋ค.
superset_app์ Port(s) ํญ๋ชฉ์ ๋ณด์ด๋ ๋ก์ปฌ ํธ์คํธ ์๋ฒ (8088:8088)์ ์ ์ํ๋ฉด..
admin/admin ์ผ๋ก ๋ก๊ทธ์ธํด๋ณด์.
์ ์์ ์ผ๋ก ํ๋ฉด์ด ๋ํ๋๋ฉด ์ฑ๊ณต!
โก๏ธRedshift Database ์ฐ๊ฒฐํ๊ธฐ
Preset.io๋ฅผ ์ฌ์ฉํ๋ , Docker๋ฅผ ์ฌ์ฉํ๋ ๊ฑฐ์ ๋น์ทํ ๊ตฌ์ฑ์ UI๋ฅผ ๋ณผ ์ ์์ ๊ฒ์ด๋ค.
๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฐ๊ฒฐํ๊ธฐ ์ํด ์ค๋ฅธ์ชฝ ์๋จ์ Settings ์ต์ ์์ Database Connections๋ฅผ ํด๋ฆญํ์.
๋ค์ ํ๋ฉด์ ์ค๋ฅธ์ชฝ ์๋จ์์ +DATABASE ๋ฒํผ์ ๋๋ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ถ๊ฐํ์.
Docker๋ก ์ ์ํ ๊ฒฝ์ฐ ์๋์ ํ๋ฉด์ ๋ณผ ์ ์๋ค.
Preset.io์ ๊ฒฝ์ฐ๋ ๋น์ทํ๊ฒ ๋์ค์ง๋ง, ์ข ๋ ์์ธํ๊ฒ ๋์จ๋ค.
Redshift๋ฅผ ์ฐ๊ฒฐํ๊ณ ์ถ๋ค๋ฉด Preset.io๋ ํ๋จ์ SUPPORTED DATABASES ์ต์ ์์ ์ฐพ์ ์ ์๋ค.
๋์ฒ๋ผ Docker์ ๊ฒฝ์ฐ Redshift๊ฐ ์ง์ํ๋ PostgreSQL์ ์ ํํ๋ฉด ๋๋ค.
๋ค์์ผ๋ก ์๋์ ์ฐฝ์ ์ ๋ณด๋ฅผ ์ ๋ ฅํ๋ฉด ๋๋ค.
- Host : Redshift Workgroup์ ์๋ํฌ์ธํธ
- Port : Redshift ํฌํธ์ธ 5439
- Database : Redshift ๋ค์์คํ์ด์ค์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ด๋ฆ
- Username / Password : ์ ์ํ ์ฌ์ฉ์์ ์ ๋ณด (Redshift DB๊ณ์ )
โก๏ธ์ฐ๊ฒฐํ DB๋ก Dataset(์ฐจํธ) ๋ง๋ค๊ธฐ
์๋จ ํญ์์ Datasets์ ๋๋ฅด๊ณ , ์ค๋ฅธ์ชฝ ์๋จ์ +DATASET ๋ฒํผ์ ๋๋ฌ ์์ฑํด๋ณด์.
์์ฑ๋ฒํผ์ ๋๋ฅด๋ฉด ์๋์ ์ด๋ฏธ์ง๊ฐ ๋ํ๋๋ค.
์๊น ์ฐ๊ฒฐํ๋ DATABASE๋ฅผ ์ ํํ๋ฉด ์ ์ฅ๋ ์คํค๋ง๋ค์ด ๋ํ๋๋ค.
์ฐจํธ๋ฅผ ์์ฑํ ์คํค๋ง์ ํ ์ด๋ธ์ ์ ํํ๊ณ , ์ค๋ฅธ์ชฝ ํ๋จ์ CREATE DATASET AND CREATE CHART ๋ฅผ ๋๋ฅด์.
๋ค์ ํ๋ฉด์ผ๋ก ๋์ด๊ฐ๋ฉด ์ฌ๋ฌ ๊ฐ์ง ๋ค์ํ ์ข ๋ฅ์ ์ฐจํธ๋ฅผ ํ์ธํ ์ ์๋ค.
์ํ๋ ํํ์ ์ฐจํธ๋ฅผ ์ ํํ๊ณ ํ๋จ์ CREATE NEW CHART๋ฅผ ๋๋ฌ ์์ฑํด๋ณด์.
์ฐจํธ๋ฅผ ์์ฑํ๊ธฐ ์ํด X์ถ๊ณผ Y์ถ์ ์ค์ ํ๋ ํ๋ฉด์ ๋ณผ ์ ์๋ค.
๋๋ MAU, ์๋ณ ์ค์ ์ฌ์ฉ์๋ฅผ ์๊ฐํํ๊ธฐ ์ํ Line Chart๋ฅผ ๊ทธ๋ฆฌ๋ ค๊ณ ํ๋ค.
X-AXIS๋ฅผ ๋๋ฌ X์ถ์ ์ํ๋ ํ๋ ๊ฐ์ ์ง์ ํด๋ณด์.
ํ์์คํฌํ๋ฅผ ๊ฐ์ง ํ๋๋ฅผ ์ ํ๋๋ TIME GRAIN ์ต์ ์ ํตํด ์ฐ, ์, ์ผ ๋ฑ์ ์ ํ ์๋ ์๋ค.
์๋ณ ์ฌ์ฉ์๋ฅผ ๊ทธ๋ฆด ๊ฒ์ด๋ Month๋ฅผ ์ ํํ๋ค.
METRICS ์ต์ ์ผ๋ก Y์ถ์ ํด๋นํ๋ ๊ฐ์ ์ง์ ํด๋ณด์.
๋ณดํต ํจ์๋ฅผ ์ฌ์ฉํ๊ฒ ๋๋๋ฐ, ๊ธฐ๋ณธ์ ์ผ๋ก f(x) COUNT(*) ๋ฅผ ์ฌ์ฉํ ์ ์์๋ค.
ํ์ง๋ง ์ด ํ ์ด๋ธ์๋ ์ฌ์ฉ์๊ฐ ์ ์ํ ๋ชจ๋ ๊ธฐ๋ก์ด ๋จ๊ฒจ ์๊ณ , ๋๋ ์ ๋ํฌํ ์ฌ์ฉ์๋ค๋ก๋ง ๊ตฌ์ฑํ๊ณ ์ถ๊ธฐ ๋๋ฌธ์ ํจ์์ ์์ ์ด ํ์ํ๋ค.
ํจ์์ ์์ ์ ์๋ ์ด๋ฏธ์ง์ฒ๋ผ CUSTOM SQL ์ต์ ์ ์ฌ์ฉํ๋ฉด ๋๋ค.
๊ทธ๋ฆฌ๊ณ CREATE CHART ๋ฒํผ์ ๋๋ ๋๋ ์ฐจํธ๊ฐ ์ ์์ฑ๋ ๊ฑธ ํ์ธํ ์ ์๋ค!
์ถ๊ฐ๋ก DIMENSTIONS ์ต์ ์ ํน์ ํ๋ ๋ณ๋ก ๋ผ์ธ์ ๋ ๊ทธ๋ฆด ์ ์๊ฒ ์ค์ ๊ฐ๋ฅํ๋ค.
๋๋ ์ฑ๋๋ณ๋ก ๋ผ์ธ์ ์ถ๊ฐ๋ก ๋ ๊ตฌ์ฑํด๋ณด์๋ค.
โก๏ธ Superset์ผ๋ก Cohort Pivot Table ์์ฑํ๊ธฐ
์ด๋ฒ์๋ ์ด์ ์ ์์ฑํ Cohort ํ ์ด๋ธ์ ์ฌ์ฉํ์ฌ, Pivot Table๋ฅผ ์์ฑํด๋ณด์.
๋ด๊ฐ ์์ฑํ๋ cohort_summary ํ ์ด๋ธ์์๋ Monthly Active User๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ์ฉ์์ ์๋ณ ์์กด์๋ฅผ ๋ํ๋ด๊ณ ์๋ค.
pivot์ ๊ฒ์ํ์ฌ ์ฝ๊ฒ Pivot Table์ ์ฐพ์ ์ ์๋ค.
cohort_month : ์ฌ์ฉ์๊ฐ ์ฒ์ ๋ฐฉ๋ฌธํ๋ ๋ ์ง(์)
visited_month : ์ฌ์ฉ์๊ฐ ๋ฐฉ๋ฌธํ๋ ๋ ์ง(์)
์๋ ์ด๋ฏธ์ง์๋ ์๋ ธ์ง๋ง ์ด๋ ๊ฒ ์ค์ ํด์ฃผ์๋ค.
- Column : visited_month
- Rows : cohort_month
- TIME GRAIN : month
- METRICS : COUNT(*)
์ฌ์ฉ์๊ฐ ์ฒ์ ๋ฐฉ๋ฌธํ๋ ๋ฌ์ ๊ธฐ์ค์ผ๋ก ๋ค์ ๋ฌ์๋ ์ ์ํ๋์ง ์ฝ๊ฒ ์ ์ ์๋ ์ฐจํธ๊ฐ ์์ฑ๋์๋ค.
์ด๋ฒ์๋ Column์ cohort_month๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ช ๊ฐ์์ด๋ ์ฐจ์ด๋๋์ง ์ฝ๊ฒ ์์๋ณผ ์ ์๋๋ก ๋ฐ๊ฟ๋ณด๊ฒ ๋ค.
CUSTOM SQL์ DATEDIFF(์ฝ๊ฒ ์๊ฐ๊ณผ ์๊ฐ์ ๋บ ์ ์๋ ํจ์)๋ฅผ ์ด์ฉํ ๊ฒ์ด๋ค.
Column์ ์์ ํ๋ ๊ฒฝ์ฐ, ์์ ํ๋ ์ฐฝ ์์ชฝ์ ์ด๋ฆ์ ๋ฐ๊ฟ ์๊ฐ ์๋ค.
์ด ๋ถ๋ถ์ ์์ ํด์ฃผ์ง ์๊ณ ์์ ํ๊ธฐ ์ ์ ์ด๋ฆ์ ๊ณ์ ์ฌ์ฉํ๋ฉด, ์ฐจํธ๊ฐ ์ ์์ ์ผ๋ก ์ถ๋ ฅ๋์ง ์๋๋ค.
์ด๋ฆ์ ๊ผญ ๋ฐ๊ฟ์ฃผ์. ๋๋ My column์ด๋ผ๊ณ ๋ง๋ค์๋ค.
์๋ ์ด๋ฏธ์ง๋ฅผ ๋ณด๋ฉด, Column์ด ์ ์์ ์ผ๋ก ์์ ๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
๐ฉ Superset ๋์๋ณด๋ ๋ง๋ค๊ณ ํธ์งํ๊ธฐ
๋ง๋ค์๋ ์ฐจํธ๋ฅผ ์ ์ฅ๋ฒํผ์ ๋๋ฌ ์ ์ฅํ๋ค๋ฉด, Superset ์์ชฝ ํญ Charts์ ๋ด๊ฒจ์์ ๊ฒ์ด๋ค.
๋ด๊ฐ ๋ง๋ค์๋ ์ฐจํธ๋ฅผ ์ฐพ์ ๋ถ๋ฌ์ค๋ฉด ํ๊ณผ ์ด์ ์์ ํ๋ ํ๋ฉด์ผ๋ก ๋์์ฌ ์ ์๋ค.
๋์๋ณด๋์ ๋ฃ์ ์ฐจํธ์ ์ด๋ฆ์ ํด๋ฆญํ์ฌ ๋ค์ด๊ฐ์, ์ค๋ฅธ์ชฝ ์๋จ์ SAVE ๋ฒํผ์ ๋๋ฅด์.
๋์๋ณด๋์ ๋ฃ๊ธฐ ์ํด ADD TO DASHBOARD์ ๋ด๊ฐ ์ํ๋ ์ด๋ฆ์ผ๋ก ๋ฃ๊ณ ,
SAVE & GO TO DASHBOARD ๋ฒํผ์ ๋๋ฌ ๋์๋ณด๋์ ์ ์ฅํ๋ค.
๋๋ ๋ง๋ค์๋ ๋ ๊ฐ์ ์ฐจํธ๋ฅผ KPI Dashboard๋ผ๋ ๋์๋ณด๋์ ๋ฃ์๋ค.
์ค๋ฅธ์ชฝ ์๋จ์ EDIT DASHBOARD ๋ฒํผ์ ๋๋ฌ ํฌ๊ธฐ ์กฐ์ ๊ณผ ์์น๋ฅผ ์กฐ์ ํ ์ ์๋ค.
์ฐจํธ๋ฅผ ๋๋๊ทธํ์ฌ ํฌ๊ธฐ ๋ฐ ์์น ์กฐ์ ์ ์์ ๋กญ๊ฒ ํ ์ ์๊ณ ,
์ค๋ฅธ์ชฝ ํญ์ LAYOUT ELEMENTS๋ฅผ ํตํด ํ ์คํธ๋ ๊ตฌ๋ถ์(Divider)๋ฅผ ๋ฃ์ ์๋ ์๋ค
๋์๋ณด๋๊ฐ ์์ฑ๋์๋ค!
'TIL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Yahoo finance API ์ฌ์ฉํด์ Airflow DAG ๋ง๋ค์ด๋ณด๊ธฐ - TIL230607 (0) | 2023.06.08 |
---|---|
Airflow DAG - TIL230607 (2) | 2023.06.07 |
Snowflake ์์๋ณด๊ณ , S3์์ COPYํด๋ณด๊ธฐ - TIL230525 (0) | 2023.05.25 |
Redshift ๊ณ ๊ธ ๊ธฐ๋ฅ -TIL230524 (1) | 2023.05.24 |
Redshift serverless ์์ฑํ๊ณ S3์ csv ํ์ผ Redshift์ COPYํ๊ธฐ - TIL230523 (0) | 2023.05.23 |