JUST DO IT!

Redshift cluster ์ƒ์„ฑ ๋ฐ SQL ๋ฐ์ดํ„ฐ ํ’ˆ์งˆ ์ฒดํฌ (TIL 230509) ๋ณธ๋ฌธ

TIL

Redshift cluster ์ƒ์„ฑ ๋ฐ SQL ๋ฐ์ดํ„ฐ ํ’ˆ์งˆ ์ฒดํฌ (TIL 230509)

sunhokimDev 2023. 5. 10. 12:00

๐Ÿ“š KDT WEEK 6 DAY 2 TIL

  • Redshift ์ƒ์„ฑ
  • ์›น ์„œ๋น„์Šค์—์„œ ์‚ฌ์šฉ์ž์™€ ์„ธ์…˜ ์ •๋ณด
  • ๋ฐ์ดํ„ฐ ํ’ˆ์งˆ ์ฒดํฌ

 


 

๐ŸŸฅ Redshift Cluster ๋งŒ๋“ค์–ด๋ณด๊ธฐ

https://aws.amazon.com/ko/

 

ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค | ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ์†”๋ฃจ์…˜| Amazon Web Services

 

aws.amazon.com

Redshift๋Š” ์•„๋งˆ์กด์—์„œ ์ œ๊ณตํ•˜๋Š” ๋ฐ์ดํ„ฐ ์›จ์–ดํ•˜์šฐ์Šค ์„œ๋น„์Šค์ด๋‹ค.

์œ„ aws ์‚ฌ์ดํŠธ์—์„œ ๊ณ„์ •์„ ์ƒ์„ฑํ•˜๊ณ , redshift๋ฅผ ๊ฒ€์ƒ‰ํ•˜์—ฌ ํ•ด๋‹น ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

 

aws ๊ณ„์ • ์ƒ์„ฑ์—๋Š” ์ตœ์ดˆ ์นด๋“œ ๋“ฑ๋ก์ด ํ•„์š”ํ–ˆ๊ณ , 100์›์„ ์ด์ฒดํ–ˆ๋‹ค๊ฐ€ ๋‹ค์‹œ ๋Œ๋ ค์ค€๋‹ค.

๋‚ด๊ฐ€ ๋งŒ๋“ค Redshift ํด๋Ÿฌ์Šคํ„ฐ๋Š” ๋ฌด๋ฃŒ ๋ฒ„์ „์ด ์กด์žฌํ•˜์ง€๋งŒ ์‹œํ—˜์‚ผ์•„์„œ ์œ ๋ฃŒ ๋ฒ„์ „์„ ๋งŒ๋“ค์–ด ๋ณด๊ธฐ๋กœ ํ•œ๋‹ค.

 

๋กœ๊ทธ์ธํ›„, aws redshift ํ™”๋ฉด์— ์ ‘์†ํ•˜๊ณ  ๋ฐ‘์œผ๋กœ ์Šคํฌ๋กคํ•ด์„œ

Create cluster ๋ฒ„ํŠผ์„ ์ฐพ์•„ ํด๋ฆญํ•˜์—ฌ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.

๋นจ๊ฐ„ ๋„ค๋ชจ๋กœ ๋งˆํ‚นํ•œ 'Create cluster' ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ๋œ๋‹ค.

 

๋ฌด๋ฃŒ ๋ฒ„์ „(Serverless)์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•˜๋‹ค๋ฉด ์œ„์ชฝ์— ์‚ฌ์šฉํ•ด๋ณด๋ผ๊ณ  ๋ฉ”์‹œ์ง€๊ฐ€ ๋‚˜ํƒ€๋‚œ๋‹ค.

 

ํด๋Ÿฌ์Šคํ„ฐ ์‹๋ณ„์ž(์ด๋ฆ„)์„ ๋งŒ๋“ค๊ณ , ํฌ๊ธฐ๋ฅผ ์ง์ ‘ ์„ ํƒํ•œ๋‹ค.

 

์‹œํ—˜์‚ผ์•„ ๋งŒ๋“œ๋Š” ์œ ๋ฃŒ ๋ฒ„์ „์ด๋ฏ€๋กœ ์ œ์ผ ์ž‘์€ ๋…ธ๋“œ์™€ ๊ฐœ์ˆ˜๋กœ ์„ค์ •ํ–ˆ๋‹ค.

 

์ƒ˜ํ”Œ ๋ฐ์ดํ„ฐ์™€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ตฌ์„ฑ์€ ํ•˜๊ณ  ์‹ถ์€๋Œ€๋กœ ์„ค์ •ํ•˜๋ฉด ๋œ๋‹ค.

 

ํด๋Ÿฌ์Šคํ„ฐ ๊ถŒํ•œ์€ redshift์— ๋”ฐ๋กœ IAM ์—ญํ• ์„ ๋งŒ๋“ค์–ด์„œ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ƒ์„ฑํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด cluster๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์ „์— redshift IAM์„ ๋”ฐ๋กœ ๋จผ์ € ๋งŒ๋“ค์–ด๋‘๊ณ  ์—ฌ๊ธฐ์„œ ์ถ”๊ฐ€ํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค.

 

์ธํ„ฐ๋„ท์„ ์ฐธ๊ณ ํ•ด์„œ ์—ญํ• ์„ ๋งŒ๋“ค์—ˆ๋‹ค. (readonly ์˜ต์…˜)

 

๋งˆ์ง€๋ง‰์œผ๋กœ ์ถ”๊ฐ€ ๊ตฌ์„ฑ์—์„œ๋Š” ์‚ดํŽด๋ณด๊ณ  ํ•„์š”ํ•œ ๋ถ€๋ถ„์„ ์•Œ๋งž๊ฒŒ ์กฐ์œจํ•˜๋ฉด ๋œ๋‹ค.

๊ฐ•์˜์—์„œ๋Š” 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 ๋“ฑ)