0. ํ๋ก์ ํธ ์ฃผ์ ๋ญํ์ง?
์ค์๊ฐ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ฌด๋ฃ๋ก ๋ฐ์ ์ ์๊ณ , ๋ฐ์ดํฐ ์๋ ๋ง์ ๊ณณ์ ๊ฝค ์ฐพ๊ธฐ ์ด๋ ค์ ๋ค.
์ค์๊ฐ ์ง์ง ๋ฐ์ดํฐ, ํญ๊ณต ๋ฐ ์ ๋ฐ ๋ฐ์ดํฐ ๊ฐ์ด ์ฌ๋ฏธ๋ ์์ ๊ฒ ๊ฐ๊ณ ์ค์๊ฐ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ค๋ค์ ์ด๊ฒ ์ ๊ฒ ๋ค์ํ ๊ฒฐ๊ณผ๋ ๋ง๋ค์ด ๋ณผ ์ ์์ ๊ฒ ๊ฐ์์ ๊ตฌํ ์ ์๋์ง ์ฐพ์๋ณด๋ค ํด์ธ ์ฌ์ดํธ๊น์ง ๊ฐ์ ํด์ ์ ์ฒญ๋ ํด๋ดค์ง๋ง ๊ฒฐ๊ตญ Fail...
์ด๋ค ํ๋ก์ ํธ ์ฃผ์ ๋ฅผ ํด๋ณผ์ง ์ด๊ฒ์ ๊ฒ ์ฐพ์๋ณด๊ณ ์๋ํ๋ค๊ฐ, ์ฆ๊ฒจํ๋ ๊ฒ์์ธ ๋กค(League of Legends, LOL) ๋ฐ์ดํฐ๋ก ๊ฒฐ์ ํ๋ค.
๋ง์นจ ๊ด๋ จ ํ๋ก์ ํธ๋ฅผ ์ด๋ฏธ ์งํํ์ ์ ๋ก์ ๋ธ๋ก๊ทธ๊ฐ ์์ด, ๋ง์ด ์ฐธ๊ณ ํ๊ณ ์์ฉํด๋ณด๋ ๊ฒ์ ๋ชฉํ๋ก ์งํํ๊ธฐ๋ก ํ๋ค ใ ใ
๊ฑฐ์ฐฝํ๊ฒ ๋ง๋ค ์๋ ์๊ฒ ์ง๋ง, ๊ทธ๋์ ๋ค๋ค๋ณด๊ณ ์ถ์๋ ๊ธฐ์ ์คํ๋ค(ํนํ Kafka๋ Spark ๋ฑ๋ฑ)์ ๋ค๋ค๋ณด๋ ๊ฒ์ ํฐ ์๋ฏธ๋ฅผ ๋๊ณ ๋์ ํด๋ณด๊ธฐ๋ก!
1. Riot API Key ์ ์ฒญํ๊ธฐ
https://developer.riotgames.com/apis ํด๋น URL์ ์ ์ ํ, ๋ผ์ด์ ๊ณ์ ์ ๋ก๊ทธ์ธ ํ์ฌ REGISTER PRODUCT๋ฅผ ํด๋ฆญํ๊ณ ์๋์ ๊ฐ์ ๋ด์ฉ์ ๋ด์ ์ ์ฒญํ์๋ค. ์ฝ 2์ฃผ ํ Approved๋ฅผ ๋ฐ์ ์ ์์๋ค.
์ ์ฒญํ API Key๋ก ์ ๋๋์ง ํ์ธํ๊ณ ์ถ๋ค๋ฉด, API ์ฌ์ดํธ ๋ด์์ ํ ์คํธํ๊ณ ์ถ์ API๋ฅผ ์ ํํ ํ, ์๋ ํ๋ผ๋ฏธํฐ์ ์น์ธ๋ api key๋ฅผ ์ ๋ ฅํด์ฃผ๋ฉด ๊ฒฐ๊ณผ๋ฅผ ๋ฏธ๋ฆฌ ๋ณผ ์ ์๋ค.
2. Java Spring Boot ํ๋ก์ ํธ ์์ฑํ๊ธฐ
๊ทธ๋์ ๋ฐฑ์๋ ๋ถ๋ถ์ Django ๊ฒฝํ๋ฐ์ ์์์ด์, ์ด๋ฒ์๋ java spring boot๋ฅผ ์ฌ์ฉํด์ API๋ฅผ ๊ตฌ์ถํด๋ณด๊ธฐ๋ก ํ๋ค.
https://start.spring.io/ ์ ์ ์ํ์ฌ ์๋ ์ธํ ์ผ๋ก ์์ฑํด์ ๋ค์ดํด์ฃผ์๋ค.
๋ค์ดํ ํ์ผ์ IntelliJ๋ฅผ ํตํด ํ๋ก์ ํธ๋ฅผ ์์ฑํ๊ณ ์ด์ด์ฃผ์๋ค.
๐จ no matching variant of org.springframework.boot
ํ๋ก์ ํธ๋ฅผ ๋ฐ๋ก ๋น๋ํ๋๋ฐ, ์๋์ ๊ฐ์ ์๋ฌ๋ฅผ ๋ง๋ฌ๋ค.
์์์ ์คํ๋ง ๋ถํธ๋ก ์์ฑํ ํ๋ก์ ํธ ์๋ฐ ๋ฒ์ ๊ณผ ํ์ฌ ํด๋น ํ๋ก์ ํธ์ ์ค์ ๋ ์๋ฐ ๋ฒ์ ์ด ๋ฌ๋ผ์ ์๊ธด ๋ฌธ์ ์ด๊ธฐ ๋๋ฌธ์, ์๋ฐ ๋ฒ์ ์ ๋ง์ถฐ์ฃผ๋๋ก ํ๋ค.
์คํ๋ง ๋ถํธ ์ค์ ๊ฐ๊ณผ ๋์ผํ๊ฒ Language Level๊ณผ Gradle JVM์ Java 17๋ก ๋ง์ถฐ์ฃผ์๋ค.
๋ค์ ํ๋ก์ ํธ๋ฅผ ๋น๋ํ๋ฉด, ์๋ฌ ์์ด ์ฑ๊ณต์ ์ผ๋ก ๋น๋๋จ์ ํ์ธํ ์ ์์๋ค.
3. Git & GitHub ์ฌ์ฉํ๊ธฐ
ํ๋ก์ ํธ๊ฐ ์ ๋น๋๋์์ผ๋, ํด๋น ํ์ ์ ๊นํ๋ธ์ ์ฌ๋ฆฌ๊ณ ๋ธ๋์น ๋๋ ์ develop ๋ธ๋์น์์ ์์ ํ๊ธฐ๋ก ํ๋ค.
Add: Spring Boot project · Lee-SungMin/LOL_Data_Pipeline@6642afd
Lee-SungMin committed Oct 17, 2023
github.com
4. gitignore ์ค์ ํ๊ธฐ
ํ์ฌ ๊ฐ๋ฐ ํ๊ฒฝ์ด mac์ด๊ธฐ ๋๋ฌธ์ ์ถ์ ๋์ง ์๋๋ก ์ถ๊ฐ ์ค์ ์ ํด์ฃผ๊ณ , ๋ฐ๊ธ ๋ฐ์ Riot API key๋ ์ธ๋ถ์์ ํ์ธํ ์ ์๋๋ก ์ค์ ํ๋ค.
# for mac
*/.DS_Store
.DS_Store
# Riot API Key
application.properties
CHORE: gitignore ์ค์ · Lee-SungMin/LOL_Data_Pipeline@3373ccf
Lee-SungMin committed Oct 24, 2023
github.com
5. API Key๋ ์ด๋ป๊ฒ ์ฌ์ฉํ ๊น?
๊ทธ๋์ ์๋ฐ ํ๋ก์ ํธ ํ๋ฉด์ ํญ์ ์ค์ํ ํค๊ฐ๋ค์ ๊ทธ๋ฅ ํ๋์ฝ๋ฉ์ผ๋ก ๊ฐ์ ์ฃผ์ ํด์ ์ฌ์ฉํด์์๋ค.
์๋ฐ ๋ฟ๋ง ์๋๋ผ ๋ค๋ฅธ ํ๋ก์ ํธ์์๋ ๋ ํค๊ฐ ๋๋ฌธ์ ๊ณ ์์ด์๋๋ฐ...์ ์ด๊ฑธ ์ด์ ์์์๊น...ใ ใ
application.properties์ ๋ฐ๊ธ๋ฐ์ api key ๊ฐ์ ์ค์ ํด์ฃผ๋ฉด, @Value ์ด๋ ธํ ์ด์ ์ ์ฌ์ฉํด ํด๋น ๊ฐ์ ๊ฐ์ ธ์ฌ ์ ์๋ค.
'๊ฐ๋ฐ ์ผ์ง > [LOL Data Pipeline ๊ตฌ์ถํ๊ธฐ]' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
4. ์ ์ ๋ณด๋ฅํฉ๋๋ค. (0) | 2023.10.26 |
---|---|
3. kafka์ ๋ชจ๋ํฐ๋ง์ ์ํ grafana ์ธํ (0) | 2023.10.25 |
2. ์ํ์ฌ๋ช ๊ฒ์์ผ๋ก ์ ๋ณด ๊ฐ์ ธ์ค๋ API ๊ตฌํํ๊ธฐ (0) | 2023.10.24 |