๐Ÿ‘‰ ScyllaDB + USearch Vector ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ์˜ ํ˜์‹ ์ ์ธ ์žฅ์ ๋“ค

์˜คํ”ˆ์†Œ์Šค USearch ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ScyllaDB์— ๋ฒกํ„ฐ ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ์ด ๋„ค์ดํ‹ฐ๋ธŒ๋กœ ์ถ”๊ฐ€ ๋˜์—ˆ๋‹ต๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ScyllaDB๋Š” ๊ตฌ์กฐํ™”๋œ ๋ฐ์ดํ„ฐ๋ฟ ์•„๋‹ˆ๋ผ ๋ฒกํ„ฐ ์ž„๋ฒ ๋”ฉ(semantic embedding)์„ ๊ฐ™์€ ํ…Œ์ด๋ธ” ์•ˆ์— ์ €์žฅํ•˜๊ณ  ๋†’์€ ์„ฑ๋Šฅ์œผ๋กœ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜๊ณ , ์‹ค์‹œ๊ฐ„ AI/LLM ์›Œํฌ๋กœ๋“œ์— ์ ํ•ฉํ•œ ๊ณ ์„ฑ๋Šฅ ๋ฒกํ„ฐ ๊ฒ€์ƒ‰๋„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. :rocket::brain:

:white_check_mark: ๋‹จ์ผ ๋ฐ์ดํ„ฐ ์ €์žฅ์†Œ์—์„œ ๋ฒกํ„ฐ ๊ฒ€์ƒ‰ ์ง€์›
ScyllaDB๋Š” ๊ธฐ์กด์˜ NoSQL ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ์ €์žฅ ๊ธฐ๋Šฅ ์™ธ์— ๋ฒกํ„ฐ ๊ฒ€์ƒ‰๊นŒ์ง€ ์ง€์›ํ•ด, ๋ณ„๋„ ๋ฒกํ„ฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์šด์˜ํ•  ํ•„์š”๊ฐ€ ์—†์–ด์ง‘๋‹ˆ๋‹ค.

:white_check_mark: ๋†’์€ ์„ฑ๋Šฅ + ์‹ค์‹œ๊ฐ„ ์ฒ˜๋ฆฌ
ScyllaDB์˜ โ€˜shard-per-coreโ€™ ์•„ํ‚คํ…์ฒ˜์™€ ํ•จ๊ป˜ USearch์˜ ๊ณ ์„ฑ๋Šฅ ANN (Approximate Nearest Neighbor) ๊ฒ€์ƒ‰์ด ๊ฒฐํ•ฉ๋˜์–ด ์ €์ง€์—ฐ ๊ฒ€์ƒ‰์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

:white_check_mark: ์œ ์—ฐํ•œ ์–ธ์–ด ํ™•์žฅ์„ฑ
USearch๋Š” ๊ธฐ๋ณธ C++ ์ด๋ฉฐ, Python, Java, Go, Rust ๋“ฑ ๋‹ค์–‘ํ•œ ์–ธ์–ด ์ง€์› ํ™•์žฅ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

:building_construction::light_bulb:์•„ํ‚คํ…์ฒ˜ ์ธ์‚ฌ์ดํŠธ ๊ด€์ 

  • ScyllaDB + ScyllaDB Vector Store ๋ถ„๋ฆฌ ์•„ํ‚คํ…์ฒ˜
    Vector Store๊ฐ€ ์ธ๋ฉ”๋ชจ๋ฆฌ๋กœ ๋ฒกํ„ฐ ์ƒ‰์ธ์„ ๊ด€๋ฆฌํ•˜๋ฉฐ ScyllaDB์™€๋Š” ๋‹ค๋ฅธ ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•˜์ง€๋งŒ, ๋™์ผ ์—”์ง„์œผ๋กœ ํ†ตํ•ฉ๋˜์–ด ๋‹จ์ผ API/์šด์˜ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • ๋ฐ์ดํ„ฐ ์—…๋ฐ์ดํŠธ ํ๋ฆ„ โ€“ CDC ํ™œ์šฉ
    ๋ฐ์ดํ„ฐ ๋ณ€๊ฒฝ(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์“ฐ๊ธฐ)์€ CDC(Change Data Capture)๋ฅผ ํ†ตํ•ด ์ž๋™์œผ๋กœ Vector Store ์ƒ‰์ธ์œผ๋กœ ๋ฐ˜์˜๋ฉ๋‹ˆ๋‹ค.

  • ๋””์Šคํฌ & ์ธ๋ฉ”๋ชจ๋ฆฌ ์ตœ์ ํ™” ๋ถ„๋ฆฌ
    ์ž„๋ฒ ๋”ฉ์€ ๋””์Šคํฌ์— ์ €์žฅ๋˜๊ณ , ๊ฒ€์ƒ‰์— ํ•„์š”ํ•œ ์ƒ‰์ธ์€ ๋ฉ”๋ชจ๋ฆฌ์— ์œ ์ง€๋˜์–ด ์‹ค์‹œ๊ฐ„ ๊ฒ€์ƒ‰ ์†๋„์™€ ์ €์žฅ ํšจ์œจ ๋ชจ๋‘ ํ™•๋ณดํ•ฉ๋‹ˆ๋‹ค.

