๋ฐ์ดํฐ ํ์ดํ๋ผ์ธ์ ์ค๊ณํ ๋ ๊ฐ์ฅ ๋จผ์ ๊ฒฐ์ ํด์ผ ํ๋ ๊ฒ์ด ์๋ค.
๋ฐ์ดํฐ๋ฅผ ๋ชจ์์ ํ ๋ฒ์ ์ฒ๋ฆฌํ ๊ฒ์ธ๊ฐ?
์๊ธฐ๋ ์ฆ์ ์ฒ๋ฆฌํ ๊ฒ์ธ๊ฐ?
๋ฐฐ์น (Batch)
- ๋ฐ์ดํฐ๋ฅผ ์ผ์ ์ฃผ๊ธฐ๋ก ๋ชจ์๋๋ค๊ฐ ํ ๋ฒ์ ์ฒ๋ฆฌํ๋ ๋ฐฉ์
์์ 00:00 → ํ๋ฃจ์น ์ฃผ๋ฌธ ๋ฐ์ดํฐ ์์ง
00:10 → ๋ณํ (dbt run)
00:30 → ์จ์ดํ์ฐ์ค ์ ์ฌ ์๋ฃ
09:00 → ๋ถ์๊ฐ๊ฐ ๋์๋ณด๋ ํ์ธ
| ํญ๋ชฉ |
๋ด์ฉ |
| ์ฒ๋ฆฌ ์ฃผ๊ธฐ |
์๊ฐ / ์ผ / ์ฃผ ๋จ์ |
| ์ง์ฐ |
๋์ (๋ช ์๊ฐ ~ ํ๋ฃจ) |
| ๊ตฌํ ๋์ด๋ |
๋ฎ์ |
| ๋น์ฉ |
์ ๋ ด |
| ๋ํ ๋๊ตฌ |
Airflow + dbt, Spark |
- ๋ฐฐ์น๊ฐ ์ ํฉํ ๊ฒฝ์ฐ
- ์ผ๋ณ ๋งค์ถ ๋ฆฌํฌํธ
- ์๋ณ ์ ์ฐ
- ๋จธ์ ๋ฌ๋ ํ์ต ๋ฐ์ดํฐ ์ค๋น
- ๋๋ถ๋ถ์ BI ๋์๋ณด๋
์คํธ๋ฆฌ๋ฐ (Streaming)
- ๋ฐ์ดํฐ๊ฐ ์๊ธฐ๋ ์ฆ์ ์ฒ๋ฆฌํ๋ ๋ฐฉ์
์ฃผ๋ฌธ ๋ฐ์ → 0.1์ด ์์ ์ฒ๋ฆฌ → ์ค์๊ฐ ๋์๋ณด๋ ๋ฐ์
| ํญ๋ชฉ |
๋ด์ฉ |
| ์ฒ๋ฆฌ ์ฃผ๊ธฐ |
์ค์๊ฐ (๋ฐ๋ฆฌ์ด ~ ์ด ๋จ์) |
| ์ง์ฐ |
๋ฎ์ |
| ๊ตฌํ ๋์ด๋ |
๋์ |
| ๋น์ฉ |
๋น์ |
| ๋ํ ๋๊ตฌ |
Kafka, Spark Straming, Flink |
- ์คํธ๋ฆฌ๋ฐ์ด ์ ํฉํ ๊ฒฝ์ฐ
- ์ค์๊ฐ ์ฌ๊ธฐ ํ์ง (๊ฒฐ์ ์งํ ์ด์ ๊ฐ์ง)
- ์ค์๊ฐ ์ฌ๊ณ ํํฉ
- ๋ผ์ด๋ธ ์ด๋ฒคํธ ๋ชจ๋ํฐ๋ง
- ๋ฐฐ๋ฌ ์ฑ ์ค์๊ฐ ์์น ์ถ์
์ ํ ๊ธฐ์ค
"๋ฐ์ดํฐ๊ฐ ๋ช ๋ถ ~ ๋ช ์๊ฐ ๋ฆ์ด๋ ๊ด์ฐฎ์๊ฐ?"
↓ YES ↓ NO
๋ฐฐ์น๋ก ์ถฉ๋ถ ์คํธ๋ฆฌ๋ฐ ๊ณ ๋ ค
"๊ตฌํ ๋ณต์ก๋์ ๋น์ฉ์ ๊ฐ๋นํ ์ ์๋๊ฐ?"
↓ YES ↓ NO
์คํธ๋ฆฌ๋ฐ ๊ฐ๋ฅ ๋ฐฐ์น๋ก ํํ