๊ด€๋ฆฌ ๋ฉ”๋‰ด

data_lab

๋ฐ์ดํ„ฐ ํŒŒ์ดํ”„๋ผ์ธ ํ•ต์‹ฌ ๊ฐ€์ด๋“œ ๋ฆฌ๋ทฐ ์˜ˆ์ • ๋ณธ๋ฌธ

๋ฏธ์‚ฌ์šฉ/[ ๋ฐ์ดํ„ฐ ํŒŒ์ดํ”„๋ผ์ธ ํ•ต์‹ฌ ๊ฐ€์ด๋“œ๐Ÿฆ… ]

๋ฐ์ดํ„ฐ ํŒŒ์ดํ”„๋ผ์ธ ํ•ต์‹ฌ ๊ฐ€์ด๋“œ ๋ฆฌ๋ทฐ ์˜ˆ์ •

๐Ÿฐํžˆํžˆ 2022. 2. 15. 18:08

01์žฅ: ๋ฐ์ดํ„ฐ ํŒŒ์ดํ”„๋ผ์ธ ์†Œ๊ฐœ

๋ฐ์ดํ„ฐ ํŒŒ์ดํ”„๋ผ์ธ์ด๋ž€?
๋ˆ„๊ฐ€ ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ตฌ์ถ•ํ• ๊นŒ?
___SQL๊ณผ ๋ฐ์ดํ„ฐ ์›จ์–ดํ•˜์šฐ์ง• ๊ธฐ์ดˆ
___ํŒŒ์ด์ฌ ๊ทธ๋ฆฌ๊ณ /๋˜๋Š” ์ž๋ฐ”
___๋ถ„์‚ฐ ์ปดํ“จํŒ…
___๊ธฐ๋ณธ ์‹œ์Šคํ…œ ๊ด€๋ฆฌ
___๋ชฉํ‘œ ์ง€ํ–ฅ์  ์‚ฌ๊ณ ๋ฐฉ์‹
์™œ ๋ฐ์ดํ„ฐ ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ตฌ์ถ•ํ• ๊นŒ?
์–ด๋–ป๊ฒŒ ๋ฐ์ดํ„ฐ ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ตฌ์ถ•ํ• ๊นŒ?

02์žฅ: ์ตœ์‹  ๋ฐ์ดํ„ฐ ์ธํ”„๋ผ

๋ฐ์ดํ„ฐ ์†Œ์Šค์˜ ๋‹ค์–‘์„ฑ
___์†Œ์Šค ์‹œ์Šคํ…œ ์†Œ์œ ๊ถŒ
___์ˆ˜์ง‘ ์ธํ„ฐํŽ˜์ด์Šค ๋ฐ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ
___๋ฐ์ดํ„ฐ ์‚ฌ์ด์ฆˆ
___๋ฐ์ดํ„ฐ ํด๋ Œ์ง• ์ž‘์—…๊ณผ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ
___์†Œ์Šค ์‹œ์Šคํ…œ์˜ ์ง€์—ฐ ์‹œ๊ฐ„ ๋ฐ ๋Œ€์—ญํญ
ํด๋ผ์šฐ๋“œ ๋ฐ์ดํ„ฐ ์›จ์–ดํ•˜์šฐ์Šค ๋ฐ ๋ฐ์ดํ„ฐ ๋ ˆ์ดํฌ
๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ ๋„๊ตฌ
๋ฐ์ดํ„ฐ ๋ณ€ํ™˜ ๋ฐ ๋ชจ๋ธ๋ง ๋„๊ตฌ
์›Œํฌํ”Œ๋กœ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜ ํ”Œ๋žซํผ
___๋ฐฉํ–ฅ์„ฑ ๋น„์ˆœํ™˜ ๊ทธ๋ž˜ํ”„
๋ฐ์ดํ„ฐ ์ธํ”„๋ผ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•

03์žฅ: ์ผ๋ฐ˜์ ์ธ ๋ฐ์ดํ„ฐ ํŒŒ์ดํ”„๋ผ์ธ ํŒจํ„ด

