์ ์ฒด ๊ธ250 [Spring Framework] Bean ๋ฑ๋ก์ ๋ํ ์ฌ๊ณ V2 Bean ๋ฑ๋ก์ ๋ํ ์ฌ๊ณ SpringBoot์์ Bean์ ๋ฑ๋กํ๋ ๋ฐฉ๋ฒ์ ๋ฌด์์ด ์์๊น. 1. ํด๋์ค์ ์ง์ @Component ์ ๋ ธํ ์ด์ ์ ์ฌ์ฉํ๋ ๋ฐฉ์ 2. @Configuration ์ ๋ ธํ ์ด์ ์ ํ์ฉํด @Bean ๋ฑ๋กํ๋ ๋ฐฉ์ ์ 2๊ฐ์ง ๋ฐฉ์์ด ๋ณดํธ์ ์ด๋ค.sweeeetgoguma.tistory.com์ด์ ํฌ์คํธ์ ์ด์ด ์ด๋ฒ์๋ Spring Framework์ ์๋! Conditional ์๋ฆฌ์ฆ๋ฅผ ํ์ฉํ Bean ๋ฑ๋ก์ ๋ํด ์์ฑํด๋ณด๋ ค ํ๋ค. ์์ํ๋ฉฐ ์ฌํด ์ด๋ถํฐ ์ ๋ง ์ผ์ด ๋ง๋ค. ๋ญ.. ๊ฐ ์๋ก ์์ฌ๊ฐ๋ค. ๊ธฐ์ ์ ๋ฐฑ๋ก๊ทธ๋ง ๋ช ์ญ ๊ฐ ์ ๋ ๋๋ ๋ฏํ๋ค.๋ค์ผ๋ก ๊ธฐ์ ๊ณผ์ ์ ๋ถ์ฑ๋ ๋ง์ด ๋์ด๋ฌ๋ค. ๋น์ฅ ํด๊ฒฐํด์ผ ํ๋ ๊ธํ ๊ฑด์ ์๋์ง๋ง, ์ด๋ฒ ์ฃผ๋ ๋คํํ ์๊ฐ์ด ์ฌ์ ๋ก์ด ๊ฒ ๊ฐ์ ํํ์ด ๊ฐ์ ์ ํ๋ค. .. 2025. 3. 18. ์ฌ๋ฆผํผ์ ๊ฐ๋ค๋ ๋ง์์ผ๋ก ์ต๊ทผ์ ์ด๋ ๊ด๋ จ ์ ํ๋ธ๋ฅผ ๋ณด๋ค๊ฐ, ์ ๋ชฉ๊ณผ ๊ฐ์ ๋๊ธ์ ๋ดค๋ค. ๊ทธ ๋๊ธ์ ์์ฑํ์ ๋ถ์ ์ง์ฅ์ธ์ด์ จ๋ ๊ฒ ๊ฐ์๋ฐ ์ ๋ง ์ด์ฌํ ํ์๋ ๊ฒ ๊ฐ๊ณ ์ค์ ๋ก ๊ฐ์ธ ์ฑ๋์ ์ ๋ก๋ํ์ ์ด๋ ์์๊ณผ ํ๋กํ ์ฌ์ง์ ๋ดค์ ๋ ์ด๋ง์ด๋งํ๋ค.๊ทธ๋ฐ ์๊ฐ์ด ๋ค์๋ค. ์ผํ๋ฉด์ ์ด๋๊น์ง ์ด์ฌํ ํ๊ธฐ ์ฝ์ง ์์ ํ ๋ฐ.. ๋๋จํ ์ฌ๋๋ค ๋ง๊ตฌ๋. ๋ด๊ฐ ํ์ฐฝ ์ด๋์ ์ด์ฌํ ํ ๋, ๋ฐ๋๋น๋ฉ ๋ํ๋ ๊ด์ฌ์ด ๋ง์๋ค. ์ ์ธ๊ณ์์ ๊ฐ์ฅ ๋ชธ ์ข์ ์ฌ๋๋ค์ด ๋์จ๋ค๋ Mr.Olympia ๋ ๋งค ์ฐ๋ง์ ์ด๋ ธ๊ณ , ๋ ํญ์ ์ฑ๊ฒจ๋ดค์๋ค.๊ทธ ๋ํ์ ์ถ์ ํ๋ ์ ์๋ค์ ๋ชธ๋ ๋ฌผ๋ก ํ๊ธ์ด์ง๋ง, ์ ์ ๋ ฅ๋ ํ๊ธ์ด๋ผ๋ ์๊ฐ์ ํ๋ค. (์ ์ด๋๊น ๊ทธ๋ด ์ ์์ ๊ฒ ๊ฐ๋ค.) ๊ทธ ์ ์ ๋ถ๋ค์ ์ด๋ ์์์ ๋ณด๋ฉด์, ์ผ๋ฐ์ธ์ด์ง๋ง ์ต๋ํ ํค์๋ณด๊ณ ์ถ์๋ค.์นดํ์ธ ์ญ์ทจ๋ ๋ง์ด ๋๋ฆฌ๊ณ , .. 2025. 3. 10. [์ด๋ฒคํธ ์์ฑ๊ณผ ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ] CH.3 ์ด๋ฒคํธ ์์ฑ I ์ด๋ฒ ์ฑํฐ๋ฅผ ์ฝ์ผ๋ฉด์, ๊ธฐ์กด์ ๋ด๊ฐ ์์ฑํ๋ ์คํ์ผ์ ๋ชจํธํ ๊ฐ๋ ๋ค์ด ๋ช ํํ ์ ๋ฆฌ ๋๋ ๋๋์ด ๋ค์๋ค.์ด๋ฐ ๊ฐ๋ ์ ๋ช ํํ ์ธ์งํ๋ฉด์, ์์ผ๋ก์ ์ฝ๋๋ฅผ ์์ฑํ ๋๋ฉด kotlin ์คํ์ผ์ ํจํค์ง ์ ๋ฆฌ์ ์ข ๋ ์ง์คํด์ผ ๋๊ฒ ๋ค๋ ์๊ฐ๋ ๋ค์๋ค. ๋ชจ๋ ๋ด์ฉ์ ์ ๋ฆฌํ์ง ์์ ๊ฒ์ด๋ฉฐ, ๊ธฐ์กด์ ์๊ณ ์๋ ๋ด์ฉ ์ด์ธ์ ์๋กญ๊ฒ ๋ฐ์ ๋ค์ธ ๋ด์ฉ๋ง ์ ๋ฆฌํ ๊ฒ์ด๋ค!! ๋๋ฉ์ธ ์ด๋ฒคํธ๋ณ๊ฒฝ์ ๋จ์๋ฅผ ๋น์ฆ๋์ค ์ฒ๋ฆฌ ๊ณผ์ ์์ ๋ฐ์ํ ๊ฒฐ๊ณผ๋ก ์ ์์ด๋ฒคํธ๋ ์ฌ์ฉ์๊ฐ ๋ฌด์์ธ๊ฐ ์ฒ๋ฆฌํ๋๋ก "์์คํ "์ ์์ฒญํ ๊ฒ์์ ์ ์ ์๋ ํํธ์ด๋ฉด์ ๋ณ๊ฒฝ์ด ๋ฐ์ํ ์ด์ ์์ ์ ์ ์๋ค. ์ด๋ฅผ ํ ๋ฉด, PasswordChanged ๋ผ๋ ๊ฐ์ฒด์ ๋ค์ด๋ฐ์ ๋ณด๋ฉด, ๋๋ฉ์ธ์์ ์ด๋ค ์ผ์ด ์ผ์ด๋ฌ๋์ง ์ฆ์ ์ดํด๊ฐ ๊ฐ๋ฅํ๋ค. public class QuantityChan.. 2025. 3. 4. [์ด๋ฒคํธ ์์ฑ๊ณผ ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ] CH.2 ๊ฐ์ฒด์งํฅ ์ค๊ณ ์์น ๊ฐ์ฒด ์งํฅ์ ๋๋ช ์ฌ์ธ Java๋ฅผ ์ฌ์ฉํ๋ฉฐ ๊ฐ๋ฐ์๋ค, ์ฆ ์ฐ๋ฆฌ๋ค์ ์ ์ฐจ ์งํฅ์ ์ธ ์ฝ๋๋ฅผ ์์ฑํ ๋๊ฐ ๋ง๋ค.์ฒ์ ๊ฐ์ฒด ์งํฅ์ ๊ณต๋ถํ๋ ๋, ๊ฐ์ฒด๋ผ๋ ๊ฐ๋ ์ด ๊ทธ๋ฆฌ๋ ๋ฏ์ค์๋ค.C์ธ์ด๋ก ์ฝ๋ฉ ์ ๋ฌธ์ ํ๊ธฐ์, ์ ์ฐจ์ ์ธ ์ฝ๋์ ๋ช ๋ น์๋ง ์ต์ํ๊ธฐ ๋๋ฌธ์ด๋ค.๊ฐ์ฒด ์งํฅ ๊ธฐ๋ฒ์ ๊ณต๋ถํ๋ฉด์, ํด๋์ค๋ฅผ ์ฌ๋์ผ๋ก ๋ฐ๋ผ๋ณด๋ ค ๋ ธ๋ ฅํ๊ณ ์ฌ๋ฌ ๊ฐ์ง ์ฑ ๊ณผ ๊ฐ์ฒด ์งํฅ ์ํ ์ฒด์กฐ ์์น ๋ฑ์ ๊ฐ๋ ์ ์์งํ๋,์๊ฐ์ด ์ง๋๋ฉฐ ํจ์ฌ Java์ค๋ฝ๊ฒ ์์ฑํ ์ ์๊ฒ ๋ ๊ฒ ๊ฐ๋ค. ํ์ง๋ง, ์์ง๋ ๊ฐ์ฒด ์ฆ ํด๋์ค๋ฅผ ์ค๊ณํ๊ณ ๋๋๋ ๊ฑด ํ๋ ์ผ์ด๋ผ ์๊ฐํ๋ค.๊ทธ๊ฒ์ ๊ณง ์ค๊ณ์ ๋ํ ์์ญ์ด๋ผ ์๊ฐ์ด ๋๋๋ฐ, ์ต๊ทผ์ LinkedIn ์์ ๋ณธ ํ ๋น ๋์ ๊ธ์ฒ๋ผ ๊ฐ๋ฐ์๋ค์ ์ค๊ณ๋ฅผ ์ง์ ๋ค๋ฃจ๋ฉฐ ๊ณต๋ถํ ์ผ์ด ์๊ธฐ ๋๋ฌธ์ด๋ผ๋ ์๊ฐ๋ ๋ ๋ค. ์ ๋ง ๊ธฐ๋ณธ์ด ๋๋ ๋ด์ฉ์ด์ง๋ง .. 2025. 2. 24. ์๋์ง (Feat. ์์ฆ ๊ทผํฉ) ์ต๊ทผ์ ์ปค๋ฆฌ์ด ๊ด๋ จ ๋ ์ฌ๋ฌ ํ๋์ ์ฐธ์ฌํ๊ณ , ๋ด์ฉ์ ํ์ตํ๋ ค ํ๊ณ ์๋ค ใ ใ IT ๊ด๋ จ ์ง์ธ๋ค์ ๋ง์ด ๋ต๊ธฐ๋ ํ๊ณ , ์ฝํผ๋ฐ์ค๋ IT ์ธ๋ถ ์ฐ๊ณ ๋์๋ฆฌ ์๋ฅ๋ ๋ฃ๊ณ ๊ณผ์ ์ ๋ฉด์ ๋ ์ํํ๋ค. ์ฌํด 1์์ ์๋ ๊ณผ ๋์ผํ๊ฒ ๋ณด๋ด๋ ์ถ์๋๋ฐ, ๋ง์ ์ก๊ณ ์ด์ ๋ ํ์คํ ๋ ํ์ฅ์ ์ธ ํ๋์ ํด์ผ๊ฒ ๋ค๋ ์๊ฐ์ด ๋ค์๋ค.๊ฒฐ๊ตญ ๋น์ทํ ๋ชฉ์ ์ ๊ฐ์ง ์ฌ๋๋ค๊ณผ์ ๋คํธ์ํน์ด ์ ๋ง ์ค์ํ๋ค๋ ๊ฒ์ ๊นจ๋ซ๋ ์ค์ธ๋ฐ, ๊ทธ๊ฑธ ์คํ์ ์ฎ๊ธฐ๊ณ ์๋ค! ์์ ์ ๊ฐ์ด ์ฌ์ด๋ ํ๋ก์ ํธ๋ฅผ ํ๋ ๋ถ๊ณผ ์ค๋๋ง์ ๋ง๋ฌ๋๋ฐ, 11๋ฒ๊ฐ๋ก ์ด์งํ์ ์ด์ผ๊ธฐ์ ์ฌ๋ฌ ๋คํธ์ํน ํ๋์ ๋ํด์ ์๊ธฐ๋ฅผ ๋ค์๋ค. ๋, ์ธํ๋ฐ ๋ฉํ ๋ง๋ ํ๊ณ ๊ณ์ ๋ค๊ณ ๋์๊ฒ ์ถ์ฒ๋ ํด์ฃผ์ จ๋ค.์ด๋ฐ ํ๋๊ณผ ์ ๋ณด๋ฅผ ๋ค์ผ๋ ํ์์ฑ์ ํ์คํ ๋๋ผ๊ฒ ๋์๋ค. ๊ทธ๋ฆฌ๊ณ , ๊ทธ๋ ๋ฐ๋ก ์ธํ๋ฐ ๋ฉํ ๋ก ๋ฑ๋ก๋ ํ๋ค.. 2025. 2. 23. [์ด๋ฒคํธ ์์ฑ๊ณผ ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ] CH.1 ๋๋ฉ์ธ ์ฃผ๋ ์ค๊ณ ํ์ฌ ๋ค๋๊ณ ์๋ ํ์ฌ๋ ์ค - ํ ๊ตฌ์กฐ๋ก ๋๋์ด ์๋ค.๋๋ ์ ํ์ค ๋ฐฑ์๋ ์์ง๋์ด์ธ๋ฐ, ๊ฒฉ์ฃผ๋ก ์ ํ์ค ๋ฐฑ์๋ ํ์๋ฅผ ์งํํ๋ค. ํ์ฌ ์ํด ์๋ ํ์์ ํ๋ก ํธ์๋ ๋ถ๋ค์ ์ ํ์ค ํ๋ก ํธ์๋ ๊ฐ๋ฐ์ ๋ถ๋ค๋ผ๋ฆฌ ํ ์คํธ ๊ด๋ จ ์คํฐ๋๋ฅผ ํ์ ๋ค๊ณ ํ์ฌ,๋ฐฑ์๋๋ ๋ด๊ฐ ํ๋ฒ ์คํฐ๋๋ฅผ ์ ์ํ๋ฉด ์ด๋จ๊น๋ ์๊ฐ์ด ๋ค์๋ค!ํ์ ๋, ์คํฐ๋ ์ฃผ์ ์ ์์์ ๋ํด์ ์์ค๋ฅผ ๋์ก๊ณ , ๋ ํฌํจ 5๋ช ์ด์ ์ ํ์ค ๋ฐฑ์๋ ์คํฐ๋๋ฅผ ์งํํ๊ฒ ๋์๋ค. ํ์ฌ ํ & ์ค ๋ณ๋ก ๋ง์ดํฌ๋ก ์๋น์ค๋ฅผ ์ด์ ์ค์ด๋ฏ๋ก,์ฒซ ์์์ ๋น๊ต์ ๊ฐ๊ฒฐํ๊ณ ์ต์ํ ๊ฐ๋ ์ธ ์ด๋ฒคํธ ์์ฑ ํ์ฉํ ๋ง์ดํฌ๋ก ์๋น์ค ์ํคํ ์ฒ์ ๋ํ ์ฃผ์ ๋ก ์งํํ๊ฒ ๋์๋ค.๋ด๊ฐ ์งํํ๋ ์คํฐ๋๋ง ๋ญ ๊ฑฐ์ 3๊ฐ์ธ๋ฐ.. ๊ทธ๋๋ ๊ฐ์ด ํ๋ฉด ๋ค ์ข์ ๊ฑฐ์ง~~ใ ใ ์ด ์คํฐ๋๋ฅผ ๋น ๋ฅด๊ฒ ๋ง์น๊ณ , ํ์ฌ ์์ค์ ์ .. 2025. 2. 13. [์๋ฌธ] ์๊ฐ์ ์๋์ ํํ์ ์กฐ์จ ์ฃผ์ ๋ฅผ ์ ํ์ง ์๊ณ , ์๊ธฐ ์ ์ ์๊ฐ ์ ๋ฆฌ ๊ฒธ ์์ฑํด ๋ณธ๋ค. (๊ธฐ๋ก์ ์ฐ์ ๋จ๊ธฐ๋, ๋์ค์ ์ ํด๋ณผ ์๊ฐ์ด๋ค.) ๋ ํ์์ ์๊ฐ์ด ์ ๋ง ๋ง์ด ํ๋ชฐ์์น๋ค.์๋์ ์ผ๋ก ์ฒ์ฒํ ๋งํ๋ ค ํ์ง๋ง, ๊ฐํน ์๊ฐ์ด ์ ๋ฆฌ๊ฐ ๋์ง ์์ ์ฑ ๊ธํ๊ฒ ๋์ฌ ๋๋ ์๋ค.๊ทธ๋ด ๋ ์ 3์๊ฐ ๋ค์ด๋ ๋ฌด์จ ๋ง์ ํ๋ ค ํ๋ ๊ฒ์ธ๊ฐ ๋๊ปด์ง ๋๋ ์์ ๊ฒ ๊ฐ๋ค๋ ์๊ฐ์ด ๋ ๋ค. ์ง์ธ๊ณผ ๋ํ๋ฅผ ํ๋ฉฐ ๋๋ ๊ฒ์ ์๋์ ์ผ๋ก ์ฒ์ฒํ ๋งํ ๋, ์คํ๋ ค ์ ํ๊ณ ์ ํ๋ ๋ง์ด ๋ช ํํ ์ ๋ฌ ๋๋ค๋ ์ ์ด๋ค.๊ณผํ์ ์ผ๋ก ๊ฒ์ฆ์ด ๋๋ ๋ด์ฉ์ด๋ผ๊ณ ๋ ํ๋๋ฐ, ๊ด๋ จ ๋์์ธ ํฉ๋๋ฌธ ๊ต์์ [๋ชฐ์ ]์ด๋ผ๋ ์ฑ ์ ์ถ์ฒ๋ฐ๊ณ ์ฝ์ด๋ณด๋ ค ํ๋ค. ์ค๋ ํ์ฌ ๋ถ๋ค๊ณผ ์ถ๊ตฌํ๊ณ ์๋ค. ์ง์ ์์ ์ ๋ ์์ฌ ์ ์ค์๋ฅผ ํ๋ค.ํ์์ ์ค์๋ฅผ ์ข ๊ธธ๊ฒ ํ๋ ํธ์ธ๋ฐ, ์ค์๋ฅผ ํ ๋๋ฉด ํญ์ ๋จธ๋ฆฌ ์์ ์ฑ.. 2025. 2. 5. [Spring Boot] Restclient & HttpInterface ์กฐํฉ ์ฌ์ฉ ์, ์์ฒญ ์๋ต์ Logging ํด๋ณด์ ๋ง์ Spring ๊ฐ๋ฐ์๋ค์ด RestClient ๋ฅผ ์ฌ์ฉํ๋ฉด์, Spring์ด API ํธ์ถ ๋๊ตฌ์ ๊ณตํต์ ์ ์ถ์ํํด์ ํ๋์ Adapter ์ธ Http Interface ์กฐํฉ์ ์ฌ์ฉํ๊ณ ์๋ ๋ฏ ํ๋ค. ์ฅ์ ์ ๋ฐ๋ณต๋๋ RestClient ์ ์ฒด์ด๋ ์ฝ๋๋ฅผ ๊ณตํตํ ํ ์ ์์ผ๋ฉฐ, Open feign ์ ์ฌ์ฉํ๋ฏ์ด Interface ํ๋๋ก ํธ๋ฆฌํ๊ฒ ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ค๋ ์ฅ์ ์ด ์๋ค. ์๋น์ค ํ๊ฒฝ์์ ์ฌ์ฉํ๋ ค๋ฉด, ์ข ๋ ๊ณ ๋ํ๋ฅผ ํด์ผํ์ง ์๊ฒ ๋๊ฐ.์ด์์์๋ ๊ฐ์ฅ ์ค์ํ ๊ฒ์ด logging ์ด๋ค.๊ธฐ๋ณธ์ ์ผ๋ก ์์ฒญ๊ณผ ์๋ต์ logging ํด๋๋ ํธ์ด trace ๋ฅผ ์ถ์ ํ๊ธฐ ํจ์ฌ ์์ํ ๊ฒ์ด๋ค. ํธ์ถํ๋ API ๊ฐ ๋ง์ ์๋ก configuration ํด์ผ ํ๋ rest client ์ Bean ๋ฑ๋ก ์ฝ๋๋ ๋ง์์ง ๊ฒ์ด๋ฏ.. 2025. 1. 6. [ํ๊ณ ] 2024๋ ์ ๋ง์น๋ฉฐ ํ์๋ก ๊ฐ๋ฐ ๊ฒฝ๋ ฅ์ด ๋ฒ์จ 2๋ ์ด ๋์๋ค.์๊ทธ์ ์ฐ๋ง ํ๊ณ ๋ฅผ ์์ฑํ์ ๋๊ฐ 1๋ ์ฐจ์๋๋ฐ, ์๊ฐ ์ฐธ ๋น ๋ฅด๊ฒ ํ๋ฅด๋ ๊ฒ ๊ฐ๋ค. ๐ ์ฌํด๋ ์ฐธ ๋ค์ํ ์ผ๋ค์ด ์์๋ค.์ด์ง ์ด๋ผ๋ ๋น ์ด๋ฒคํธ๊ฐ ์์๊ธฐ๋ ํ๊ณ , ๋ค์ํ ์ฌ๋๋ค๊ณผ ๊ต๋ฅํ๋ฉฐ ์ ์ตํ ๊ฒฝํ์ ์ป๊ธฐ๋ ํ๋ค. 2024๋ ์ ์์๋ถํฐ ์ด์ง์ ์ํด ์ค๋นํ๋ ๊ธฐ๊ฐ๋ค์ด์๋ค.์ด์ง์ ๊ฒฐ์ฌํ๊ฒ ๋ ์ด์ ๋ก ๊ฐ์ฅ ๊ฐ์ฆ์ด ๋ฌ๋ ์์๋ค์๋ด๊ฐ ์ํ๋ ์๋น์ค์ ๊ฐ๋ฐ์ ํ๋ ๊ฒ๊ณผ ๋ ๋ค์ํ ๊ธฐ์ ๋ค์ ์ตํฉํด์ ์ฌ์ฉํด๋ณด๋ ์์ ๋ก์ด ํ๊ฒฝ,๊ทธ๋ฆฌ๊ณ ๋ ์ฒด๊ณ์ ์ธ ๊ธฐ์ ๊ตฌ์กฐ๋ฅผ ๋ฐฐ์ธ ์ ์๋ ํ๊ฒฝ๊ณผ ์ ๋ฐฐ๋ค์ ์ํ๋ค. ์คํฐ๋๋ฅผ ๋งค์ฃผ ์งํํ์ง๋ง, ์ด๋ฒ ๋งํผ์ ์ด์ง์ ๋ํ ํฌ์ปค์ค๋ฅผ ๋ง์ถ๊ธฐ ์ํด ์ฃผ์ ๋ฅผ ์ ์ ํ์๋ค.๋ฐฑ์๋ ์์ง๋์ด๋ ๊ธฐ๋ณธ์ ์ผ๋ก ๊ตฌํ ์ค๋ ฅ์ ๊ธฐ๋ณธ์ด๊ณ , CS ์ง์ & ์ํคํ ์ฒ ์ค๊ณ ๋ฅ๋ ฅ๊ณผ DB์.. 2024. 12. 25. [Delta Lake] DB Sink ๋๋ ๊ฑด๋ค์ ๋ชจ์๋ฅผ ์ค์ฌ๋ณด๊ธฐ ๋๋ ๋ฐฑ์๋ ์์ง๋์ด์ด์ง๋ง, Databricks ํ์ฉํ ๋ฐ์ดํฐ ์์ง๋์ด๋ง ์ ๋ฌด๋ ๊ฒธํ๊ณ ์๋ค.์ถํ ๊ฐ๋ฐ ์ปค๋ฆฌ์ด๋ฅผ ๋ฐ์ดํฐ ์ชฝ์ผ๋ก ์ ํฅํ๊ณ ์ถ๊ธฐ๋ ํ์ฌ, ํ์ฌ ํ์ฌ์ ์ ์ฌ ์ดํ ์ง์์ ์ธ ๋ฉด๋ด์์ ๋ฐ์ดํฐ ์ ๋ฌด๋ฅผ ํ๊ณ ์ถ๋ค๊ณ ์ ๊ทน์ ์ผ๋ก ์ดํ์ ํ๊ณ , ์ฑํฐ ๋ฆฌ๋๋ถ์ ์ด๋ฅผ ํ์พํ ๋ฐ์๋ค์ฌ์ฃผ์ จ๋ค. ์ํ๋ ์ ๋ฌด๋ฅผ ๊ฒธํ๊ฒ ๋์ด ์ ๋ง ํ๋ณตํ๋ค. Databricks๋ฅผ ์ฌ์ฉํ๋ฉฐ ์ฌ์ฉํ๋ API๋ Apache Spark๋ฅผ ์ฌ์ฉํ๋ค.์ฌ์ค ์ ๊ทน์ ์ธ ๋ฐ์ดํฐ ์์ง๋์ด๋ง๋ณด๋ค๋ ๋ฐ์ดํฐ ํ๋ซํผ, ๋ฐ์ดํฐ ๋ถ์ํ์์ ๋ง๋ค์ด์ฃผ์ Raw Data๋ฅผ ์๋น์ค์ ๋ง๊ฒ ๊ฐ๊ณตํ์ฌ Delta table์ ์ ์ฌํ ํ, ์ด๋ฅผ DB Sink ํ๋ ์ฉ๋์ ๊ฐ๋ฐ์ ์งํํ๊ณ ์๋ค. ์ฒ์ ํ์ดํ๋ผ์ธ์ ๊ฐ๋ฐํ์ ๋๋, ์๋ฌด๊ฒ๋ ๋ชจ๋ฅด๋ ์ํ์์ ๊ณต๋ถํ๋ฉฐ ์งํํ์๊ธฐ์ ๋ชจ๋ .. 2024. 11. 30. Bean ๋ฑ๋ก์ ๋ํ ์ฌ๊ณ SpringBoot์์ Bean์ ๋ฑ๋กํ๋ ๋ฐฉ๋ฒ์ ๋ฌด์์ด ์์๊น. 1. ํด๋์ค์ ์ง์ @Component ์ ๋ ธํ ์ด์ ์ ์ฌ์ฉํ๋ ๋ฐฉ์ 2. @Configuration ์ ๋ ธํ ์ด์ ์ ํ์ฉํด @Bean ๋ฑ๋กํ๋ ๋ฐฉ์ ์ 2๊ฐ์ง ๋ฐฉ์์ด ๋ณดํธ์ ์ด๋ค. ๋ด๊ฐ ์ง๊ธ๊น์ง ์งํํ๋ ๋ณดํต์ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ ๊ณผ์ ์์๋ 1๋ฒ์ ์๋์ ์ผ๋ก ๋ง์ด ์ฌ์ฉํ๋ ๊ฒ ๊ฐ๋ค. @Configuration ๋ฐฉ์์ ๊ฒฝ์ฐ, ํต์ ์ธ๋ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ Bean์ผ๋ก ๋ฑ๋กํ๊ธฐ ์ํจ์ด๋ผ๋ฉฐ ๋ฉด์ ์ง๋ฌธ์์ ์ ์์ ์ผ๋ก ํ์๋๋ค. ๊ทธ ๊ณ ์ ๊ด๋ ํ์, ๋์ ๊ฒฝ์ฐ๋ 2๋ฒ ๋ฐฉ์์ ์ธ๋ถ ์ค์ ์ด์ธ์ ์ฌ์ฉํ์ง ์์์๋ค. Java9์์ ๋์จ, ์๋ก์ด ์ถ์ํ ๊ฐ๋ ์ธ ๋ชจ๋์ด๋ผ๋ ๊ฐ๋ ์ด ์๋ค. ๋ชจ๋์๋ ์ข ์์ฑ(dependency)์ ๊ฐ๋ ์ด ์์ผ๋ฉฐ, Public API๋ฅผ ๋ด๋ณด๋ด๊ณ .. 2024. 10. 12. Spring boot multi datasource ๋ฑ๋ก ์ ์ฃผ์ ์ฌํญ Spring Boot Multi datasource ๋ฑ๋ก ์ ์ฃผ์ ์ฌํญ์ต๊ทผ ์งํํ๋ ํ๋ก์ ํธ๋ ์ธ๋ถ ํด๋ฌด์ผ ์ ๋ณด API๋ฅผ ํธ์ถํ์ฌ DB์ ์ ์ฌํ๋ ์๋ฐฐ์น์ฉ Spring Batch ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ฐํ๋ ๊ฒ์ด์๋ค.ํ์ฌ์๋ ์ฌ๋ฌ๊ฐ์ง DataBase๊ฐ ์๋๋ฐ, ๊ทธ ์ค ๋ฉ์ธ DB๋ฅผ ์ฌ์ฉํ๊ธฐ๋ก ํ๊ณ , spring batch ์ฉ DB๋ ๋ฐ๋ก ์ฌ์ฉํ๊ฒ ๋์๋ค.๊ทธ๋์ ๋ฉํฐ datasource bean ์ ๋ฑ๋กํด์ค์ผ ํ๋ค.๊ทธ ๊ณผ์ ์์ ์ ๋ง ๊ธฐ์ด์ ์ด์ง๋ง ์ค์ํ๋ ๋ถ๋ถ์ ์ค๋ช ํด๋ณด๊ฒ ๋ค.Multi Datasourceํ๋์ ํ๋ก์ ํธ์์ ์ฌ๋ฌ ๊ฐ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฐ๊ฒฐํ๋ ๊ฒ.spring ์์๋ ๊ธฐ๋ณธ์ ์ผ๋ก yaml ํ์ผ์ ํตํด ์ฝ๊ฒ datasource ๊ตฌ์ฑ์ด ๊ฐ๋ฅํ๋ค.๋ฐ๋ก java ์ฝ๋๋ก bean ์ ๋ฑ๋กํ ํ์๊ฐ ์์ ๊ฒ์ด๋ค.ํ์ง.. 2024. 9. 18. ๋ฒ์์, ๋์ ๊ฒฌํด ์ด๊น์์ด ํ๋ณตํ ๋ ๋ค์ ๋ณด๋ด๊ณ ์๋ค. ํ๊ณ ์ถ์ ์ผ์ ์ฌ๋ฐ๊ฒ ํ๊ณ , ์๋ก์ด ์ทจ๋ฏธ ํ๋๋ ์๊ฒผ๊ธฐ๋ ํ๊ณ , ์ฌํด ์ด๋ฃฐ ์๋ก์ด ๋ชฉํ๋ ์๊ฒจ์ ํญ์ ๋งค์ผ์ด ์ฆ๊ฒ๋ค. ์ต๊ทผ์ ์ค๋๋ง์ ๋ณด๋ ์ง์ธ์ ๋ง๋์ ๊ฐ๋ณ๊ฒ ์ ๋ ์ ๋จน์ผ๋ฉด์ ์ด๋ฐ์ ๋ฐ ์๊ธฐ๋ค์ ๋๋ด๋ค. ๊ธฐ์กด ์ ๊ณต๊ณผ ๋ค๋ฅด๊ฒ ๋์ ๊ฐ์ ์ปค๋ฆฌ์ด๋ฅผ ๊ฑธ์ด๊ฐ๊ธฐ ์ํด ์ด์ฌํ ๊ณต๋ถํ๋ฉฐ ์ค๋นํ๋ ์ค์ด์๋ค. ๊ทธ๋ฌํ ๋ํ๋ฅผ ํ๋ค๋ณด๋, ๋์ ์๋กญ๊ฒ ์๋ฒ ๊ธฐ๋ฐ ๊ฐ๋ฐ์ ๊ณต๋ถํ๋ฉฐ ์ทจ์ ๊น์ง 1๋ถ 1์ด ์๋ผ๋ฉฐ ์งํํ๋ ์์ ์ด ๋ ์ฌ๋ผ, ๊ฒฝํ๊ณผ ๊ธฐ๋ฐ ์ง์์ ์๊ธฐํ๋ฉด์ ์์ฐ์ค๋ ๋ฒ์์์ ๋ํ ์ฃผ์ ๊ฐ ํ์ด๋์๋ค. "OO์ผ ๋๋ ๊ทธ๋ ๊ฒ ์งํํด ์ค๋ฉด์, ๋ฒ์์ ๊ฐ์ ๊ฒ ์์์ด?" ์ง์ธ์ด ์ง๋ฌธ์ ๋์ก๋ค. "๊ธ์, ๋๋ ๋ฒ์์ ๊ทธ๋ฐ ๊ฑฐ ์ ๋ชจ๋ฅด๊ฒ ์ด." "๊ทผ๋ฐ ๋ชฉํ๊ฐ ๋ช ํํ๋ฉด ๋ฒ์์์ด ์ฌ ์ธ๊ฐ ์์ง ์์๊น.".. 2024. 9. 16. ์ผ์ฃผ์ผ์ ํด์๊ณผ ์๋ก์ด ์ทจ๋ฏธ ๊ฐ์ ํด์ฌ ํ ์ ์ฌ ์ ์ผ์ฃผ์ผ์ ํด์ ๊ธฐ๊ฐ์ด ์ฃผ์ด์ก๋ค.๋ฌด์์ ํ๊ณ ์ฌ์ด์ผ ํ ๊น ํ๋ค, ์ฃผ๋ณ ์ง์ธ๋ค ๊ถ์ ์ ๋ฌด๊ณํ์ผ๋ก 2๋ฐ 3์ผ ์ ์ฃผ๋ ์ฌํ์ ๋ค๋ ์๋ค.์ฐจ๊ฐ ์์ด์ ๋ถํธํ์ง๋ง, ์๋กญ๊ฒ ๋ง๋ ์ธ์ฐ๋ค์ ํตํด ์ฐจ๋ ์ป์ดํ๊ฐ๋ฉด์ ๋ปํ์ง ์๊ฒ ์ฌ๋ฐ๊ฒ ๊ตฌ๊ฒฝํ๊ณ ๋จน๊ณ ์ฌ์๋ค.์ธ์์ด ์ ๋ง ์ข๋ค๊ณ ๋๋๊ฒ, ๊ณ ๋ฑํ๊ต ์น๊ตฌ๋ฅผ ์๋ ์ธ์ฐ์ ๋ง๋ฌ๋ค๋ ๊ฒ์ด๋ค. ์ฐธ ์ธ์ ์ข๊ณ ์ ๊ธฐํ๋ค.์ฌํ์ ํฐ ๊ฐํฅ์ ์์ดํ๋ ์ฑ๊ฒฉ์ด์ง๋ง, ์ด๋ฒ์๋ ์งง๊ฒ๋ผ๋ ๋ค๋ ์ค๊ธธ ์ํ๋ค๋ ์๊ฐ์ด ๋ ๋ค.(๋ฉดํ ์ด๋ฒ ๋ ๋ ์์ ๋ฌด์กฐ๊ฑด ๋ฐ์ผ๊ฒ ๋ค.) ์ฃผ์ง์๋ ์์ํ๋ค.์ฒซ ํ์ฌ ๋์ผ ์ง๊ตฐ ๊ฐ๋ฐ์ ํ๊ณผ ์ง์์ ์ผ๋ก ์ฐ๋ฝํ๋ฉฐ ์ง๋ด๋๋ฐ, ๊ทธ ํ์ฌ ๋ค๋ ๋๋ถํฐ ํญ์ ์ฃผ์ง์๋ฅผ ๊ฐ์ด ํ์๊ณ ๊ถ์ ํ์๋ค๐ ์ด์ง๋ ํ๊ฒ ๋ค ์ ๋ฒ ์ฃผ ๋ถํฐ ์์ํ๋๋ฐ, ์๋กญ๊ฒ ์ด๋์ ๋ฐฐ์๋ณด๋ ๊ฑด ์ด๋ฉด์ ์ฒ์์ด๋ค... 2024. 8. 19. [DB] ์ตํฐ๋ง์ด์ (1) Mysql ์๋ฒ๋ก ์์ฒญํ ์ฟผ๋ฆฌ๋ ์ต์ ์ผ๋ก ์คํ ๋๊ธฐ ์ํด ์ต์ ์ ์คํ ๊ณํ์ ์๋ฆฝํ๋ ์์ ์ด ํ์.๋๋ถ๋ถ์ DBMS ์์๋ ์ตํฐ๋ง์ด์ ๊ฐ ์ด๋ฐ ๊ธฐ๋ฅ์ ๋ด๋นํ๋ค.Explain ๋ช ๋ น์ผ๋ก ์ฟผ๋ฆฌ์ ์คํ ๊ณํ ํ์ธ ๊ฐ๋ฅ. Mysql ์์๋ ๋น์ฉ ๊ธฐ๋ฐ ์ต์ ํ (Cost-based optimizer, CBO) ๋ฅผ ์ฌ์ฉํ๋ค. ๊ธฐ๋ณธ ๋ฐ์ดํฐ ์ฒ๋ฆฌํ ํ ์ด๋ธ ์ค์บ ์กฐ๊ฑด- ํ ์ด๋ธ ๋ ์ฝ๋ ๊ฑด์๊ฐ ์์, ์ธ๋ฑ์ค๋ฅผ ํํ๊ธฐ ๋ณด๋ค ํ ํ ์ด๋ธ ์ค์บ ํ๋ ํธ์ด ๋ ๋น ๋ฅธ ๊ฒฝ์ฐ- where ์ ์ด๋ on ์ ์ ์ธ๋ฑ์ค๋ฅผ ์ด์ฉํ ์ ์๋ ์ ์ ํ ์กฐ๊ฑด์ด ์์ ๊ฒฝ์ฐ- ์ธ๋ฑ์ค ๋ ์ธ์ง ์ค์บ์ ์ฌ์ฉํ ์ ์๋ ์ฟผ๋ฆฌ๋๋ผ๋, ์ตํฐ๋ง์ด์ ๊ฐ ํ๋จํ ์กฐ๊ฑด ์ผ์น ๋ ์ฝ๋ ๊ฑด์๊ฐ ๋ง์ ๊ฒฝ์ฐ ์์ ๊ฐ์ ์กฐ๊ฑด์์ Mysql ์ตํฐ๋ง์ด์ ๋ ํ ํ ์ด๋ธ ์ค์บ์ ์๋ํ๋ค.ํ ํ ์ด๋ธ ์ค.. 2024. 8. 11. ์ด์ 1 2 3 4 ยทยทยท 17 ๋ค์ ๋ฐ์ํ