:robot::hammer_and_wrench: ๊ฐœ๋ฐœ & AI ์‹œ์Šคํ…œ ๊ด€์ 

  • ๋‹จ์ผ ํ”Œ๋žซํผ์œผ๋กœ RAG, ๊ฒ€์ƒ‰, ์‹ค์‹œ๊ฐ„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ง€์›
    ๊ฒ€์ƒ‰, ์ถ”์ฒœ, ์œ ์‚ฌ๋„ ๊ธฐ๋ฐ˜ ์„œ๋น„์Šค ๋ฐ AI ์‘์šฉ ๊ธฐ๋Šฅ(์˜ˆ: GenAI, ์‹ค์‹œ๊ฐ„ ํ”ผ์ณ ์Šคํ† ์–ด, ์ด์ƒ์น˜ ํƒ์ง€)๊นŒ์ง€ ํ•œ DB์—์„œ ์ฒ˜๋ฆฌ ๊ฐ€๋Šฅํ•ด์ง‘๋‹ˆ๋‹ค.

  • AI/ML ์›Œํฌ๋กœ๋“œ์™€ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์—ฐ๊ณ„
    LLM ์ž„๋ฒ ๋”ฉ์ด๋‚˜ ๋ฒกํ„ฐ ๊ธฐ๋ฐ˜ ๊ฒ€์ƒ‰ ์šฉ๋„๋กœ ๋ณ„๋„ ์‹œ์Šคํ…œ์„ ๊ตฌ์ถ•ํ•˜์ง€ ์•Š์•„๋„ ๋˜์–ด ์šด์˜์ƒ์˜ ๋ณต์žก๋„ ๋ฐ ๋น„์šฉ์ด ์ค„์–ด๋“ญ๋‹ˆ๋‹ค.

  • FAISS ๋Œ€๋น„ ๋น ๋ฅธ ์„ฑ๋Šฅ ๊ฐ€๋Šฅ์„ฑ
    USearch๋Š” ์ผ๋ถ€ ๋ฒค์น˜๋งˆํฌ์—์„œ Facebook์˜ FAISS๋ณด๋‹ค 10๋ฐฐ ๋น ๋ฅธ ์„ฑ๋Šฅ์„ ๋ณด์—ฌ์ค€๋‹ค๊ณ  ํ‰๊ฐ€๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

[์ถœ์ฒ˜] https://thenewstack.io/open-source-usearch-library-jumpstarts-scylladb-vector-search/

| This is a space where knowledge is not merely consumed, but respected, sovereign, and connectedโ€”shared together with cloud industry professionals (Bros).|
| ์ง€์‹์ด ์†Œ๋น„๋˜์ง€ ์•Š๊ณ  ์กด์ค‘ยท์ฃผ๊ถŒ๋ณด์žฅยท์—ฐ๊ฒฐ๋˜๋Š” ๊ณต๊ฐ„์œผ๋กœ ํด๋ผ์šฐ๋“œ ํ˜„์—… ์ „๋ฌธ๊ฐ€(Bro)์™€ ํ•จ๊ป˜ ๊ณต์œ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. |