๋ ์ ์ฌ๋ฌ๋ถ, ์ข์ ํ๋ฃจ ๋์ธ์!
์กฐ๋ง๊ฐ ๋ฐ์ดํฐ ์์ง ๋ฐ ๋ถ์์ ์ํ IT ํ๋ซํผ์ ๊ตฌ์ถํ๋ ์์ ์ ์ง๋ฅ์ ์ผ๋ก ๋ก๋๋ ์๋น์ค ์ ๊ณต ๋ชจ๋ธ์ด๋ ๊ธฐ์ ์ ์ผ๋ก ๋ณต์กํ ์ ํ ์์ฑ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ๋น์ฆ๋์ค๋ฅผ ์ด์ํ๋ ๋ชจ๋ ํ์ฌ์์ ๋ฐ์ํฉ๋๋ค. ๋ถ์ ํ๋ซํผ์ ๊ตฌ์ถํ๋ ๊ฒ์ ๋ณต์กํ๊ณ ์๊ฐ์ด ๋ง์ด ๊ฑธ๋ฆฌ๋ ์์ ์ ๋๋ค. ๊ทธ๋ฌ๋ ๋ชจ๋ ์์ ์ ๋จ์ํํ ์ ์์ต๋๋ค. ์ด ๊ธฐ์ฌ์์๋ ๋ถ์ ์๋ฃจ์ ์ ๋ง๋๋ ๋ฐ ๋์์ด ๋๋ ๋ก์ฐ ์ฝ๋ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ ๊ฒฝํ์ ๊ณต์ ํ๊ณ ์ถ์ต๋๋ค. ์ด ๊ฒฝํ์ Neoflex ํ์ฌ์ ๋น ๋ฐ์ดํฐ ์๋ฃจ์ ๋ฐฉํฅ์์ ์ฌ๋ฌ ํ๋ก์ ํธ๋ฅผ ์คํํ๋ ๋์ ํ๋๋์์ต๋๋ค. 2005๋ ๋ถํฐ ๋ค์คํ๋ ์ค์ ๋น ๋ฐ์ดํฐ ์๋ฃจ์ ๋ฐฉํฅ์ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค ๋ฐ ๋ ์ดํฌ ๊ตฌ์ถ ๋ฌธ์ ๋ฅผ ๋ค๋ฃจ๊ณ , ์ ๋ณด ์ฒ๋ฆฌ ์๋ ์ต์ ํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ฉฐ, ๋ฐ์ดํฐ ํ์ง ๊ด๋ฆฌ๋ฅผ ์ํ ๋ฐฉ๋ฒ๋ก ์ ์ฐ๊ตฌํด ์์ต๋๋ค.
์ฝํ๊ฑฐ๋ ๊ฐํ๊ฒ ๊ตฌ์กฐํ๋ ๋ฐ์ดํฐ๊ฐ ์์์ ์ผ๋ก ์ถ์ ๋๋ ๊ฒ์ ๋๊ตฌ๋ ํผํ ์ ์์ต๋๋ค. ์๋ง๋ ์ฐ๋ฆฌ๊ฐ ์ค์๊ธฐ์
์ ๋ํด ์ด์ผ๊ธฐํ๊ณ ์๋ ๊ฒฝ์ฐ์๋ ๋ง์ฐฌ๊ฐ์ง์ผ ๊ฒ์
๋๋ค. ๊ฒฐ๊ตญ, ์ฌ์
์ ํ์ฅํ ๋ ์ ๋งํ ๊ธฐ์
๊ฐ๋ ์ถฉ์ฑ๋ ํ๋ก๊ทธ๋จ ๊ฐ๋ฐ ๋ฌธ์ ์ ์ง๋ฉดํ๊ฒ ๋ ๊ฒ์ด๊ณ , POS(Point of Sale)์ ํจ์จ์ฑ์ ๋ถ์ํ๊ณ ์ถ๊ณ , ํ๊ฒ ๊ด๊ณ ์ ๋ํด ์๊ฐํ๊ณ , ๋๋ฐ ์ ํ์ ๋ํ ์์๋ก ์ธํด ๋นํฉํ๊ฒ ๋ ๊ฒ์
๋๋ค. . ์ฒซ ๋ฒ์งธ ๊ทผ์ฌ์น๋ก ๋ฌธ์ ๋ "๋ฌด๋ฆ ์์์" ํด๊ฒฐ๋ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๋น์ฆ๋์ค๊ฐ ์ฑ์ฅํจ์ ๋ฐ๋ผ ๋ถ์ ํ๋ซํผ์ ์ฌ์ฉํ๋ ๊ฒ์ ์ฌ์ ํ โโ๋ถ๊ฐํผํฉ๋๋ค.
๊ทธ๋ฌ๋ ์ด๋ค ๊ฒฝ์ฐ์ ๋ฐ์ดํฐ ๋ถ์ ์์
์ด "๋ก์ผ ๊ณผํ" ์์
๋ฌธ์ ๋ก ๋ฐ์ ํ ์ ์์ต๋๊น? ์๋ง๋ ์ฐ๋ฆฌ๊ฐ ์ ๋ง ๋น
๋ฐ์ดํฐ์ ๋ํด ์ด์ผ๊ธฐํ๊ณ ์๋ ์๊ฐ์ผ ๊ฒ์
๋๋ค.
๋ก์ผ ๊ณผํ์ ๋ ์ฝ๊ฒ ๋ง๋ค๊ธฐ ์ํด ์ฝ๋ผ๋ฆฌ๋ฅผ ํ ์กฐ๊ฐ์ฉ ๋จน์ ์ ์์ต๋๋ค.
์ ํ๋ฆฌ์ผ์ด์
/์๋น์ค/๋ง์ดํฌ๋ก์๋น์ค๊ฐ ๋์ฑ ๊ฐ๋ณ์ ์ด๊ณ ์์จ์ ์ผ์๋ก ๊ทํ, ๋๋ฃ ๋ฐ ์ ์ฒด ๋น์ฆ๋์ค๊ฐ ์ฝ๋ผ๋ฆฌ๋ฅผ ์ํํ๊ธฐ๊ฐ ๋ ์ฌ์์ง๋๋ค.
๊ฑฐ์ ๋ชจ๋ ๊ณ ๊ฐ์ด DevOps ํ์ ์์ง๋์ด๋ง ๊ดํ์ ๊ธฐ๋ฐ์ผ๋ก ํ๊ฒฝ์ ์ฌ๊ตฌ์ถํ์ฌ ์ด ๊ฐ์ ์ ๋๋ฌํ์ต๋๋ค.
๊ทธ๋ฌ๋ "๋ณ๋์ ์ฝ๋ผ๋ฆฌ์" ์๋จ์ ์ฌ์ฉํ๋๋ผ๋ IT ํ๊ฒฝ์ด "๊ณผํฌํ"๋ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค. ์ง๊ธ์ ๋ฉ์ถ๊ณ ์จ์ ๋ด์ฌ๋ฉฐ ์์ ๋ฐ๋ผ๋ณผ ๊ฐ์น๊ฐ ์์ต๋๋ค. ๋ก์ฐ์ฝ๋ ์์ง๋์ด๋ง ํ๋ซํผ.
๋ง์ ๊ฐ๋ฐ์๋ ์ฝ๋๋ฅผ ์ง์ ์์ฑํ๋ ๊ฒ์์ ๋ก์ฐ ์ฝ๋ ์์คํ ์ UI ์ธํฐํ์ด์ค์ ์๋ "๋๊ธฐ" ํ์ดํ๋ก ์ด๋ํ ๋ ๊ฒฝ๋ ฅ์ด ๋ง๋ค๋ฅธ ๊ณจ๋ชฉ์ ๋๋ฌํ ๊ฐ๋ฅ์ฑ์ ๋ํด ๋๋ ค์ํฉ๋๋ค. ๊ทธ๋ฌ๋ ๊ณต์ ๊ธฐ๊ณ์ ์ถํ์ ์์ง๋์ด์ ์ค์ข ์ผ๋ก ์ด์ด์ง์ง ์๊ณ ๊ทธ๋ค์ ์์ ์ ์๋ก์ด ์ฐจ์์ผ๋ก ๋์ด ์ฌ๋ ธ์ต๋๋ค!
์ด์ ๋ฅผ ์์๋ด ์๋ค.
๋ฌผ๋ฅ, ํต์ ์ฐ์ , ๋ฏธ๋์ด ์กฐ์ฌ, ๊ธ์ต ๋ถ์ผ์ ๋ฐ์ดํฐ ๋ถ์์ ํญ์ ๋ค์๊ณผ ๊ฐ์ ์ง๋ฌธ๊ณผ ์ฐ๊ด๋ฉ๋๋ค.
- ์๋ํ๋ ๋ถ์ ์๋
- ์ฃผ์ ๋ฐ์ดํฐ ์์ฐ ํ๋ฆ์ ์ํฅ์ ์ฃผ์ง ์๊ณ ์คํ์ ์ํํ ์ ์๋ ๋ฅ๋ ฅ
- ์ค๋น๋ ๋ฐ์ดํฐ์ ์ ๋ขฐ์ฑ
- ๋ณ๊ฒฝ ์ถ์ ๋ฐ ๋ฒ์ ๊ด๋ฆฌ
- ๋ฐ์ดํฐ ์ถ์ฒ, ๋ฐ์ดํฐ ๊ณ๋ณด, CDC;
- ํ๋ก๋์ ํ๊ฒฝ์ ์๋ก์ด ๊ธฐ๋ฅ์ ๋น ๋ฅด๊ฒ ์ ๊ณตํฉ๋๋ค.
- ๊ทธ๋ฆฌ๊ณ ์ ๋ช ๋์ ๊ฒ์ ๊ฐ๋ฐ ๋ฐ ์ง์ ๋น์ฉ์ ๋๋ค.
์ฆ, ์์ง๋์ด๋ ๋ฎ์ ์์ค์ ๊ฐ๋ฐ ์์ ์ ๋ํ ์์์ ๋น์์ผ๋ง ์ถฉ๋ถํ ํจ์จ์ฑ์ผ๋ก ์๋ฃํ ์ ์๋ ์์ฒญ๋ ์์ ๋์ ์์ค์ ์์ ์ ๊ฐ์ง๊ณ ์์ต๋๋ค.
๊ฐ๋ฐ์๊ฐ ์๋ก์ด ๋จ๊ณ๋ก ๋์๊ฐ๊ธฐ ์ํ ์ ์ ์กฐ๊ฑด์ ๋น์ฆ๋์ค์ ์งํ์ ๋์งํธํ์์ต๋๋ค. ๊ฐ๋ฐ์์ ๊ฐ์น๋ ๋ณํํ๊ณ ์์ต๋๋ค. ์๋ํ๋๋ ๋น์ฆ๋์ค์ ๊ฐ๋ ์ ๋ชฐ์ ํ ์ ์๋ ๊ฐ๋ฐ์๊ฐ ์๋นํ ๋ถ์กฑํฉ๋๋ค.
์ ์์ค ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ ๊ณ ๊ธ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก ๋น์ ๋ฅผ ๊ทธ๋ ค๋ณด๊ฒ ์ต๋๋ค. ์ ์์ค ์ธ์ด์์ ๊ณ ๊ธ ์ธ์ด๋ก์ ์ ํ์ "ํ๋์จ์ด ์ธ์ด๋ก ์ง์ ์ง์๋ฌธ"์ ์์ฑํ๋ ๊ฒ์์ "์ฌ๋ ์ธ์ด๋ก ์ง์๋ฌธ"์ ์์ฑํ๋ ์ ํ์ ๋๋ค. ์ฆ, ์ถ์ํ ๊ณ์ธต์ ์ถ๊ฐํ๋ ๊ฒ์ ๋๋ค. ์ด ๊ฒฝ์ฐ, ๊ณ ๊ธ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์์ ๋ก์ฐ์ฝ๋ ํ๋ซํผ์ผ๋ก์ ์ ํ์ "์ฌ๋์ ์ธ์ด๋ก ๋ ์ง์นจ"์์ "๋น์ฆ๋์ค ์ธ์ด๋ก ๋ ์ง์นจ"์ผ๋ก์ ์ ํ์ ๋๋ค. ์ด ์ฌ์ค์ ์ํ๊น์ํ๋ ๊ฐ๋ฐ์๋ค์ด ์๋ค๋ฉด ์๋ง๋ ๋ฐฐ์ด ์ ๋ ฌ ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ ์๋ฐ์คํฌ๋ฆฝํธ๊ฐ ํ์ํ ์๊ฐ๋ถํฐ ์ํ๊น์์ ๋๊ผ์ ๊ฒ์ด๋ค. ๋ฌผ๋ก ์ด๋ฌํ ๊ธฐ๋ฅ์ ๋์ผํ ๊ณ ๊ธ ํ๋ก๊ทธ๋๋ฐ์ ๋ค๋ฅธ ์๋จ์ ํตํด ๋ด๋ถ์ ์ผ๋ก ์ํํธ์จ์ด ๊ตฌํ์ ๊ฐ์ต๋๋ค.
๋ฐ๋ผ์ ๋ก์ฐ์ฝ๋๋ ๋ ๋ค๋ฅธ ์ถ์ํ ์์ค์ ๋ชจ์ต์ผ ๋ฟ์ ๋๋ค.
๋ก์ฐ์ฝ๋๋ฅผ ํ์ฉํ ์์ฉ๊ฒฝํ
๋ก์ฐ์ฝ๋๋ผ๋ ์ฃผ์ ๋ ๊ฝค ๊ด๋ฒ์ํ์ง๋ง, ์ด์ ์ฐ๋ฆฌ ํ๋ก์ ํธ ์ค ํ๋๋ฅผ ์๋ก ๋ค์ด "๋ก์ฐ์ฝ๋ ๊ฐ๋ "์ ์ค์ ์ ์ฉ์ ๋ํด ์ด์ผ๊ธฐํ๊ณ ์ถ์ต๋๋ค.
Neoflex์ ๋น ๋ฐ์ดํฐ ์๋ฃจ์ ์ฌ์ ๋ถ๋ ๋น์ฆ๋์ค์ ๊ธ์ต ๋ถ๋ฌธ, ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค ๋ฐ ๋ ์ดํฌ ๊ตฌ์ถ, ๋ค์ํ ๋ณด๊ณ ์๋ํ๋ฅผ ์ ๋ฌธ์ผ๋ก ํฉ๋๋ค. ์ด ํ์ ์์ฅ์์๋ ๋ก์ฐ ์ฝ๋ ์ฌ์ฉ์ด ์ค๋ซ๋์ ํ์ค์ด ๋์์ต๋๋ค. ๋ค๋ฅธ ๋ก์ฐ ์ฝ๋ ๋๊ตฌ ์ค์์ ETL ํ๋ก์ธ์ค ๊ตฌ์ฑ์ ์ํ ๋๊ตฌ์ธ Informatica Power Center, IBM Datastage, Pentaho Data Integration์ ์ธ๊ธํ ์ ์์ต๋๋ค. ๋๋ ๋ฐ์ดํฐ ์ก์ธ์ค ๋ฐ ํธ์ง์ ์ํ ์ธํฐํ์ด์ค์ ์ ์ํ ๊ฐ๋ฐ์ ์ํ ํ๊ฒฝ ์ญํ ์ ํ๋ Oracle Apex์ ๋๋ค. ๊ทธ๋ฌ๋ ๋ก์ฐ ์ฝ๋ ๊ฐ๋ฐ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ค๊ณ ํด์ ํญ์ ๊ณต๊ธ์ ์ฒด์ ๋ํ ๋ช ํํ ์์กด์ฑ์ ์ง๋ ์์ฉ ๊ธฐ์ ์คํ์์ ๊ณ ๋๋ก ํ๊ฒํ ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ๋ ๊ฒ์ด ํฌํจ๋๋ ๊ฒ์ ์๋๋๋ค.
๋ก์ฐ ์ฝ๋ ํ๋ซํผ์ ์ฌ์ฉํ๋ฉด ๋ฐ์ดํฐ ํ๋ฆ์ ์กฐ์ ์ ๊ตฌ์ฑํ๊ณ , ๋ฐ์ดํฐ ๊ณผํ ํ๋ซํผ์ ์์ฑํ๊ฑฐ๋, ์๋ฅผ ๋ค์ด ๋ฐ์ดํฐ ํ์ง ํ์ธ์ ์ํ ๋ชจ๋์ ๋ง๋ค ์๋ ์์ต๋๋ค.
๋ก์ฐ ์ฝ๋ ๊ฐ๋ฐ ๋๊ตฌ ์ฌ์ฉ ๊ฒฝํ์ ์ ์ฉ ์ฌ๋ก ์ค ํ๋๋ ๋ฌ์์ ๋ฏธ๋์ด ์ฐ๊ตฌ ์์ฅ์ ์ ๋์ฃผ์ ์ค ํ๋์ธ Neoflex์ Mediascope ๊ฐ์ ํ๋ ฅ์ ๋๋ค. ์ด ํ์ฌ์ ๋น์ฆ๋์ค ๋ชฉํ ์ค ํ๋๋ ๊ด๊ณ ์ฃผ, ์ธํฐ๋ท ํ๋ซํผ, TV ์ฑ๋, ๋ผ๋์ค ๋ฐฉ์ก๊ตญ, ๊ด๊ณ ๋ํ์ฌ ๋ฐ ๋ธ๋๋๊ฐ ๊ด๊ณ ๊ตฌ๋งค์ ๋ํ ๊ฒฐ์ ์ ๋ด๋ฆฌ๊ณ ๋ง์ผํ ์ปค๋ฎค๋์ผ์ด์ ์ ๊ณํํ๋ ๋ฐ ํ์ํ ๋ฐ์ดํฐ๋ฅผ ์์ฐํ๋ ๊ฒ์ ๋๋ค.
๋ฏธ๋์ด ์ฐ๊ตฌ๋ ๊ธฐ์ ์ ์ผ๋ก ํ์ฌ๋ ๋น์ฆ๋์ค ์์ญ์
๋๋ค. ๋น๋์ค ์ํ์ค๋ฅผ ์ธ์ํ๊ณ , ์์ฒญ์ ๋ถ์ํ๋ ์ฅ์น์์ ๋ฐ์ดํฐ๋ฅผ ์์งํ๊ณ , ์น ๋ฆฌ์์ค์ ๋ํ ํ๋์ ์ธก์ ํ๋ ๊ฒ์ ๋ชจ๋ ํ์ฌ๊ฐ ๋๊ท๋ชจ IT ์ง์์ ๋ณด์ ํ๊ณ ์์ผ๋ฉฐ ๋ถ์ ์๋ฃจ์
๊ตฌ์ถ์ ๋ํ ๋ง๋ํ ๊ฒฝํ์ ๋ณด์ ํ๊ณ ์์์ ์๋ฏธํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ ๋ณด์ ์, ์ ๋ณด ์์ค์ ์ ๋ฐ ๋ค์์ฑ์ด ๊ธฐํ๊ธ์์ ์ผ๋ก ์ฆ๊ฐํจ์ ๋ฐ๋ผ IT ๋ฐ์ดํฐ ์ฐ์
์ ์ง์์ ์ผ๋ก ๋ฐ์ ํ๊ณ ์์ต๋๋ค. ์ด๋ฏธ ์๋ํ๊ณ ์๋ Mediascope ๋ถ์ ํ๋ซํผ์ ํ์ฅํ๋ ๊ฐ์ฅ ๊ฐ๋จํ ์๋ฃจ์
์ IT ์ง์์ ๋๋ฆฌ๋ ๊ฒ์
๋๋ค. ๊ทธ๋ฌ๋ ํจ์ฌ ๋ ํจ๊ณผ์ ์ธ ์๋ฃจ์
์ ๊ฐ๋ฐ ํ๋ก์ธ์ค ์๋๋ฅผ ๋์ด๋ ๊ฒ์
๋๋ค. ์ด๋ฌํ ๋ฐฉํฅ์ผ๋ก ์ด๋๋ ๋จ๊ณ ์ค ํ๋๋ ๋ก์ฐ์ฝ๋ ํ๋ซํผ์ ์ฌ์ฉํ๋ ๊ฒ์ผ ์ ์์ต๋๋ค.
ํ๋ก์ ํธ๊ฐ ์์๋ ๋น์ ํ์ฌ๋ ์ด๋ฏธ ์ ๋๋ก ์๋ํ๋ ์ ํ ์๋ฃจ์ ์ ๊ฐ๊ณ ์์์ต๋๋ค. ๊ทธ๋ฌ๋ MSSQL์ ์๋ฃจ์ ๊ตฌํ์ ์์ฉ ๊ฐ๋ฅํ ๊ฐ๋ฐ ๋น์ฉ์ ์ ์งํ๋ฉด์ ๊ธฐ๋ฅ ํ์ฅ์ ๋ํ ๊ธฐ๋์น๋ฅผ ์์ ํ ์ถฉ์กฑํ ์ ์์์ต๋๋ค.
์ฐ๋ฆฌ ์์ ๋์ธ ์๋ฌด๋ ์ ๋ง ์ผ์ฌ์ ์ด์์ต๋๋ค. Neoflex์ Mediascope๋ ์์์ผ์ XNUMX๋ถ๊ธฐ ์ด๋ด์ MVP๊ฐ ์ถ์๋๋ค๋ ์กฐ๊ฑด ํ์ XNUMX๋ ๋ ์ฑ ์ ๋์ด ์ฐ์ ์ฉ ์๋ฃจ์ ์ ๋ง๋ค์ด์ผ ํ์ต๋๋ค.
Hadoop ๊ธฐ์ ์คํ์ ๋ก์ฐ ์ฝ๋ ์ปดํจํ ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ์๋ก์ด ๋ฐ์ดํฐ ํ๋ซํผ์ ๊ตฌ์ถํ๊ธฐ ์ํ ๊ธฐ๋ฐ์ผ๋ก ์ ํ๋์์ต๋๋ค. HDFS๋ ์ชฝ๋ชจ์ด ์ธ๊ณต ํ์ผ์ ์ฌ์ฉํ๋ ๋ฐ์ดํฐ ์ ์ฅ์ ํ์ค์ด ๋์์ต๋๋ค. ํ๋ซํผ์ ์๋ ๋ฐ์ดํฐ์ ์ ๊ทผํ๊ธฐ ์ํด Hive๋ฅผ ์ฌ์ฉํ๋๋ฐ, ์ฌ๊ธฐ์ ์ฌ์ฉ ๊ฐ๋ฅํ ๋ชจ๋ ๋งค์ฅ์ด ์ธ๋ถ ํ ์ด๋ธ ํ์์ผ๋ก ํ์๋ฉ๋๋ค. ์คํ ๋ฆฌ์ง์ ๋ฐ์ดํฐ๋ฅผ ๋ก๋ํ๋ ์์ ์ Kafka ๋ฐ Apache NiFi๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌํ๋์์ต๋๋ค.
์ด ๊ฐ๋ ์ Lowe-code ๋๊ตฌ๋ ๋ถ์ ํ๋ซํผ ๊ตฌ์ถ์์ ๊ฐ์ฅ ๋ ธ๋ ์ง์ฝ์ ์ธ ์์ ์ธ ๋ฐ์ดํฐ ๊ณ์ฐ ์์ ์ ์ต์ ํํ๋ ๋ฐ ์ฌ์ฉ๋์์ต๋๋ค.
๋ก์ฐ ์ฝ๋ ๋ฐ์ดํฐ๊ทธ๋จ ๋๊ตฌ๊ฐ ๋ฐ์ดํฐ ๋งคํ์ ์ฃผ์ ๋ฉ์ปค๋์ฆ์ผ๋ก ์ ํ๋์์ต๋๋ค. ๋ค์คํ๋ ์ค ๋ฐ์ดํฐ๊ทธ๋จ ๋ณํ ๋ฐ ๋ฐ์ดํฐ ํ๋ฆ์ ๊ฐ๋ฐํ๊ธฐ ์ํ ๋๊ตฌ์
๋๋ค.
์ด ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ฉด Scala ์ฝ๋๋ฅผ ์๋์ผ๋ก ์์ฑํ์ง ์๊ณ ๋ ์์
์ ์ํํ ์ ์์ต๋๋ค. Scala ์ฝ๋๋ ๋ชจ๋ธ ๊ธฐ๋ฐ ์ํคํ
์ฒ ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉํ์ฌ ์๋์ผ๋ก ์์ฑ๋ฉ๋๋ค.
์ด ์ ๊ทผ ๋ฐฉ์์ ํ์คํ ์ด์ ์ ๊ฐ๋ฐ ํ๋ก์ธ์ค ์๋๋ฅผ ๋์ด๋ ๊ฒ์ ๋๋ค. ๊ทธ๋ฌ๋ ์๋ ์ธ์๋ ๋ค์๊ณผ ๊ฐ์ ์ฅ์ ๋ ์์ต๋๋ค.
- ์์ค/์์ ์์ ๋ด์ฉ ๋ฐ ๊ตฌ์กฐ ๋ณด๊ธฐ
- ๋ฐ์ดํฐ ํ๋ฆ ๊ฐ์ฒด์ ์ถ์ฒ๋ฅผ ๊ฐ๋ณ ํ๋(๊ณ๋ณด)๋ก ์ถ์ ํฉ๋๋ค.
- ์ค๊ฐ ๊ฒฐ๊ณผ๋ฅผ ํ์ธํ๋ฉด์ ๋ณํ์ ๋ถ๋ถ์ ์ผ๋ก ์คํํฉ๋๋ค.
- ์คํํ๊ธฐ ์ ์ ์์ค ์ฝ๋๋ฅผ ๊ฒํ ํ๊ณ ์กฐ์ ํฉ๋๋ค.
- ๋ณํ์ ์๋ ๊ฒ์ฆ
- ์๋ ๋ฐ์ดํฐ ๋ค์ด๋ก๋ 1 in 1.
๋ณํ ์์ฑ์ ์ํ ๋ก์ฐ ์ฝ๋ ์๋ฃจ์ ์ ๋ํ ์ง์ ์ฅ๋ฒฝ์ ๋งค์ฐ ๋ฎ์ต๋๋ค. ๊ฐ๋ฐ์๋ SQL์ ์์์ผ ํ๊ณ ETL ๋๊ตฌ ์์ ๊ฒฝํ์ด ์์ด์ผ ํฉ๋๋ค. ์ฝ๋ ๊ธฐ๋ฐ ๋ณํ ์์ฑ๊ธฐ๋ ๋์ ์๋ฏธ์์ ETL ๋๊ตฌ๊ฐ ์๋๋ผ๋ ์ ์ ์ธ๊ธํ ๊ฐ์น๊ฐ ์์ต๋๋ค. ๋ก์ฐ ์ฝ๋ ๋๊ตฌ์๋ ์์ฒด ์ฝ๋ ์คํ ํ๊ฒฝ์ด ์์ ์ ์์ต๋๋ค. ์ฆ, ์์ฑ๋ ์ฝ๋๋ ๋ก์ฐ์ฝ๋ ์๋ฃจ์ ์ ์ค์นํ๊ธฐ ์ ๋ถํฐ ํด๋ฌ์คํฐ์ ์กด์ฌํ๋ ํ๊ฒฝ์์ ์คํ๋ฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ ์๋ง๋ ๋ก์ฐ์ฝ๋ ์นด๋ฅด๋ง์ ๋ ๋ค๋ฅธ ์ฅ์ ์ผ ๊ฒ์ ๋๋ค. ๋ก์ฐ ์ฝ๋ ํ๊ณผ ๋ณํํ์ฌ "ํด๋์" ํ์ ์๋ฅผ ๋ค์ด ์์ํ Scala ์ฝ๋๋ก ๊ธฐ๋ฅ์ ๊ตฌํํ๋ ์์ ์ ์ํํ ์ ์์ต๋๋ค. ๋ ํ์ ๊ฐ์ ์ฌํญ์ ํ๋ก๋์ ์ ์ ์ฉํ๋ ๊ฒ์ ๊ฐ๋จํ๊ณ ์ํํ ๊ฒ์ ๋๋ค.
๋ก์ฐ ์ฝ๋ ์ธ์๋ ์ฝ๋ ์๋ ์๋ฃจ์ ๋ ์๋ค๋ ์ ์ ์ฃผ๋ชฉํ ๊ฐ์น๊ฐ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ํต์ฌ์ ์๋ก ๋ค๋ฆ ๋๋ค. ๋ก์ฐ ์ฝ๋๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ๋ฐ์๊ฐ ์์ฑ๋ ์ฝ๋์ ๋ ๋ง์ ๊ฐ์ญ์ ํ ์ ์์ต๋๋ค. Datagram์ ๊ฒฝ์ฐ ์์ฑ๋ Scala ์ฝ๋๋ฅผ ๋ณด๊ณ ํธ์งํ๋ ๊ฒ์ด ๊ฐ๋ฅํ๋ฉฐ, ์ฝ๋๊ฐ ์์ผ๋ฉด ๊ทธ๋ฌํ ๊ธฐํ๊ฐ ์ ๊ณต๋์ง ์์ ์ ์์ต๋๋ค. ์ด๋ฌํ ์ฐจ์ด๋ ์๋ฃจ์ ์ ์ ์ฐ์ฑ ์ธก๋ฉด๋ฟ๋ง ์๋๋ผ ๋ฐ์ดํฐ ์์ง๋์ด์ ์์ ์ ๋ํ ํธ์ํจ๊ณผ ๋๊ธฐ ๋ถ์ฌ ์ธก๋ฉด์์๋ ๋งค์ฐ ์ค์ํฉ๋๋ค.
์๋ฃจ์ ์ํคํ ์ฒ
๋ก์ฐ ์ฝ๋ ๋๊ตฌ๊ฐ ๋ฐ์ดํฐ ๊ณ์ฐ ๊ธฐ๋ฅ ๊ฐ๋ฐ ์๋๋ฅผ ์ต์ ํํ๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ์ด๋ป๊ฒ ๋์์ด ๋๋์ง ์ ํํ ์์๋ด๋๋ก ํ๊ฒ ์ต๋๋ค. ๋จผ์ ์์คํ ์ ๊ธฐ๋ฅ์ ์ํคํ ์ฒ๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค. ์ด ๊ฒฝ์ฐ์ ์๋ก๋ ๋ฏธ๋์ด ์ฐ๊ตฌ๋ฅผ ์ํ ๋ฐ์ดํฐ ์์ฐ ๋ชจ๋ธ์ด ์์ต๋๋ค.
์ฐ๋ฆฌ์ ๊ฒฝ์ฐ ๋ฐ์ดํฐ ์์ค๋ ๋งค์ฐ ์ด์ง์ ์ด๊ณ ๋ค์ํฉ๋๋ค.
- ํผํ ๋ฏธํฐ(TV ๋ฏธํฐ)๋ ์ฐ๊ตฌ์ ์ฐธ์ฌํ๋ ๊ฐ๊ตฌ์์ ๋๊ฐ, ์ธ์ , ์ด๋ค TV ์ฑ๋์ ์์ฒญํ๋์ง ๋ฑ ํ ๋ ๋น์ ํจ๋ ์๋ต์์ ์ฌ์ฉ์ ํ๋์ ์ฝ๋ ์ํํธ์จ์ด ๋ฐ ํ๋์จ์ด ์ฅ์น์ ๋๋ค. ์ ๊ณต๋๋ ์ ๋ณด๋ ๋ฏธ๋์ด ํจํค์ง ๋ฐ ๋ฏธ๋์ด ์ ํ๊ณผ ์ฐ๊ฒฐ๋ ๋ฐฉ์ก ์์ฒญ ๊ฐ๊ฒฉ์ ์คํธ๋ฆผ์ ๋๋ค. Data Lake์ ๋ก๋๋๋ ๋จ๊ณ์ ๋ฐ์ดํฐ๋ ํน์ ๋ฏธ๋์ด ์ ํ์ TV ์์ฒญ์ ๋ถ์ํ๋ ๋ฐ ํ์ํ ์ธ๊ตฌํต๊ณํ์ ํน์ฑ, ์ง๋ฆฌ์ธตํ, ์๊ฐ๋ ๋ฐ ๊ธฐํ ์ ๋ณด๋ก ๊ฐํ๋ ์ ์์ต๋๋ค. ์ธก์ ๋ ์ธก์ ๊ฐ์ ๊ด๊ณ ์บ ํ์ธ์ ๋ถ์ ๋๋ ๊ณํํ๊ณ , ์ฒญ์ค์ ํ๋๊ณผ ์ ํธ๋๋ฅผ ํ๊ฐํ๊ณ , ๋ฐฉ์ก ๋คํธ์ํฌ๋ฅผ ๊ตฌ์ฑํ๋ ๋ฐ ์ฌ์ฉ๋ ์ ์์ต๋๋ค.
- ๋ฐ์ดํฐ๋ ํ ๋ ๋น์ ๋ฐฉ์ก์ ์คํธ๋ฆฌ๋ฐํ๊ณ ์ธํฐ๋ท์์ ๋น๋์ค ๋ฆฌ์์ค ์ฝํ ์ธ ์ ์์ฒญ์ ์ธก์ ํ๊ธฐ ์ํ ๋ชจ๋ํฐ๋ง ์์คํ ์์ ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค.
- ์ฌ์ดํธ ์ค์ฌ ๋ฐ ์ฌ์ฉ์ ์ค์ฌ ๋ฏธํฐ๋ฅผ ๋ชจ๋ ํฌํจํ๋ ์น ํ๊ฒฝ์ ์ธก์ ๋๊ตฌ์ ๋๋ค. Data Lake์ ๋ฐ์ดํฐ ๊ณต๊ธ์๋ ๊ฒ์ ํ์์ค ๋ธ๋ผ์ฐ์ ์ถ๊ฐ ๊ธฐ๋ฅ๊ณผ VPN์ด ๋ด์ฅ๋ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์ผ ์ ์์ต๋๋ค.
- ๋ํ ์จ๋ผ์ธ ์ค๋ฌธ์ง ์์ฑ ๊ฒฐ๊ณผ์ ํ์ฌ ์ค๋ฌธ์กฐ์ฌ์ ์ ํ ์ธํฐ๋ทฐ ๊ฒฐ๊ณผ๋ฅผ ํตํฉํ๋ ์ฌ์ดํธ์์ ๋ฐ์ดํฐ๋ฅผ ์ป์ ์๋ ์์ต๋๋ค.
- ํํธ๋์ฌ์ ๋ก๊ทธ์์ ์ ๋ณด๋ฅผ ๋ค์ด๋ก๋ํ์ฌ ๋ฐ์ดํฐ ๋ ์ดํฌ๋ฅผ ์ถ๊ฐ๋ก ๊ฐํํ ์ ์์ต๋๋ค.
์์ค ์์คํ ์์ ์์ ๋ฐ์ดํฐ์ ๊ธฐ๋ณธ ์คํ ์ด์ง์ผ๋ก ๋ก๋๋๋ ๊ทธ๋๋ก์ ๊ตฌํ์ ๋ค์ํ ๋ฐฉ์์ผ๋ก ๊ตฌ์ฑ๋ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋ชฉ์ ์ผ๋ก ๋ก์ฐ์ฝ๋๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฉํ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ ๋ก๋ฉ ์คํฌ๋ฆฝํธ์ ์๋ ์์ฑ์ด ๊ฐ๋ฅํฉ๋๋ค. ์ด ๊ฒฝ์ฐ ์์ค-ํ๊ฒ ๋งคํ ๊ฐ๋ฐ ์์ค์ผ๋ก ๋ด๋ ค๊ฐ ํ์๊ฐ ์์ต๋๋ค. ์๋ ๋ก๋ฉ์ ๊ตฌํํ๋ ค๋ฉด ์์ค์ ๋ํ ์ฐ๊ฒฐ์ ์ค์ ํ ๋ค์ ๋ก๋ฉ ์ธํฐํ์ด์ค์์ ๋ก๋ํ ์ํฐํฐ ๋ชฉ๋ก์ ์ ์ํด์ผ ํฉ๋๋ค. HDFS์ ๋๋ ํฐ๋ฆฌ ๊ตฌ์กฐ๋ ์๋์ผ๋ก ์์ฑ๋๋ฉฐ ์์ค ์์คํ ์ ๋ฐ์ดํฐ ์ ์ฅ ๊ตฌ์กฐ์ ํด๋นํฉ๋๋ค.
๊ทธ๋ฌ๋ ์ด ํ๋ก์ ํธ์ ๋งฅ๋ฝ์์ ์ฐ๋ฆฌ๋ Mediascope ํ์ฌ๊ฐ ์ด๋ฏธ Nifi + Kafka ์กฐํฉ์ ์ฌ์ฉํ์ฌ ์ ์ฌํ ์๋น์ค๋ฅผ ์์ฐํ๋ ์์ ์ ๋ ๋ฆฝ์ ์ผ๋ก ์์ํ๊ธฐ ๋๋ฌธ์ ๋ก์ฐ ์ฝ๋ ํ๋ซํผ์ ์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ง ์๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค.
์ด๋ฌํ ๋๊ตฌ๋ ์ํธ ๊ตํ์ด ๊ฐ๋ฅํ์ง ์๊ณ ์คํ๋ ค ๋ณด์์ ์ด๋ผ๋ ์ ์ ์ฆ์ ์ง์ ํ ๊ฐ์น๊ฐ ์์ต๋๋ค. Nifi์ Kafka๋ ์ง์ (Nifi -> Kafka) ์ฐ๊ฒฐ๊ณผ ์ญ๋ฐฉํฅ(Kafka -> Nifi) ์ฐ๊ฒฐ ๋ชจ๋์์ ์๋ํ ์ ์์ต๋๋ค. ๋ฏธ๋์ด ์ฐ๊ตฌ ํ๋ซํผ์ ๊ฒฝ์ฐ ๋ฒ๋ค์ ์ฒซ ๋ฒ์งธ ๋ฒ์ ์ด ์ฌ์ฉ๋์์ต๋๋ค.
์ฐ๋ฆฌ์ ๊ฒฝ์ฐ NayFi๋ ์์ค ์์คํ
์ ๋ค์ํ ์ ํ์ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ์ฌ Kafka ๋ธ๋ก์ปค๋ก ๋ณด๋ด์ผ ํ์ต๋๋ค. ์ด ๊ฒฝ์ฐ ๋ฉ์์ง๋ PublishKafka Nifi ํ๋ก์ธ์๋ฅผ ์ฌ์ฉํ์ฌ ํน์ Kafka ์ฃผ์ ๋ก ์ ์ก๋์์ต๋๋ค. ์ด๋ฌํ ํ์ดํ๋ผ์ธ์ ์กฐ์ ๋ฐ ์ ์ง ๊ด๋ฆฌ๋ ์๊ฐ์ ์ธํฐํ์ด์ค์์ ์ํ๋ฉ๋๋ค. Nifi ๋๊ตฌ์ Nifi + Kafka ์กฐํฉ์ ์ฌ์ฉ์ ๊ฐ๋ฐ์ ๋ํ ๋ก์ฐ ์ฝ๋ ์ ๊ทผ ๋ฐฉ์์ด๋ผ๊ณ ๋ ํ ์ ์์ผ๋ฉฐ, ์ด๋ ๋น
๋ฐ์ดํฐ ๊ธฐ์ ์ง์
์ฅ๋ฒฝ์ด ๋ฎ๊ณ ์ ํ๋ฆฌ์ผ์ด์
๊ฐ๋ฐ ํ๋ก์ธ์ค์ ์๋๋ฅผ ๋์
๋๋ค.
ํ๋ก์ ํธ ๊ตฌํ์ ๋ค์ ๋จ๊ณ๋ ์ธ๋ถ ๋ฐ์ดํฐ๋ฅผ ๋จ์ผ ์๋ฏธ ๊ณ์ธต ํ์์ผ๋ก ๊ฐ์ ธ์ค๋ ๊ฒ์ด์์ต๋๋ค. ์ํฐํฐ์ ๊ธฐ๋ก ์์ฑ์ด ์๋ ๊ฒฝ์ฐ ํด๋น ํํฐ์ ์ ์ปจํ ์คํธ์์ ๊ณ์ฐ์ด ์ํ๋ฉ๋๋ค. ์ํฐํฐ๊ฐ ๊ธฐ๋ก๋์ง ์์ ๊ฒฝ์ฐ ์ ํ์ ์ผ๋ก ๊ฐ์ฒด์ ์ ์ฒด ๋ด์ฉ์ ๋ค์ ๊ณ์ฐํ๊ฑฐ๋ ์ด ๊ฐ์ฒด์ ๋ค์ ๊ณ์ฐ์ ์์ ํ ๊ฑฐ๋ถํ ์ ์์ต๋๋ค(๋ณ๊ฒฝ ์ฌํญ์ด ์๊ธฐ ๋๋ฌธ์). ์ด ๋จ๊ณ์์๋ ๋ชจ๋ ์ํฐํฐ์ ๋ํ ํค๊ฐ ์์ฑ๋ฉ๋๋ค. ํค๋ ๋ถ์ ํ๋ซํผ์ ํค์ ์์ค ์์คํ ์ ํค ๊ฐ์ ๋์์ ํฌํจํ๋ ๋ง์คํฐ ๊ฐ์ฒด์ ํด๋นํ๋ Hbase ๋๋ ํฐ๋ฆฌ์ ์ ์ฅ๋ฉ๋๋ค. ์์ ๊ฐ์ฒด์ ํตํฉ์๋ ๋ถ์ ๋ฐ์ดํฐ์ ์๋น ๊ณ์ฐ ๊ฒฐ๊ณผ๊ฐ ๊ฐํ๋ฉ๋๋ค. ๋ฐ์ดํฐ ๊ณ์ฐ์ ์ํ ํ๋ ์์ํฌ๋ Spark์์ต๋๋ค. ๋ฐ์ดํฐ๋ฅผ ๋จ์ผ ์๋ฏธ ์ฒด๊ณ๋ก ๊ฐ์ ธ์ค๊ธฐ ์ํด ์ค๋ช ๋ ๊ธฐ๋ฅ๋ ๋ก์ฐ ์ฝ๋ ๋ฐ์ดํฐ๊ทธ๋จ ๋๊ตฌ์ ๋งคํ์ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌํ๋์์ต๋๋ค.
๋์ ์ํคํ ์ฒ์๋ ๋น์ฆ๋์ค ์ฌ์ฉ์์ ๋ฐ์ดํฐ์ ๋ํ SQL ์ก์ธ์ค๊ฐ ํ์ํ์ต๋๋ค. ์ด ์ต์ ์๋ Hive๊ฐ ์ฌ์ฉ๋์์ต๋๋ค. ๋ก์ฐ ์ฝ๋ ๋๊ตฌ์์ "Registr Hive Table" ์ต์ ์ ํ์ฑํํ๋ฉด ๊ฐ์ฒด๊ฐ Hive์ ์๋์ผ๋ก ๋ฑ๋ก๋ฉ๋๋ค.
๊ณ์ฐ ํ๋ฆ ์ ์ด
Datagram์๋ ์์ ํ๋ฆ ํ๋ฆ ๋์์ธ์ ์์ฑํ๊ธฐ ์ํ ์ธํฐํ์ด์ค๊ฐ ์์ต๋๋ค. Oozie ์ค์ผ์ค๋ฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋งคํ์ ์์ํ ์ ์์ต๋๋ค. ์คํธ๋ฆผ ๊ฐ๋ฐ์ ์ธํฐํ์ด์ค์์๋ ๋ณ๋ ฌ, ์์ฐจ ๋๋ ์คํ ์ข ์ ๋ฐ์ดํฐ ๋ณํ์ ์ํ ์ฒด๊ณ๋ฅผ ์์ฑํ ์ ์์ต๋๋ค. ์ ์คํฌ๋ฆฝํธ์ Java ํ๋ก๊ทธ๋จ์ด ์ง์๋ฉ๋๋ค. Apache Livy ์๋ฒ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ๋ ๊ฐ๋ฅํฉ๋๋ค. Apache Livy๋ ๊ฐ๋ฐ ํ๊ฒฝ์์ ์ง์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
ํ์ฌ์ ์ด๋ฏธ ์์ฒด ํ๋ก์ธ์ค ์ค์ผ์คํธ๋ ์ดํฐ๊ฐ ์๋ ๊ฒฝ์ฐ REST API๋ฅผ ์ฌ์ฉํ์ฌ ๊ธฐ์กด ํ๋ฆ์ ๋งคํ์ ํฌํจํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ์ฐ๋ฆฌ๋ Scala์ ๋งคํ์ PLSQL ๋ฐ Kotlin์ผ๋ก ์์ฑ๋ ์ค์ผ์คํธ๋ ์ดํฐ์ ์ฝ์ ํ๋ ๋ฐ ๊ฝค ์ฑ๊ณต์ ์ธ ๊ฒฝํ์ ํ์ต๋๋ค. ๋ก์ฐ ์ฝ๋ ๋๊ตฌ์ REST API์๋ ๋งคํ ๋์์ธ์ ๊ธฐ๋ฐ์ผ๋ก ์คํ ๊ฐ๋ฅํ ์ฐ๋ ์์ฑ, ๋งคํ ํธ์ถ, ๋งคํ ์ํ์ค ํธ์ถ, ๋งค๊ฐ ๋ณ์๋ฅผ URL์ ์ ๋ฌํ์ฌ ๋งคํ ์คํ๊ณผ ๊ฐ์ ์์ ์ด ํฌํจ๋ฉ๋๋ค.
Oozie์ ํจ๊ป Airflow๋ฅผ ์ฌ์ฉํ์ฌ ๊ณ์ฐ ํ๋ฆ์ ๊ตฌ์ฑํ๋ ๊ฒ์ด ๊ฐ๋ฅํฉ๋๋ค. ์๋ง๋ Oozie์ Airflow์ ๋น๊ต์ ๋ํด์๋ ๊ธธ๊ฒ ์ค๋ช ํ์ง ์๊ฒ ์ง๋ง, ๋ฏธ๋์ด ์ฐ๊ตฌ ํ๋ก์ ํธ ์์ ์ ๋งฅ๋ฝ์์ ์ ํ์ด Airflow์ ์ ๋ฆฌํ๋ค๋ ์ ๋ง ๋ง์๋๋ฆฌ๊ณ ์ถ์ต๋๋ค. ์ด๋ฒ์ ์ฃผ์ ์ฃผ์ฅ์ ์ ํ์ ๊ฐ๋ฐํ๋ ๋์ฑ ํ๋ฐํ ์ปค๋ฎค๋ํฐ์ ๋์ฑ ๋ฐ์ ๋ ์ธํฐํ์ด์ค + API์์ต๋๋ค.
Airflow๋ ๊ณ์ฐ ํ๋ก์ธ์ค๋ฅผ ์ค๋ช ํ๊ธฐ ์ํด ์ธ๊ธฐ ์๋ Python์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ์ข์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ผ๋ฐ์ ์ผ๋ก ์คํ ์์ค ์ํฌํ๋ก ๊ด๋ฆฌ ํ๋ซํผ์ ๊ทธ๋ฆฌ ๋ง์ง ์์ต๋๋ค. ํ๋ก์ธ์ค ์คํ(๊ฐํธ ์ฐจํธ ํฌํจ)์ ์์ํ๊ณ ๋ชจ๋ํฐ๋งํ๋ฉด Airflow์ ์นด๋ฅด๋ง์๋ง ํฌ์ธํธ๊ฐ ์ถ๊ฐ๋ฉ๋๋ค.
๋ก์ฐ ์ฝ๋ ์๋ฃจ์
๋งคํ์ ์คํํ๊ธฐ ์ํ ๊ตฌ์ฑ ํ์ผ ํ์์ด ์คํํฌ ์ ์ถ์ด ๋์์ต๋๋ค. ์ด๋ ๋ ๊ฐ์ง ์ด์ ๋ก ๋ฐ์ํ์ต๋๋ค. ์ฒซ์งธ, Spark-submit์ ์ฌ์ฉํ๋ฉด ์ฝ์์์ jar ํ์ผ์ ์ง์ ์คํํ ์ ์์ต๋๋ค. ๋์งธ, ์ํฌํ๋ก๋ฅผ ๊ตฌ์ฑํ๋ ๋ฐ ํ์ํ ๋ชจ๋ ์ ๋ณด๋ฅผ ํฌํจํ ์ ์์ต๋๋ค(์ด๋ ๊ฒ ํ๋ฉด Dag๋ฅผ ์์ฑํ๋ ์คํฌ๋ฆฝํธ๋ฅผ ๋ ์ฝ๊ฒ ์์ฑํ ์ ์์ต๋๋ค).
์ฐ๋ฆฌ์ ๊ฒฝ์ฐ Airflow ์ํฌํ๋ก์ ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ์์๋ SparkSubmitOperator์์ต๋๋ค.
SparkSubmitOperator๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฏธ๋ฆฌ ์์ฑ๋ ์ ๋ ฅ ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ์ฌ ํจํค์ง๋ ๋ฐ์ดํฐ๊ทธ๋จ ๋งคํ์ธ jar๋ฅผ ์คํํ ์ ์์ต๋๋ค.
๊ฐ Airflow ์์ ์ ๋ณ๋์ ์ค๋ ๋์์ ์คํ๋๋ฉฐ ๋ค๋ฅธ ์์ ์ ๋ํด์๋ ์๋ฌด๊ฒ๋ ๋ชจ๋ฅธ๋ค๋ ์ ์ ์ธ๊ธํ ๊ฐ์น๊ฐ ์์ต๋๋ค. ๋ฐ๋ผ์ ์์ ๊ฐ์ ์ํธ ์์ฉ์ DummyOperator ๋๋ BranchPythonOperator์ ๊ฐ์ ์ ์ด ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ์ฌ ์ํ๋ฉ๋๋ค.
์ ์ฒด์ ์ผ๋ก ๊ตฌ์ฑ ํ์ผ์ ๋ณดํธํ(Dag ๊ตฌ์ฑ)์ ํจ๊ป Datagram ๋ก์ฐ ์ฝ๋ ์๋ฃจ์ ์ ์ฌ์ฉํ๋ฉด ๋ฐ์ดํฐ ๋ก๋ฉ ํ๋ฆ ๊ฐ๋ฐ ํ๋ก์ธ์ค๊ฐ ํฌ๊ฒ ๊ฐ์ํ๋๊ณ ๋จ์ํ๋์์ต๋๋ค.
์ผ์ผ์ด์ค ๊ณ์ฐ
์๋ง๋ ๋ถ์ ๋ฐ์ดํฐ ์์ฐ์์ ๊ฐ์ฅ ์ง๋ฅ์ ์ผ๋ก ๋ก๋๋๋ ๋จ๊ณ๋ ์ผ์ผ์ด์ค๋ฅผ ๊ตฌ์ถํ๋ ๋จ๊ณ์ผ ๊ฒ์ ๋๋ค. ์กฐ์ฌ ํ์ฌ์ ๋ฐ์ดํฐ ๊ณ์ฐ ํ๋ฆ ์ค ํ๋์ ๋งฅ๋ฝ์์ ์ด ๋จ๊ณ์์ ๋ฐ์ดํฐ๋ ์๊ฐ๋ ์์ ์ ๊ณ ๋ คํ์ฌ ๊ธฐ์ค ๋ฐฉ์ก์ผ๋ก ์ถ์๋๊ณ ๋ฐฉ์ก ๊ทธ๋ฆฌ๋์ ์ฐ๊ฒฐ๋ฉ๋๋ค. ์ง์ญ ๋ฐฉ์ก ๋คํธ์ํฌ(์ง์ญ ๋ด์ค ๋ฐ ๊ด๊ณ )์ ๋ง๊ฒ ์กฐ์ ํ๋ ๊ฒ๋ ๊ฐ๋ฅํฉ๋๋ค. ๋ฌด์๋ณด๋ค๋ ์์ฒญ ๊ฐ๊ฒฉ ๋ถ์์ ๊ธฐ๋ฐ์ผ๋ก ๋ฏธ๋์ด ์ ํ์ ์ฐ์ ์์ฒญ ๊ฐ๊ฒฉ์ ์ธ๋ถํํ๋ ๋จ๊ณ์ ๋๋ค. ์ฆ์ ์์ฒญ ๊ฐ์น๋ ์ค์์ฑ์ ๋ํ ์ ๋ณด(๋ณด์ ๊ณ์ ๊ณ์ฐ)๋ฅผ ๊ธฐ๋ฐ์ผ๋ก "๊ฐ์ค์น"๋ฅผ ์ ์ฉํฉ๋๋ค.
์ผ์ผ์ด์ค๋ฅผ ์ค๋นํ๋ ๋ณ๋์ ๋จ๊ณ๋ ๋ฐ์ดํฐ ๊ฒ์ฆ์
๋๋ค. ๊ฒ์ฆ ์๊ณ ๋ฆฌ์ฆ์๋ ๋ค์ํ ์ํ์ ๊ณผํ ๋ชจ๋ธ์ ์ฌ์ฉ์ด ํฌํจ๋ฉ๋๋ค. ๊ทธ๋ฌ๋ ๋ก์ฐ ์ฝ๋ ํ๋ซํผ์ ์ฌ์ฉํ๋ฉด ๋ณต์กํ ์๊ณ ๋ฆฌ์ฆ์ ์๊ฐ์ ์ผ๋ก ์ฝ์ ์ ์๋ ์ฌ๋ฌ ๊ฐ์ ๊ฐ๋ณ ๋งคํ์ผ๋ก ๋๋ ์ ์์ต๋๋ค. ๊ฐ ๋งคํ์ ์ข์ ์์
์ ์ํํฉ๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ๋ฐ์ดํฐ ์ค๋น ๋จ๊ณ์ ์ค๊ฐ ๋๋ฒ๊น
, ๋ก๊น
๋ฐ ์๊ฐํ๊ฐ ๊ฐ๋ฅํฉ๋๋ค.
๊ฒ์ฆ ์๊ณ ๋ฆฌ์ฆ์ ๋ค์ ํ์ ๋จ๊ณ๋ก ๊ตฌ๋ถํ๊ธฐ๋ก ๊ฒฐ์ ๋์์ต๋๋ค.
- 60์ผ ๋์ ํด๋น ์ง์ญ์ ๋ชจ๋ ๋คํธ์ํฌ๋ฅผ ์์ฒญํ๋ฉด์ ํด๋น ์ง์ญ์ TV ๋คํธ์ํฌ ์์ฒญ ์ข ์์ฑ์ ๋ํ ํ๊ท๋ฅผ ๊ตฌ์ถํฉ๋๋ค.
- ๋ชจ๋ ํ๊ท ์ง์ ๊ณผ ๊ณ์ฐ๋ ๋ ์ง์ ๋ํด ์คํ๋ํธํ ์์ฐจ(ํ๊ท ๋ชจ๋ธ์ ์ํด ์์ธก๋ ๊ฐ๊ณผ ์ค์ ๊ฐ์ ํธ์ฐจ)๋ฅผ ๊ณ์ฐํฉ๋๋ค.
- ์ ์ฐ์ผ์ ํ์ํ ์์ก์ด ํ์ค(์์ ์ค์ ์ ๋ฐ๋ผ ์ง์ ๋จ)์ ์ด๊ณผํ๋ ๋ณ์น์ ์ธ ์ง์ญ-๋คํธ์ํฌ ์์ ์ ํ์ ๋๋ค.
- ํด๋น ์ง์ญ์ ๋คํธ์ํฌ๋ฅผ ์์ฒญํ ๊ฐ ์๋ต์์ ๋ํด ๋น์ ์์ ์ธ ์ง์ญ-TV ๋คํธ์ํฌ ์์ ๋ํ ์์ ๋ ์คํ๋ํธํ ์์ฐจ๋ฅผ ๋ค์ ๊ณ์ฐํ์ฌ ์ํ์์ ์ด ์๋ต์์ ์์ฒญ์ ์ ์ธํ ๋ ์ด ์๋ต์์ ๊ธฐ์ฌ๋(์คํ๋ํธํ ์์ฐจ์ ๋ณํ๋)๋ฅผ ๊ฒฐ์ ํฉ๋๋ค. .
- ์ ์ธ๋ก ์ธํด ํ์ ๊ธ์ฌ ์์ก์ด ์ ์์ผ๋ก ๋์์จ ํ๋ณด์๋ฅผ ๊ฒ์ํฉ๋๋ค.
์์ ์๋ ๋ฐ์ดํฐ ์์ง๋์ด๊ฐ ์ด๋ฏธ ๋๋ฌด ๋ง์ ์๊ฐ์ ๊ฐ๊ณ ์๋ค๋ ๊ฐ์ค์ ํ์ฆํด ์ค๋๋ค... ๊ทธ๋ฆฌ๊ณ ์ด๊ฒ์ด ์ค์ ๋ก "์ฝ๋"๊ฐ ์๋ "์์ง๋์ด"๋ผ๋ฉด ๋ก์ฐ ์ฝ๋ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ ๋ ์ง์ ์ ์ ํ์ ๋ํ ๋๋ ค์์ด ์์ ๊ฒ์ ๋๋ค. ๊ฒฐ๊ตญ ๋ฌผ๋ฌ๋์ผ ํ๋ค.
๋ก์ฐ์ฝ๋๋ก ๋ ๋ฌด์์ ํ ์ ์๋์?
Scala์์ ์๋์ผ๋ก ์ฝ๋๋ฅผ ์์ฑํ ํ์ ์์ด ์ผ๊ด ์ฒ๋ฆฌ ๋ฐ ์คํธ๋ฆผ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ฅผ ์ํ ๋ก์ฐ ์ฝ๋ ๋๊ตฌ์ ์ ์ฉ ๋ฒ์๋ ์ฌ๊ธฐ์ ๋๋์ง ์์ต๋๋ค.
๋ฐ์ดํฐ๋ ์ดํฌ ๊ฐ๋ฐ์ ๋ก์ฐ์ฝ๋๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ์ด๋ฏธ ์ฐ๋ฆฌ์ ํ์ค์ด ๋์์ต๋๋ค. Hadoop ์คํ ๊ธฐ๋ฐ ์๋ฃจ์ ์ RDBMS ๊ธฐ๋ฐ์ ๊ธฐ์กด DWH ๊ฐ๋ฐ ๊ฒฝ๋ก๋ฅผ ๋ฐ๋ฅธ๋ค๊ณ ๋งํ ์ ์์ต๋๋ค. Hadoop ์คํ์ ๋ก์ฐ ์ฝ๋ ๋๊ตฌ๋ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ์์ ๊ณผ ์ต์ข BI ์ธํฐํ์ด์ค ๊ตฌ์ถ ์์ ์ ๋ชจ๋ ํด๊ฒฐํ ์ ์์ต๋๋ค. ๋ํ BI๋ ๋ฐ์ดํฐ ํํ๋ฟ๋ง ์๋๋ผ ๋น์ฆ๋์ค ์ฌ์ฉ์์ ํธ์ง๋ ์๋ฏธํ ์ ์๋ค๋ ์ ์ ์ ์ํด์ผ ํฉ๋๋ค. ์ฐ๋ฆฌ๋ ๊ธ์ต ๋ถ๋ฌธ์ ์ํ ๋ถ์ ํ๋ซํผ์ ๊ตฌ์ถํ ๋ ์ด ๊ธฐ๋ฅ์ ์์ฃผ ์ฌ์ฉํฉ๋๋ค.
๋ฌด์๋ณด๋ค๋ ๋ก์ฐ ์ฝ๋, ํนํ ๋ฐ์ดํฐ๊ทธ๋จ์ ์ฌ์ฉํ๋ฉด ๊ฐ๋ณ ํ๋(๊ณ๋ณด)๊น์ง ์์์ฑ ์๊ฒ ๋ฐ์ดํฐ ์คํธ๋ฆผ ๊ฐ์ฒด์ ์ถ์ฒ๋ฅผ ์ถ์ ํ๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๋ค. ์ด๋ฅผ ์ํด ๋ก์ฐ์ฝ๋ ๋๊ตฌ๋ Apache Atlas ๋ฐ Cloudera Navigator์์ ์ธํฐํ์ด์ค๋ฅผ ๊ตฌํํฉ๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ๊ฐ๋ฐ์๋ Atlas ์ฌ์ ์ ๊ฐ์ฒด ์งํฉ์ ๋ฑ๋กํ๊ณ ๋งคํ์ ์์ฑํ ๋ ๋ฑ๋ก๋ ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐํด์ผ ํฉ๋๋ค. ๋ฐ์ดํฐ ์๋ณธ์ ์ถ์ ํ๊ฑฐ๋ ๊ฐ์ฒด ์ข
์์ฑ์ ๋ถ์ํ๋ ๋ฉ์ปค๋์ฆ์ ๊ณ์ฐ ์๊ณ ๋ฆฌ์ฆ์ ๊ฐ์ ํด์ผ ํ ๋ ๋ง์ ์๊ฐ์ ์ ์ฝํฉ๋๋ค. ์๋ฅผ ๋ค์ด ์ฌ๋ฌด์ ํ๋ฅผ ์์ฑํ ๋ ์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ฉด ์
๋ฒ ๋ณ๊ฒฝ ๊ธฐ๊ฐ์ ๋์ฑ ํธ์ํ๊ฒ ๊ฒฌ๋ ์ ์์ต๋๋ค. ๊ฒฐ๊ตญ, ์ธ๋ถ ๋ ์ด์ด ๊ฐ์ฒด์ ๋งฅ๋ฝ์์ ํํ ๊ฐ ์์กด์ฑ์ ๋ ์ ์ดํดํ ์๋ก "๊ฐ์์ค๋ฌ์ด" ๊ฒฐํจ์ด ๋ ๋ฐ์ํ๊ณ ์ฌ์์
ํ์๊ฐ ์ค์ด๋ญ๋๋ค.
๋ฐ์ดํฐ ํ์ง ๋ฐ ๋ก์ฐ์ฝ๋
Mediascope ํ๋ก์ ํธ์ ๋ก์ฐ ์ฝ๋ ๋๊ตฌ๋ก ๊ตฌํ๋ ๋ ๋ค๋ฅธ ์์ ์ ๋ฐ์ดํฐ ํ์ง ํด๋์ค ์์ ์ด์์ต๋๋ค. ์ฐ๊ตฌ ํ์ฌ ํ๋ก์ ํธ๋ฅผ ์ํ ๋ฐ์ดํฐ ๊ฒ์ฆ ํ์ดํ๋ผ์ธ ๊ตฌํ์ ํน์ง์ ์ฃผ์ ๋ฐ์ดํฐ ๊ณ์ฐ ํ๋ฆ์ ์ฑ๋ฅ๊ณผ ์๋์ ๋ํ ์ํฅ์ด ๋ถ์กฑํ๋ค๋ ๊ฒ์ ๋๋ค. ๋ ๋ฆฝ์ ์ธ ๋ฐ์ดํฐ ๊ฒ์ฆ ํ๋ฆ์ ์กฐ์จํ ์ ์๋๋ก ์ด๋ฏธ ์ต์ํ Apache Airflow๊ฐ ์ฌ์ฉ๋์์ต๋๋ค. ๋ฐ์ดํฐ ์์ฑ์ ๊ฐ ๋จ๊ณ๊ฐ ์ค๋น๋จ์ ๋ฐ๋ผ DQ ํ์ดํ๋ผ์ธ์ ๋ณ๋ ๋ถ๋ถ์ด ๋ณ๋ ฌ๋ก ์์๋์์ต๋๋ค.
๋ถ์ ํ๋ซํผ์์ ๋ฐ์ดํฐ๊ฐ ์์๋ ์๊ฐ๋ถํฐ ๋ฐ์ดํฐ ํ์ง์ ๋ชจ๋ํฐ๋งํ๋ ๊ฒ์ ์ข์ ๊ดํ์ผ๋ก ๊ฐ์ฃผ๋ฉ๋๋ค. ๋ฉํ๋ฐ์ดํฐ์ ๋ํ ์ ๋ณด๊ฐ ์์ผ๋ฉด ํด๋น ์ ๋ณด๊ฐ ๊ธฐ๋ณธ ๋ ์ด์ด์ ์ ๋ ฅ๋๋ ์๊ฐ๋ถํฐ ๊ธฐ๋ณธ ์กฐ๊ฑด(Null, ์ ์ฝ ์กฐ๊ฑด, ์ธ๋ ํค ์๋)์ ์ค์ํ๋์ง ํ์ธํ ์ ์์ต๋๋ค. ์ด ๊ธฐ๋ฅ์ ๋ฐ์ดํฐ๊ทธ๋จ์์ ์๋์ผ๋ก ์์ฑ๋ ๋ฐ์ดํฐ ํ์ง ๊ณ์ด ๋งคํ์ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌํ๋ฉ๋๋ค. ์ด ๊ฒฝ์ฐ ์ฝ๋ ์์ฑ๋ ๋ชจ๋ธ ๋ฉํ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค. Mediascope ํ๋ก์ ํธ์์๋ Enterprise Architect ์ ํ์ ๋ฉํ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ์ฌ ์ธํฐํ์ด์ค๋ฅผ ์ํํ์ต๋๋ค.
๋ก์ฐ ์ฝ๋ ๋๊ตฌ๋ฅผ Enterprise Architect์ ๊ฒฐํฉํ๋ฉด ๋ค์ ๊ฒ์ฌ๊ฐ ์๋์ผ๋ก ์์ฑ๋ฉ๋๋ค.
- "not null" ์์ ์๋ฅผ ์ฌ์ฉํ์ฌ ํ๋์ "null" ๊ฐ์ด ์๋์ง ํ์ธํฉ๋๋ค.
- ๊ธฐ๋ณธ ํค์ ์ค๋ณต ์ฌ๋ถ๋ฅผ ํ์ธํฉ๋๋ค.
- ์ํฐํฐ์ ์ธ๋ ํค๋ฅผ ํ์ธํฉ๋๋ค.
- ํ๋ ์งํฉ์ ๊ธฐ๋ฐ์ผ๋ก ๋ฌธ์์ด์ ๊ณ ์ ์ฑ์ ํ์ธํฉ๋๋ค.
๋ฐ์ดํฐ ๊ฐ์ฉ์ฑ ๋ฐ ์ ๋ขฐ์ฑ์ ๋ํ ๋ณด๋ค ๋ณต์กํ ๊ฒ์ฌ๋ฅผ ์ํด Zeppelin์ ๋ถ์๊ฐ๊ฐ ์ค๋นํ ์ธ๋ถ Spark SQL ๊ฒ์ฌ ์ฝ๋๋ฅผ ์ ๋ ฅ์ผ๋ก ์ฌ์ฉํ๋ Scala Expression์ ์ฌ์ฉํ์ฌ ๋งคํ์ด ์์ฑ๋์์ต๋๋ค.
๋ฌผ๋ก ์๋ ๊ฒ์ฌ ์์ฑ์ ์ ์ง์ ์ผ๋ก ์ด๋ฃจ์ด์ ธ์ผ ํฉ๋๋ค. ์ค๋ช
๋ ํ๋ก์ ํธ์ ํ๋ ์์ํฌ ๋ด์์ ์ด ์์
์ ๋ค์ ๋จ๊ณ๋ก ์งํ๋์์ต๋๋ค.
- Zeppelin ๋ ธํธ๋ถ์ ๊ตฌํ๋ DQ
- ๋งคํ์ DQ๊ฐ ๋ด์ฅ๋์ด ์์ต๋๋ค.
- ๋ณ๋์ ์ํฐํฐ์ ๋ํ ์ ์ฒด ๊ฒ์ฌ ์ธํธ๋ฅผ ํฌํจํ๋ ๋ณ๋์ ๋๊ท๋ชจ ๋งคํ ํํ์ DQ์ ๋๋ค.
- ๋ฉํ๋ฐ์ดํฐ ๋ฐ ๋น์ฆ๋์ค ๊ฒ์ฌ์ ๋ํ ์ ๋ณด๋ฅผ ์ ๋ ฅ์ผ๋ก ๋ฐ์๋ค์ด๋ ๋ฒ์ฉ ๋งค๊ฐ๋ณ์ํ๋ DQ ๋งคํ์ ๋๋ค.
์๋ง๋ ๋งค๊ฐ๋ณ์ํ๋ ๊ฒ์ฌ ์๋น์ค ์์ฑ์ ์ฃผ์ ์ด์ ์ ํ๋ก๋์ ํ๊ฒฝ์ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ด ๋จ์ถ๋๋ค๋ ์ ์ผ ๊ฒ์ ๋๋ค. ์๋ก์ด ํ์ง ๊ฒ์ฌ๋ ๊ฐ๋ฐ ๋ฐ ํ ์คํธ ํ๊ฒฝ์ ํตํด ๊ฐ์ ์ ์ผ๋ก ์ฝ๋๋ฅผ ์ ๋ฌํ๋ ์ผ๋ฐ์ ์ธ ํจํด์ ์ฐํํ ์ ์์ต๋๋ค.
- EA์์ ๋ชจ๋ธ์ด ์์ ๋๋ฉด ๋ชจ๋ ๋ฉํ๋ฐ์ดํฐ ํ์ธ์ด ์๋์ผ๋ก ์์ฑ๋ฉ๋๋ค.
- ๋ฐ์ดํฐ ๊ฐ์ฉ์ฑ ๊ฒ์ฌ(ํน์ ์์ ์ ๋ฐ์ดํฐ ์กด์ฌ ์ฌ๋ถ ํ์ธ)๋ ๊ฐ์ฒด ์ปจํ ์คํธ์์ ๋ค์ ๋ฐ์ดํฐ ์กฐ๊ฐ์ด ๋ํ๋๋ ์์ ์์ ์ ์ ์ฅํ๋ ๋๋ ํฐ๋ฆฌ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์์ฑ๋ ์ ์์ต๋๋ค.
- ๋น์ฆ๋์ค ๋ฐ์ดํฐ ์ ํจ์ฑ ๊ฒ์ฌ๋ ๋ถ์๊ฐ๊ฐ Zeppelin ๋ ธํธ๋ถ์์ ์์ฑํฉ๋๋ค. ์ฌ๊ธฐ์์ ์์ฐ ํ๊ฒฝ์ DQ ๋ชจ๋ ์ค์ ํ ์ด๋ธ๋ก ์ง์ ์ ์ก๋ฉ๋๋ค.
์คํฌ๋ฆฝํธ๋ฅผ ํ๋ก๋์ ํ๊ฒฝ์ผ๋ก ์ง์ ๋ฐฐ์กํ ์ํ์ด ์์ต๋๋ค. ๊ตฌ๋ฌธ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋๋ผ๋ ๋ฐ์ดํฐ ๊ณ์ฐ ํ๋ฆ๊ณผ ํ์ง ํ์ธ ์์ ํ๋ฆ์ด ์๋ก ๋ถ๋ฆฌ๋์ด ์๊ธฐ ๋๋ฌธ์ ํ ๋ฒ์ ํ์ธ์ ์ํํ์ง ๋ชปํ๋ ๊ฒ์ด ์ฐ๋ฆฌ๋ฅผ ์ํํ๋ ์ต๋๊ฐ์ ๋๋ค.
๋ณธ์ง์ ์ผ๋ก DQ ์๋น์ค๋ ํ๋ก๋์ ํ๊ฒฝ์์ ์๊ตฌ์ ์ผ๋ก ์คํ๋๋ฉฐ ๋ค์ ๋ฐ์ดํฐ๊ฐ ๋ํ๋๋ ์๊ฐ ์์ ์ ์์ํ ์ค๋น๊ฐ ๋์ด ์์ต๋๋ค.
๋์ ๊ฒฐ๋ก
๋ก์ฐ์ฝ๋ ์ฌ์ฉ์ ์ฅ์ ์ ๋ถ๋ช ํฉ๋๋ค. ๊ฐ๋ฐ์๋ ์ฒ์๋ถํฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ฐํ ํ์๊ฐ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ถ๊ฐ ์์ ์์ ํด๋ฐฉ๋ ํ๋ก๊ทธ๋๋จธ๋ ๋ ๋น ๋ฅด๊ฒ ๊ฒฐ๊ณผ๋ฅผ ์์ฑํฉ๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ์๋๋ ์ต์ ํ ๋ฌธ์ ํด๊ฒฐ์ ์ํ ์ถ๊ฐ ์๊ฐ์ ํ๋ณดํฉ๋๋ค. ๋ฐ๋ผ์ ์ด ๊ฒฝ์ฐ ๋ ์ข๊ณ ๋น ๋ฅธ ์๋ฃจ์ ์ ๊ธฐ๋ํ ์ ์์ต๋๋ค.
๋ฌผ๋ก ๋ก์ฐ์ฝ๋๋ ๋ง๋ณํต์น์ฝ์ด ์๋๋ฉฐ ์ ์ ๋ก ๋ง๋ฒ์ด ์ผ์ด๋์ง๋ ์์ต๋๋ค.
- ๋ก์ฐ ์ฝ๋ ์ฐ์ ์ "๊ฐํ" ๋จ๊ณ๋ฅผ ๊ฑฐ์น๊ณ ์์ผ๋ฉฐ ์์ง ํต์ผ๋ ์ฐ์ ํ์ค์ด ์์ต๋๋ค.
- ๋ง์ ๋ก์ฐ ์ฝ๋ ์๋ฃจ์ ์ ๋ฌด๋ฃ๊ฐ ์๋๋ฉฐ ์ด๋ฅผ ๊ตฌ๋งคํ๋ ๊ฒ์ ์ด๋ฅผ ์ฌ์ฉํ๋ ๋ฐ ๋ฐ๋ฅธ ๊ธ์ ์ ์ด์ ์ ๋ํ ์์ ํ ํ์ ์ ๊ฐ์ง๊ณ ์ด๋ฃจ์ด์ ธ์ผ ํ๋ ์์์ ์ธ ๋จ๊ณ์ฌ์ผ ํฉ๋๋ค.
- ๋ง์ ๋ก์ฐ ์ฝ๋ ์๋ฃจ์ ์ด GIT/SVN์์ ํญ์ ์ ์๋ํ๋ ๊ฒ์ ์๋๋๋ค. ํน์ ์์ฑ๋ ์ฝ๋๊ฐ ์จ๊ฒจ์ ธ ์์ผ๋ฉด ์ฌ์ฉํ๊ธฐ ๋ถํธํฉ๋๋ค.
- ์ํคํ ์ฒ๋ฅผ ํ์ฅํ ๋ ๋ก์ฐ ์ฝ๋ ์๋ฃจ์ ์ ๊ฐ์ ํด์ผ ํ ์๋ ์์ต๋๋ค. ์ด๋ ๊ฒฐ๊ณผ์ ์ผ๋ก ๋ก์ฐ ์ฝ๋ ์๋ฃจ์ ๊ณต๊ธ์ ์ฒด์ ๋ํ "์ ์ฐฉ ๋ฐ ์์กด" ํจ๊ณผ๋ฅผ ์ ๋ฐํฉ๋๋ค.
- ์ ์ ํ ์์ค์ ๋ณด์์ ๊ฐ๋ฅํ์ง๋ง ๋ ธ๋ ์ง์ฝ์ ์ด๋ฉฐ ๋ก์ฐ ์ฝ๋ ์์คํ ์์ง์์๋ ๊ตฌํํ๊ธฐ ์ด๋ ต์ต๋๋ค. ๋ก์ฐ์ฝ๋ ํ๋ซํผ์ ์ฌ์ฉ์ ํตํด ์ด์ต์ ์ถ๊ตฌํ๋ค๋ ์์น๋ง์ ๋ฐํ์ผ๋ก ์ ํํด์๋ ์ ๋ฉ๋๋ค. ์ ํํ ๋ ์กฐ์ง์ ์ ์ฒด IT ํ๊ฒฝ ์์ค์ ๋ํ ์๋ณ ๋ฐ์ดํฐ์ ์ก์ธ์ค ์ ์ด ๋ฐ ์์/์์น์ ์ํ ๊ธฐ๋ฅ์ ๊ฐ์ฉ์ฑ์ ๋ํด ์ง๋ฌธํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
๊ทธ๋ฌ๋ ์ ํํ ์์คํ
์ ๋ชจ๋ ๋จ์ ์ ์๊ณ ์๊ณ ๊ทธ ์ฌ์ฉ์ผ๋ก ์ธํ ์ด์ ์ด ๋๋ค์์ ์ํ๋ค๋ฉด ๋๋ ค์ ์์ด ์์ ์ฝ๋๋ก ์ด๋ํ์ญ์์ค. ๋์ฑ์ด ์งํ๊ฐ ๋ถ๊ฐํผํ ๊ฒ์ฒ๋ผ ๊ทธ ์ ํ๋ ๋ถ๊ฐํผํฉ๋๋ค.
๋ก์ฐ ์ฝ๋ ํ๋ซํผ์์ ํ ๋ช ์ ๊ฐ๋ฐ์๊ฐ ๋ก์ฐ ์ฝ๋๊ฐ ์๋ ๋ ๋ช ์ ๊ฐ๋ฐ์๋ณด๋ค ์์ ์ ์์ ์ ๋ ๋น ๋ฅด๊ฒ ์ํํ๋ค๋ฉด ํ์ฌ๋ ๋ชจ๋ ๋ฉด์์ ์์ ๋๊ฐ ์ ์์ต๋๋ค. ๋ก์ฐ์ฝ๋ ์๋ฃจ์ ์ ์ง์ ํ๊ธฐ ์ํ ์๊ณ๊ฐ์ "์ ํต์ ์ธ" ๊ธฐ์ ์ ๋นํด ๋ฎ์ผ๋ฉฐ ์ด๋ ์ธ๋ ฅ ๋ถ์กฑ ๋ฌธ์ ์ ๊ธ์ ์ ์ธ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. ๋ก์ฐ ์ฝ๋ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ฉด ๊ธฐ๋ฅ ํ ๊ฐ์ ์ํธ ์์ฉ ์๋๋ฅผ ๋์ด๊ณ ์ ํํ ๋ฐ์ดํฐ ๊ณผํ ์ฐ๊ตฌ ๊ฒฝ๋ก์ ์ ํ์ฑ์ ๋ํด ๋ ๋น ๋ฅธ ๊ฒฐ์ ์ ๋ด๋ฆด ์ ์์ต๋๋ค. ๋ฎ์ ์์ค์ ํ๋ซํผ์ ์์ฐ๋ ์๋ฃจ์ ์ ๋น๊ธฐ์ ์ ๋ฌธ๊ฐ(ํนํ ๋น์ฆ๋์ค ์ฌ์ฉ์)๊ฐ ์ดํดํ ์ ์๊ธฐ ๋๋ฌธ์ ์กฐ์ง์ ๋์งํธ ํ์ ์ ์ฃผ๋ํ ์ ์์ต๋๋ค.
๋ง๊ฐ ๊ธฐํ์ด ์ด๋ฐํ๊ณ ๋น์ฆ๋์ค ๋ก์ง์ด ๋ถ์กฑํ๋ฉฐ ๊ธฐ์ ์ ๋ฌธ ์ง์์ด ๋ถ์กฑํ๊ณ ์ถ์ ์๊ฐ์ ๋จ์ถํด์ผ ํ๋ ๊ฒฝ์ฐ ๋ก์ฐ ์ฝ๋๊ฐ ์๊ตฌ ์ฌํญ์ ์ถฉ์กฑํ๋ ํ ๊ฐ์ง ๋ฐฉ๋ฒ์ ๋๋ค.
๊ธฐ์กด ๊ฐ๋ฐ ๋๊ตฌ์ ์ค์์ฑ์ ๋ถ์ธํ ์๋ ์์ง๋ง, ๋ง์ ๊ฒฝ์ฐ ๋ก์ฐ ์ฝ๋ ์๋ฃจ์
์ ์ฌ์ฉํ๋ ๊ฒ์ด ํด๊ฒฐ ์ค์ธ ์์
์ ํจ์จ์ฑ์ ๋์ด๋ ๊ฐ์ฅ ์ข์ ๋ฐฉ๋ฒ์
๋๋ค.
์ถ์ฒ : habr.com