ํฐ์คํ ๋ฆฌ ๋ทฐ
๋น ๋ฐ์ดํฐ๋ฅผ ์งํฑํ๋ ๊ธฐ์ CH4 - ๋น ๋ฐ์ดํฐ์ ์ถ์
mokhs 2024. 1. 21. 16:07๋ค์๊ณผ ๊ฐ์ ์ง์์ ํ์ตํ๊ณ ์ ๋ฆฌํฉ๋๋ค
- ๋ฒํฌํ, ์คํธ๋ฆฌ๋ฐ ํ ๋ฐ์ดํฐ ์ ์ก
- ์คํธ๋ฆฌ๋ฐํ์ ๋ฐ์ดํฐ ์ ์ก์ธ
๋ฉ์์ง ๋ฐฐ์ก ๊ตฌ์กฐ
์ ํธ๋ ์ด๋์คํ- ์ฑ๋ฅ์ ์ป๊ณ ์ ๋ขฐ์ฑ์ด ํฌ์๋๋ ๊ฒฝ์ฐ ๋ฑ
๋ฉ์์ง ๋ฐฐ์ก
์ ์์ด์ ํ๋ก์ธ์ค ์๊ฐ๊ณผ ์ด๋ฒคํธ ์๊ฐ์ ๊ตฌ๋ณ- ์ด๋ฒคํธ ์๊ฐ์ ๊ณ ๋ คํ ์ต์ ํ
- ๋ฐ์ดํฐ ์์ธ์ ํตํ ์ต์ ํ
- NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ช ๊ฐ์ง ํน์ฑ๊ณผ ๊ตฌ๋ถ
- ๋ฐ์ดํฐ ์ถ์ ์ ์ ๋ฐ์ ์ธ ํ๋ก์ฐ
4-1 ๋ฒํฌ ํ ์คํธ๋ฆฌ๋ฐ ํ์ ๋ฐ์ดํฐ ์์ง
๋ฐ์ดํฐ ์ ์ก์๋ ๋ฒํฌ ํ
๊ณผ ์คํธ๋ฆฌ๋ฐ ํ
์ ๋ ์ข
๋ฅ๊ฐ ์์
๊ฐ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก ๋ถ์ฐ ์คํ ๋ฆฌ์ง์ ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋ ๋๊น์ง์ ํ๋ฆ์ ์ดํด๋ณด์.
๊ฐ์ฒด ์คํ ๋ฆฌ์ง์ ๋ฐ์ดํฐ ์์ง
- ๋น
๋ฐ์ดํฐ๋ ๋๋ถ๋ถ์ ๊ฒฝ์ฐ ํ์ฅ์ฑ์ด ๋์
๋ถ์ฐ ์คํ ๋ฆฌ์ง
์ ์ ์ฅ๋จ- ๋ถ์ฐ ํ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์ด์ฉ๋๋ ๊ฒฝ์ฐ๋ ์์ง๋ง ๋๋์ผ๋ก ํ์ผ์ ์ ์ฅํ๊ธฐ ์ํ
๊ฐ์ฒด ์คํ ๋ฆฌ์ง(object storage)
๊ฐ ๊ธฐ๋ณธ์ด ๋จ - e.g. Hadoop์ด๋ผ๋ฉด HDFS, AWS์์๋ Amazon S3
- ๋ถ์ฐ ํ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์ด์ฉ๋๋ ๊ฒฝ์ฐ๋ ์์ง๋ง ๋๋์ผ๋ก ํ์ผ์ ์ ์ฅํ๊ธฐ ์ํ
๊ฐ์ฒด ์คํ ๋ฆฌ์ง์ ๋ฐ์ดํฐ ์ ์ฅ ํ๋ก์ฐ
- ๊ฐ์ฒด ์คํ ๋ฆฌ์ง๋ ๋ค์์ ์ปดํจํฐ๋ฅผ ์ฌ์ฉํด ํ์ผ์ ์ฌ๋ฌ ๋์คํฌ์ ๋ณต์ฌํจ
- ์ด์ ๋ฐ๋ผ
๋ฐ์ดํฐ์ ์ค๋ณตํ
์๋ถํ ๋ถ์ฐ
์ ์ง์ํ๊ณ ์์. - ๋ฐ๋ผ์ ์ผ๋ถ ํ๋์จ์ด๊ฐ ๊ณ ์ฅ๋๋๋ผ๋ ๋ฐ์ดํฐ๊ฐ ์์ค๋์ง ์์
- →
์ฅ์ ๊ทน๋ณต(Failover)์ด ๊ฐ๋ฅํ๋ค
- →
์ฌ๋ ์ด๋ธ(read replica)๋ฅผ ํตํ **๋ถํ ๋ถ์ฐ์ผ๋ก ์ฑ๋ฅ ์ ํ๋ฅผ ๋ฐฉ์ง**
- ์ด์ ๋ฐ๋ผ
์ฃผ์์
- ๊ฐ์ฒด ์คํ ๋ฆฌ์ง์ ๊ตฌ์กฐ๋ ๋ฐ์ดํฐ์์ด ๋ง์ ๋ ์ฐ์ํจ. ํ์ง๋ง ์๋์ด ๋ฐ์ดํฐ์ผ ๊ฒฝ์ฐ ๋นํจ์จ์ ์.
- → 100๋ฐ์ดํธ์ ์์ ํ์ผ์ ์์ฃผ ์ฝ๊ณ ์ฐ๋ ๊ฒ์ ๋ฐ์ดํฐ์์ ๋นํด ํต์ ์ค๋ฒํค๋๊ฐ ๋๋ฌด ํฌ๊ธฐ ๋๋ฌธ์ ์ ํฉํ์ง ์์
- ๊ทธ๋ผ ์ด๋์ ๋๊ฐ ์ ํฉํ๋ฐ?
- →
์์ ๊ท๋ชจ์ผ ๋๋ ์๋ฌด๋๋ ๋น์ฉ์ ์๊ฐํด์ ์ ์ ํ ์คํ ๋ฆฌ์ง๋ฅผ ์ ํํ๊ณ ๋ฐ์ดํฐ๊ฐ ๋ง์ ๋น ๋ฐ์ดํฐ ์ ๋๋ฉด ๊ฐ์ฒด ์คํ ๋ฆฌ์ง๋ฅผ ๊ณ ๋ คํด๋ผ
๋ก ์ดํดํ์
- →
๋ฐ์ดํฐ ์์ง
์์งํ ๋ฐ์ดํฐ๋ฅผ ๊ฐ๊ณตํ์ฌ ์ง๊ณ ํจ์จ์ด ์ข์ ๋ถ์ฐ ์คํ ๋ฆฌ์ง๋ฅผ ๋ง๋๋ ์ผ๋ จ์ ํ๋ก์ธ์ค๋ฅผ ๋ฐ์ดํฐ ์์ง(data ingestion) ์ด๋ผ๊ณ ํ๋ค. ์ฌ๊ธฐ์๋ ๋ฐ์ดํฐ ์์ง๋ถํฐ ๊ตฌ์กฐํ ๋ฐ์ดํฐ์ ์์ฑ, ๋ถ์ฐ ์คํ ๋ฆฌ์ง์ ๋ํ ์ฅ๊ธฐ์ ์ธ ์ ์ฅ ๋ฑ์ด ํฌํจ๋๋ค.
→ ๋จ์ํ ๋ฐ์ดํฐ๋ฅผ ๋ฌด์ง์ฑ์ผ๋ก ์ ์ฅํ๋ ๊ฒ ์๋๋ผ ์ด๋ฅผ ์ค์ฉ์ ์ผ๋ก ๊ด๋ฆฌํ๋ ๊ฒ์ด ์ค์ํ๋ค.
- ๋น
๋ฐ์ดํฐ๋ก ์์ฃผ ๋ค๋ฃจ๋ ๊ฒ์
์๊ณ์ด ๋ฐ์ดํฐ
์ด๊ณ ์ด ๋ฐ์ดํฐ๋ ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ๋๋์ ๋ฐ์ดํฐ๊ฐ ์์ด๊ฒ ๋๋ค. - ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๊ฒ๋ ์ ์ ํ ํ์ผ ์ฌ์ด์ฆ๋ก ์ ์ฅํ์ง ์์ผ๋ฉด ์ด ๋ํ ์ฑ๋ฅ ์ ํ์ ์์ธ์ด ๋๋ค. ๋ฐ๋ผ์ ์ด๋ฅผ ์ ์ ํ๊ฒ ์ ์ฅํ์ฌ ํจ์จ์ ๋์ด๋ ๊ฒ์ด ์ค์ํจ.
- e.g. 1ํ ๋ผ๋ฐ์ดํธ์ ํ์ผ์ 100Mbp์ ํ์ ์ผ๋ก ์ ์กํ๋ฉด ์ฝ 24์๊ฐ์ด ์๋จ.
๊ทธ๋ ๋ค๋ฉด ์ด๋ค ๋ฐ์ดํฐ ํฌ๊ธฐ๊ฐ ์ ์ ํ ๊น?
- ์ผ๋ฐ์ ์ผ๋ก ๊ฐ์ฒด ์คํ ๋ฆฌ์ง์์ ํจ์จ์ ์ผ๋ก ์ฒ๋ฆฌํ ์ ์๋ ํ์ผ ํฌ๊ธฐ๋ ๋๋ต 1MB~1GB ๋ฒ์์ด๋ค.
- ์์๋ก ๊ฐ์ฒด ์คํ ๋ฆฌ์ง์ ์์ ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋กํ๋ฉด ๋๋์ ์์ ํ์ผ์ด ์์ฑ๋จ
- → ๋ฐ์ดํฐ๋ฅผ ์ ๋นํ ๋ชจ์์ ํ๋์ ํฐ ํ์ผ๋ก ๋ง๋ค๊ธฐ
- ๋๋ฌด ํฐ ๋ฐ์ดํฐ๋ผ๋ฉด ์ ๋นํ ๋๋ ์ ์ฒ๋ฆฌํ๊ธฐ
- ์์๋ก ๊ฐ์ฒด ์คํ ๋ฆฌ์ง์ ์์ ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋กํ๋ฉด ๋๋์ ์์ ํ์ผ์ด ์์ฑ๋จ
- ์ผ๋ฐ์ ์ผ๋ก ๊ฐ์ฒด ์คํ ๋ฆฌ์ง์์ ํจ์จ์ ์ผ๋ก ์ฒ๋ฆฌํ ์ ์๋ ํ์ผ ํฌ๊ธฐ๋ ๋๋ต 1MB~1GB ๋ฒ์์ด๋ค.
๋ฒํฌ ํ์ ๋ฐ์ดํฐ ์ ์ก
- ์ ํต์ ์ธ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค์์ ์ฌ์ฉ๋
๋ฒํฌ ํ ๋ฐฉ์
์ ๋ง ๊ทธ๋๋ก ์ด๋ฏธ ๋ชจ์๋ ํฐ ๋ฐ์ดํฐ๋ฅผ ์ฎ๊ธฐ๋ ๋ฐฉ์์ด๋ค.- ๋ฐ๋ผ์ ์ด๋ฏธ ๋๋์ ๋ฐ์ดํฐ๊ฐ ์ถ์ ๋ ๊ฒฝ์ฐ๋ ๊ธฐ์กด ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๋ฐ์ดํฐ๋ฅผ ์ถ์ถํ๊ณ ์ถ์ ๊ฒฝ์ฐ์ ๋ฒํฌ ๋ฐฉ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ค.
- ๋ฐ์ดํฐ ์ ์ก์ ์ ๋ขฐ์ฑ์ด ์ค์ํ ๊ฒฝ์ฐ์๋ ๊ฐ๋ฅํ ํ ๋ฒํฌ ํ ๋๊ตฌ๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค.
- ์คํธ๋ฆฌ๋ฐ ํ์ ๋ฐ์ดํฐ ์ ์ก์ ์ฌ์คํํ๊ธฐ๊ฐ ์ฝ์ง ์๊ณ ์ ๋ขฐ์ฑ์ด ๋จ์ด์ง๋ค.
- ๋ฒํฌ ํ ๋ฐฉ์์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ ๋ ๋น๊ต์ ์ฝ๊ฒ ๋ฐ์ดํฐ ์ ์ก์ ์ฌ์คํ ํ ์ ์๋ค.
- ์ด๋ฐ ์ ์์ ๋ฒํฌ ํ์ ์ํฌํ๋ก ๊ด๋ฆฌ ๋๊ตฌ์์ ๊ถํฉ์ด ๋ฐ์ด๋๋ค.
์ฃผ์
- ๋ฒํฌ ํ์ด๋ผ๊ณ ๋ฐ์ดํฐ๋ฅผ ๋ฌด์กฐ๊ฑด ํ ๋ฒ์ ์ ์กํ๋ ๊ฑด ์๋๋ค.
- ๋๋ฌด ํฐ ๋ฐ์ดํฐ๋ฅผ ํ ๋ฒ์ ์ฎ๊ธฐ๋ฉด ์์
์ด ๋ฌด๊ฑฐ์์ ์ค๋ฅ๊ฐ ๋๋ ๊ฒฝ์ฐ๊ฐ ์๊ธด๋ค.
- → ์ด๋ฐ ๊ฒฝ์ฐ๋ ๋ฐ์ดํฐ๋ฅผ ๋๋ ์ ์ ์กํด์ผ ํ๋ค.
- ๋ฐ์ดํฐ๊ฐ ์ฒ์๋ถํฐ ๋ถ์ฐ ์คํ ๋ฆฌ์ง์ ์ ์ฅ๋์ด ์๋ ๊ฒ์ด ์๋๋ผ๋ฉด ๋ฐ์ดํฐ ์ ์ก์ ์ํ
ETL server
๊ฐ ํ์ํ๋ค.- ETL server๋ ๊ตฌ์กฐํ๋ ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์ ํฉํ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค๋ฅผ ์ํ ETL ๋๊ตฌ์ ์คํ ์์ค ๋๋ ์์ ์์ฑํ ์คํฌ๋ฆฝํธ ๋ฑ์ ์ด์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ค.
๋ฐ์ดํฐ ์ ์ก์ ์ํฌํ๋ก
- ๋ฐ์ดํฐ ์ ์ก์ ์ํฌํ๋ก๋ฅผ ์ฌ์ฉํ ์๋ ์๋ค.
- e.g. ์ด ๋ฐ์ดํฐ๊ฐ ์ ์ฌ๋๋ฉด ๋ฐ์ดํฐ ๋ถ์์ ์ํ data mart๋ฅผ ์์ฑํด์ฃผ์ธ์. ๋ฑ
- ๋งค์ผ ๋ง์คํฐ ๋ฐ์ดํฐ์ ์ค๋ ์ท๊ณผ ์ ๋ขฐ์ฑ์ด ์ค์๋๋ ๊ณผ๊ธ ๋ฐ์ดํฐ ์ ์ก ๋ฑ์ ๊ฒฝ์ฐ ๋ค๋ฅธ ๋ฐฐ์น ์ฒ๋ฆฌ์ ํจ๊ป ์ํฌํ๋ก์ ์ผ๋ถ์ ํฌํจํ๋ ๊ฒ์ด ์ข๋ค.
- ์คํธ๋ฆฌ๋ฐ ๋ฐฉ์์ ํน์ฑ์ ์ค์๊ฐ์ผ๋ก ๋์ํ๊ธฐ ๋๋ฌธ์ ์ํฌํ๋ก์ฐ ์ผ๋ถ๋ก ์คํํ์ง ์๋๋ค.
์คํธ๋ฆฌ๋ฐ ํ์ ๋ฐ์ดํฐ ์ ์ก
์คํธ๋ฆฌ๋ฐ ํ์ ๋ง ๊ทธ๋๋ก ์ค์๊ฐ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ๋ฐฉ์์ด๋ค.
์คํธ๋ฆฌ๋ฐ์ด๋ผ๊ณ ํ๋ฉด ๊ฑฐ์ฐฝํ ๋ง์ฒ๋ผ ๋๊ปด์ง์ง๋ง, ์ฌ์ค ๋ฐ์ดํฐ ์ ์ฅ์ ์ํด API๋ฅผ ๊ณ์ ํธ์ถํ๋ ๊ฒ๊ณผ ๋ค๋ฆ์ด ์๋ค.
ํ์ง๋ง ์ด ํธ์ถ ๊ณผ์ ์์ ์ ์ก ์คํจ, ๋ฐ์ดํฐ ์ค๋ณต ๊ทธ๋ฆฌ๊ณ ๋๋ฐ์ด์ค ์ผ์ด์ค ๋ฑ์ ๊ณ ๋ คํด์ผ ํ๋ค.
์คํธ๋ฆฌ๋ฐ ํ ๋ฐ์ดํฐ ์ ์ก์ ํ๋ก์ฐ
- ๋ณดํต ์คํธ๋ฆฌ๋ฐ ํ๊ณผ ๊ฐ์ ๋ฐ์ดํฐ ์ ์ก ๋ฐฉ์์
๋ฉ์์ง ๋ฐฐ์ก(message delivery)
์ด๋ผ๊ณ ํ๋ค.- ๋ฉ์์ง ๋ฐฐ์ก ์์คํ ์ ์ ์ก๋๋ ๋ฐ์ดํฐ์์ ๋นํด ํต์ ์ ์ํ ์ค๋ฒํค๋๊ฐ ์ปค์ง๊ธฐ ๋๋ฌธ์ ์ด๋ฅผ ์ฒ๋ฆฌํ๋ ์๋ฒ๋ ๋์ ์ฑ๋ฅ์ ์๊ตฌํ๋ค.
๋ฉ์์ง ํ
,๋ฉ์์ง ๋ธ๋ก์ปค
์ ๊ฐ์ ์ค๊ณ ์์คํ ์ ํตํด ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ์๋ ์๋ค.- ์ด๋ฐ ๊ฒฝ์ฐ ๊ธฐ๋ก๋ ๋ฐ์ดํฐ๋ฅผ ์ผ์ ๊ฐ๊ฒฉ์ผ๋ก ๊บผ๋ด๊ณ ๋ชจ์์ ๋ถ์ฐ ์คํ ๋ฆฌ์ง์ ์ ์ฅํ๋ค.
- ๋ฉ์์ง ํ, ๋ฉ์์ง ๋ธ๋ก์ปค์ ๊ฐ์ ์์คํ ์ ์ด์ฉํ๋ฉด ์ฅ์ ๊ทน๋ณต(failover), ์คํจํ ๋ฉ์์ง(dead letter) ์ฌ์ ์ก ๊ด๋ฆฌ์ ๋ํด ์ด์ ์ ๊ฐ์ ธ๊ฐ ์ ์๋ค.
- ๋ํ์ ์ผ๋ก ๋ฉ์์ง ํ๋ Amazon SQS, ๋ฉ์์ง ๋ธ๋ก์ปค๋ Apache Kafka ๋ฑ์ด ์๋ค.
- ์ฃผ๋ก ์์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋๋ฐ ์ฌ์ฉ๋๋ค.
- e.g. ์ฌ์ฉ์์ ํ๋ ๋ถ์์ ์ํ ์ด๋ฒคํธ ์ถ์ ์ด๋ ์๋ฒ ๋ก๊ทธ ์ ์ฌ
- ๋ค์ํ ์๊ตฌ์ฌํญ์ด ์์ ์๋ ์๊ณ ํญ์ ํธ๋ ์ด๋์คํ๋ฅผ ๊ณ ๋ คํด์ ์ด์ ์ ์ ํ ์๋ฃจ์ ์ ์ ํํ๋ ๊ฒ ์ค์ํ๋ค.
- ํฐ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ๊ฒ์ ๋ฉ์์ง ๋ธ๋ก์ปค๋ฅผ ์ ์ ํ ์๋ฃจ์ ์ด๋ผ๊ณ ๋ณด๊ธฐ์๋ ์ด๋ ต๋ค.
4-2 ๋ฉ์์ง ๋ฐฐ์ก์ ํธ๋ ์ด๋ ์คํ(์ฑ๋ฅ vs ์ ๋ขฐ์ฑ)
ํด๋ผ์ด์ธํธ์ ์๊ฐ ๋ง์์ง๋ฉด ์คํธ๋ฆฌ๋ฐ ํ์ ๋ฉ์์ง ๋ฐฐ์ก์ ์ฑ๋ฅ๊ณผ ์ ๋ขฐ์ฑ์ ๋ชจ๋ ๋ง์กฑํ๊ธฐ ์ด๋ ต๋ค.
๋ฉ์์ง ๋ธ๋ก์ปค๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ๋ฉ์์ง ๋ฐฐ์ก ๊ตฌ์กฐ์ ๊ทธ ํ๊ณ์ ๋ํด ์์๋ณด์
- ํด๋ผ์ด์ธํธ๊ฐ ๋ง์์ง๊ณ ๋ฉ์์ง์ ์์ด ๋ง์์ง๋ง ์คํ ๋ฆฌ์ง์ write ๋ถํ๊ฐ ๋ง์ด ๊ฑธ๋ฆฌ๊ฒ ๋๋ค.
- ์ด๋ฐ ๊ฒฝ์ฐ ๋ถํ๋ฅผ ์ค์ด๊ธฐ ์ํด ๋ฐ์ดํฐ๋ฅผ ์ผ๋ถ ๋ชจ์์ write ํด์ ๊ฐ์ ํ ์ ์๋๋ฐ, ์ด ๋
๋ฉ์์ง ๋ธ๋ก์ปค
๋ฅผ ์ฌ์ฉํด๋ณผ ์ ์๋ค.- ๋ํ์ ์ธ ๋ฉ์์ง ๋ธ๋ก์ปค๋ก๋ Apache Kafka, Amazon Kinesis ๋ฑ์ด ์๋ค.
ํธ์ฌ ํ๊ณผ ํ ํ
- ์ ๊ทธ๋ฆผ์ ๋ณด์ด๋ฏ ์ ์ด ์ฃผ๋๊ถ์ด ์ด๋์ ์๋์ง์ ๋ฐ๋ผ ๋ฉ์์ง ๋ฐฐ์ก ๋ฐฉ์์ด
ํธ์ฌ ํ
๊ณผํ ํ
์ผ๋ก ๋๋๋ค. - ์ด๋ ๊ตฌํ ๋ฐฉ์์ ๋ฐ๋ผ ๋๋๋ ๋ฉ์์ง ๋ธ๋ก์ปค๋ฅผ ์ ํํ๊ธฐ ์ ์ ์ ์ดํด๋ณด์
- ์ก์ ์ธก์ ์ ์ด๋ก ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๋ ๋ฐฉ์์ด
ํธ์(push)ํ
- ์์ ์ธก์ ์ ์ด๋ก ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๋ ๊ฒ์
ํ(pull)ํ
- ๋ฐ์ดํฐ๋ฅผ ๋ชจ์์ pullํ๊ธฐ ๋๋ฌธ์ ํ์ผ ์ฌ์ด์ฆ ์ ์ ํ์ ๋์์ด ๋จ
- ์ก์ ์ธก์ ์ ์ด๋ก ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๋ ๋ฐฉ์์ด
- ๋ฉ์์ง ๋ธ๋ก์ปค๋ ๋ฐ์ดํฐ์ ์ฐ๊ธฐ ์๋๋ฅผ ์กฐ์ ํ๊ธฐ ์ํ ์์ถฉ์ ์ญํ ์ด๊ณ ํธ์ฌ ํ๊ณผ ํ ํ์ผ๋ก ๋ฉ์์ง ๋ฐฐ์ก์ ํ์ด๋ฐ์ ์กฐ์ ํ๋ค.
- ๋ฉ์์ง ๋ธ๋ก์ปค์ ๊ตฌ์กฐ์์์ ์ญํ ์ ์
- ๋ฉ์์ง ๋ธ๋ก์ปค์ ๋ฐ์ดํฐ๋ฅผ push ํ๋
์์ฑ์(producer)
- ๋ฐ์ดํฐ๋ฅผ pullํด์ ์๋นํ๋
์๋น์(consumer)
- ๋ฉ์์ง ๋ธ๋ก์ปค์ ๋ฐ์ดํฐ๋ฅผ push ํ๋
๋ฉ์์ง ๋ผ์ฐํ
- ๋ฉ์์ง ๋ธ๋ก์ปค์ ์ ์ฅ๋ ๋ฉ์์ง๋ ์ฌ๋ฌ consumer๊ฐ ์ฝ์ ์ ์๋ค. ์ด ๊ฒฝ์ฐ ๋ฐ์ดํฐ๊ฐ ๋ณต์ฌ๋์ด ์ฌ๋ฌ ๊ฒฝ๋ก๋ก ๋ถ๊ธฐ๋๊ธฐ ๋๋ฌธ์
๋ฉ์์ง ๋ผ์ฐํ (message routing)
์ด๋ผ๊ณ ํ๋ค.- ์ด๋ฅผ ํตํด ๋ง์ producer์์ ์ค๋ ๋๋์ ๋ฉ์์ง๋ฅผ ์ฆ๊ฐ์ ์ผ๋ก ์ด๋ค consumer์๊ฒ ์ ์กํ๋ฉด์ ๋์์ ๋ค๋ฅธ consumer๋ ๋ฐ์ดํฐ ์ ์ฌ ํจ์จํ๋ฅผ ์ํด ๋ฐ์ดํฐ๋ฅผ ๋ชจ์๋์๋ค๊ฐ ํ ๋ฒ์ ์ ์ฅํ ์๋ ์๋ค.
- ์ฆ, consumer๋ ์๋ก์ ์กด์ฌ๋ฅผ ๋ชจ๋ฅด๊ณ ์์กด์ฑ์ด ๊ฒฉ๋ฆฌ๋์ด ์๊ธฐ ๋๋ฌธ์ ๋ค๋ฅธ consumer๋ฅผ ์ถ๊ฐํ๋ ๊ฒ ์์ ๋กญ๋ค.
- → ํ์ฅ์ฑ์ด ๋๋ค.
๋ฉ์์ง ๋ฐฐ์ก์ ์ ๋ขฐ์ฑ ๋ฌธ์
์ค์๊ฐ ๋ฉ์์ง ๋ฐฐ์ก๊ณผ ๊ฐ์ ์คํธ๋ฆฌ๋ฐ ๊ตฌ์กฐ์์๋ ์ฑ๋ฅ ๋ฌธ์ ์ธ์๋ ์ ๋ขฐ์ฑ(reliability)
๋ฌธ์ ๋ ํผํ ์ ์๋ค.
- ๋ถ์ฐ ์์คํ
์์๋ ๋คํธ์ํฌ ์ฅ์ ๋ฑ์ผ๋ก ์ธํด ์ค๋ฅ ๋ฐ์์ด ํ์ฐ์ ์ธ๋ฐ, ์ด๊ฒ๋ ์ ๋ขฐ์ฑ ๋ฌธ์ ์ ํ ๋ชซํ๋ค.
- ๋ฉ์์ง๋ ์ ์ก๋์ ์ ์์ง๋ง consumer์์ ์ค๋ฅ๊ฐ ๋ฐ์ํด ์์ ์ด ์คํ๋์ง ์์์ ์๋ ์๋ค.
- ๊ทธ๋์ ์ด๋ฐ ๊ฒฝ์ฐ๋ ์์ consumer์ ์๋ฃ๋ฅผ ๋ณด์ฅํ๊ธฐ ์ํด ๋ฉ์์ง๋ฅผ ๋ฐ์๋ค๋ ํ์๋ฅผ consumer๊ฐ ๋ฉ์์ง ๋ธ๋ก์ปค์๊ฒ ์ ์กํ๋ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ ธ๊ฐ ์๋ ์๋ค.
- ๋ฐ๋ผ์ ์ฐ๋ฆฌ๋ ๊ฐ ์ํฉ์ ๋ง๊ฒ ํธ๋ ์ด๋์คํ๋ฅผ ๊ณ ๋ คํด์ ์ ๋ขฐ์ฑ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด์ผ ํ๋๋ฐ, ๋ํ์ ์ธ ํด๊ฒฐ์ฑ
์ ๋ค์๊ณผ ๊ฐ๋ค.
at most once
(์ต๋ ํ ๋ฒ)- ๋ฉ์์ง๋ ํ ๋ฒ๋ง ์ ์ก. ๋์ค์ ์ ์ก์ ์คํจํด์ ์ฌ๋ผ์ง ๊ฐ๋ฅ์ฑ์ด ์๋ค.
exactly once
(์ ํํ ํ ๋ฒ)- ๋ฉ์์ง๋ ์์ค๋๊ฑฐ๋ ์ค๋ณต ์์ด ์ ํํ ํ ๋ฒ๋ง ์ ๋ฌ๋๋ค.
- ๋ถ์ฐ ์์คํ
์์๋ ์ฌ๋ฌ ๊ฐ์ ๋
ธ๋๊ฐ ์กด์ฌํ๊ธฐ ๋๋ฌธ์ exactly once๋ฅผ ๋ณด์ฅํ๊ธฐ ์ํด์๋ ํ ๊ณณ์ ๋ชจ์ฌ์ ๋ฐ์ดํฐ๋ฅผ ์ค๊ณํ๋ ๊ณผ์ ์ด ํ์ํ๋ค.
- ์ด๋ฅผ ์ค๊ณํ๋ ์์คํ
์ ๋ณดํต
์ฝ๋๋ค์ดํฐ(coordinator)
๋ผ๊ณ ๋ถ๋ฅธ๋ค. - ํ์ง๋ง ๋ชจ๋ ๋ถ์ฐ ์์คํ
์์๋ ์ญ์ ๋คํธ์ํฌ ์ฅ์ ์ ์ฝ๋๋ค์ดํฐ์๋ ์ฅ์ ๊ฐ ๋ฐ์ํ ์ ์๊ธฐ ๋๋ฌธ์ ํญ์ ์กด์ฌํ๋ค๊ณ ๊ฐ์ ํ ์ ์๋ค.
- ๋ณดํต ์ด๋ฐ ๊ฒฝ์ฐ๋
ํฉ์(consensus)
๋ผ๋ ๊ณผ์ ์ ๊ฑฐ์น๊ฒ ๋๋๋ฐ ์ด๊ฑด ๋ถ์ฐ ์์คํ ์ค๊ณ์์ ์ด๋ ค์ด ๋ฌธ์ ์ค ํ๋์ด๋ค.
- ๋ณดํต ์ด๋ฐ ๊ฒฝ์ฐ๋
- ์ด๋ฅผ ์ค๊ณํ๋ ์์คํ
์ ๋ณดํต
at least once
(์ ์ด๋ ํ ๋ฒ)- ๋ฉ์์ง๋ ํ์คํ ์ ๋ฌ๋์ง๋ง ๊ฐ์ ๊ฐ์ด ์ฌ๋ฌ ๋ฒ ์ ๋ฌ๋์ด ์ค๋ณต๋ ์ ์๋ค.
- ๋ฐ๋ผ์ ์ค๋ณต ์ ๊ฑฐ๋ ํด๋ผ์ด์ธํธ์ ๋งก๊ธด๋ค.
- ๋๋ถ๋ถ์ ๋ฉ์์ง ๋ฐฐ์ก ์์คํ
์์๋ at least once๋ฅผ ์ง์ํ๋ค.
e.g. Apache Kafka
- ๋๋ถ๋ถ์ ๋ฉ์์ง ๋ฐฐ์ก ์์คํ
์์๋ at least once๋ฅผ ์ง์ํ๋ค.
- ๋ฉ์์ง ๋ฐฐ์ก ๋๊ตฌ๊ฐ ์ ๋ขฐ์ฑ์ ๋ํด ์๋ฌด๋ฐ ๋ณด์ฅ์ ํ์ง ์์ ์๋ ์๋ค.
- e.g. ์๋ฐ์คํฌ๋ฆฝํธ์ ์ํ ๋ฐ์ดํฐ ์์ง์ ์นํ์ด์ง๋ฅผ ๋ซ๋ ๊ฒ๋ง์ผ๋ก ์๋์ด ์ค์ง๋๊ธฐ ๋๋ฌธ์ ์ด๋ฒคํธ๊ฐ ์ ์ค๋ ์ ์๋ค.
- ๊ฒฐ๊ตญ ๊ฐ ์๊ตฌ์ฌํญ์ ๋ง๊ฒ ์ ์ ํ ์๋ฃจ์ ์ ์ ํํ๊ณ ๋ฐ์ดํฐ ์ค๋ณต์ ๋๋นํด์ผ ํ๋ค๋ฉด ๊ทธ์ ๋ง๊ฒ ์์คํ ์ ์ค๊ณํ๋ ๊ฒ์ด ์ค์ํ๋ค.
4-3 ์๊ณ์ด ๋ฐ์ดํฐ์ ์ต์ ํ
์คํธ๋ฆฌ๋ฐ ํ์ ๋ฉ์์ง ๋ฐฐ์ก์์๋ ๋ฉ์์ง๊ฐ ๋์ฐฉํ ๋๊น์ง์ ์๊ฐ ์ง์ฐ์ด ๋ฌธ์ ๋ค.
๋ฆ๊ฒ ๋๋ฌํ๋ ๋ฐ์ดํฐ๊ฐ ์ง๊ณ ์๋์ ๋ฏธ์น๋ ์ํฅ์ ๊ดํด ์์๋ณด์
ํ๋ก์ธ์ค ์๊ฐ๊ณผ ์ด๋ฒคํธ ์๊ฐ
ํ๋ก์ธ์ค ์๊ฐ(process time)
์ ์ค์ ์๋ฒ์์ ์ฒ๋ฆฌํ ์๊ฐ.์ด๋ฒคํธ ์๊ฐ(event time)
์ ์ด๋ฒคํธ๊ฐ ์์ฑ๋. ์ฆ, ๋ฉ์์ง๊ฐ ์์ฑ๋ ์๊ฐ์ ๋งํ๋ค.- ๋คํธ์ํฌ๋ ์์คํ ํน์ฑ ์ ํ๋ก์ธ์ค ์๊ฐ๊ณผ ์ด๋ฒคํธ ์๊ฐ์ ํฐ ์ฐจ์ด๊ฐ ์์ ์ ์๋ค.
- ๋ณดํต ๋ฐ์ดํฐ ๋ถ์์ ๋์์ด ๋๋ ๊ฒ์ ์ด๋ฒคํธ ์๊ฐ์ธ๋ฐ, ์ด ์๊ฐ ์ฐจ์ด๋ก ์ธํด์ ์ฑ๊ฐ์ ๋ฌธ์ ๋ค์ด ์กด์ฌํ๋ค.
ํ๋ก์ธ์ค ์๊ฐ์ ์ํ ๋ถํ ๊ณผ ๋ฌธ์ ์
- ์๋ฅผ ๋ค์ด ๋ชจ๋ฐ์ผ ์ฑ์ ํ๋ ์ฌ์ฉ์ ์(Active User)๋ฅผ ์ง๊ณํ๋ ์ผ์ด์ค๋ฅผ ์๊ฐํด๋ณด์.
- ์ด ๊ฒฝ์ฐ ๋ฆ๊ฒ ํด๋ผ์ด์ธํธ ์ํฉ์ ๋ฐ๋ผ ๋ฆ๊ฒ ์๋ฒ์ ๋์ฐฉํ๋ ๋ฐ์ดํฐ๊ฐ ์์ ์ ์๋ค.
- ์ฆ, ๋ฆ๊ฒ ๋์ฐฉํ๋ ๋ฐ์ดํฐ์ ์ํด ๊ณผ๊ฑฐ์ ์ง๊ณ ๊ฒฐ๊ณผ๊ฐ ๋งค์ผ ์กฐ๊ธ์ฉ ๋ฐ๋ ์ ์๋ค.
- ๋ฐ๋ผ์ ์ค์ ์ ๊ฐ๊น์ด ์ง๊ณ ๊ฒฐ๊ณผ๋ฅผ ์ป๊ธฐ ์ํด์๋ ์ด๋ฒคํธ ์๊ฐ๋ณด๋ค ๋ฉฐ์น ์ ๋ ์ง๋ ์์ ์์ ๋ฐ์ดํฐ๋ฅผ ์ง๊ณํด์ผ ํ๋ค.
์๋ ์ด๋ฏธ์ง๋ฅผ ๋ณด๋ฉด 1์ 1์ผ์ ๋๋ถ๋ถ์ ์ด๋ฒคํธ๋ ์๋ฒ์ ๋น์ผ์ ๋์ฐฉํ์ง๋ง ๊ทธ ์ด์ ์ ์์ฑ๋ ์ด๋ฒคํธ๋ ๊ฝค ๋ณด์ด๋ ๊ฑธ ๋ณผ ์ ์๋ค.
๋ฐ๋ผ์ ์ด๋ฒคํธ ์๊ฐ๊ณผ ํ๋ก์ธ์ค ์๊ฐ์๋ ์ฐจ์ด๊ฐ ์๋ค๋ ์ ์ ๊ธฐ์ตํ์.
๋ถ์ฐ ์คํ ๋ฆฌ์ง์์์ ๋ฐ์ดํฐ ๋ถ์ฐ
ํํธ, ๋ถ์ฐ ์คํ ๋ฆฌ์ง ์์์๋ ๋ฐ์ดํฐ๋ฅผ ๋ฃ๋ ๋จ๊ณ์์๋ ์ด๋ฒคํธ ์๊ฐ์ด ์๋๋ผ ํ๋ก์ธ์ค ์๊ฐ
์ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ณดํต์ด๋ค.
- ํ์ง๋ง ๋ฐ์ดํฐ ๋ถ์์ ์ด๋ฒคํธ ์๊ฐ ๊ธฐ์ค์ผ๋ก ํ๊ธฐ ๋๋ฌธ์ ์ง๊ณ ์์ ๋ฐ์ดํฐ๋ฅผ ์ ์ ํ๊ฒ ๊ฐ์ ธ์ค๋ ๊ฒ์ด ์ค์ํ๋ค.
- ๊ทธ๋ฆฌ๊ณ ์ด๋ฒคํธ ์๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ์กฐํํด์ผ๋ง ์ ์ ์์ผ๋ฏ๋ก ๊ฒฐ๊ตญ ๋ฐ์ดํฐ๋ฅผ ๋ชจ๋ ๋ก๋ํด์ผํ๋ค.
- ๋ค์์ ํ์ผ์ ๋ชจ๋ ๊ฒ์ํ๋ ํ ์ค์บ์ ์์คํ ์ ๋ถํ๋ฅผ ๋์ด๋ ์์ธ์ด๋ฏ๋ก ํ๋ ๊ฒ์ด ์ข๋ค.
๋ถ์ฐ ์คํ ๋ฆฌ์ง์ ํ ์ค์บ์ ์ด๋ป๊ฒ ํผํ ์ ์์๊น?
ํ ์ค์บ์ ํผํ ์ ์๋ ๋ฐฉ๋ฒ์ ํ ๋ฒ ์์๋ณด์.
์๊ณ์ด ์ธ๋ฑ์ค
- ์ด๋ฒคํธ ์๊ฐ์ ๊ธฐ์ค์ผ๋ก ์ธ๋ฑ์ค๋ฅผ ์์ฑํด์ ํ ์ค์บ์ ํผํ๊ณ ๋ฐ์ดํฐ๋ฅผ ํจ์จ์ ์ผ๋ก ์กฐํํ ์ ์๋ค.
- ๋ณดํต
์๊ณ์ด ์ธ๋ฑ์ค(time-series index)
๋ผ๊ณ ๋ถ๋ฅธ๋ค. - ์ธ๋ฑ์ค๋ ๋ฐ์ดํฐ ํจ์จ์ ๊ฐ์ ํ๋ ์ ํ์ ์ธ ๋ฐฉ๋ฒ์ด๋ค.
์กฐ๊ฑด์ ํธ์ฌ ๋ค์ด
- ๋ฐ์ดํฐ๋ฅผ ๋ฏธ๋ฆฌ ์ฝ๊ธฐ ์ข๊ฒ ๋ณํ(์ ๋ ฌ)ํด๋ฌ์ ์กฐํ ์กฐ๊ฑด์ ๊ณผ ํจ๊ป ์ต์ํ์ ๋ฐ์ดํฐ๋ง ์ฝ๋๋ก ํ๋ ์ต์ ํ๋ฅผ
์กฐ๊ฑด์ ํธ์ ๋ค์ด(predicate pushdown)
- ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฌํด๋๋ ๊ฑด ์ธ๋ฑ์ค์์ ์ฌ์ฉํ๋ ์กฐํ ์ต์ ํ์ ๋น์ทํ ์๋ฆฌ๋ค.
- ๋งค์ผ ํ ๋ฒ์ฉ ์๋ก ๋์ฐฉํ ๋ฐ์ดํฐ๋ฅผ ๋ฐฐ์น ์ฒ๋ฆฌ๋ก ์ฝ๊ธฐ ์ข๊ฒ ๋ณํํ๋ค.
- ์ ์ด๋ฏธ์ง๋ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฌํ ํ ์ด ์งํฅ ์คํ ๋ฆฌ์ง๋ก ๋ณํํ๋ ๋ชจ์ต์ด๋ค.
- ๋จ, ๋น๋ฒํ ์ฐ๊ธฐ๋ ์ต์ ํ์ ํจ๊ณผ๋ฅผ ๋ฎ์ถ๋ค๋ ์ฌ์ค์ ๊ธฐ์ตํ์.
- ์๊ตฌ์ฌํญ์ ๋ง๊ฒ ๋ฐ์ดํฐ ๋ฐฐ์น ์ฒ๋ฆฌ ์ฃผ๊ธฐ๋ฅผ ์ ์ ํ๊ฒ ์ค์ ํด์ผ ํ๋ค.
- ๋ํ ์ด๋ฒคํธ ์๊ฐ ๊ธฐ์ค์ ์๊ฒ ๋ถ์ฐํ๋ ๊ฒ๋ ๋ฐ์ดํฐ ๋ก๋๊ฐ ๋น๋ฒํด์ง๋ฏ๋ก ํจ์จ์ด ์ ์ข์์ง ์ ์๋ค.
- ๋ฐ๋ผ์ ์ด ์งํฅ ์คํ ๋ฆฌ์ง์ ๊ฒฝ์ฐ ์งง์ ์ฃผ๊ธฐ๋ก ๋ง๋๋ ๊ฒ์ ์ข์ง ์๋ค.
์ด๋ฒคํธ ์๊ฐ์ ์ํ ๋ถํ
- ์ด๋ฒคํธ ์๊ฐ์ ์ด์ฉํด์ ํ
์ด๋ธ ํํฐ์
๋์ ํด๋ณผ ์๋ ์๋ค.
- ์ด๋ ๊ฒ ๋ถํ ๋ ํ
์ด๋ธ์
์๊ณ์ด ํ ์ด๋ธ(time-series table)
์ด๋ผ ํ๋ค. - ์๊ณ์ด ํ ์ด๋ธ์ ์ด์ฉํ๋ฉด ์์ ๊ฐ์ ๋ชจ์ต์ด ๋๋ค.
- ์ด๋ ๊ฒ ๋ถํ ๋ ํ
์ด๋ธ์
๋ฐ์ดํฐ ๋งํธ๋ฅผ ์ด๋ฒคํธ ์๊ฐ์ผ๋ก ์ ๋ ฌํ๊ธฐ
- ์ด๋ฒคํธ ์๊ฐ์ผ๋ก ์ ๋ ฌ๋ ๋ฐ์ดํฐ ๋งํธ๋ฅผ ๋ง๋ค์ด์ ์ง๊ณ ์์ ์ ํจ์จํ ํ ์๋ ์๋ค.
4-4 ๋น๊ตฌ์กฐํ ๋ฐ์ดํฐ์ ๋ถ์ฐ ์คํ ๋ฆฌ์ง
NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ํ์ฉํ๋ฉด ๋ฐ์ดํฐ๋ฅผ ๋จ์ํ ๋ชจ์์ ์ ์ฅํ ๋ฟ๋ง ์๋๋ผ ์ ํ๋ฆฌ์ผ์ด์ ์์ ์จ๋ผ์ธ์ผ๋ก ์ด์ฉํ๊ฑฐ๋ ์ค์๊ฐ์ผ๋ก ์ง๊ณํ ์๋ ์๋ค.
NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ช ๊ฐ์ง ํน์ง์ ์์๋ณด์.
- ๋น ๋ฐ์ดํฐ๋ฅผ ์ํ ๋ถ์ฐ ์คํ ๋ฆฌ์ง์๋ ํ์ฅ์ฑ๊ณผ ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์กฐํํ์ง ์๊ณ ๋ ์ ์ฅํ ์ ์๋ ์ ์ฐ์ฑ์ด ์๊ตฌ๋๋ค.
- ๊ทธ ์ค ๊ธฐ๋ณธ์ด ๋๋ ๊ฐ์ฒด ์คํ ๋ฆฌ์ง๋ ์์์ ํ์ผ์ ์ ์ฅํ ์ ์๋ค๋ ์ฅ์ ์ด ์์ง๋ง ๋จ์ ๋ ๋ง๋ค.
๊ฐ์ฒด ์คํ ๋ฆฌ์ง๋ ๋ฐ์ดํฐ๋ฅผ ์์๋ก ๋ณ๊ฒฝํ๋ ์ฉ๋๋ก๋ ์ ํฉํ์ง ์๋ค.
- ํ์ผ์ ์จ๋ฃ์ผ๋ฉด ํต์งธ๋ก ๊ต์ฒดํด์ผํ๊ธฐ ๋๋ฌธ์ ํ์ผ์ ๊ต์ฒดํ๊ธฐ ์ด๋ ต๋ค.
- ์ฆ, ์ฐ๊ธฐ ๋น๋๊ฐ ๋ฎ์ ์๊ตฌ์ฌํญ์ ์ ํฉํ๋ค.
- ๊ทธ๋์ ์ฐ๊ธฐ ๋น๋๊ฐ ๋์ ๋ฐ์ดํฐ๋ ๋ณ๋ RDB์ ์ ์ฅํ๊ณ ์ ๊ธฐ์ ์ผ๋ก ์ค๋ ์ท์ ํ๊ฑฐ๋ ๋ค๋ฅธ ๋ถ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅํ๋ค.
- ๋ณดํต ์ค์ํ ๋ฐ์ดํฐ๋ ํธ๋์ญ์
์ฒ๋ฆฌ์ ๋ํด ๊ณ ๋ ค๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ธฐ๋กํ๋ ๊ฒ์ด ์์น์ธ๋ฐ, ์คํธ๋ฆฌ๋ฐ ํ์ ๋ฉ์์ง ๋ฐฐ์ก ๋ฑ์ ํธ๋์ญ์
์ฒ๋ฆฌ๊ฐ ๋ณด์ฅ๋์ง ์๋๋ค.
- ์ผ๋ฐ์ ์ธ RDB๋ผ๋ ์ถฉ๋ถํ ์ฐ๊ธฐ ์ฑ๋ฅ์ ์ป์ ์ ์์ง๋ง, ๋ถ์ถฉ๋ถํ ๊ฒฝ์ฐ ๋ถ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ณ ๋ คํด๋ณด๋ ๊ฒ๋ ์ข๋ค.
- ๋ํ ๊ฐ์ฒด ์คํ ๋ฆฌ์ง๋ ์ฐ๊ธฐ ์์
์ด ์ค๋ ๊ฑธ๋ ค์ ๋ฐ์ดํฐ๋ฅผ ์ง๊ณํ ์ ์๊ฒ ๋๊ธฐ๊น์ง ์๊ฐ์ด ์์๋๋ค.
- ์ค์๊ฐ ์ง๊ณ์ ๊ฒ์์ด ํ์ํ๋ค๋ฉด ๋ค๋ฅธ ์ ํฉํ ๋ฐ์ดํฐ ์ ์ฅ์ ๊ณ ๋ ค๊ฐ ํ์ํ๋ค.
์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ํน์ ์ฉ๋์ ์ต์ ํ๋ NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ค์ด ๋ฑ์ฅํ๋ค.
- e.g. ๋ถ์ฐ KVS, ์์ด๋ ์นผ๋ผ ์คํ ์ด, ๋ํ๋จผํธ ์คํ ์ด, ๊ฒ์ ์์ง
๋ถ์ฐ KVS
๋ถ์ฐ KVS(distributed Key-Value Store)
๋ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ํค๊ฐ ์์ผ๋ก ์ ์ฅํ๋๋ก ์ค๊ณ๋ ๋ฐ์ดํฐ ์ ์ฅ์์ด๋ค.
- ๊ฐ์ฒด ์คํ ๋ฆฌ์ง๋ ๋์ ์๋ฏธ์์ ๋ถ์ฐ KVS์ ์ผ์ข
์ด์ง๋ง, ์ฌ๊ธฐ์๋ ์ข ๋ ์์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ํ๋ค.
- e.g. ๋ช KB ์ ๋์ ๋ฐ์ดํฐ๋ฅผ ์ด๋น ์๋ง ๋ฒ ์ฝ๊ณ ์ฐ๋ ๊ฒฝ์ฐ
- ๋ถ์ฐ KVS๋ ๊ตฌํ์ด ๋ค์ํ๋ฐ ๋ณดํต ํ failover๋ฅผ ์ํ ๊ตฌ์กฐ๋ค์ด ์ค๊ณ์ ํฌํจ๋์ด ์๋ค.
Amazon DynamoDB
- DynamoDB๋ ํญ์ ์์ ๋ ์ฝ๊ธฐ ์ฐ๊ธฐ ์ฑ๋ฅ์ ์ ๊ณตํ๋๋ก ๋์์ธ๋ ๋ถ์ฐํ NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ค.
- ํ๋ ๋๋ ๋ ๊ฐ์ ํค์ ์ฐ๊ฒฐํ๋ ํํ๋ก ์์์ ์คํค๋ง๋ฆฌ์ค ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์๊ฒ ๊ตฌ์ฑ๋์ด ์๋ค.
- JSON๊ณผ ๊ฐ์ด ์ค์ฒฉ๋ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ ์ทจ๊ธํ ์ ์์ด์ ๊ฐ๋จํ ๋ถ์ฐ KVS๋ผ๊ธฐ๋ณด๋ค๋ ๋ํ๋จผํธ ์คํ ์ด๋ก๋ ์ฌ์ฉ๋ ์ ์๋ค.
- DynamoDB๋ P2P ํ ๋ถ์ฐ ์ํคํ
์ฒ๋ก ๊ตฌ์ฑ๋์ด์๋ค.
- ๋ฏธ๋ฆฌ ์ค์ ํ ์ด ๋จ์์ ์์ฒญ ์์ ๋ฐ๋ผ auto scaling์ด ๊ฐ๋ฅํด์ ์ฝ๊ธฐ ๋ฐ ์ฐ๊ธฐ์ ์ง์ฐ์ด ๋ฐ์ํ๋ฉด ๊ณค๋ํ application์ ์ ์ฉํ๋ค.
- DynamoDB๋ ๋ค๋ฅธ AWS ๋ถ์ ์๋น์ค์ ํธํ์ด ์ฝ๋ค.
- Amazon EMR, Amazon Redshift ๋ฑ๊ณผ ๊ฒฐํฉํด์ Hive์ ์ํ ๋ฐฐ์น ์ฒ๋ฆฌ๋ฅผ ์คํํ๊ฑฐ๋ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ์ ์๋ค.
DynamoDB Streams
๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฐ์ดํฐ ๋ณ๊ฒฝ์ ์ด๋ฒคํธ๋ก ์ธ๋ถ์ ์ ์กํด ์ค์๊ฐ ์คํธ๋ฆผ ์ฒ๋ฆฌ๋ฅผ ํ ์๋ ์๋ค.Kinesis Stream
์ด๋ผ๋ ์๋น์ค๋ ์๋๋ฐ ์ด๊ฑด ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์๋๊ณ ๋จ์ ๋ฉ์์ง ๋ธ๋ก์ปค์ด๋ค.
์์ด๋ ์นผ๋ผ ์คํ ์ด
์์ด๋ ์นผ๋ผ ์คํ ์ด(wide-column store)
๋ ๋ถ์ฐ KVS๋ฅผ ๋ฐ์ ์์ผ 2๊ฐ ์ด์์ ์์์ ํค์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์๋๋ก ํ ๊ฒ์ด๋ค.
- e.g. Google Cloud Bigtable, Apache HBase, Apache Cassandra
- ์์ด๋ ์นผ๋ผ ์คํ ์ด์์๋ ๋ด๋ถ์ ์ผ๋ก ํ ํค์ ์นผ๋ผ ๋ช
์ ์กฐํฉ์ ๋ํด ๊ฐ์ ์ ์ฅํ๋ค.
- ํ ์ด๋ธ์ ์๋ก์ด ํ์ ์ถ๊ฐํ๋ ๊ฒ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ์นผ๋ผ๋ ์ผ๋ง๋ ์ง ์ถ๊ฐํ ์ ์๋ค.
- ์์ด๋ ์นผ๋ผ ์คํ ์ด๋ ํ๋์ ํ ์ด๋ธ์ ๊ฐ๋ก์ ์ธ๋ก์ 2์ฐจ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ค๋ ์ ์ด ํน์ง์ด๋ค.
Apache Cassandra
- ์ํ์น ์นด์ฐ๋๋ผ๋ ๋ด๋ถ์ ์ธ ๋ฐ์ดํฐ ์ ์ฅ์๋ก ์์ด๋ ์นผ๋ผ ์คํ ์ด๋ฅผ ์ด์ฉํ๋ฉด์๋
CQL
์ด๋ผ ๋ถ๋ฆฌ๋ ๋์ ์์ค์ ์ฟผ๋ฆฌ ์ธ์ด๊ฐ ๊ตฌํ๋์ด ์๋ค.- CQL์ SQL๊ณผ ๋น์ทํด์ ์ฌ์ฉ์ฑ์ด ์ข๋ค.
- ๋ค์์ CQL ์ฟผ๋ฆฌ์ ์์์ด๋ค.
- ํ
์ด๋ธ์ ๋ง๋๋ ๊ฒ์์ ๋์น ์ฑ ์ฌ๋๋ ์๊ฒ ์ง๋ง
๊ตฌ์กฐํ๋ ๋ฐ์ดํฐ
๋ง ์ทจ๊ธํ ์ ์๋ค.- ์นด์ฐ๋๋ผ์ INSERT๋ upsert(insert or update)๋ก ๋์ํด ๋์ผํ ํค๋ฅผ ๊ฐ์ง ๋ ์ฝ๋๊ฐ ์กด์ฌํ๋ฉด ๋ฎ์ด์ฐ๋ ํน์ง์ด ์๋ค.
- P2P ํ์ ๋ถ์ฐ ์ํคํ
์ฒ๋ฅผ ๊ฐ๊ณ ์๋ค.
- ์ง์ ํ ํค์ ์ํด์ ๊ฒฐ์ ํ ๋ ธ๋์๋ ํด๋น ํค์ ๊ด๋ จ๋ ๋ชจ๋ ๊ฐ์ ์ ์ฅํ๋ค.
- ๋ฐ๋ผ์ ๋ค์์ ๋ ๋ฆฝ์ ์ธ ํค๊ฐ ์๋ ๊ฒฝ์ฐ์ ์ฒ๋ฆฌ๋ฅผ ์ ๋ถ์ฐํ ์ ์๋ค.
- ์์ด๋ ์นผ๋ผ ์คํ ์ด๋ ๋ฐ์ดํฐ๋ฅผ ์ง๊ณํ๋ ๊ฒ์๋ ์ ํฉํ์ง ์๋ค.
- ์ง๊ณ๋ฅผ ์ํด์๋ ๋ถ์ฐ๋ ๋ชจ๋ ๋ ธ๋์์ ๋ฐ์ดํฐ๋ฅผ ๋ชจ์์ผ ํ๊ธฐ ๋๋ฌธ.
- Hive, Presto ๊ทธ๋ฆฌ๊ณ Spark ๋ฑ์ ์ฟผ๋ฆฌ ์์ง์ ๋ชจ๋ ์นด์ฐ๋๋ผ๋ก ๋ถํฐ์ ๋ฐ์ดํฐ ๋ก๋์ ๋์ํ๊ณ ์์ผ๋ฉฐ ๋ฐ์ดํฐ ๋ถ์์ ์ํด ์ฟผ๋ฆฌ ์์ง์ ์ฌ์ฉํด์ผ ํ๋ค.
๋ํ๋จผํธ ์คํ ์ด
- ์์ด๋ ์นผ๋ผ ์คํ ์ด๊ฐ ์ฃผ๋ก
์ฑ๋ฅ ํฅ์
์ ๋ชฉํ๋ก ํ๋ ๋ฐ๋ฉด,๋ํ๋จผํธ ์คํ ์ด(document store)
๋๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์ ์ฐ์ฑ
์ ๋ชฉ์ ์ผ๋ก ํ๋ค.- ๊ตฌ์ฒด์ ์ผ๋ก๋ JSON์ฒ๋ผ ๋ณต์กํ๊ฒ ๋ค์ฝํ ์คํค๋ง๋ฆฌ์ค ๋ฐ์ดํฐ๋ฅผ ๊ทธ๋๋ก์ ํํ๋ก ์ ์ฅํ๊ณ ์ฟผ๋ฆฌ๋ฅผ ์คํํ ์ ์์ ์ ๋๋ก ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์ ์ฐํ๋ค
- ๊ฐ๋จํ ๋ถ์ฐ KVS๋ JSON ํ ์คํธ๋ฅผ ์ ์ฅํ ์ ์์ง๋ง ๋ณต์กํ ์ฟผ๋ฆฌ๋ฅผ ํ ์ ์๋ค๊ณ ๋งํ ์๋ ์๋ค.
- ๋ํ๋จผํธ ์คํ ์ด๋ ๋ฐฐ์ด๊ณผ ์ฐ์ ๋ฐฐ์ด(Map) ๊ฐ์ด ์ค์ฒฉ๋ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ๋ํด ์ธ๋ฑ์ค๋ฅผ ๋ง๋ค๊ฑฐ๋ ๋ํ๋จผํธ ์ผ๋ถ๋ง์ ์นํํ๋ ์์ ์ฟผ๋ฆฌ๋ฅผ ์ฝ๊ฒ ์คํํ ์ ์๋ค.
์ฅ์
- ์คํค๋ง๋ฅผ ์ ์ํ์ง ์๊ณ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ ์ ์๋ค. (schema less, ์ ์ฐ์ฑ)
- ์ธ๋ถ์์ ๋ค์ฌ์จ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๋ฐ ํนํ ์ ํฉํจ
- ์์ฒด ๊ฐ๋ฐํ ์ ํ๋ฆฌ์ผ์ด์ ๋ฑ์์๋ ๋ช ์์ ์ผ๋ก ์คํค๋ง๋ฅผ ์ ํ๋ ํธ์ด ์ข์ ์ ๋ ๋ง์ผ๋ฏ๋ก ๋ํ๋จผํธ ์คํ ์ด๋ ์ฃผ๋ก ์ฐธ๊ณ ์์คํ ์ ๋ฐ์ดํฐ ๋ฐ ๋ก๊ทธ ์ ์ฅ ๋ฑ์ ์ ํฉํจ.
- ์คํค๋ง๋ฅผ ์ ์ํ์ง ์๊ณ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ ์ ์๋ค. (schema less, ์ ์ฐ์ฑ)
MongoDB
- ๋ชฝ๊ณ ๋๋น๋ ์คํ ์์ค ๋ถ์ฐํ ๋ํ๋จผํธ ์คํ ์ด์ด๋ค.
- ์ ๋ขฐ์ฑ์ ํฌ์ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ง๋ง ๊ฐํธํจ ๋๋ฌธ์ธ์ง ์ธ๊ธฐ๊ฐ ์ข๋ค.
- ๋ชฝ๊ณ ๋๋น๋ ์ฌ๋ฌ ๋
ธ๋์ ๋ฐ์ดํฐ๋ฅผ ๋ถ์ฐํ ์ ์์ง๋ง, ๋๋์ ๋ฐ์ดํฐ๋ฅผ ์ง๊ณํ๋ ๋ฐ ์ ํฉํ์ง ์๋ค.
- ๋ฐ์ดํฐ ๋ถ์์ด ๋ชฉ์ ์ธ ๊ฒฝ์ฐ์๋ ์ญ์ ์ฟผ๋ฆฌ ์์ง์ด ํ์ํ๋ค.
๊ฒ์ ์์ง
๊ฒ์ ์์ง(serch engine)
์ ํ ์คํธ ๋ฐ์ดํฐ ๋ฐ ์คํค๋ง๋ฆฌ์ค ๋ฐ์ดํฐ๋ฅผ ์ง๊ณํ๋ ๋ฐ ์์ฃผ ์ฌ์ฉ๋๋ค.- ํ
์คํธ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌธ ๊ฒ์ํ๊ธฐ ์ํด
์ญ ์์ธ(index)
์ ๋ง๋๋ ํน์ง์ด ์๋ค.- ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋กํ๋ ์์คํ ๋ถํ ๋ฐ ๋์คํฌ ์๋น๋์ ์ปค์ง์ง๋ง ํค์๋ ๊ฒ์์ด ํจ์ฌ ๊ณ ์ํ๋๋ค.
- ๋๋ถ๋ถ์ NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์ฑ๋ฅ ํฅ์์ ์ํด ์์ธ ์์ฑ์ ์ ํํ๊ณ ์๋ ๊ฒ๊ณผ๋ ๋ค๋ฅด๊ฒ ๊ฒ์ ์์ง์ ์ ๊ทน์ ์ผ๋ก ์์ธ์ ๋ง๋ค์ด ๋ฐ์ดํฐ๋ฅผ ์ฐพ๋ ๊ฒ์ ํนํ๋์ด ์๋ค.
- fyi; ์์ธ(index)๋ ๋ฐ์ดํฐ ์ฐ๊ธฐ ์์ ์ฌ๊ตฌ์ฑ์ด ํ์ํ๋ฏ๋ก ์ฑ๋ฅ์ด ์ ํ๋๋ค.
- ๊ฒ์ ์์ง์ ๋ฐ์ดํฐ์ ์ง๊ณ์ ์ ํฉํ๋ค.
- ํนํ ๋น์ ์์ ์ธ ์ํ์ ๊ฐ์ง ๋ฐ ๋ณด์ ์ฒดํฌ, ๊ณ ๊ฐ ์ํฌํธ์ฒ๋ผ ๋ฏผ์ฒฉ์ฑ์ด ์๊ตฌ๋๋ ์ฉ๋์์ ์ต์ ๋ฐ์ดํฐ๋ฅผ ๋ณด๊ธฐ ์ํด ์ฌ์ฉ๋๋ค.
- ๊ฒ์ ์์ง์ ์ฅ๊ธฐ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ถ์ ํ๊ธฐ๋ณด๋ค๋ ์ค์๊ฐ ์ง๊ณ ์์คํ
์ ์ผ๋ถ๋ก ์ด์ฉ๋๋ค.
- e.g. ๋ฉ์์ง ๋ธ๋ก์ปค๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ ๋ฐ์ดํฐ๋ฅผ ๋ถ์ฐ ์คํ ๋ฆฌ์ง์ ๋ฐ๋ก ์ ์ฅํ๊ณ ๊ฒ์ ์์ง์๋ ์ ์กํ์ฌ ์ค์๊ฐ์ฑ์ด ๋์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ฅผ ์ํด ํ์ฉํ๋ค.
- ๋ํ์ ์ผ๋ก Elasticsearch, Splunk, Apache Solr๊ฐ ์๋ค.
Elasticsearch
์ง๊ธ ๊ธฐ์ค์ผ๋ก ์๋ผ์คํฑ์์น๋ ์คํ ์์ค ๊ฒ์ ์์ง ์ค ๊ฐ์ฅ ์ธ๊ธฐ์๋ค.
๋ณดํต ELK ์คํ
ํน์ Elastic ์คํ
์ด๋ผ๊ณ ๋ถ๋ฆฌ๋ ๋ก๊ทธ ์์ง ์ํํธ์จ์ด Logstash
, ์๊ฐํ ์ํํธ์จ์ด Kibana
์ ํจ๊ป ์ฌ์ฉ๋๋ค.
- ์๋ผ์คํฑ์์น๋ ์์์ JSON ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์๋ค.
- ์๋ฌด๊ฒ๋ ์ง์ ํ์ง ์์ผ๋ฉด ๋ชจ๋ ํ๋์ ์์ธ์ด ๋ง๋ค์ด์ง๋ค.
- ํ์์ ๋ฐ๋ผ ์คํค๋ง๋ฅผ ๊ฒฐ์ ํด์ ์์ธ์ ๋ฌดํจํํ๋ ์์ ํ๋์ด ํ์ํ๋ค.
- ๋๋ถ๋ถ์ ๊ฒ์ ์์ง์์ ์ด๋ฐ ์ต์ ์ ์ง์ํ๋ค e.g. solr
- ํ ์คํธ ๋ฐ์ดํฐ์์๋ ์ญ ์์ธ์ด ๊ตฌ์ถ๋๋ค.
- ์์ธ์ด ์์ฑ๋๊ธฐ ๋๋ฌธ์ ๊ฐ๋จํ ๋ํ๋จผํธ ์คํ ์ด๋ณด๋ค ๋น๊ต์ ์ฐ๊ธฐ ๋ถํ๊ฐ ํฌ๋ค
- ์์ฒด ์ฟผ๋ฆฌ ์ธ์ด๋ฅผ ํตํด ๊ณ ๊ธ ์ง๊ณ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค.
- ์ด ์งํฅ ์คํ ๋ฆฌ์ง์๋ ๋์ํ๊ณ ์์ด ๊ทธ๊ฒ๋ง์ผ๋ก๋ ๋ฐ์ดํฐ๋ฅผ ์ง๊ณํ๊ธฐ ์ํ ๊ธฐ๋ฐ์ด ๋๋ค.
- SQL๊ณผ๋ ์กฐ๊ธ ๋ฌ๋ผ์ ์ฌ๋์ด ์ง์ ์์ฑํ๊ธฐ์๋ ๋ณต์กํ ์ ์๋ค. ๊ทธ๋์ Kibana์ ๊ฐ์ ์ธํฐํ์ด์ค๋ ํ๋ก๊ทธ๋จ ์์์ ํธ์ถํ๋ ์์ผ๋ก ์ฌ์ฉํ๋ค.
ํด๋ผ์ด์ธํธ์ ์๊ณ๊ฐ ๊ณ ์ฅ๋ฌ์ ์ ์๋ค
- ๋ฐ์ดํฐ๋ฅผ ํ์ธํด๋ณด๋ฉด ๊ฐ๋ 1% ๋ฏธ๋ง์ ๋ฐ์ดํฐ์ ์ด๋ฒคํธ ์๊ฐ์ด ๊ณผ๊ฑฐ์์ ๋ฏธ๋๋ก ๋๋ฆฌ ๋ถํฌํ๊ณ ์๋๋ฐ ์ด๋ ํด๋ผ์ด์ธํธ์ ์๊ณ์ ๋ฌธ์ ๊ฐ ์๊ธฐ ๋๋ฌธ์ด๋ค.
- ์ด๋ฐ ๋ฐ์ดํฐ์ ๋ถํฌ๊ฐ ๋์ผ๋ฉด ๋ถ์ฐ ์คํ ๋ฆฌ์ง์ ๋๋์ ์์ ํ์ผ์ด ์์ฑ๋๊ณ ๊ทธ ํ์ผ์ ์ฝ๊ณ ์ฐ๋ ๊ฒ์ ์ํด์ ์ฑ๋ฅ์ด ์ ํ๋๋ค.
- ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ๋ฏธ๋ฆฌ ๋ฐฉ์งํ๊ธฐ ์ํด ๋จผ ๊ณผ๊ฑฐ๋ ๋ฏธ๋์ ์๊ฐ์ ํฌํจํ ๋ฐ์ดํฐ๋ ๊ทธ๊ฒ์ ๋ถ์ฐ ์คํ ๋ฆฌ์ง์ ๋ฃ๊ธฐ ์ ์ ์ ๊ฑฐํ๋ ๊ฒ์ด ์ข๋ค.
์์ฝ
๋ฐ์ดํฐ๋ฅผ ๋ชจ์์ ๋ถ์ฐ ์คํ ๋ฆฌ์ง์ ์ ์ฅํ๊ธฐ๊น์ง ๋ฐ์ดํฐ ์์ง์ ํ๋ฆ์ ๋ํด ์์๋ดค๋ค ์ด๋ฅผ ํค์๋๋ก ์์ฝํด๋ณด์
- ๋ฐ์ดํฐ ์ ์ก
- ๋ฒํฌ ํ
- ์คํธ๋ฆฌ๋ฐ ํ
- ๋ฉ์์ง ๋ฐฐ์ก ๋ฐฉ์๊ณผ ํธ๋ ์ด๋์คํ
- ๋ฉ์์ง ๋ธ๋ก์ปค
- producer
- consumer
- ๋ฉ์์ง ๋ฐฐ์ก์ ์ ๋ขฐ์ฑ ๋ฌธ์ ์ ํด๊ฒฐ ๋ฐฉ์
- most once
- exactly once
- at least once
- ๋ฉ์์ง ๋ธ๋ก์ปค
- ๋ฐ์ดํฐ ์์ธ์ ํตํ ์ต์ ํ
- ์๊ณ์ด ์ธ๋ฑ์ค
- ๋ฐ์ดํฐ ๋ฏธ๋ฆฌ ์ ๋ ฌํด๋๊ธฐ(์กฐ๊ฑด์ ํธ์ฌ ๋ค์ด)
- ๋ฐ์ดํฐ ๋งํธ ๊ตฌ์กฐ ํ์ฉํ๊ธฐ
- NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฑ ๋ถ์ฐ ์คํ ๋ฆฌ์ง
- ๋ถ์ฐ KVS
- ์์ด๋ ์นผ๋ผ ์คํ ์ด
- ๋ํ๋จผํธ ์คํ ์ด
- ๊ฒ์ ์์ง
์ถ์ฒ
https://www.yes24.com/Product/Goods/66277191
- Total
- Today
- Yesterday
- ํ(Heap)
- HTTP
- ํด์
- ์คํ/ํ
- ํธ๋์ญ์ ๊ฒฉ๋ฆฌ ์์ค
- ์ข์ ๊ฐ๋ฐ์
- ์ถ์ ์ง๋
- ํ๋ก๊ทธ๋๋จธ์ค
- rate limit
- Go
- golang oomkilled
- Aws Reinvent 2023
- grpc client
- mysql ์คํ ๊ณํ
- ์ฅ์ ํ๊ณ
- ๋ฑ ํฌ์๋ฌ๋ ๊ฐ๋ฐ์
- ๋ฐฑ์ค
- 2023 ํ๊ณ
- 2023 ๊ฐ๋ฐ์ ํ๊ณ
- ์ฝ๋ฉํ ์คํธ
- Golang
- ๊น์ด/๋๋น ์ฐ์ ํ์(DFS/BFS)
- ์๊ณ ๋ฆฌ์ฆ
- ์ข์ ๊ฐ๋ฐ์ ๋๊ธฐ
- mysql
- kotlin s3 upload
- ์ข์ ์์ง๋์ด
- ์ข์ ์ฝ๋๋ ๋ฌด์์ธ๊ฐ?
- 2๋ ์ฐจ ์๋ฒ ๊ฐ๋ฐ์
- AWS re:Invent 2023
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |