์ฑํฐ3 :๋น ๋ฐ์ดํฐ์ ๋ถ์ฐ์ฒ๋ฆฌ
3-1 ๋๊ท๋ชจ ๋ถ์ฐ ์ฒ๋ฆฌ์ ํ๋ ์์ํฌ
๊ตฌ์กฐํ ๋ฐ์ดํฐ์ ๋น๊ตฌ์กฐํ ๋ฐ์ดํฐ
- ์คํค๋ง๊ฐ ๋ช ํํ๊ฒ ์ ์๋ ๋ฐ์ดํฐ๋ฅผ ‘๊ตฌ์กฐํ๋ ๋ฐ์ดํฐ’
- ์คํค๋ง๊ฐ ์๋ ๋ฐ์ดํฐ๋ ‘๋น๊ตฌ์กฐํ ๋ฐ์ดํฐ’
- ๋น๊ตฌ์กฐํ ๋ฐ์ดํฐ๋ฅผ ๋ถ์ฐ ์คํ ๋ฆฌ์ง ๋ฑ์ ์ ์ฅํ๊ณ ๊ทธ๊ฒ์ ๋ถ์ฐ ์์คํ ์์ ์ฒ๋ฆฌํ๋ ๊ฒ์ด ๋ฐ์ดํฐ ๋ ์ดํฌ์ ๊ฐ๋
์คํค๋ง๋ฆฌ์ค ๋ฐ์ดํฐ
CSV,JSON,XML ๋ฑ์ ๋ฐ์ดํฐ๋ ์์์ ์ ํด์ ธ ์์ง๋ง, ์นผ๋ผ ์๋ ๋ฐ์ดํฐํ์ ๋ช ํํ์ง ์์ ‘์คํค๋ง๋ฆฌ์ค ๋ฐ์ดํฐ’๋ผ๊ณ ๋ถ๋ฅธ๋ค.
๋ฐ์ดํฐ ๊ตฌ์กฐํ์ ํ์ดํ๋ผ์ธ
- ์ผ๋ฐ์ ์ผ๋ก ๊ตฌ์กฐํ ๋ฐ์ดํฐ๋ ๋ฐ์ดํฐ์ ์์ถ๋ฅ ์ ๋์ด๊ธฐ ์ํด ์ด ์งํฅ ์คํ ๋ฆฌ์ง๋ก ์ ์ฅํ๋ค.
- ๊ตฌ์กฐํ ๋ฐ์ดํฐ ์ค ์๊ฐ์ ๋ฐ๋ผ ์ฆ๊ฐํ๋ ๋ฐ์ดํฐ๋ฅผ ํฉํธ ํ ์ด๋ธ, ๊ทธ์ ๋ฐ๋ฅธ ๋ถ์ ๋ฐ์ดํฐ๋ฅผ ๋๋ฉ์ ํ ์ด๋ธ๋ก ์ทจ๊ธํ๋ค.
๋น๊ตฌ์กฐํ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด ์ด ์งํฅ ์คํ ๋ฆฌ์ง๋ก ๋ณํํ๋ ๊ณผ์ ์์ ๋ฐ์ดํฐ์ ๊ฐ๊ณต ๋ฐ ์์ถ์ ์ํด ๋ง์ ์ปดํจํฐ ๋ฆฌ์์ค๊ฐ ์๋น๋๋ค.
→ ๊ทธ๋์ ์ฌ์ฉ๋๋ ๊ฒ์ด Hadoop๊ณผ Spark ๋ฑ์ ๋ถ์ฐ ์ฒ๋ฆฌ ํ๋ ์์ํฌ์ด๋ค.
Hadoop
ํ๋ก์ ๋จ์ผ ์ํํธ์จ์ด๊ฐ ์๋ ๋ถ์ฐ ์์คํ ์ ๊ตฌ์ฑํ๋ ๋ค์์ ์ํํธ์จ์ด๋ก ์ด๋ฃจ์ด์ง ์งํฉ์ฒด๋ค.
- ํ๋ก์ ๊ธฐ๋ณธ ๊ตฌ์ฑ ์์(๋ํ, ์ผ๋ถ)
- ‘๋ถ์ฐ ํ์ผ ์์คํ ’ → HDFS
- ‘๋ฆฌ์์ค ๊ด๋ฆฌ์’ → YARN
- ‘๋ถ์ฐ ๋ฐ์ดํฐ ์ฒ๋ฆฌ’ → MapReduce
๋ค์ํ ์ํํธ์จ์ด ์ค ์์ ์๊ฒ ๋ง๋ ๊ฒ์ ์ ํํ๊ณ ๊ทธ๊ฒ๋ค์ ์กฐํฉํจ์ผ๋ก์จ ์์คํ ์ ๊ตฌ์ฑํ๋ ๊ฒ์ด
Hadoop์ ์ค์ฌ์ผ๋ก ํ๋ ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ํน์ง์ด๋ค.
๋ถ์ฐ ํ์ผ ์์คํ ๊ณผ ๋ฆฌ์์ค ๊ด๋ฆฌ์ (HDFS, YARN)
- ๋ค์์ ์ปดํจํฐ์ ํ์ผ์ ๋ณต์ฌํ์ฌ ์ค๋ณต์ฑ์ ๋์ธ๋ค๋ ํน์ง์ด ์๋ค.
- CPU๋ ๋ฉ๋ชจ๋ฆฌ ๋ฑ์ ๊ณ์ฐ ๋ฆฌ์์ค๋ YARN์ ์ํด ๊ด๋ฆฌ๋๋ค.
- YARN์ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ฌ์ฉํ๋ CPU ์ฝ์ด์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ‘์ปจํ ์ด๋’๋ผ ๋ถ๋ฆฌ๋ ๋จ์๋ก ๊ด๋ฆฐํ๋ค.
- ํ๋ก์์ ๋ถ์ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ๋ฉด YARN์ด ํด๋ฌ์คํฐ ์ ์ฒด์ ๋ถํ๋ฅผ ๋ณด๊ณ ๋น์ด์๋ ํธ์คํธ๋ถํฐ ์ปจํ ์ด๋๋ฅผ ํ ๋นํ๋ค.
*YARN ์ปจํ ์ด๋
→ ๋์ปค๋ฅผ ๋ ์ฌ๋ฆฌ๋ ์ฌ๋๋ ์์ ๊ฒ์ด๋ค. YARN์ ์ปจํ ์ด๋๋ OS์์ค์ ๊ฐ์ํ ๊ธฐ์ ์ด ์๋๋ผ ์ด๋ค ํธ์คํธ์์
์ด๋ค ํ๋ก์ธ์ค๋ฅผ ์คํ์ํฌ ๊ฒ์ธ์ง ๊ฒฐ์ ํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์์ค์ ๊ธฐ์ ์ด๋ค.
๋ถ์ฐ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๋ฐ ์ฟผ๋ฆฌ ์์ง (MapReduce, Hive)
MapReduce๋ ์์์ ์๋ฐ ํ๋ก๊ทธ๋จ์ ์คํ์ํฌ ์ ์๊ธฐ ๋๋ฌธ์ ๋น๊ตฌ์กฐํ ๋ฐ์ดํฐ๋ฅผ ๊ฐ๊ณตํ๋ ๋ฐ ์ ํฉํ๋ค.
- MapReduce๋ ๋๋์ ๋ฐ์ดํฐ๋ฅผ ๋ฐฐ์น ์ฒ๋ฆฌํ๊ธฐ ์ํ ์์คํ ์ด๋ค
- ์์ ํ๋ก๊ทธ๋จ ์คํ์ ์ํด์๋ผ๋ฉด ์ค๋ฒํค๋๊ฐ ๋๋ฌด ํฌ๊ธฐ ๋๋ฌธ์ ๋ช ์ด ์์ ๋๋๋ฒ๋ฆฌ๋ ์ฟผ๋ฆฌ ์คํ์๋ ์ ํฉํ์ง ์๋ค.
- Hive๋ ๋ง์ฐฌ๊ฐ์ง์ด๋ค. ์๊ฐ์ด ๊ฑธ๋ฆฌ๋ ๋ฐฐ์น ์ฒ๋ฆฌ์๋ ์ ํฉํ๋, ์ ๋ ํ ์ฟผ๋ฆฌ๋ฅผ ์ฌ๋ฌ ๋ฒ ์คํํ๋ ๋ฐ๋ ๋ถ์ ํฉํ๋ค.
Hive On Tez
Hive๋ฅผ ๊ฐ์ํํ๊ธฐ ์ํ ๋ ธ๋ ฅ์ผ๋ก ๊ฐ๋ฐ๋ ๊ฒ์ด Apache Tez์ด๋ค.
*Hive on Spark → Apache Spark๋ฅผ ์ฌ์ฉํด Hive๋ฅผ ๊ณ ์ํ ํ๋ ๊ฐ๋ฐ๋ ์งํ๋๊ณ ์๋ค.
๋ํํ ์ฟผ๋ฆฌ ์์ง (Impala, Presto)
- Presto์ Impala๋ YARN๊ณผ ๊ฐ์ ๋ฒ์ฉ์ ์ธ ๋ฆฌ์์ค ๊ด๋ฆฌ์๋ฅผ ์ฌ์ฉํ์ง ์๊ณ SQL์ ์คํ๋ง ํนํํ
๋ ์์ ์ธ ๋ถ์ฐ ์ฒ๋ฆฌ๋ฅผ ๊ตฌํํ๊ณ ์๋ค.
-๋๋์ ๋น๊ตฌ์กฐํ ๋ฐ์ดํฐ๋ฅผ ๊ฐ๊ณตํ๋ ๋ฌด๊ฑฐ์ด ๋ฐฐ์น ์ฒ๋ฆฌ์๋ ๋์ ์ฒ๋ฆฌ๋์ผ๋ก ๋ฆฌ์์ค๋ฅผ ํ์ฉํ ์ ์๋ Hive
-๊ทธ๋ ๊ฒ ํด์ ์์ฑํ ๊ตฌ์กฐํ ๋ฐ์ดํฐ๋ฅผ ๋ํ์์ผ๋ก ์ง๊ณํ๊ณ ์ ํ ๋๋ ์ง์ฐ์ด ์ ์ Impala์ Presto ๋ฑ์ด ์ ํฉํ๋ค.
Spark
Hadoop์ ์ฐ์ฅ์ ์์ ์๋ Tez์ ๋ฌ๋ฆฌ Spark๋ Hadoop๊ณผ๋ ๋ค๋ฅธ ๋ ๋ฆฝ๋ ํ๋ก์ ํธ๋ค.
Spark์ ํน์ง์ ๋๋์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ์ฉํ์ฌ ๊ณ ์ํ๋ฅผ ์คํํ๋ ๊ฒ์ด๋ค.
MapReduce ๋์ฒดํ๊ธฐ
- Spark์์๋ ์คํธ๋ฆผ ์ฒ๋ฆฌ๋ฅด ์ํํ๊ธฐ ์ํ Spark Streaming์ด๋ผ๋ ๊ธฐ๋ฅ์ด ์ฒ์๋ถํฐ ํฌํจ๋์ด ์๋ค.
- ๋ฐ๋ผ์ ๋๊ท๋ชจ ๋ฐฐ์น ์ฒ๋ฆฌ ๋ฟ๋ง ์๋๋ผ SQL์ ์ํ ๋ํํ ์ฟผ๋ฆฌ ์คํ๊ณผ ์ค์๊ฐ ์คํธ๋ฆผ ์ฒ๋ฆฌ์ ์ด๋ฅด๊ธฐ๊น์ง ๋๋ฆฌ ์ด์ฉ๋๊ณ ์๋ค.
3-2 ์ฟผ๋ฆฌ์์ง
๋ฐ์ดํฐ ๋งํธ ๊ตฌ์ถ์ ํ์ดํ๋ผ์ธ
- ์ฒ์์ ๋ถ์ฐ ์คํ ๋ฆฌ์ง์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์กฐํํ๊ณ ์ด ์งํฅ ์คํ ๋ฆฌ์ง ํ์์ผ๋ก ์ ์ฅํ๋ค(Hive๋ฅผ ์ด์ฉ)
- ์์ฑํ ๊ตฌ์กฐํ ๋ฐ์ดํฐ๋ฅผ ๊ฒฐํฉ, ์ง๊ณํ๊ณ ๋น์ ๊ทํ ํ
์ด๋ธ๋ก ๋ฐ์ดํฐ ๋งํธ์ ์จ์ ๋ด๋ณด๋ธ๋ค.
→ ์ด ์งํฅ ์คํ ๋ฆฌ์ง๋ฅผ ์ด์ฉํ ์ฟผ๋ฆฌ์ ์คํ์๋ Presto๋ฅผ ์ฌ์ฉํด ์คํ์๊ฐ์ ๋จ์ถํ ์ ์๋ค. - Hive์์ ๋ง๋ ๊ฐ ํ ์ด๋ธ์ ์ ๋ณด๋ ‘Hive ๋ฉํ ์คํ ์ด’๋ผ๊ณ ๋ถ๋ฆฌ๋ ํน๋ณํ DB์ ์ ์ฅ๋๋ค.
์๋ธ ์ฟผ๋ฆฌ ์์์ ๋ ์ฝ๋ ์ ์ค์ด๊ธฐ
// ๋นํจ์จ์ ์ธ ์ฟผ๋ฆฌ์ ์
//ํ
์ด๋ธ์ ๊ฒฐํฉํ ํ์ WHERE ๋ก ๊ฒ์
SELECT ...
FROM access_log a
JOIN users b ON b.id = a.user_id
WHERE b.created_at = '2017-01-01'
//๋ณด๋ค ํจ์จ์ ์ธ ์ฟผ๋ฆฌ์ ์์
SELECT ...
FROM(
SELECT * access_log
WHERE time >= TIMESTAMP '2017-01-01 00:00:00'
) a
JOIN users b ON b.id = a.user_id
WHERE b.created_at = '2017-01-01'
- ์๋ธ์ฟผ๋ฆฌ ์์์ ํฉํธํ ์ด๋ธ์ ์๊ฒ ํ๋ ๊ฒ์ด ํ์คํ๋ค.
- ๊ฐ๋ฅํ ‘์ด๊ธฐ์ ํฉํธ ํ ์ด๋ธ์ ์๊ฒํ๋ ๊ฒ’์ด ์ค์ํ๋ค.
๋ํํ ์ฟผ๋ฆฌ ์์ง Presto์ ๊ตฌ์กฐ
ํ๋ฌ๊ทธ์ธ ๊ฐ๋ฅํ ์คํ ๋ฆฌ์ง
Presto์ ํ๋์ ํน์ง์ด ํ๋ฌ๊ทธ์ธ ๊ฐ๋ฅํ ์คํ ๋ฆฌ์ง ์ค๊ณ๋ค.
- Presto๋ ์ ์ฉ ์คํ ๋ฆฌ์ง๋ฅผ ๊ฐ๊ณ ์์ง ์์ผ๋ฏ๋ก Hive์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ค์ํ ๋ฐ์ดํฐ ์์ค์์ ์ง์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด ๋ค์ธ๋ค.
CPU ์ฒ๋ฆฌ์ ์ต์ ํ
Presto๋ SQL์ ์คํ์ ํนํ๋ ์์คํ
์ผ๋ก ์ฟผ๋ฆฌ๋ฅผ ๋ถ์ํด ์ต์ ์ ์คํ ๊ณํ์ ์์ฑ → ์๋ฐ์ ๋ฐ์ดํธ ์ฝ๋๋ก ๋ณํ
→ ๋ฐ์ดํธ ์ฝ๋๋ Presto์ ์์ปค ๋
ธ๋์ ๋ฐฐํฌ → ๊ทธ๊ฒ์ ๋ฐํ์ ์์คํ
์ ์ํด ๊ธฐ๊ณ ์ฝ๋๋ก ์ปดํ์ผ๋๋ค.
Presto ์ฟผ๋ฆฌ๋ ์ผ๋จ ์คํ์ด ์์๋๋ฉด ์ค๊ฐ์ ๋ผ์ด๋ค ์ ์๊ธฐ ๋๋ฌธ์, ๋๋ฌด ํฐ ์ฟผ๋ฆฌ๋ฅผ ์คํํด์๋ ์ ๋๋ค.
์ธ ๋ฉ๋ชจ๋ฆฌ ์ฒ๋ฆฌ์ ์ํ ๊ณ ์ํ
Presto๋ ์ฟผ๋ฆฌ์ ์คํ ๊ณผ์ ์์ ๋์คํฌ์ ์ฐ๊ธฐ๋ฅผ ํ์ง ์๋๋ค.
๋ชจ๋ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ฅผ ๋ฉ๋ชจ๋ฆฌ์์์ ์ค์ํ๊ณ ๋ฉ๋ก๋ฆฌ๊ฐ ๋ถ์กฑํ๋ฉด ์ฌ์ ๊ฐ ์๊ธธ๋ ๊น์ง ๊ธฐ๋ค๋ฆฌ๊ฑฐ๋ ์ค๋ฅ๋ก ์คํจํ๋ค.
๋ถ์ฐ ๊ฒฐํฉ๊ณผ ๋ธ๋ก๋์บ์คํธ ๊ฒฐํฉ
- Presto๋ ๊ธฐ๋ณธ์ ์ผ๋ก ๋ถ์ฐ ๊ฒฐํฉ์ ์ค์ํ๋ฉฐ ๊ฐ์ ํค๋ฅผ ๊ฐ๋ ๋ฐ์ดํฐ๋ ๋์ผํ ๋ ธ๋์ ๋ชจ์ธ๋ค.
- ํ์ชฝ ํ ์ด๋ธ์ด ์ถฉ๋ถํ ์์ ๊ฒฝ์ฐ ๋ธ๋ก๋์บ์คํธ ๊ฒฐํฉ์ ์ฌ์ฉํด ์๋๋ฅผ ๊ณ ์ํํ ์ ์๋ค.
๋ฐ์ดํฐ ๋ถ์์ ํ๋ ์์ํฌ ์ ํํ๊ธฐ
MPP๋ฐ์ดํฐ๋ฒ ์ด์ค
- ์คํ ๋ฆฌ์ง ๋ฐ ๊ณ์ฐ ๋ ธ๋๊ฐ ์ผ์ฒดํ๋์ด ์์ด ์ฒ์์ ETL ํ๋ก์ธ์ค ๋ฑ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๋ ์ ์ฐจ๊ฐ ํ์ํ๋ค
- ๊ทธ ๋ค์์ SQL๋ง์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ง๊ณํ ์ ์๋ค.
Hive
- ํ๋ก ์์ ๋ถ์ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๋๋ถํฐ ๋์ ํ์ฅ์ฑ๊ณผ ๋ด๊ฒฐํจ์ฑ์ ๋ชฉํ๋ก ์ค๊ณ๋์ด ์๋ค.
- ํ์ด๋ธ๋ ์์ผ๋ก๋ ๋ฐ์ดํฐ์์ ์ข์ฐ๋์ง ์๋ ์ฟผ๋ฆฌ ์์ง์ผ๋ก ๊ณ์ ์ด์ฉ๋ ๊ฒ์ผ๋ก ์์๋๋ค.
Presto
- ํ์ด๋ธ์ ์ ๋ฐ๋์ธ ์ฟผ๋ฆฌ์์ง์ผ๋ก ์๋๋ก ์ธํด ๋ค์ํ ๊ฒ์ ํฌ์ํ๋ค.
- ๋ํ์ ์ฟผ๋ฆฌ์ ์คํ์ ํนํ๋์ด ์๊ธฐ ๋๋ฌธ์ ํ ์คํธ ์ฒ๋ฆฌ๊ฐ ์ค์ฌ์ด ๋๋ ETLํ๋ก์ธ์ค ๋ฐ ๋ฐ์ดํฐ ๊ตฌ์กฐํ์๋ ์ ํฉํ์ง ์๋ค.
- ๋ฐ์ดํฐ ๊ตฌ์กฐํ์๋ Hive์ Spark๋ฅผ ์ฌ์ฉํ๋ ํธ์ด ์ข๋ค.
Spark
- ์ธ ๋ฉ๋ชจ๋ฆฌ์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๊ฐ ์ค์ฌ์ด๋ฉฐ ๋ํํ ์ฟผ๋ฆฌ ์คํ์ ์ ํฉํ๋ค.
- ETLํ๋ก์ธ์ค์์ SQL์ ์ด๋ฅด๊ธฐ ๊น์ง์ ์ผ๋ จ์ ํ๋ฆ์ ํ๋์ ๋ฐ์ดํฐ ํ์ดํ๋ผ์ธ์ผ๋ก ๊ธฐ์ ํ ์ ์๋ค๋ ์ ์ด ์ฅ์ ์ด๋ค.
- ์คํํฌ์์๋ ๋ฉ๋ชจ๋ฆฌ๋ฅด ์ด๋ป๊ฒ ๊ด๋ฆฌํ๋๊ฐ ์ค์ํ๋ค.
3-3 ๋ฐ์ดํฐ ๋งํธ์ ๊ตฌ์ถ
ํฉํธ ํ ์ด๋ธ
๋น ๋ฐ์ดํฐ ๋ถ์์ ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์กฐํํ๋ ๊ฒ๋ถํฐ ์์ํ๋๋ฐ, ๊ทธ์ค์์๋ ์๋์ ์ผ๋ก ๋ง์ ๋ถ๋ถ์ ์ฐจ์งํ๋ ๊ฒ์ด ํฉํธ ํ ์ด๋ธ์ด๋ค.
ํฉํธ ํ ์ด๋ธ์ ์์ฑ
ํ ์ด๋ธ ํํฐ์ ๋
ํฉํธ ํ ์ด๋ธ ํจ์จ๋ง ์๊ฐํ๋ฉด ์ถ๊ฐ๊ฐ ์ ๋ฆฌํ๋ค ๊ทธ๋ฌ๋ ์๋๊ฐ์ ๋ฌธ์ ์ ์ด์๋ค.
- ์ถ๊ฐ์ ์คํจํ ๊ฒ์ ์์์ฑ์ง ๋ชปํ๋ฉด ํฉํธ ํ ์ด๋ธ์ ์ผ๋ถ์ ๊ฒฐ์์ด ๋ฐ์ํ๋ค.
- ์ถ๊ฐ๋ฅผ ์๋ชปํด ์ฌ๋ฌ๋ฒ ์คํํ๋ฉด ์ผ๋ถ๊ฐ ์ค๋ณต๋๋ค.
- ๋์ค์ ํฉํธ ํ ์ด๋ธ์ ๋ค์ ๋ง๋ค๊ณ ์ถ์ ๊ฒฝ์ฐ์ ๊ด๋ฆฌ๊ฐ ๋ณต์กํด์ง๋ค.
์ด๋ฐ ๋ฌธ์ ๊ฐ ์ผ์ด๋ ๊ฐ๋ฅ์ฑ์ ์ค์ด๊ธฐ ์ํด ํ ์ด๋ธ ํํฐ์ ๋์ ๊ธฐ์ ํ๋ค.
ํ๋์ ํ ์ด๋ธ์ ์ฌ๋ฌ ๋ฌผ๋ฆฌ์ ์ธ ํํฐ์ ์ผ๋ก ๋๋์ผ๋ก ํํฐ์ ๋จ์๋ก ์ ๋ฆฌํด ๋ฐ์ดํฐ๋ฅผ ์ฐ๊ฑฐ๋ ์ญ์ ํ ์ ์๋๋ก ํ ๊ฒ์ด๋ค.
๋ฐ์ดํฐ ๋งํธ์ ์นํ
ํ ์ด๋ธ ํํฐ์ ๋์ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค๋ฅผ ๊ตฌ์ถํ๋ ๋ฐ ์ ์ฉํ๋ค.
ํฉํธ ํ ์ด๋ธ ์ ์ฒด๋ฅผ ์นํํ๋ ๊ฒ์ ๋ง์ ์ฅ์ ์ด ์๋ค.
- ์ค๊ฐ ๋ฐ์ดํฐ๊ฐ ์ค๋ณต๋๊ฑฐ๋ ๋น ๋จ๋ฆด ๊ฐ๋ฅ์ฑ์ด ๊ฑฐ์ ์๋ค.
- ์คํค๋ง ๋ณ๊ฒฝ๋ฑ์ ์ ์ฐํ๊ฒ ๋์ํ ์ ์๋ค.
- ์ ์ผํ๊ฒ ์ฐ๋ ค๋๋ ๊ฒ์ ์ฒ๋ฆฌ ์๊ฐ์ด๋ค.
์ง๊ณ ํ ์ด๋ธ
ํฉํธ ํ ์ด๋ธ์ ์ด๋ ์ ๋ ๋ชจ์ ์ง๊ณํ๋ฉด ๋ฐ์ดํฐ์ ์์ด ํฌ๊ฒ ์ค์ด๋ ๋ค.
→ ์ด๊ฒ์ ์ง๊ณ ํ ์ด๋ธ ์ด๋ผ๊ณ ํ๋ค.
์ค๋ ์ท ํ ์ด๋ธ
๋ง์คํฐ ๋ฐ์ดํฐ์ฒ๋ผ ์ ๋ฐ์ดํธ๋ ๊ฐ๋ฅ์ฑ์ด ์๋ ํ ์ด๋ธ์ ๋ํด์ ๋ ๊ฐ์ง ๋ฐฉ์์ด ์๋ค.
- ์ ๊ธฐ์ ์ผ๋ก ํ ์ด๋ธ์ ํต์งธ๋ก ์ ์ฅํ๋ ๋ฐฉ๋ฒ์ผ๋ก ์ด๋ฅผ ‘์ค๋ ์ท ํ ์ด๋ธ’ ์ด๋ผ๊ณ ํ๋ค
- ๋ค๋ฅธ ํ๋๋ ๋ณ๊ฒฝ ๋ด์ฉ๋ง ์ ์ฅํ๋ ๋ฐฉ๋ฒ์ผ๋ก ‘์ด๋ ฅ ํ ์ด๋ธ’์ด๋ผ๊ณ ํ๋ค
- ์ค๋ ์ท ํ ์ด๋ธ์ ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ์ ์ ์ปค์ง๋ฏ๋ก ์ผ์ข ์ ํฉํธ ํ ์ด๋ธ๋ก ๊ฐ์ฃผํ๋ค.
- ๋ค๋ฅธ ํฉํธ ํ ์ด๋ธ๊ณผ ๊ฒฐํฉํจ์ผ๋ก์จ ๋๋ฉ์ ํ ์ด๋ธ๋ก๋ ์ฌ์ฉํ ์ ์๋ค.
- ์ค๋ ์ท์ ํน์ ์์ ์ ํ ์ด๋ธ์ ์ํ๋ฅผ ๊ธฐ๋กํ ๊ฒ์ผ๋ก ๋์ค์ ๋ค์ ๋ง๋ค ์ ์๋ค. ๋ฐ์ดํฐ ๋ ์ดํฌ๋ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค์ ๊ฐ์ ์๊ตฌ์ ์ธ ์ ์ฅ์์ ๋ณด๊ดํ์ฌ ์ญ์ ๋์ง ์๋๋ก ์ฃผ์ํ๋ค.
*์ด๋ ฅ ํ ์ด๋ธ ๋ณด๋ค๋ ๋ง์คํฐ ๊ด๊ณ์ ํ ์ด๋ธ์ ๊ธฐ๋ณธ์ ์ผ๋ก ๋งค์ผ ์ค๋ ์ท ํ๋ ๊ฒ์ด ์ข๋ค. ๋ ๋ฐ์ดํฐ์ ์์ ์ค์ด๋ ๋ฐ ๋์์ด ๋์ง๋ง, ์ด๋ ์๊ฐ๋ถํฐ๋ ๋ง์คํฐ ํ ์ด๋ธ์ ๋ณต์ํ๋ ๊ฒ์ด ์ด๋ ค์ ์ง๋ค.
3-4 ์์ฝ
- ๊ทธ๋ฅ ๊ทธ๋๋ก DW์์ ๊ฐ์ ธ์ฌ ๋ ‘๋น๊ตฌ์กฐํ ๋ฐ์ดํฐ’ ๋๋ ‘์คํค๋ง๋ฆฌ์ค ๋ฐ์ดํฐ’๋ฑ์ ์ทจ๊ธํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ ์ด๋ฌํ ๋ฐ์ดํฐ๋ฅผ ์ฌ๋ฌ ์ปดํจํฐ์์ ‘๋ถ์ฐ์ฒ๋ฆฌ’ํ๋ ๋ฐฉ๋ฒ์ด ์๊ตฌ๋๋ค.
- ํ๋ก๊ณผ ์คํํฌ๊ฐ ๋ถ์ฐ ์ฒ๋ฆฌ ํ๋ ์์ํฌ๋ก ๋๋ฆฌ ์ด์ฉ๋๊ณ ์๋ค.
- ํ๋ก์ ๋ถ์ฐํ์ผ ์์คํ ์์ ๋ฆฌ์์ค ๊ด๋ฆฌ์ ๊ทธ๋ฆฌ๊ณ MapReduce์ ์ํ ๋ถ์ฐ ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์ด๋ฅด๋ ์ข ํฉ์ ์ธ ์ปดํฌ๋ํธ๋ฅผ ์ ๊ณตํ์ฌ ๋ง์ ๋ถ์ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ณตํต ํ๋ซํผ์ด๋ค.
- ์คํํฌ๋ ‘๋๋์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํ์ฉํ ๊ณ ์์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๊ธฐ๋ฐ’ ์ด๋ฏ๋ก MapReduce๋ฅผ ๋์ฒดํ๋ ‘๋ถ์ฐ ํ๋ก๊ทธ๋๋ฐ ํ๊ฒฝ’์ผ๋ก ์ฌ์ฉ๋๋ค.
- Hive๋ ๋์คํฌ ์ ์์ ๋๋์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ฅผ ํ๊ธฐ ๋๋ฌธ์ ๋๊ท๋ชจ ๋ฐฐ์น ์ฒ๋ฆฌ์ ์ ์ฉํ๋ค.
- Presto๋ ๋ฉ๋ชจ๋ฆฌ ์ ์์ ๊ณ ์ ์ง๊ณ์ ํนํ๋์ด ์์ด ๋ํํ ์ฟผ๋ฆฌ ์คํ์ ์ ํฉํ๋ค.
- ‘๋ฐ์ดํฐ ๊ตฌ์กฐํ’๋ง ์๋์ด ์์ผ๋ฉด ๊ทธ ํ DW์ ๊ฐ์ ๊ฐ๋ ์ผ๋ก ๋ฐ์ดํฐ ๋งํธ๋ฅผ ๊ตฌ์ถํ ์ ์๋ค.
- ํฉํธ ํ ์ด๋ธ๊ณผ ๋๋ฉ์ ํ ์ด๋ธ์ ์ค๋นํ๊ณ ๊ทธ๊ฒ๋ค์ ๊ฒฐํฉ,์ง๊ณ ํ๋ฉด์ ์๊ฐํ์ ์ ํฉํ ๋น์ ๊ทํ ํ ์ด๋ธ์ ๋ง๋ ๋ค.
- ๋๋ฉ์ ์ผ๋ก ์ฌ์ฉํ๋ ๋ฐ์ดํฐ๋ ํ์ ์ ๊ธฐ์ ์ธ ์ค๋ ์ท์ผ๋ก ์ด๋ ฅ์ ์ถ์ ํด๋๋ค.
- ๋๋ฉ์ ์ ‘์นด๋๋๋ฆฌํฐ’๋ง ์์์ง๋ฉด ๋น์ ๊ทํ ํ ์ด๋ธ์ ์๊ฒ ์ง์ฝํ ์ ์๋ค.
*์ถ์ฒ - ๋น ๋ฐ์ดํฐ๋ฅผ ์งํฑํ๋ ๊ธฐ์ / ์ ์: ๋์๋ค ์ผ์ด์ค์ผ / ์ถํ: ์ ์ดํ
'Data' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐ์ดํฐ ์์ง๋์ด๋ง ๊ณต๋ถ(1) - HDFS๋ (0) | 2023.05.30 |
---|---|
์ฑํฐ 5: ๋น ๋ฐ์ดํฐ์ ํ์ดํ๋ผ์ธ (0) | 2023.05.12 |
์ฑํฐ4. ๋น ๋ฐ์ดํฐ์ ์ถ์ (0) | 2023.05.04 |
์ฑํฐ2. ๋น ๋ฐ์ดํฐ์ ํ์ (0) | 2023.03.30 |
์ฑํฐ1. ๋น ๋ฐ์ดํฐ์ ๊ธฐ์ด์ง์ (0) | 2023.03.24 |