ETL๊ณผ ELT
ETL์„ ๋„˜์–ด์„  ELT์˜ ๋“ฑ์žฅ
EtLT ํ•˜์œ„ ํŒจํ„ด
๋ฐ์ดํ„ฐ ๋ถ„์„์„ ์œ„ํ•œ ELT
๋ฐ์ดํ„ฐ ๊ณผํ•™์„ ์œ„ํ•œ ELT
๋ฐ์ดํ„ฐ ์ œํ’ˆ ๋ฐ ๋จธ์‹ ๋Ÿฌ๋‹์„ ์œ„ํ•œ ELT
___๋จธ์‹ ๋Ÿฌ๋‹ ํŒŒ์ดํ”„๋ผ์ธ์˜ ๋‹จ๊ณ„
___ํŒŒ์ดํ”„๋ผ์ธ์— ํ”ผ๋“œ๋ฐฑ ํ†ตํ•ฉ
___ML ํŒŒ์ดํ”„๋ผ์ธ์— ๋Œ€ํ•œ ์ถ”๊ฐ€ ์ž๋ฃŒ

04์žฅ: ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘: ๋ฐ์ดํ„ฐ ์ถ”์ถœ

ํŒŒ์ด์ฌ ํ™˜๊ฒฝ ์„ค์ •
ํด๋ผ์šฐ๋“œ ํŒŒ์ผ ์Šคํ† ๋ฆฌ์ง€ ์„ค์ •
MySQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๋ฐ์ดํ„ฐ ์ถ”์ถœ
___์ „์ฒด ๋˜๋Š” ์ฆ๋ถ„ MySQL ํ…Œ์ด๋ธ” ์ถ”์ถœ
___MySQL ๋ฐ์ดํ„ฐ์˜ ์ด์ง„ ๋กœ๊ทธ ๋ณต์ œ
PostgreSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๋ฐ์ดํ„ฐ ์ถ”์ถœ
___์ „์ฒด ๋˜๋Š” ์ฆ๋ถ„ Postgres ํ…Œ์ด๋ธ” ์ถ”์ถœ
___Write-Ahead ๋กœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•œ ๋ฐ์ดํ„ฐ ๋ณต์ œ
MongoDB์—์„œ ๋ฐ์ดํ„ฐ ์ถ”์ถœ
REST API์—์„œ ๋ฐ์ดํ„ฐ ์ถ”์ถœ
์นดํ”„์นด ๋ฐ Debezium์„ ํ†ตํ•œ ์ŠคํŠธ๋ฆฌ๋ฐ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘

05์žฅ: ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘: ๋ฐ์ดํ„ฐ ๋กœ๋“œ

Amazon Redshift ์›จ์–ดํ•˜์šฐ์Šค๋ฅผ ๋Œ€์ƒ์œผ๋กœ ๊ตฌ์„ฑ
Redshift ์›จ์–ดํ•˜์šฐ์Šค์— ๋ฐ์ดํ„ฐ ๋กœ๋“œ
___์ฆ๋ถ„ ๋ฐ ์ „์ฒด ๋กœ๋“œ
___CDC ๋กœ๊ทธ์—์„œ ์ถ”์ถœํ•œ ๋ฐ์ดํ„ฐ ๋กœ๋“œ
Snowflake ์›จ์–ดํ•˜์šฐ์Šค๋ฅผ ๋Œ€์ƒ์œผ๋กœ ๊ตฌ์„ฑ3
Snowflake ๋ฐ์ดํ„ฐ ์›จ์–ดํ•˜์šฐ์Šค์— ๋ฐ์ดํ„ฐ ๋กœ๋“œ
ํŒŒ์ผ ์Šคํ† ๋ฆฌ์ง€๋ฅผ ๋ฐ์ดํ„ฐ ๋ ˆ์ดํฌ๋กœ ์‚ฌ์šฉ
์˜คํ”ˆ ์†Œ์Šค ํ”„๋ ˆ์ž„์›Œํฌ
์ƒ์—…์  ๋Œ€์•ˆ

06์žฅ: ๋ฐ์ดํ„ฐ ๋ณ€ํ™˜ํ•˜๊ธฐ

