
์ ๊ทํ์ DW ์คํค๋ง, ๋ฉด์ ์ค๋น ๋๋ด๊ธฐ
์ ๊ทํ์ DW ์คํค๋ง, ๋ฉด์ ์ค๋น ๋๋ด๊ธฐ ๊ด๋ จ
์๋ ํ์ธ์! ์ค๋์ ๋ฐ์ดํฐ ์ง๊ตฐ ๋ฉด์ ์์ ๋จ๊ณจ ์ง๋ฌธ์ผ๋ก ์์ฃผ ๋ฑ์ฅํ๋ โ์ ๊ทํ์ ๋น์ ๊ทํโ, ๊ทธ๋ฆฌ๊ณ โ์คํ ์คํค๋ง์ ์ค๋ ธ์ฐํ๋ ์ดํฌ ์คํค๋งโ์ ๋ํด ์ด์ผ๊ธฐํด๋ณด๋ ค๊ณ ํฉ๋๋ค. ๋ฐ์ดํฐ ๋ถ์ผ ์ทจ์ ์ด๋ ์ด์ง์ ์ค๋นํ๋ ์ฃผ๋์ด๋ถ๋ค์ด๋ผ๋ฉด ์ด ๊ฐ๋ ๋ค์ ํ๋ฒ์ ํ์คํ ์ ๋ฆฌํด ๋๋ ๊ฒ์ด ์ข์ ๊ฒ ๊ฐ์, ์ด๋ฒ์ ์ ๋ฆฌํด ๋ณด์์ต๋๋ค.
์ ๊ทํ์ ๋น์ ๊ทํ๋ฅผ ์ฝ๊ฒ ์ดํ๊ธฐ ์ํด, ์ง์ ์๋ ์ท์ฅ์ ํ๋ฒ ๋ ์ฌ๋ ค๋ณด์์ฃ .

์ท์ ์ ๋ฆฌํ๋ ๋ฐฉ์์ด ๋ ๊ฐ์ง ์๋ค๊ณ ์์ํด ๋ด ์๋ค.
์ฒซ ๋ฒ์งธ๋ ์ข ๋ฅ๋ณ๋ก ์๋ฒฝํ๊ฒ ๋ถ๋ฅํ๋ ๋ฐฉ์์ด์์. ์ ์ธ ๋ ์ ์ธ ๋ผ๋ฆฌ ๋๊ณ , ๋ฐ์ง๋ ๋ฐ์ง๋ผ๋ฆฌ ๋๋ ๊ฑฐ์ฃ . ์ฌ์ง์ด๋ ์์๋ณ, ๊ณ์ ๋ณ๋ก ๋ ์ธ๋ฐํ๊ฒ ๋๋๊ธฐ๋ ํฉ๋๋ค. ์ด๊ฒ์ด ๋ฐ๋ก โ์ ๊ทํโ์์. ๋ชจ๋ ๋ฌผ๊ฑด์ด ์ ํด์ง ์์น์ ์๊ณ ์ค๋ณต๋๋ ๊ฒ์ด ์์ฃ . ์ ์ธ ๋ฅผ ์ฐพ์ผ๋ ค๋ฉด ์ ์ธ ๊ฐ ์๋ ๊ณณ์ผ๋ก ๋ฐ๋ก ๊ฐ๋ฉด ๋๋๊น ๊ด๋ฆฌ๋ ํธ๋ฆฌํฉ๋๋ค.
๋ฐ๋ฉด์ โ์์ฃผ ์ ๋ ์ท๋ค์ ํ๊ณณ์ ๋ชจ์๋๋ ๋ฐฉ์โ๋ ์์ด์. ๋งค์ผ ์ ๋ ํฐ์ ์ธ ๋ ์์ฃผ ์์ด ๊ฐ๋ ๋ฐ์ง, ํ์์ ์ฆ๊ฒจ ์ ๋ ์๋ง์ ์ท์ฅ ์์ชฝ์ ํ๋ฐ ๋ชจ์๋๋ ํํ์ฃ . ์ด๋ โ๋น์ ๊ทํโ ๋ฐฉ์๊ณผ ๋น์ทํฉ๋๋ค. ๊ฐ์ ํฐ์ ์ธ ๊ฐ ์ผ๋ฐ ์ท์ฅ๊ณผ ์์ฃผ ์ ๋ ์ท ์ฝ๋์ ์ค๋ณต์ผ๋ก ์กด์ฌํ๊ฒ ๋ ์๋ ์์ง๋ง, ๋งค์ผ ์์นจ๋ง๋ค ์ท์ ๊ณ ๋ฅด๋ ๋ฐ ์์๋๋ ์๊ฐ์ ํฌ๊ฒ ๋จ์ถํ ์ ์์ฃ .
์ด์ฒ๋ผ ์ ๊ทํ์ ๋น์ ๊ทํ๋ ๋ฐ์ดํฐ๋ฅผ ์ด๋ค ๋ฐฉ์์ผ๋ก ๊ตฌ์ฑํ ์ง์ ๋ํ ์ฒ ํ์ ์ธ ์ฐจ์ด๋ฅผ ๋ํ๋ ๋๋ค. ๊ทธ๋ผ ์ง๊ธ๋ถํฐ ๋ณธ๊ฒฉ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด์ ์์ ์ด ๋ ๊ฐ์ง ๊ฐ๋ ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
์ ๊ทํ: ๋ฐ์ดํฐ ์ค๋ณต์ ์ ๊ฑฐํ๋ค
์ ๊ทํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด์ ์ค๋ณต์ ์ต์ํํ๊ณ , ๋ฐ์ดํฐ๋ฅผ ๋ ผ๋ฆฌ์ ์ผ๋ก ์๋ก ๊ด๋ จ๋ ๋จ์์ ๋ฐ๋ผ ๋๋๋ ๊ณผ์ ์ ๋๋ค. ๋์๊ด์์ ์ฑ ์ ์ฃผ์ ๋ณ๋ก ๋ช ํํ๊ฒ ๋ถ๋ฅํด ๋๋ ๋ฐฉ์๊ณผ ๋น์ทํ์ฃ .

