Redshift cluster ์์ฑ ๋ฐ SQL ๋ฐ์ดํฐ ํ์ง ์ฒดํฌ (TIL 230509)
๐ KDT WEEK 6 DAY 2 TIL
- Redshift ์์ฑ
- ์น ์๋น์ค์์ ์ฌ์ฉ์์ ์ธ์ ์ ๋ณด
- ๋ฐ์ดํฐ ํ์ง ์ฒดํฌ
๐ฅ Redshift Cluster ๋ง๋ค์ด๋ณด๊ธฐ
ํด๋ผ์ฐ๋ ์๋น์ค | ํด๋ผ์ฐ๋ ์ปดํจํ ์๋ฃจ์ | Amazon Web Services
aws.amazon.com
Redshift๋ ์๋ง์กด์์ ์ ๊ณตํ๋ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค ์๋น์ค์ด๋ค.
์ aws ์ฌ์ดํธ์์ ๊ณ์ ์ ์์ฑํ๊ณ , redshift๋ฅผ ๊ฒ์ํ์ฌ ํด๋น ์๋น์ค๋ฅผ ์ด์ฉํ ์ ์๋ค.
aws ๊ณ์ ์์ฑ์๋ ์ต์ด ์นด๋ ๋ฑ๋ก์ด ํ์ํ๊ณ , 100์์ ์ด์ฒดํ๋ค๊ฐ ๋ค์ ๋๋ ค์ค๋ค.
๋ด๊ฐ ๋ง๋ค Redshift ํด๋ฌ์คํฐ๋ ๋ฌด๋ฃ ๋ฒ์ ์ด ์กด์ฌํ์ง๋ง ์ํ์ผ์์ ์ ๋ฃ ๋ฒ์ ์ ๋ง๋ค์ด ๋ณด๊ธฐ๋ก ํ๋ค.
๋ก๊ทธ์ธํ, aws redshift ํ๋ฉด์ ์ ์ํ๊ณ ๋ฐ์ผ๋ก ์คํฌ๋กคํด์
Create cluster ๋ฒํผ์ ์ฐพ์ ํด๋ฆญํ์ฌ ํด๋ฌ์คํฐ๋ฅผ ์์ฑํ ์ ์๋ค.
๋ฌด๋ฃ ๋ฒ์ (Serverless)์ ์ฌ์ฉํ์ง ์์๋ค๋ฉด ์์ชฝ์ ์ฌ์ฉํด๋ณด๋ผ๊ณ ๋ฉ์์ง๊ฐ ๋ํ๋๋ค.
ํด๋ฌ์คํฐ ์๋ณ์(์ด๋ฆ)์ ๋ง๋ค๊ณ , ํฌ๊ธฐ๋ฅผ ์ง์ ์ ํํ๋ค.
์ํ ๋ฐ์ดํฐ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์ฑ์ ํ๊ณ ์ถ์๋๋ก ์ค์ ํ๋ฉด ๋๋ค.
ํด๋ฌ์คํฐ ๊ถํ์ redshift์ ๋ฐ๋ก IAM ์ญํ ์ ๋ง๋ค์ด์ ์ค์ ํ ์ ์๋ค.
์์ฑํ๊ณ ์ถ๋ค๋ฉด cluster๋ฅผ ์์ฑํ๊ธฐ ์ ์ redshift IAM์ ๋ฐ๋ก ๋จผ์ ๋ง๋ค์ด๋๊ณ ์ฌ๊ธฐ์ ์ถ๊ฐํด์ฃผ์ด์ผ ํ๋ค.
๋ง์ง๋ง์ผ๋ก ์ถ๊ฐ ๊ตฌ์ฑ์์๋ ์ดํด๋ณด๊ณ ํ์ํ ๋ถ๋ถ์ ์๋ง๊ฒ ์กฐ์จํ๋ฉด ๋๋ค.
๊ฐ์์์๋ Google Colab์์ ์ค์ต์ ์งํํ๋ฏ๋ก ๋คํธ์ํฌ ๋ณด์์์ ํผ๋ธ๋ฆญ ์ก์ธ์ค๋ฅผ ์ผ๋ผ๊ณ ํ์ง๋ง..
๋๋ ์ด๊ฑธ ์ฒดํฌํ๋ ค๊ณ ์ถ๊ฐ ๊ตฌ์ฑ์ ๊ธฐ๋ณธ๊ฐ์ ๋นผ๋ฒ๋ฆฌ๋ฉด ์๊พธ VPC ์๋ธ๋ท์ด ์๋ค๊ณ ์์ฑ์ ๊ฑฐ์ ๋นํ๋ค.
์ด ๋ถ๋ถ์ ์์ฑ ํ์๋ ๋ฐ๊ฟ ์ ์์ผ๋ ์ผ๋จ ์ถ๊ฐ ๊ตฌ์ฑ์ ๊ธฐ๋ณธ๊ฐ์ผ๋ก ๋๊ณ ์์ฑํ๋ค๊ฐ
ํด๋ฌ์คํฐ๊ฐ ์ ์์ฑ๋๋ฉด, ๊ทธ๋ ์์ฑ์์ ๋ฐ๊ฟ์ค๋ ๋ฌธ์ ์์๋ค!
ํด๋ฌ์คํฐ๋ ์์ฑ๋๋๋ฐ์ ์๊ฐ์ด ์กฐ๊ธ ์์๋๋ ํธ์ด์๊ณ ,
์์ฑ ํ์๋ ํด๋ฌ์คํฐ๊ฐ ์ด์ฉ๋๋ฉด์ ๊ธ์ก์ด ์ฒญ๊ตฌ๋ ์ ์์ผ๋ฏ๋ก ์ฌ์ฉํ์ง ์์ ๋๋ ์ค๋จ์์ผ๋๊ฑฐ๋ ํ์์์ผ๋ฉด ์ญ์ ํ์!
๐ฆ ์น์๋น์ค ์ฌ์ฉ์/์ธ์ ์ ๋ณด
์น ์๋น์ค์ ์ด์ํ๋ฉด์ ์ฌ์ฉ์ ์ ์ ์ ๋ณด๋ฅผ ๋ฐ๊ฒ๋๋ค๋ฉด ์ธ์ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์ค๊ฒ ๋ ๊ฒ์ด๋ค.
์ด ์ธ์ ์ ๋ณด์ ๋ด์ฉ๊ณผ ๋ถ์ ๋ฐฉ๋ฒ์ ์ ๊น ์์๋ณด์.
- ์ฌ์ฉ์ ID : ์น ์๋น์ค์์ ๋ฑ๋ก๋ ์ฌ์ฉ์๋ง์ ๋ถ์ฌํ๋ ์ ์ผํ ID
- ์ธ์
ID : ์ธ์
๋ง๋ค ๋ถ์ฌ๋๋ ID (ํ ์ฌ์ฉ์๊ฐ ์ฌ๋ฌ๊ฐ๋ฅผ ๊ฐ์ง ์ ์๋ค)
- ์ฌ์ฉ์์ ๋ฐฉ๋ฌธ์ ๋ ผ๋ฆฌ์ ์ธ ๋จ์๋ก ๋๋ ๊ฒ
- ์ธ๋ถ ๋งํฌ๋ฅผ ํ๊ณ ์ค๊ฑฐ๋, ๋ฐฉ๋ฌธ ํ 30๋ถ๊ฐ interaction์ด ์๋ค๊ฐ ํ๋์ด ๋ณด์ด๋ฉด ์๋ก ์์ฑ
- ๋ณดํต์ ์ธ์ ์ ๊ฒฝ์ฐ ์ธ์ ์ ๋ง๋ค์ด๋ธ ๊ฒฝ์ ์ง๋ฅผ ์ฑ๋์ด๋ ์ด๋ฆ์ผ๋ก ๊ธฐ๋กํ๋ค.(๋ง์ผํ ๋ถ์ ๊ฐ๋ฅ)
- ์์ฑ ์๊ฐ๋ ๊ธฐ๋ก๋๋ค.
์ด ์ธ์ ์ ๋ณด๋ฅผ ๋ฐํ์ผ๋ก ๋ค์ํ ๋ง์ผํ ๊ณผ ์ฌ์ฉ์ ํธ๋ํฝ ๋ถ์์ด ๊ฐ๋ฅํ๋ค.
ex) ์ผ์ฃผ์๋ณ Active User(๋ฐฉ๋ฌธ์) ์ฐจํธ ์์ฑ( DAU, WAU, MAU...)
ex) Marketing Channel Atrribution ๋ถ์ - ์ด๋ ์ฑ๋์ ๊ด๊ณ ๋ฅผ ํ๋ ๊ฒ์ด ๊ฐ์ฅ ํจ๊ณผ์ ์ธ๊ฐ? ๋ฑ
๐ฉ ๋ฐ์ดํฐ ํ์ง ์ฒดํฌํ๊ธฐ
๊นจ๋ํ ๋ฐ์ดํฐ๋ ์กด์ฌํ์ง ์๋๋ค. ํญ์ ๋ฐ์ดํฐ๋ฅผ ๋ฏฟ์ ์ ์๋์ง ์์ฌํ๊ธฐ
์ค์ ๋ ์ฝ๋๋ฅผ ๋ช ๊ฐ ์ดํด๋ณด๋ ๊ฒ์ด ํ์
๋ฐ์ ์ฒดํฌ๋ฅผ ์ฝ๋ฉ์ unit test ํํ๋ก ๋ง๋ค์ด ์ฒดํฌ
์ค๋ณต๋ ๋ ์ฝ๋ ์ฒดํฌ
์ต๊ทผ ๋ฐ์ดํฐ์ ์กด์ฌ์ฌ๋ถ ์ฒดํฌ
PK Uniqueness ์ฒดํฌ
๊ฐ์ด ๋น์ด์๋ ์ปฌ๋ผ ์ฒดํฌ
๋๋ฌด๋ ๋ง์ ํ ์ด๋ธ๋ค์ด ์กด์ฌํ๊ฒ ๋๋ ์์ ์๋..
์ค์ ํ ์ด๋ธ์ด ๋ฌด์์ด๊ณ ๊ทธ๊ฒ๋ค์ ๋ฉํ ์ ๋ณด๋ฅผ ์ ๊ด๋ฆฌํ๋ ๊ฒ์ด ์ค์ํด์ง
Data Discovery์ ๋ฌธ์ ์๊น --> ์๊ฐํด๋ณผ ๊ฒ๋ค์ด ์๊น
๊ด๋ จ๋ ์๋น์ค๋ค์ด ์์ (DataHub, Amundsen ๋ฑ)