๋น„๋ฌธ๋งฅ์  ๋ณ€ํ™˜
___ํ…Œ์ด๋ธ”์—์„œ ๋ ˆ์ฝ”๋“œ ์ค‘๋ณต ์ œ๊ฑฐ
___URL ํŒŒ์‹ฑ
์–ธ์ œ ๋ณ€ํ™˜ํ•  ๊ฒƒ์ธ๊ฐ€, ์ˆ˜์ง‘ ์ค‘ ํ˜น์€ ์ˆ˜์ง‘ ํ›„?
๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง ๊ธฐ์ดˆ
___์ฃผ์š” ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง ์šฉ์–ด
___์™„์ „ํžˆ ์ƒˆ๋กœ ๊ณ ์นจ ๋œ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง
___์™„์ „ํžˆ ์ƒˆ๋กœ ๊ณ ์นจ ๋œ ๋ฐ์ดํ„ฐ์˜ ์ฐจ์›์„ ์ฒœ์ฒœํžˆ ๋ณ€๊ฒฝ
___์ฆ๋ถ„ ์ˆ˜์ง‘๋œ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง
___์ถ”๊ฐ€ ์ „์šฉ(Append-only) ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง
___๋ณ€๊ฒฝ ์บก์ฒ˜ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง

07์žฅ: ํŒŒ์ดํ”„๋ผ์ธ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜

___๋ฐฉํ–ฅ์„ฑ ๋น„์ˆœํ™˜ ๊ทธ๋ž˜ํ”„
์•„ํŒŒ์น˜ ์—์–ดํ”Œ๋กœ์šฐ ์„ค์ • ๋ฐ ๊ฐœ์š”
___์„ค์น˜ ๋ฐ ๊ตฌ์„ฑ
___์—์–ดํ”Œ๋กœ์šฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
___์›น ์„œ๋ฒ„ ๋ฐ UI
___์Šค์ผ€์ค„๋Ÿฌ
___์‹คํ–‰๊ธฐ(Executors)
___์—ฐ์‚ฐ์ž(Operators)
์—์–ดํ”Œ๋กœ์šฐ DAG ๊ตฌ์ถ•
___๊ฐ„๋‹จํ•œ DAG
___ELT ํŒŒ์ดํ”„๋ผ์ธ DAG
์ถ”๊ฐ€ ํŒŒ์ดํ”„๋ผ์ธ ์ž‘์—…
___๊ฒฝ๊ณ  ๋ฐ ์•Œ๋ฆผ
___๋ฐ์ดํ„ฐ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ
๊ณ ๊ธ‰ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜ ๊ตฌ์„ฑ
___๊ฒฐํ•ฉ๋œ ํŒŒ์ดํ”„๋ผ์ธ ์ž‘์—… ๋Œ€ ๊ฒฐํ•ฉ๋˜์ง€ ์•Š์€ ํŒŒ์ดํ”„๋ผ์ธ ์ž‘์—…
___DAG๋ฅผ ๋ถ„ํ• ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ
___์„ผ์„œ๋กœ ์—ฌ๋Ÿฌ DAG ์กฐ์ •
๊ด€๋ฆฌํ˜• ์—์–ดํ”Œ๋กœ์šฐ ์˜ต์…˜
๊ธฐํƒ€ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜ ํ”„๋ ˆ์ž„์›Œํฌ
์ผ์ฐ ๊ทธ๋ฆฌ๊ณ  ์ž์ฃผ ๊ฒ€์ฆํ•  ๊ฒƒ

08์žฅ: ํŒŒ์ดํ”„๋ผ์ธ์˜ ๋ฐ์ดํ„ฐ ๊ฒ€์ฆ