์ ์ด๋ฏธ์ง๋ฅผ ๋ณด์๋ฉด, ์ ํ์ ์ธ ์ ๊ทํ๋ ๊ตฌ์กฐ์ ์์ ๋ฅผ ๋ณด์ค ์ ์์ต๋๋ค. ๋ธ๋๋ ์ ๋ณด, ์นดํ ๊ณ ๋ฆฌ ์ ๋ณด, ์ ํ ์ ๋ณด๊ฐ ๊ฐ๊ฐ ๋ณ๋์ ํ ์ด๋ธ๋ก ๊น๋ํ๊ฒ ๋ถ๋ฆฌ๋์ด ์์ฃ .
๋ธ๋๋ ํ ์ด๋ธ์ ์์ธํ ๋ณด๋ฉด, โSamsungโ์ด๋ผ๋ ๋ธ๋๋๋ ๋ฑ ํ ๋ฒ๋ง ๋ฑ๋ก๋์ด ์์ต๋๋ค. โSouth Koreaโ๋ผ๋ ๊ตญ๊ฐ ์ ๋ณด ์ญ์ ๋ง์ฐฌ๊ฐ์ง๋ก ์ค๋ณต๋์ง ์๊ณ ํ ๋ฒ๋ง ์กด์ฌํฉ๋๋ค. ๋ง์ฝ Samsung์ ๊ตญ๊ฐ ์ ๋ณด๊ฐ ๋ณ๊ฒฝ๋์ด์ผ ํ๋ค๋ฉด ๋ฐ๋ก ์ด ํ ๊ณณ๋ง ์์ ํ๋ฉด ๋๋๋ ๊ฑฐ์ฃ . ์ด๊ฒ์ด ๋ฐ๋ก ์ ๊ทํ๊ฐ ๊ฐ์ง ๊ฐ์ฅ ํฐ ์ฅ์ ์ ๋๋ค.
๋ฐ๋ฉด ๋น์ ๊ทํ๋ ์๋ ์ด๋ฏธ์ง์ฒ๋ผ ์ฌ๋ฌ ํ ์ด๋ธ์ ํ๋๋ก ํฉ์น๋ ๋ฐฉ์์ ๋๋ค.์๋ ์ด๋ฏธ์ง๋ฅผ ๋ณด์๋ฉด, โSamsungโ์ด๋ผ๋ ๋ธ๋๋๋ช ๊ณผ "South Korea"๋ผ๋ ๊ตญ๊ฐ๋ช ์ด ์ฌ๋ฌ ํ์์ ๋ฐ๋ณต๋จ์ ์ ์ ์์ฃ .์ด๋ฐ ํ์์ด ๋ฐ๋ก ๋ฐ์ดํฐ ์ค๋ณต์ ๋๋ค.

