- ๋น์ ์ MovieFlix ์ ํ๋๋ฟ์ธ ๊ฐ๋ฐ์๊ฐ ๋์์ต๋๋ค.
- ์ ์ ๋ค์ ์ํํ ์ํ๊ด๋์ ์ํด ๋ฐฑ์๋ ๊ฐ๋ฐ๊ณผ ์ถ์ฒ์์คํ ๊ฐ๋ฐ์ ์งํํ์ฌ์ผํฉ๋๋ค.
- ์ฐ๋ฆฌ๋ A/B Test์๋ง ์ง์คํ ๋ฟ A/A Test๋ ๋์น๊ธฐ ์ฝ๋ค๊ณ ํฉ๋๋ค.
- ํ์ฌ MovieFlix๋ A/B Test๋ฅผ ํตํด ๋์กฐ ์คํ์ ํ๊ธฐ์ A/A Test๋ฅผ ํตํด ๋๊ทธ๋ฃน์ ๋จผ์ ์ดํด๋ณด๋ ค ํฉ๋๋ค.
- ์ด๋ฒ ํ๋ก์ ํธ๋ ๋ฐฉํ๋ชจ๋์ ๋ฐ์ดํฐ์ผ ๋์ ๋ฐํ์ ์๊ฐ์ ๋ฐ์ ์ ์ํ์์ต๋๋ค.
๊ทธ๋ฃน๋ณ ํ๊ท ๋ง์กฑ๋ ์ ์
์ฐจํธ ํน์์ ์ ๋ง์กฑ๋ ํํฉ
์ฐจํธ๋ฅผ ๋ณด์์ ๋ A/B Test์์ B๊ทธ๋ฃน ๋ง์กฑ๋๊ฐ ๊ฐ์- ์ฐ๋ฆฌ์ ์ถ์ฒ์์คํ ์ด, ์๋น์ค๊ฐ ์ ์๋ํ๊ณ ์๊ตฌ๋๋ฅผ ๋ชจ๋ํฐ๋ง
- Infra
- VM๊ด๋ฆฌ ๋ฐ ๊ฐ๋ฐํ๊ฒฝ๊ด๋ฆฌ๋ฅผ terraform๊ณผ ansible์ ํตํด ํ๊ฒ๋ฉ๋๋ค.
- K8s
- ์ฌ์ฉ๋๋ ๋ชจ๋ App๋ค์ kubernetes์์์ ๊ด๋ฆฌํ๊ฒ ๋ฉ๋๋ค.
project/client
- ์ ์ ํ๋๋ถ๋ถ์ ๋ด๋นํ๋ ์ฝ๋๋ถ๋ถ์ ๋๋ค.
- ๊ฐ์์ ์๋๋ฆฌ์ค๋ ์๋์ ๊ฐ์ต๋๋ค.
1. ์ํ๊ฐ ๊ฐ๋ด (send_movie_data = Movie ๋ฐ์ดํฐ ์์ฑ) 2. ์์ 1์์ ๊ฐ๋ดํ ์ํ๋ฅผ ๋ณด๋ฌ ์ฌ๋๋ค์ด ๋ฐฉ๋ฌธ 2-1. ratings.csv์ ํด๋น movie_id๊ฐ ์กด์ฌํ๋ ์ ์ ์ถ์ถ (find_user_list_from_ratings) 2-2. ํด๋น ์ ์ ๋ค์ ํํ์ฌ ratings ๋ฐ์ดํฐ์ feedbacks ๋ฐ์ดํฐ ์์ฑ (send_user_reaction)
project/fastapi
- ๋ฐฑ์๋ ์๋น์ค๋ฅผ ๋ด๋นํ๋ ์ฝ๋๋ถ๋ถ์ ๋๋ค.
- Client ์ฝ๋์์ ์์ฑ๋๋ Request๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฅผ ์์ฑํฉ๋๋ค.
- Feedback๋ฐ์ดํฐ๋ฅผ ํตํด ํ์ฌ ์๋น์ค ๋ง์กฑ๋๋กค ํ๊ฐํฉ๋๋ค.
- 9๊ฐ์ ์ํ๋ฅผ ์ถ์ฒํด ์ ์ ๊ฐ ์ด๋ฒ์ ๋ณด๋ ค๋ ์ํ๊ฐ ์์ชฝ์ ์์นํ ์๋ก ์ ์๊ฐ ๋๊ฒ ๋ฉ๋๋ค.
project/kafka
- Lambda Data Architecture์์ Speed Layer ๋ถ๋ถ์ Kafka Connector๋ฅผ ํตํด ๊ตฌํํ์์ต๋๋ค.
- Airflow-Dags
- Lambda Data Architecture์์ Batch Layer ๋ถ๋ถ์ ์ฒ๋ฆฌํ๊ธฐ ์ํ Dag์ด ์กด์ฌํฉ๋๋ค.
- jsonํ์ผ์ ํตํด ๋์ ์ผ๋ก Dag์ ์์ฑํ๊ฒ ๋ฉ๋๋ค.
- git-sync๋ฅผ ํตํด ์ repository์ ์ ์๋ Dag์ ์ฌ์ฉํ๊ฒ ๋ฉ๋๋ค.
- ๊ฐ๋จํ ๋จธ์ ๋ฌ๋ Dag๋ ๋ด๊ฒจ์์ต๋๋ค.
- ์๊ฐํ ์ฉ๋๋ก ์ฌ์ฉ๋์์ต๋๋ค.
- ๋ชจ๋ธ Registry ์ฉ๋๋ก ์ฌ์ฉ๋์์ต๋๋ค.
- MLflow์ ์ํฐํฉํธ ์คํ ๋ฆฌ์ง๋ฅผ ์ํด ์ฌ์ฉ๋์์ต๋๋ค.