___์†Œ์Šค ์‹œ์Šคํ…œ ๋ฐ์ดํ„ฐ ํ’ˆ์งˆ
___๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ ์œ„ํ—˜
___๋ฐ์ดํ„ฐ ๋ถ„์„๊ฐ€ ๊ฒ€์ฆ ํ™œ์„ฑํ™”
๊ฐ„๋‹จํ•œ ๊ฒ€์ฆ ํ”„๋ ˆ์ž„์›Œํฌ
___์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๊ธฐ ํ”„๋ ˆ์ž„์›Œํฌ ์ฝ”๋“œ
___๊ฒ€์ฆ ํ…Œ์ŠคํŠธ์˜ ๊ตฌ์กฐ
___๊ฒ€์ฆ ํ…Œ์ŠคํŠธ ์‹คํ–‰
___์—์–ดํ”Œ๋กœ์šฐ DAG์—์„œ์˜ ์‚ฌ์šฉ
___ํŒŒ์ดํ”„๋ผ์ธ์„ ์ค‘๋‹จํ•ด์•ผ ํ•  ๋•Œ์™€ ๊ฒฝ๊ณ ํ•˜๊ณ  ๊ณ„์†ํ•ด์•ผ ํ•  ๋•Œ
___ํ”„๋ ˆ์ž„์›Œํฌ์˜ ํ™•์žฅ
๊ฒ€์ฆ ํ…Œ์ŠคํŠธ ์˜ˆ์ œ
___์ˆ˜์ง‘ ํ›„ ์ค‘๋ณต๋œ ๋ ˆ์ฝ”๋“œ
___์ˆ˜์ง‘ ํ›„์˜ ์˜ˆ๊ธฐ์น˜ ์•Š์€ ํ–‰ ๊ฐœ์ˆ˜
___์ง€ํ‘œ ๊ฐ’ ๋ณ€๋™
์ƒ์šฉ ๋ฐ ์˜คํ”ˆ ์†Œ์Šค ๋ฐ์ดํ„ฐ ๊ฒ€์ฆ ํ”„๋ ˆ์ž„์›Œํฌ
์†Œ์Šค ์‹œ์Šคํ…œ์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ ์ฒ˜๋ฆฌ

09์žฅ: ํŒŒ์ดํ”„๋ผ์ธ ์œ ์ง€ ๊ด€๋ฆฌ ๋ชจ๋ฒ” ์‚ฌ๋ก€

___์ถ”์ƒํ™” ๋„์ž…
___๋ฐ์ดํ„ฐ ๊ณ„์•ฝ ์œ ์ง€ ๊ด€๋ฆฌ
___Schema-on-Read์˜ ๊ณ ๋ ค์‚ฌํ•ญ
ํ™•์žฅ ๋ณต์žก์„ฑ
___๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ ํ‘œ์ค€ํ™”
___๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง ๋กœ์ง์˜ ์žฌ์‚ฌ์šฉ
___์ข…์†์„ฑ ๋ฌด๊ฒฐ์„ฑ ๋ณด์žฅ
์ค‘์š” ํŒŒ์ดํ”„๋ผ์ธ ์ง€ํ‘œ

10์žฅ: ํŒŒ์ดํ”„๋ผ์ธ ์„ฑ๋Šฅ ์ธก์ • ๋ฐ ๋ชจ๋‹ˆํ„ฐ๋ง

๋ฐ์ดํ„ฐ ์›จ์–ดํ•˜์šฐ์Šค ์ค€๋น„
___๋ฐ์ดํ„ฐ ์ธํ”„๋ผ ์Šคํ‚ค๋งˆ
์„ฑ๋Šฅ ๋ฐ์ดํ„ฐ ๋กœ๊น… ๋ฐ ์ˆ˜์ง‘
___์—์–ดํ”Œ๋กœ์šฐ์—์„œ DAG ์‹คํ–‰ ๊ธฐ๋ก ์ˆ˜์ง‘
___๋ฐ์ดํ„ฐ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๊ธฐ์— ๋กœ๊น… ์ถ”๊ฐ€
์„ฑ๋Šฅ ๋ฐ์ดํ„ฐ ๋ณ€ํ™˜
___DAG ์„ฑ๊ณต๋ฅ 
___์‹œ๊ฐ„ ๊ฒฝ๊ณผ์— ๋”ฐ๋ฅธ DAG ๋Ÿฐํƒ€์ž„ ๋ณ€๊ฒฝ
___๊ฒ€์ฆ ํ…Œ์ŠคํŠธ ๋ณผ๋ฅจ ๋ฐ ์„ฑ๊ณต๋ฅ 
์„ฑ๋Šฅ ํŒŒ์ดํ”„๋ผ์ธ ์กฐ์ •
___DAG์˜ ์„ฑ๋Šฅ
์„ฑ๋Šฅ ํˆฌ๋ช…์„ฑ

728x90
๋ฐ˜์‘ํ˜•