๋ฐ์ดํฐ ์ค๋ณต์ด ๋ฐ์ํ๋ ์ด์ ๋ ์ ์ด๋ฏธ์ง์์ ํ์ธํ ์ ์๋ฏ์ด, ์ฐจ์ ํ ์ด๋ธ(Dimension Table)์ ๋ถ๋ฆฌ(์ ๊ทํ)ํ์ง ์๊ณ ํ๋์ ํ ์ด๋ธ๋ก ํฉ์ณ๋์๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋ถ์ ์์ ์ ๋ ์ฝ๊ฒ ํ๋ ค๋ฉด ์ฐจ์์ ๋จ์ํํ๋ ํธ์ด ํจ๊ณผ์ ์ธ๋ฐ, ์ด ๊ณผ์ ์์ ์ค๋ณต๋ ์ ๋ณด๋ฅผ ์ฌ๋ฌ ํ์ ๋ฐ๋ณต ์ ์ฅํ๊ฒ ๋ฉ๋๋ค. ํนํ ์ฐจ์ ์ ๋ณด๊ฐ ๋ฐฉ๋ํ๊ฑฐ๋ ๊ณ์ธต ๊ตฌ์กฐ๊ฐ ๊น์ ๋๋ ๊ฐ์ ๋ธ๋๋๋ช ์ด๋ ์ง์ญ๋ช ์ด ๋ฐ๋ณตํด์ ๋ํ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์์ง๊ฒ ๋์ฃ .
๋ฐ์ดํฐ๊ฐ ์ค์ ํ์ฉ์ ์ํด ์ค๋น๋ ํํ๋ ์ฌ์ค ์ด๋ ๊ฒ ๋น์ ๊ทํ๋ ๋ชจ์ต์ ๋๋ค. ๋์๋ณด๋๋ ๋ฐ์ดํฐ ๋ถ์์ ํ ๋, ๊ทธ๋ฆฌ๊ณ ์๋น์ค ์์ญ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ ๋์ ๋ฐ์ดํฐ ๋จ์์๋ ์ฃผ๋ก ์ด๋ฐ ๋น์ ๊ทํ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๊ฒ ๋์ฃ .
์ง๊ธ๊น์ง ์ ๊ทํ์ ๋น์ ๊ทํ์ ๊ธฐ๋ณธ ๊ฐ๋ ์ ๋ํด ์ดํด๋ณด์์ต๋๋ค. ์ด์ ๋ถํฐ๋ ์ด๋ฌํ ๊ฐ๋ ์ด ์ค์ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค ์ค๊ณ์์ ์ด๋ป๊ฒ ์ด์ฉ๋๋์ง๋ฅผ โ์คํ ์คํค๋งโ์ โ์ค๋ ธ์ฐํ๋ ์ดํฌ ์คํค๋งโ๋ฅผ ์ค์ฌ์ผ๋ก ๊ตฌ์ฒด์ ์ผ๋ก ์์๋ณด๊ฒ ์ต๋๋ค.
์คํ ์คํค๋ง
์คํ ์คํค๋ง(Star Schema)๋ ํฉํธ ํ ์ด๋ธ(Fact Table)์ ํ๊ฐ์ด๋ฐ์ ๋๊ณ , ์ฌ๋ฌ ์ฐจ์ ํ ์ด๋ธ(Dimension Table)๋ค์ด ์ด ํฉํธ ํ ์ด๋ธ๊ณผ ์ง์ ์ฐ๊ฒฐ๋ ๊ตฌ์กฐ๋ฅผ ์๋ฏธํฉ๋๋ค. ํฉํธ ํ ์ด๋ธ ์์๋ ์ฃผ๋ก ์ธก์ ๋๋ ๊ฐ(๋งค์ถ์ก, ํ๋งค ์๋ ๋ฑ)๊ณผ, ๊ฐ ์ฐจ์ ํ ์ด๋ธ์ ์ฐ๊ฒฐํ๊ธฐ ์ํ ํค(Key) ์ ๋ณด๊ฐ ๋ค์ด ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐจ์ ํ ์ด๋ธ์๋ ์ด ์ธก์ ๊ฐ(Fact)์ ๋ณด๋ค ์์ธํ ์ค๋ช ํด์ฃผ๋ ๋ค์ํ ์์ฑ๋ค์ด ๋ด๊ธฐ๊ฒ ๋ฉ๋๋ค.

