Kafka ๋ฐ Kafka Connect
์ด ํ์ด์ง์ ๋ด์ฉ
๊ฐ์
์ด ๊ฐ์ด๋์์๋ Apache Kafka ๋ฐ Kafka Connect์ ๋ํ ๋ค์๊ณผ ๊ฐ์ ๊ธฐ๋ณธ ์ ๋ณด๋ฅผ ์์๋ณผ ์ ์์ต๋๋ค.
Apache Kafka์ Kafka Connect๋?
Apache Kafka์ Kafka Connect๋ก ํด๊ฒฐํ ์ ์๋ ๋ฌธ์
Apache Kafka์ Kafka Connect๊ฐ ์ ์ฉํ ์ด์
Apache Kafka ๋ฐ Kafka Connect ํ์ดํ๋ผ์ธ์ ํตํด ๋ฐ์ดํฐ๊ฐ ์ด๋ํ๋ ๋ฐฉ๋ฒ
Apache Kafka
Apache Kafka๋ ์คํ ์์ค ๊ฒ์/๊ตฌ๋ ๋ฉ์์ง ์์คํ ์ ๋๋ค. ์ ์ฐํ๊ณ ๋ด๊ฒฐํจ์ฑ์ด ์์ผ๋ฉฐ ์ํ์ ์ผ๋ก ํ์ฅ ๊ฐ๋ฅํ ์์คํ ์ ์ ๊ณตํ์ฌ ๋ฐ์ดํฐ ์ ์ฅ์์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฒด์์ ๋ฐ์ดํฐ๋ฅผ ์ด๋ํ ์ ์์ต๋๋ค. ์์คํ ์ ํน์ ๊ตฌ์ฑ ์์๊ฐ ์๋์ ๋ฉ์ถ๋๋ผ๋ ์์คํ ์ด ๊ณ์ ์๋ํ ์ ์๋ค๋ฉด ๋ด๊ฒฐํจ์ฑ์ด ์๋ ๊ฒ์ ๋๋ค. ์์คํ ์ hardware๋ฅผ ๊ฐ์ ํ๋ ๋์ ๋ ๋ง์ ์์คํ ์ ์ถ๊ฐํ์ฌ ๋ ํฐ ์ํฌ๋ก๋๋ฅผ ์ฒ๋ฆฌํ๋๋ก ์์คํ ์ ํ์ฅํ ์ ์๋ค๋ฉด ์์คํ ์ ์ํ์ ์ผ๋ก ํ์ฅ ๊ฐ๋ฅํ ๊ฒ์ ๋๋ค.
Apache Kafka์ ๋ํ ์์ธํ ๋ด์ฉ์ ๋ค์ ๋ฆฌ์์ค๋ฅผ ์ฐธ์กฐํ์ธ์.
Kafka Connect
Kafka Connect๋ Apache Kafka์ ๊ตฌ์ฑ ์์๋ก, Apache Kafka๋ฅผ MongoDB์ ๊ฐ์ ๋ฐ์ดํฐ์คํ ์ด์ ์ฐ๊ฒฐํ๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํฉ๋๋ค. Kafka Connect๋ ๋ค์ ๋ฆฌ์์ค๋ฅผ ์ ๊ณตํ์ฌ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํฉ๋๋ค.
๋ฐ์ดํฐ ์ ์ฅ์ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๊ธฐ ์ํ ๋ด๊ฒฐํจ์ฑ ๋ฐํ์์ ๋๋ค.
Apache Kafka ์ปค๋ฎค๋ํฐ๋ฅผ ์ํ ํ๋ ์์ํฌ๋ก์, Apache Kafka๋ฅผ ๋ค์ํ ๋ฐ์ดํฐ ์ ์ฅ์์ ์ฐ๊ฒฐํ๋ ์๋ฃจ์ ์ ๊ณต์ ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
Kafka Connect ํ๋ ์์ํฌ๋ ๊ฐ๋ฐ์๊ฐ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ์ปค๋ฅํฐ๋ฅผ ์์ฑํ ์ ์๋ API๋ฅผ ์ ์ํฉ๋๋ค. ์ปค๋ฅํฐ๋ฅผ ์ฌ์ฉํ๋ฉด Kafka Connect ๋ฐฐํฌ๊ฐ ๋ฐ์ดํฐ ์์ค ๋๋ ๋ฐ์ดํฐ ์ฑํฌ๋ก์ ํน์ ๋ฐ์ดํฐ ์ ์ฅ์์ ์ํธ ์์ฉํ ์ ์์ต๋๋ค. MongoDB Kafka ์ปค๋ฅํฐ๋ ์ด๋ฌํ ์ปค๋ฅํฐ ์ค ํ๋์ ๋๋ค.
Kafka Connect์ ๋ํ ์์ธํ ๋ด์ฉ์ ๋ค์ ๋ฆฌ์์ค๋ฅผ ์ฐธ์กฐํ์ธ์.
connector Kafka Connect์ฉ ์ฒซ ๋ฒ์งธ Apache ๋น๋ Software Foundation์์
ํ
๋ฐ์ดํฐ์คํ ์ด์ ์ฐ๊ฒฐํ ๋ ์์ฐ์/์๋น์ ํด๋ผ์ด์ธํธ ๋์ Kafka Connect ์ฌ์ฉ
์์ฐ์ ๋ฐ ์๋น์ ํด๋ผ์ด์ธํธ๋ฅผ ์ฌ์ฉํ์ฌ Apache Kafka๋ฅผ ํน์ ๋ฐ์ดํฐ ์ ์ฅ์์ ์ฐ๊ฒฐํ๋ ์์ฒด ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฑํ ์๋ ์์ง๋ง Kafka Connect๊ฐ ๋ ์ ํฉํ ์ ์์ต๋๋ค. Kafka Connect๋ฅผ ์ฌ์ฉํ๋ ๋ช ๊ฐ์ง ์ด์ ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
Kafka Connect๋ ์์ ์ ์ธ ํ์ดํ๋ผ์ธ์ ๋ณด์ฅํ๊ธฐ ์ํด ๋ถ์ฐ๋ ๋ด๊ฒฐํจ์ฑ ์ํคํ ์ฒ๋ฅผ ๊ฐ์ถ๊ณ ์์ต๋๋ค.
Apache Kafka๋ฅผ MongoDB, PostgreSQL, MySQL๊ณผ ๊ฐ์ ์ธ๊ธฐ ์๋ ๋ฐ์ดํฐ ์ ์ฅ์์ ์ฐ๊ฒฐํ๊ธฐ ์ํด Kafka Connect ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ์ฌ ์ปค๋ฎค๋ํฐ์์ ์ ์ง ๊ด๋ฆฌ๋๋ ๋ง์ ์ปค๋ฅํฐ๊ฐ ์์ต๋๋ค. ์ด๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๊ฒฐ, ์ค๋ฅ ์ฒ๋ฆฌ, ๋ฐ๋ ๋ ํฐ ํ ํตํฉ ๋ฐ ๋ฐ์ดํฐ์คํ ์ด์ Apache Kafka ์ฐ๊ฒฐ๊ณผ ๊ด๋ จ๋ ๊ธฐํ ๋ฌธ์ ๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ํด ์์ฑํ๊ณ ์ ์ง ๊ด๋ฆฌํด์ผ ํ๋ ์์ฉ๊ตฌ ์ฝ๋์ ์์ด ์ค์ด๋ญ๋๋ค.
Confluent์์ ๊ด๋ฆฌํ Kafka Connect ํด๋ฌ์คํฐ๋ฅผ ์ฌ์ฉํ ์ ์๋ ์ต์ ์ด ์์ต๋๋ค.
๋ค์ด์ด๊ทธ๋จ
๋ค์ ๋ค์ด์ด๊ทธ๋จ์ Apache Kafka์ Kafka Connect๋ก ๊ตฌ์ถ๋ ์์ ๋ฐ์ดํฐ ํ์ดํ๋ผ์ธ์ ํตํด ์ ๋ณด๊ฐ ์ด๋ป๊ฒ ํ๋ฅด๋์ง ๋ณด์ฌ์ค๋๋ค. ์์ ํ์ดํ๋ผ์ธ์ MongoDB ํด๋ฌ์คํฐ๋ฅผ ๋ฐ์ดํฐ ์์ค๋ก ์ฌ์ฉํ๊ณ MongoDB ํด๋ฌ์คํฐ๋ฅผ ๋ฐ์ดํฐ ์ฑํฌ๋ก ์ฌ์ฉํฉ๋๋ค.

์์ ํ์ดํ๋ผ์ธ ์ ๋ชจ๋ ์ปค๋ฅํฐ์ ๋ฐ์ดํฐ ์ ์ฅ์๋ ์ ํ ์ฌํญ์ ๋๋ค. ๋ฐฐํฌ์๋ฒ ์ ํ์ํ ์ปค๋ฅํฐ ๋ฐ ๋ฐ์ดํฐ ์ ์ฅ์๋ก ๊ต์ฒดํ ์ ์์ต๋๋ค.