์ด ํ์ด์ง์์๋ PostgreSQL์ฉ Cloud SQL์์ ์ ๊ณตํ๋ ์์ฑํ AI ์ ํ๋ฆฌ์ผ์ด์ ์ ๋น๋ํ๋ ๋ฐ ๋์์ด ๋๋ ๊ธฐ๋ฅ์ ๊ฐ๋ตํ๊ฒ ์ค๋ช ํฉ๋๋ค. ์ํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ํ๋ ค๋ฉด ์์ฑํ AI ์ ํ๋ฆฌ์ผ์ด์ ์ฉ Cloud SQL ์ฌ์ฉ ์์ํ๊ธฐ๋ฅผ ์ฐธ์กฐํ์ธ์.
๊ฒ์ ์ฆ๊ฐ ์์ฑ(RAG)์ ์๋ต์ ์์ฑํ๊ธฐ ์ ์ ์ ๋ขฐํ ์ ์๋ ๊ธฐ์ ์๋ฃ๋ฅผ ์ฐธ์กฐํ์ฌ ๋๊ท๋ชจ ์ธ์ด ๋ชจ๋ธ(LLM) ์ถ๋ ฅ์ ์ต์ ํํ๋ ๊ธฐ์ ์ ๋๋ค. RAG๋ ์ ํ์ฑ์ ํฅ์์์ผ ์์ฑํ AI ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐํํฉ๋๋ค. Cloud SQL ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ด ํ์ด์ง์ ์ค๋ช ๋๋ก RAG ๋ฐ ์์ฑํ AI ์ ํ๋ฆฌ์ผ์ด์ ์ฉ์ผ๋ก ์ ๋ณ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
๋ฒกํฐ ์๋ฒ ๋ฉ ์์ฑ
๋ฒกํฐ ์๋ฒ ๋ฉ์ ์๋งจํฑ ์ดํด์ ํจ์จ์ ์ธ ์ ์ฌ์ฑ ๊ฒ์์ ์ฌ์ฉ ์ค์ ํ๋ฏ๋ก RAG์ ํ์์ ์ ๋๋ค. ์ด๋ฌํ ์๋ฒ ๋ฉ์ ํ ์คํธ, ์ด๋ฏธ์ง, ์ค๋์ค, ๋์์์ ์ซ์ ํํ์ ๋๋ค. ์๋ฒ ๋ฉ ๋ชจ๋ธ์ ๋ฒกํฐ ์๋ฒ ๋ฉ์ ์์ฑํ๋ฏ๋ก ์ฝํ ์ธ 2๊ฐ๊ฐ ์๋ฏธ๋ก ์ ์ผ๋ก ์ ์ฌํ๋ฉด ํด๋น ์๋ฒ ๋ฉ์ด ์๋ฒ ๋ฉ ๋ฒกํฐ ๊ณต๊ฐ์์ ์๋ก ๊ฐ๊น๊ฒ ๋ฐฐ์น๋ฉ๋๋ค.
Cloud SQL์ Vertex AI์ ํตํฉ๋ฉ๋๋ค. Vertex AI์์ ํธ์คํ ํ๋ ๋ชจ๋ธ์ ์ฌ์ฉํ์ฌ SQL ์ฟผ๋ฆฌ๋ฅผ ํตํด ๋ฒกํฐ ์๋ฒ ๋ฉ์ ์์ฑํ ์ ์์ต๋๋ค.
Cloud SQL์ ํ ์คํธ ๋ฒกํฐ ์๋ฒ ๋ฉ ์์ฑ์ ์ํ ์๋ฒ ๋ฉ ํจ์๋ฅผ ์ฌ์ฉํ์ฌ PostgreSQL ๊ตฌ๋ฌธ์ ํ์ฅํฉ๋๋ค. ์ด๋ฌํ ์๋ฒ ๋ฉ์ ์์ฑํ๋ฉด ๋ณ๋์ ๋ฒกํฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์์ด๋ Cloud SQL ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅํ ์ ์์ต๋๋ค.
Cloud SQL์ ์ฌ์ฉํ์ฌ Cloud SQL ์ธ๋ถ์์ ์์ฑ๋ ๋ฒกํฐ ์๋ฒ ๋ฉ์ ์ ์ฅํ ์๋ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด Vertex AI Model Garden์์ ์ ํ ํ์ต๋ ๋ชจ๋ธ์ ํตํด ์์ฑ๋ ๋ฒกํฐ ์๋ฒ ๋ฉ์ ์ ์ฅํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋ฒกํฐ ์๋ฒ ๋ฉ์ ์ ์ฌ์ฑ ๋ฐ ์๋งจํฑ ๊ฒ์์ ์ํ pgvector
ํจ์์ ๋ํ ์
๋ ฅ์ผ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค.
pgvector
๋ฅผ ์ฌ์ฉํ์ฌ ๋ฒกํฐ ์๋ฒ ๋ฉ ์ ์ฅ, ์์ธ ์์ฑ, ์ฟผ๋ฆฌ
pgvector
PostgreSQL ํ์ฅ ํ๋ก๊ทธ๋จ์ ์ฌ์ฉํ์ฌ Cloud SQL์์ ๋ฒกํฐ ์๋ฒ ๋ฉ์ ์ ์ฅ, ์์ธ ์์ฑ, ์ฟผ๋ฆฌํ ์ ์์ต๋๋ค.
์ด ํ์ฅ ํ๋ก๊ทธ๋จ์ ๊ตฌ์ฑํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์์ธํ ๋ด์ฉ์ PostgreSQL ํ์ฅ ํ๋ก๊ทธ๋จ ๊ตฌ์ฑ์ ์ฐธ์กฐํ์ธ์. ๋ฒกํฐ ์๋ฒ ๋ฉ ์ ์ฅ, ์์ธ ์์ฑ, ์ฟผ๋ฆฌ์ ๋ํ ์์ธํ ๋ด์ฉ์ ์์ฑ๋ ์๋ฒ ๋ฉ ์ ์ฅ ๋ฐ pgvector
๋ฅผ ์ฌ์ฉํ์ฌ ์๋ฒ ๋ฉ ์ฟผ๋ฆฌ ๋ฐ ์์ธ ์์ฑ์ ์ฐธ์กฐํ์ธ์.
SQL ์ฟผ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ์จ๋ผ์ธ ์์ธก ํธ์ถ
SQL ์ฟผ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ Vertex AI Model Garden์ ์ ์ฅ๋ ๋ชจ๋ธ์ ํตํด ์จ๋ผ์ธ ์์ธก์ ํธ์ถํ ์ ์์ต๋๋ค.
LangChain ํตํฉ ์ฌ์ฉ
Cloud SQL์ ์คํ์์ค LLM ์กฐ์ ํ๋ ์์ํฌ์ธ LangChain๊ณผ ํตํฉ๋์ด ์์ฑํ AI ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์ ๊ฐ์ํํฉ๋๋ค. ๋ค์ LangChain ํจํค์ง๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- ๋ฌธ์ ๋ก๋: ๋ฌธ์์์ ์ ๋ณด ๋ก๋ ๋ฐ ์ ์ฅ
- ๋ฒกํฐ ์คํ ์ด: LangChain์ ์ฌ์ฉํ์ฌ ์๋งจํฑ ๊ฒ์์ ์ฌ์ฉ ์ค์
- ์ฑํ ๋ฉ์์ง: ์ด์ ๋ํ๋ฅผ ๋ค์ ํธ์ถํ๋๋ก ์ฒด์ธ ์ฌ์ฉ ์ค์
๋ฒกํฐ ๊ฒ์ ์ฑ๋ฅ ๊ฐ์
๋ค์์ ์ฌ์ฉํ์ฌ ๋ฒกํฐ ๊ฒ์ ์ฑ๋ฅ์ ํฅ์์ํฌ ์ ์์ต๋๋ค.
- ๋ฐ์ดํฐ ์บ์: ๋น ๋ฅธ ๋ก์ปฌ SSD๋ฅผ ํ์ฉํ์ฌ ์์ฃผ ์ฝ๋ ๋ฐ์ดํฐ ํ์ด์ง๋ฅผ ์ ์ฅํ๋ ๊ธฐ๋ณธ ์ ๊ณต ๋ฐ์ดํฐ ์บ์๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์๊ตฌ ๋์คํฌ์์ ์ฝ๊ธฐ๋ณด๋ค ์ฝ๊ธฐ ์ฑ๋ฅ์ด ์ต๋ 3๋ฐฐ๊น์ง ํฅ์๋ ์ ์์ต๋๋ค.
๋ฐ์ดํฐ ์บ์ ์ธก์ ํญ๋ชฉ: ๋ฒกํฐ ๊ฒ์์์ ๋ฐ์ดํฐ ์บ์๋ฅผ ํจ๊ณผ์ ์ผ๋ก ์ฌ์ฉํ๋ ๋ฐฉ์์ ๊ธฐ์ค์ผ๋ก ์ฟผ๋ฆฌ๋ฅผ ์ต์ ํํฉ๋๋ค.
Cloud SQL์ Cloud Monitoring์ ์ธก์ ํญ๋ชฉ ํ์๊ธฐ์์ ๋ค์ ์ธก์ ํญ๋ชฉ์ ์ ๊ณตํฉ๋๋ค.
์ธก์ ํญ๋ชฉ ์ค๋ช ์ธก์ ํญ๋ชฉ ๋ผ๋ฒจ ์ฌ์ฉ๋ ๋ฐ์ดํฐ ์บ์ ๋ฐ์ดํฐ ์บ์ ์ฌ์ฉ๋(๋ฐ์ดํธ ๋จ์) database/data_cache/bytes_used
๋ฐ์ดํฐ ์บ์ ํ ๋น๋ ์ต๋ ๋ฐ์ดํฐ ์บ์ ํฌ๊ธฐ(๋ฐ์ดํธ ๋จ์) database/data_cache/quota
๋ฐ์ดํฐ ์บ์ ์ ์ค ํ์ ์ธ์คํด์ค์ ๋ํ ์ด ๋ฐ์ดํฐ ์บ์ ์ ์ค ์ฝ๊ธฐ ์์ ์ database/postgresql/data_cache/hit_count
๋ฐ์ดํฐ ์บ์ ๋ถ์ ์ค ํ์ ์ธ์คํด์ค์ ์ด ๋ฐ์ดํฐ ์บ์ ๋ถ์ ์ค ์ฝ๊ธฐ ์์ ์ database/postgresql/data_cache/miss_count
๋ฐ์ดํฐ ์บ์ ์ ์ค๋ฅ ์ธ์คํด์ค์ ๋ฐ์ดํฐ ์บ์ ๋ถ์ ์ค ์ฝ๊ธฐ ์์ ๋๋น ๋ฐ์ดํฐ ์บ์ ์ ์ค ์ฝ๊ธฐ ์์ ๋น์จ
database/postgresql/data_cache/hit_ratio
์์คํ ํต๊ณ: ์ธ์คํด์ค ์ํ๋ฅผ ๋ชจ๋ํฐ๋งํ๊ณ ์์ฑํ AI ์ ํ๋ฆฌ์ผ์ด์ ์ฑ๋ฅ์ ์ํฅ์ ๋ฏธ์น๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ๋์์ด ๋๋๋ก CPU ์ฌ์ฉ๋ฅ , ๋์คํฌ ์ฌ์ฉ๋ฅ , ์ฒ๋ฆฌ๋๊ณผ ๊ฐ์ ์์คํ ์ธก์ ํญ๋ชฉ์ ์ ๊ณตํฉ๋๋ค. ์ด๋ฌํ ์ธก์ ํญ๋ชฉ์ ๋ณด๋ ค๋ฉด Cloud SQL ์์คํ ํต๊ณ ๋์๋ณด๋๋ฅผ ์ฌ์ฉํฉ๋๋ค.
์ฟผ๋ฆฌ ํต๊ณ: ์ฟผ๋ฆฌ ์ฑ๋ฅ ๋ฌธ์ ๋ฅผ ๊ฐ์ง, ์ง๋จ, ๋ฐฉ์งํฉ๋๋ค. ์ด๋ ์์ฑํ AI ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋ฒกํฐ ๊ฒ์ ์ฑ๋ฅ์ ํฅ์์ํค๋ ๋ฐ ์ ์ฉํฉ๋๋ค.
Cloud SQL ์ฟผ๋ฆฌ ํต๊ณ ๋์๋ณด๋๋ฅผ ์ฌ์ฉํ๋ฉด ์์ ์ฟผ๋ฆฌ ์ฑ๋ฅ์ ๊ด์ฐฐํ๊ณ ์๊ฐ์ ์ฟผ๋ฆฌ ๊ณํ์ ์ฌ์ฉํ์ฌ ์ด๋ฌํ ์ฟผ๋ฆฌ๋ฅผ ๋ถ์ํ ์ ์์ต๋๋ค. ๋ํ ์ ํ๋ฆฌ์ผ์ด์ ์์ค์์ ์ฑ๋ฅ์ ๋ชจ๋ํฐ๋งํ๊ณ SQLcommenter๋ฅผ ์ฌ์ฉํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์คํ์์ ๋ฌธ์ ๊ฐ ์๋ ์ฟผ๋ฆฌ์ ์์ค๋ฅผ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊น์ง ์ถ์ ํ ์ ์์ต๋๋ค. ์คํ์์ค ๊ฐ์ฒด ๊ด๊ณํ ๋งคํ(ORM) ์๋ ๊ณ์ธก ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋๋ค.
๋ํ ์ฟผ๋ฆฌ ํต๊ณ๋ ๊ฐ๋ฐ์๊ฐ ์ต์ํ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ์ฟผ๋ฆฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๋๋ก ๊ธฐ์กด ์ ํ๋ฆฌ์ผ์ด์ ๋ชจ๋ํฐ๋ง(APM) ๋๊ตฌ์ ํตํฉ๋ ์ ์์ต๋๋ค.
์์ฑํ AI ์ ํ๋ฆฌ์ผ์ด์ ์ฉ Cloud SQL ์ฌ์ฉ ์ ์ด์
Cloud SQL์ ์ฌ์ฉํ์ฌ ์์ฑํ AI ์ ํ๋ฆฌ์ผ์ด์ ์ ๋น๋ํ๋ฉด ๋ค์๊ณผ ๊ฐ์ ์ด์ ์ด ์์ต๋๋ค.
- PostgreSQL์ ์ฌ์ฉํ์ฌ ์์ฑํ AI ์ ํ๋ฆฌ์ผ์ด์
๋น๋. PostgreSQL์ฉ Cloud SQL์
pgvector
๋ฅผ ์ง์ํ๋ฉฐ Vertex AI ๋ฐ LangChain๊ณผ ๋ชจ๋ ํตํฉ๋ฉ๋๋ค. - ์ํฐํ๋ผ์ด์ฆ๊ธ ๋ฐ์ดํฐ ๋ณดํธ, ๋ณด์, ๊ฑฐ๋ฒ๋์ค๊ฐ ์๋ ์ ๋ขฐํ ์ ์๋ ์๋น์ค ์ฌ์ฉ. Cloud SQL์ ์ฌ์ฉํ๋ฉด ๋ค์๊ณผ ๊ฐ์ ์ด์ ์ด ์์ต๋๋ค.
- ์ ์ง๋ณด์๊ฐ ํฌํจ๋ 99.99%์ ๊ณ ๊ฐ์ฉ์ฑ SLA
- ์๋ ๋ฐฑ์ , ๋ณต์ , ํจ์น, ์ํธํ, ์คํ ๋ฆฌ์ง ์ฉ๋ ์๋ ์ฆ๊ฐ์ ๊ฐ์ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ๊ด๋ฆฌํ ์๋น์ค
- ๋ณด์, ๊ฑฐ๋ฒ๋์ค, ๊ท์ ์ค์ ๊ธฐ๋ฅ
- ์ํฉ๋ณ ์ด์ ๋ฐ์ดํฐ์ ๊ฒฐํฉ. ์ด์ ๋ฐ์ดํฐ์์ ์กฐ์ธ๊ณผ ํํฐ๋ฅผ ์ฌ์ฉํ๋ ๋์์ ๋ฒกํฐ ์๋ฒ ๋ฉ์ ์ฌ์ฉํ๋ฉด ์์ฑํ AI ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ํฉ๋ณ๋ก ์ ํํ ์ต์ ์๋ต์ ์ป์ ์ ์์ต๋๋ค.
- ์์ ๋ถ๋ด ๊ฐ์. Cloud SQL์ ๋ฒกํฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ์ฌ์ฉํ๋ฉด ๋ฐ์ดํฐ๋ฅผ ๋ณ๋์ ๋ฒกํฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ด๋ณด๋ด๋ ๋ฐ ๋๋ ์์ ์๊ณ ๊ฐ ์ค์ด๋ญ๋๋ค.
- ์ต์ ์์ฑํ AI ๋ชจ๋ธ์ ์ก์ธ์ค. SQL ์ฟผ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ Vertex AI์์ ํธ์คํ ๋๋ ์ต์ AI ๋ชจ๋ธ์ ์ก์ธ์คํฉ๋๋ค.
์์ฑํ AI ์ ํ๋ฆฌ์ผ์ด์ ์ฉ Cloud SQL ์ฌ์ฉ ์์ํ๊ธฐ
์์ฑํ AI ์ ํ๋ฆฌ์ผ์ด์ ๋น๋๋ฅผ ์์ํ๋ ค๋ฉด ์ด ์ํ ์ฑ์ ์ฌ์ฉํฉ๋๋ค. ์ด ์ฑ์ Cloud SQL, Vertex AI ๋ฐ Google Kubernetes Engine(GKE) ๋๋ Cloud Run์ ์ฌ์ฉํฉ๋๋ค. ์ฑ์ ์ฌ์ฉํ์ฌ ๋ค์๊ณผ ๊ฐ์ ๊ธฐ๋ณธ ์ฑ๋ด API๋ฅผ ๋น๋ํ ์ ์์ต๋๋ค.
- GKE ๋๋ Cloud Run์ Cloud SQL, Vertex AI,
pgvector
์ ํตํฉํฉ๋๋ค. - ๊ฐ์ ํ๋ผ์ด๋น ํด๋ผ์ฐ๋(VPC)์์ Private Service Connect๋ฅผ ์ฌ์ฉํ์ฌ Cloud SQL์ ์ฐ๊ฒฐํ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ค๋๋ค.
- Terraform์ ์ฌ์ฉํ์ฌ ์ธํ๋ผ๋ฅผ ๊ตฌ์ฑํฉ๋๋ค.
asyncpg
๋ฐFastAPI
์ ํจ๊ป Python์ ์ฌ์ฉํฉ๋๋ค.- ๋ณ๋์ Google Cloud ํ๋ก์ ํธ์ ์๋ GKE ๋๋ Cloud Run์์ ์คํ๋๋ Cloud SQL ๋ฐ ์ฑ์ ์ค์ ํ ์ ์์ต๋๋ค.
์๋ฃจ์ ์๋ ๋ค์ ์ฝํ ์ธ ๊ฐ ํฌํจ๋์ด ์์ต๋๋ค.
- ๋ณด์ ๊ถ์ฅ์ฌํญ์ผ๋ก ์ธํ๋ผ๋ฅผ ์ค์ ํ ์ ์๋ Terraform ํ ํ๋ฆฟ
- GKE ๋๋ Cloud Run์ ๋ฐฐํฌํ ์ ์๋ LLM ๊ธฐ๋ฐ ์ฑ๋ด์ฉ ์ํ ์ฑ