์ด ๊ตฌ์กฐ๋ ์ค์์ ์๋ ํฉํธ ํ ์ด๋ธ์ด ์ฃผ๋ณ์ ์ฌ๋ฌ ์ฐจ์ ํ ์ด๋ธ๋ค๋ก ๋๋ฌ์ธ์ฌ ์์ด, ๋ง์น ๋ณ(Star) ๋ชจ์์ฒ๋ผ ๋ณด์ด๊ธฐ ๋๋ฌธ์ โ์คํ ์คํค๋งโ๋ผ๊ณ ๋ถ๋ฆฝ๋๋ค. ์กฐ์ธ(Join)์ด ๋จ์ํ๊ธฐ ๋๋ฌธ์ ์ฟผ๋ฆฌ(Query) ์๋๊ฐ ๋น ๋ฅด๊ณ , ๋ถ์ํ๊ธฐ์ ์ง๊ด์ ์ผ๋ก ์ดํดํ๊ธฐ ์ฝ์ต๋๋ค. ๋ค๋ง, ์ฐจ์ ๋ฐ์ดํฐ๊ฐ ๋ณต์กํ๊ณ ๊ณ์ธต์ด ๊น์ด์ง์๋ก ์ค๋ณต๋ ๋ฐ์ดํฐ๊ฐ ๋ฐ๋ณต์ ์ผ๋ก ๋ฐ์ํ ์ ์์ต๋๋ค.
์ค๋ณต์ด ๋ฐ์ํ๋ ์ด์ ๋, ์์ ์ดํด๋ดค๋ฏ์ด ์ฐจ์ ํ ์ด๋ธ์ ๋ณ๋๋ก ๋ถ๋ฆฌ(์ ๊ทํ)ํ์ง ์๊ณ ํ๋๋ก ํฉ์ณ๋์๊ธฐ ๋๋ฌธ์ ๋๋ค. ๋ถ์์ ์ฝ๊ณ ๋น ๋ฅด๊ฒ ์ํํ๋ ค๋ฉด ์ฐจ์์ ์ต๋ํ ๋จ์ํํ์ฌ ๊ด๋ฆฌํ๋ ๊ฒ ์ข์๋ฐ, ๊ทธ ๊ณผ์ ์์ ์ด์ฉ ์ ์์ด ์ค๋ณต๋ ์ ๋ณด๋ฅผ ์ฌ๋ฌ ํ์ ๊ฑธ์ณ ์ ์ฅํ๊ฒ ๋๋ ๊ฒ๋๋ค. ์ฐจ์ ์ ๋ณด๊ฐ ๋งค์ฐ ๋ฐฉ๋ํ๊ฑฐ๋ ๊ณ์ธต ๊ตฌ์กฐ๊ฐ ๋ณต์กํ๊ณ ๊น์ด์ง์๋ก ๋์ผํ ๋ธ๋๋๋ ์ง์ญ ์ ๋ณด๊ฐ ๋ฐ๋ณต์ ์ผ๋ก ๋ฑ์ฅํ๊ฒ ๋๋ ์ด์ ๊ฐ ๋ฐ๋ก ์ฌ๊ธฐ์ ์์ต๋๋ค.
ํ์ง๋ง ์ฟผ๋ฆฌ๊ฐ ๋งค์ฐ ๋จ์ํ๊ฒ ์์ฑ๋ ์ ์์ด ๋ถ์ ์์ ์ด ๋น ๋ฅด๊ณ ์ฝ๋ค๋ ์ฅ์ ์ด ์์ต๋๋ค.
์ค๋ ธ์ฐํ๋ ์ดํฌ ์คํค๋ง
์ค๋ ธ์ฐํ๋ ์ดํฌ ์คํค๋ง(Snowflake Schema)๋ ์คํ ์คํค๋ง์์ ์ฐจ์ ํ ์ด๋ธ์ ์ฌ๋ฌ ๊ณ์ธต์ผ๋ก ์ ๊ทํํ ๊ตฌ์กฐ์ ๋๋ค. ์ด๋ฆ ๊ทธ๋๋ก ๋์ก์ด(Snowflake)๊ฐ ์ค์ฌ์์ ๋ฐ๊นฅ์ผ๋ก ์ธ๋ถ์ ์ผ๋ก ํผ์ ธ ๋๊ฐ๋ ๋ชจ์๊ณผ ์ ์ฌํ๊ธฐ ๋๋ฌธ์ ์ด๋ ๊ฒ ๋ถ๋ฆฝ๋๋ค. ํ๋์ ์ฐจ์์ ๋ณด๋ค ์ธ๋ฐํ ํ ์ด๋ธ๋ก ๋๋์ด ๋ฐ์ดํฐ๋ฅผ ์ ๋ฆฌํ๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ ์ค๋ณต์ ์ค์ผ ์ ์์ผ๋ฉฐ, ๋ฐ์ดํฐ๊ฐ ๋ณ๊ฒฝ๋ ๋์ ๊ด๋ฆฌ๋ ๋์ฑ ํธ๋ฆฌํด์ง๋๋ค.
์๋ฅผ ๋ค์ด, ๋ธ๋๋ ์ ๋ณด๋ ๋ณ๋์ โ๋ธ๋๋ ์ฐจ์ ํ ์ด๋ธ(Brand Dimension Table)โ๋ก, ์นดํ ๊ณ ๋ฆฌ ์ ๋ณด๋ ๋ ๋ค๋ฅธ ๋ณ๋์ ํ ์ด๋ธ๋ก ๋๋ ์ ์์ต๋๋ค. ์ด๋ ๊ฒ ํ ์ด๋ธ์ ์ธ๋ถํํ๋ฉด ํน์ ๋ธ๋๋์ ๋ณ๊ฒฝ ์ฌํญ์ด ๋ฐ์ํ๋๋ผ๋ ํด๋น ๋ธ๋๋ ์ฐจ์๋ง ์ ๋ฐ์ดํธํ๋ฉด ๋๋ฏ๋ก ๋์ฑ ํจ์จ์ ์ ๋๋ค.
์๋ ์ด๋ฏธ์ง๋ ์์ ์คํ ์คํค๋ง์์ ์ดํด๋ณธ ๋งค์ถ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค์ ์์๋ฅผ ์ค๋ ธ์ฐํ๋ ์ดํฌ ์คํค๋ง๋ก ํ์ฅํ ๋ชจ์ต์ ๋๋ค.

๋ณต์กํด ๋ณด์ด์ง๋ง ์ฌ์ค ๋ณ๊ฒ ์๋๊ณ , ์ฐจ์ ํ ์ด๋ธ(Dimension Table)์ ์ฌ๋ฌ ๊ณ์ธต์ผ๋ก ๋ ์ธ๋ฐํ๊ฒ ์ ๊ทํํด ๋ ๊ฒ์ ๋ถ๊ณผํฉ๋๋ค.
์คํ ์คํค๋ง์ ๋ค๋ฅด๊ฒ, ์ฐจ์ ํ ์ด๋ธ์ด ์ฌ๋ฌ ๊ณ์ธต์ผ๋ก ์ชผ๊ฐ์ง ๊ฒ์ด ํน์ง์ ๋๋ค. ์์๋ ์ธ๊ธํ์ง๋ง, ์ด๋ฆ ๊ทธ๋๋ก ๋์ก์ด(snowflake)๊ฐ ์ค์ฌ์์ ๋ฐ๊นฅ์ผ๋ก ๊ฒฐ์ ์ฒด ๋ชจ์์ผ๋ก ๋ป์ด ๋๊ฐ๋ฏ ์ฌ๋ฌ ๋จ๊ณ๋ก ์ธ๋ถํ๋ ๊ตฌ์กฐ๋ฅผ ์ง๋๊ณ ์์ด, '์ค๋ ธ์ฐํ๋ ์ดํฌ ์คํค๋ง'๋ผ๊ณ ๋ถ๋ฅด๋ ๊ฒ์ด์ฃ .
์ค์์๋ ํฉํธ ํ ์ด๋ธ(FACT_Sales)์ด ์๊ณ , ์ด์ ์ฐ๊ฒฐ๋ ์ฃผ์ ์ฐจ์ ํ ์ด๋ธ๋ค(DATE_DIMENSION, PRODUCT_DIMENSION, STORE_DIMENSION)์ด ์กด์ฌํฉ๋๋ค. ์คํ ์คํค๋ง์๋ค๋ฉด ์ฌ๊ธฐ์ ๊ตฌ์กฐ๊ฐ ๋์ด ๋ฌ์ ํ ๋ฐ, ์ค๋ ธ์ฐํ๋ ์ดํฌ ์คํค๋ง๋ ์ฌ๊ธฐ์ ํ ๋จ๊ณ ๋ ๋์๊ฐ๋๋ค.
๊ฐ์ฅ ํฐ ํน์ง์ ์ฐจ์ ํ ์ด๋ธ์ด ๋ ๋ค๋ฅธ ์ฐจ์ ํ ์ด๋ธ๋ก ๋ถ๋ฆฌ๋์๋ค๋ ์ ์ ๋๋ค. ์ค๋ ธ์ฐํ๋ ์ดํฌ ์คํค๋ง๋ ์ฐจ์์ ์ธ๋ถํํด ์ค๋ณต์ ์ค์ด๊ณ ์ผ๊ด์ฑ ๊ด๋ฆฌ๋ฅผ ์ฝ๋๋ก ํ์ง๋ง, ๊ตฌ์กฐ๊ฐ ๋ณต์กํด์ ธ์ ์กฐ์ธ์ด ๋ง์์ง ์ ์์ต๋๋ค. ์ค๊ณ์ ์ ์ง๋ณด์ ์ธก๋ฉด์์๋ ๋ ๋ง์ ๋ ธ๋ ฅ์ด ๋ค ์ ์์ต๋๋ค. ์ฌ์ฉ์๋ ๋ถ์๊ฐ ์ ์ฅ์์๋ ํ ์ด๋ธ์ด ๋ง์ผ๋ฉด ๊ด๊ณ๋ฅผ ์ดํดํ๊ธฐ๊ฐ ๊น๋ค๋กญ์ต๋๋ค.
์ ๋ง ์ค๋ฌด์์๋ ์ด๋ ๊ฒ ํ๋์?
๊ทธ๋ฐ๋ฐ ์ง๊ธ๊น์ง ์ค๋ช ๋๋ฆฐ ๊ฐ๋ ๋ค์ ์ฌ์ค ์กฐ๊ธ์ ์ค๋๋(outdated) ๋ฐฉ์์ด๋ผ๊ณ ๋ณผ ์๋ ์์ด์.
ETL, ์ฆ ๋ฐ์ดํฐ๋ฅผ ์ถ์ถ(Extract)ํ๊ณ ์ ์ (Transform)ํ์ฌ ์ ์ฌ(Load)ํ๋ ์ผ๋ฐ์ ์ธ ๊ณผ์ ์ ๊ทธ๋๋ก ๋ฐ๋ผ์ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค(Data Warehouse)๋ฅผ ๊ตฌ์ถํ๋ ๋ฐฉ์์์ , ๋ฐ์ดํฐ๋ฅผ ์ด๋ป๊ฒ ํ๋ฉด ํจ์จ์ ์ผ๋ก ์ ์ฅํ ์ง ๊ณ ๋ฏผํ๋ ๊ฒ์ด 2000๋ ๋ ์ค๋ฐ๊น์ง๋ ์ค์ํ์ด์. ๋น์์ ์ ํ์ ์ด์๋ ์ปดํจํฐ์ ์ ์ฅ ๋ฅ๋ ฅ๊ณผ ๊ณ์ฐ ๋ฅ๋ ฅ์ ๊ณ ๋ คํ์ฌ, ๋ฐ์ดํฐ๋ฅผ ์ด๋ป๊ฒ ์ต์ ํํ ์ง์ ๋ํ ๋ด์ฉ์ด์์ฃ .
ํ์ง๋ง ํ๋๋ ์ํฉ์ด ์กฐ๊ธ ๋ค๋ฆ ๋๋ค.
2010๋ ๋ ์ดํ์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ํ๊ฒฝ์ ์์ ํ ๋ฌ๋ผ์ก์ด์. ํ๋ก(Hadoop)์ด๋ ์คํํฌ(Spark)์ ๊ฐ์ ๋ถ์ฐ ์ฒ๋ฆฌ ๊ธฐ์ ์ ๋ฑ์ฅ์ผ๋ก ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๋ฅ๋ ฅ์ด ํญ๋ฐ์ ์ผ๋ก ํฅ์๋์์ต๋๋ค. ํ ๋ผ๋ฐ์ดํธ(TB), ํํ๋ฐ์ดํธ(PB) ๋จ์์ ๋๊ท๋ชจ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ ๊ฐ๋ฅํด์ก์ฃ . ๊ทธ๋ฆฌ๊ณ ์ด๋ฐ ํ๊ฒฝ์์๋ ์ ํต์ ์ธ ETL ๋ฐฉ์์ด ์คํ๋ ค ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๊ณผ์ ์์ ๋ณ๋ชฉ ํ์์ ์ผ์ผํค๊ธฐ ์์ํ์ต๋๋ค.
๋งค์ผ ์์ญ ํ ๋ผ๋ฐ์ดํธ(TB)์ฉ ์์ด๋ ๋ฐ์ดํฐ๋ฅผ ์ผ์ผ์ด ์ ๊ทํํ๊ณ ๋ชจ๋ธ๋งํด์ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค(Data Warehouse)์ ๋ฃ๋๋ค๊ณ ์๊ฐํด๋ด ์๋ค. ์ด ๊ณผ์ ์์ ์ผ๋ง๋ ๋ง์ ์๊ฐ์ด ๊ฑธ๋ฆด๊น์?
๊ธฐ์ ๋ค์ด ๋ถ์ ๊ฒฐ๊ณผ๋ฅผ ์ค์๊ฐ์ ๊ฐ๊น๊ฒ ๋น ๋ฅด๊ฒ ์ป๊ณ ์ถ์ด ํ๋ ์๊ตฌ๊ฐ ๋์ด๋๋ ๊ฐ์ด๋ฐ, ์ ํต์ ์ธ ETL ๋ฐฉ์์ผ๋ก๋ ์ด๋ฐ ์๊ตฌ์ฌํญ์ ์ถฉ์กฑ์ํค๊ธฐ๊ฐ ์ ์ ์ด๋ ค์์ง ๊ฒ๋๋ค.
ELT์ ๋ฑ์ฅ: โ๋ณํ์ ๋์ค์!โ
๊ทธ๋์ ๋ฑ์ฅํ ๊ฒ์ด ELT(Extract, Load, Transform) ํจ๋ฌ๋ค์์ ๋๋ค. ์ด ๋ฐฉ์์ ๋ฐ์ดํฐ๋ฅผ ์ผ๋จ ์์(Raw) ํํ ๊ทธ๋๋ก ์ ์ฅํด๋์๋ค๊ฐ, ํ์ํ ๋ ๋ณํ(Transform)ํ์ฌ ์ฌ์ฉํ๋ ๋ฐฉ์์ด์ฃ . ์ด๋ ๋ง์น ์ฐฝ๊ณ ์ ๋ชจ๋ ๋ฌผ๊ฑด์ ์ผ๋จ ์์๋์ ๋ค์, ํ์ํ ๋ ๋ฌผ๊ฑด์ ๊บผ๋ด ๊ทธ๋๊ทธ๋ ๊ฐ๊ณตํด์ ์ฌ์ฉํ๋ ๊ฒ๊ณผ ๋น์ทํฉ๋๋ค.
- ETL: ๋ฐ์ดํฐ โ ์ ์ /๋ณํ โ ์ ์ฅ โ ๋ถ์
- ELT: ๋ฐ์ดํฐ โ ์ ์ฅ โ ํ์์ ๋ณํ โ ๋ถ์
์ด๋ฐ ๋ฐฉ์์ด ๊ฐ๋ฅํด์ง ์ด์ ๋ ์ปดํจํ ํ์์ ์ ์ฅ ๊ณต๊ฐ์ ๋น์ฉ์ด ํฌ๊ฒ ๋ฎ์์ก๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ด์ ๋ "์ ์ฅ ๊ณต๊ฐ์ ์๋ผ๊ธฐ ์ํด ์ ๊ทํ๋ฅผ ํด์ผ ํ ๊น?"๋ณด๋ค "๋ถ์ ์๋์ ์ ์ฐ์ฑ์ ์ํด ๋น์ ๊ทํ๋ ํํ๋ก ์ ์ฅํ ๊น?"๋ฅผ ๊ณ ๋ฏผํ๋ ์๋๊ฐ ๋ ๊ฑฐ์ฃ .
์ต๊ทผ์๋ ๋ฐ์ดํฐ ๋ ์ดํฌ(Data Lake)์ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค(Data Warehouse)์ ์ฅ์ ์ ๊ฒฐํฉํ '๋ ์ดํฌํ์ฐ์ค(Lakehouse)' ์ํคํ ์ฒ๊ฐ ์ฃผ๋ชฉ๋ฐ๊ณ ์์ด์.
- ๋ฐ์ดํฐ ๋ ์ดํฌ: ๋๋์ ์์ ๋ฐ์ดํฐ๋ฅผ ์ ๋น์ฉ์ผ๋ก ์ ์ฅ, ์ ์ฐ์ฑ ๋์
- ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค: ๊ตฌ์กฐํ๋ ๋ฐ์ดํฐ๋ก ๋น ๋ฅธ ์ฟผ๋ฆฌ ๋ฐ ๋ถ์ ๊ฐ๋ฅ
- ๋ ์ดํฌํ์ฐ์ค: ๋ ๊ฐ์ง ์ฅ์ ์ ๋ชจ๋ ์ทจํจ
์ํ์น ์์ด์ค๋ฒ๊ทธ(Apache Iceberg), ๋ธํ ๋ ์ดํฌ(Delta Lake), ์ํ์น ํ๋(Apache Hudi)์ ๊ฐ์ ์คํ์์ค ํ๋ก์ ํธ๋ค์ ์ด๋ฐ ๋ ์ดํฌํ์ฐ์ค ์ํคํ ์ฒ๋ฅผ ๊ตฌํํ๋ ํต์ฌ ๊ธฐ์ ์ ๋๋ค. ์ด ๊ธฐ์ ๋ค์ ๋ฐ์ดํฐ ๋ ์ดํฌ์ ํ ์ด๋ธ ํํ์ ๊ตฌ์กฐ๋ฅผ ๋ถ์ฌํ์ฌ, SQL ์ฟผ๋ฆฌ๋ก ๋น ๋ฅด๊ฒ ๋ถ์ํ ์ ์๊ฒ ํด์ค๋๋ค.
๋ถ์ฐ ์ฒ๋ฆฌ์ ํต์ฌ: Spark์ EMR
ํ๋ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ํ๊ฒฝ์ ์ด์ผ๊ธฐํ ๋ ๋นผ๋์ ์ ์๋ ๊ฒ์ด ๋ฐ๋ก ์ํ์น ์คํํฌ(Apache Spark)์ ๋๋ค. ์คํํฌ(Spark)๋ ํ๋ก ๋งต๋ฆฌ๋์ค(MapReduce)์ ํ๊ณ๋ฅผ ๋ฐ์ด๋์ด ๋ฉ๋ชจ๋ฆฌ ๊ธฐ๋ฐ์ ๋น ๋ฅธ ๋ถ์ฐ ์ฒ๋ฆฌ๋ฅผ ๊ฐ๋ฅํ๊ฒ ๋ง๋ ํ์ ์ ์ธ ๊ธฐ์ ์ด์์. ํนํ ๋ฐ์ดํฐ ๋ ์ดํฌ์ ์ ์ฅ๋ ๋์ฉ๋ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ ๋ ๊ทธ ์ง๊ฐ๋ฅผ ๋ฐํํฉ๋๋ค.
์ด๋ฐ ์คํํฌ ์์ ์ ์ฝ๊ฒ ์คํํ ์ ์๋๋ก AWS์์๋ EMR(Elastic MapReduce) ์๋น์ค๋ฅผ ์ ๊ณตํฉ๋๋ค. EMR์ ์คํํฌ, ํ์ด๋ธ(Hive), ํ๋ ์คํ (Presto) ๋ฑ ๋ค์ํ ๋น ๋ฐ์ดํฐ ํ๋ ์์ํฌ๋ฅผ ๊ด๋ฆฌํ์ผ๋ก ์ ๊ณตํ์ฌ, ์ธํ๋ผ ๊ด๋ฆฌ ๋ถ๋ด ์์ด ๋๊ท๋ชจ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ฅผ ํ ์ ์๊ฒ ํด์ฃผ์ฃ .
EMR๊ณผ Iceberg๋ฅผ ํจ๊ป ์ฌ์ฉํ๋ฉด S3์ ๊ฐ์ ๊ฐ์ฒด ์คํ ๋ฆฌ์ง์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ํจ์จ์ ์ผ๋ก ๋ถ์ํ ์ ์์ด์. ์๋ฅผ ๋ค์ด, ๋ก๊ทธ ๋ฐ์ดํฐ๋ฅผ S3์ Iceberg ํ์์ผ๋ก ์ ์ฅํด๋๊ณ , EMR Spark ํด๋ฌ์คํฐ๋ฅผ ํตํด ํ์ํ ๋๋ง ๋ถ์ ์์ ์ ์ํํ๋ ์์ผ๋ก์.
ํด๋ผ์ฐ๋ ๋ค์ดํฐ๋ธ ๋ถ์ ํ๋ซํผ: BigQuery์ ๋ฑ์ฅ
ํํธ, ๊ตฌ๊ธ(Google)์ ๋น ์ฟผ๋ฆฌ(BigQuery)๋ ์์ ํ ๋ค๋ฅธ ์ ๊ทผ ๋ฐฉ์์ ์ ์ํ์ต๋๋ค. ๊ธฐ์กด ํ๋ก ์ํ๊ณ์ฒ๋ผ ํด๋ฌ์คํฐ๋ฅผ ๊ด๋ฆฌํ ํ์ ์์ด, SQL๋ง์ผ๋ก ํํ๋ฐ์ดํธ ๊ท๋ชจ์ ๋ฐ์ดํฐ๋ฅผ ๋ถ์ํ ์ ์๋ ์๋ฒ๋ฆฌ์ค ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค์์.
๋น ์ฟผ๋ฆฌ์ ๊ฐ์ฅ ๋๋๋ฌ์ง๋ ํน์ง์ ์ฌ์ฉํ ๋งํผ๋ง ๋น์ฉ์ ์ง๋ถํ๋ ๋น์ฉ ๋ชจ๋ธ๊ณผ ๋๋ผ์ด ํ์ฅ์ฑ์ ๋๋ค. ๋ฐ์ดํฐ ์ฉ๋์ด 10GB๋ , 10TB๋ ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ๊ฐ ๋จ ๋ช ์ด ๋ง์ ๋์ค์ฃ . ๋ํ ๋จธ์ ๋ฌ๋ ๋ชจ๋ธ์ SQL ๋ด์์ ๋ฐ๋ก ํ์ต์ํค๊ณ ์์ธก๊น์ง ์ํํ ์ ์๋ 'BigQuery ML' ๊ฐ์ ํ์ ์ ์ธ ๊ธฐ๋ฅ๋ ์ ๊ณตํฉ๋๋ค.
๋น ์ฟผ๋ฆฌ๊ฐ ๋ ๋์ํํธ(Redshift)์ ๊ฐ์ ๊ธฐ์กด ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค ์๋ฃจ์ ๊ณผ ๊ทผ๋ณธ์ ์ผ๋ก ๋ค๋ฅธ ์ ์ ๋ฐ๋ก '์ํคํ ์ฒ'์ ์์ต๋๋ค. ๋น ์ฟผ๋ฆฌ๋ฆฌ๋ ์ฒ์๋ถํฐ ํด๋ผ์ฐ๋๋ฅผ ์ํด ์ค๊ณ๋ ์์ ํ ์๋ฒ๋ฆฌ์ค ์ํคํ ์ฒ๋ฅผ ์ฑํํ์ด์.
์ฝ๊ฒ ์ดํดํ์๋ฉด, ๋ ๋์ํํธ๊ฐ '์ ์ฉ ์๋ฒ'๋ฅผ ์๋ํ๋ ๊ฐ๋ ์ด๋ผ๋ฉด, ๋น ์ฟผ๋ฆฌ๋ 'ํ์ํ ๋๋ง ์ปดํจํ ํ์๋ฅผ ๋น๋ฆฌ๋' ๊ฐ๋ ์ด์์. ์๋์ฐจ์ ๋น์ ํ๋ฉด ๋ ๋์ํํธ๋ ์ฐจ๋ฅผ ์ง์ ๊ตฌ๋งคํ๋ ๋ฐฉ์์ด๊ณ , ๋น ์ฟผ๋ฆฌ๋ ํ์ํ ๋๋ง๋ค ์ฐ๋ฒ(Uber)๋ฅผ ๋ถ๋ฅด๋ ๊ฐ๋ ๊ณผ ํก์ฌํ์ฃ .
๋ง์ ๊ธฐ์ ๋ค์ด ์ค์๊ฐ์ ๊ฐ๊น์ด ๋น์ฆ๋์ค ์ธํ ๋ฆฌ์ ์ค(Business Intelligence)๋ฅผ ์ํด ๋น ์ฟผ๋ฆฌ๋ฅผ ํ์ฉํ๊ณ ์์ง๋ง, ์ธ๊ฐ์์๋ ๋น ์ฟผ๋ฆฌ์ ์ฌ์ฉ ๋น์ฉ์ด ์๋์ ์ผ๋ก ๋น์ธ๋ค๋ ์ด์ผ๊ธฐ๊ฐ ๋์ค๊ธฐ๋ ํฉ๋๋ค.
๋ง์น๋ฉฐ
ํ๋์ ๋ฐ์ดํฐ ๋ถ์ ํ๊ฒฝ์์๋ ๋ฐ์ดํฐ์ ์๋์ ๋ค์์ฑ, ๊ทธ๋ฆฌ๊ณ ๋ถ์์ ์ ์ฐ์ฑ์ด ๋์ฑ ์ค์ํด์ก์ต๋๋ค. ์ด์ ๋ โ์ ๊ทํ๋ฅผ ์ผ๋ง๋ ์๊ฒฉํ ํ ๊ฒ์ธ๊ฐ?โ๋ณด๋ค๋ โ์ด๋ป๊ฒ ํ๋ฉด ๋ฐ์ดํฐ๋ฅผ ํ์ฉํด ๋ ๋น ๋ฅด๊ฒ ์ธ์ฌ์ดํธ(Insight)๋ฅผ ์ป์ ์ ์์๊น?โ๋ผ๋ ์ง๋ฌธ์ด ๋ณด๋ค ์ค์ํด์ง ์๋๊ฐ ๋์์ฃ .
๊ฒฐ๊ตญ ํ์ฌ์ ๋ฐ์ดํฐ ํ๊ฒฝ์ด๋ ๋ถ์ ์๊ตฌ์ฌํญ, ๋ณด์ ํ ๊ธฐ์ ์ ๋ฐ๋ผ์ ์ต์ ์ ์ ๊ทผ๋ฒ์ ๋ฌ๋ผ์ง ์ ์์ต๋๋ค. ์ค์ํ ๊ฒ์ ๊ต๊ณผ์์ ์ธ ๋ฐฉ๋ฒ๋ก ์ ์ง๋์น๊ฒ ์ฝ๋งค์ด๊ธฐ๋ณด๋ค๋, ์ค์ ๋น์ฆ๋์ค์ ๋ฌธ์ ๋ฅผ ํจ๊ณผ์ ์ผ๋ก ํด๊ฒฐํ ์ ์๋ ์ค์ฉ์ ์ธ ์ ๊ทผ ๋ฐฉ์์ ์ ํํ๋ ๊ฒ์ด ์๋๊น ์๊ฐํฉ๋๋ค.
Note
ELT์ ๋ธํ๋ ์ดํฌ(Data Lake), ๋ ์ดํฌํ์ฐ์ค(Lakehouse)์ ๋ํ ๋ด์ฉ์ ๋ค์์ ๋ฐ๋ก ๊ธ๋ก ์ ๋ฆฌํด์ ๋ฐํํด๋ณด๊ฒ ์ต๋๋ค.