[Qdrant] Collection

Collection์€ qdrant์—์„œ ๊ฐ€์žฅ ๊ธฐ๋ณธ์ด ๋˜๋Š” ๋‹จ์œ„๋‹ค.
์ผ๋ฐ˜์ ์ธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋“ค์˜ ํ…Œ์ด๋ธ”, Elasticsearch์˜ Index์— ๋Œ€์‘๋œ๋‹ค.

์ƒ๋‹จ์˜ ๊ฐœ๋ฐœ์ž ์ฝ˜์†”์„ ์‚ฌ์šฉํ•˜๋ฉด ์†์‰ฝ๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ค„๋ณผ ์ˆ˜ ์žˆ๋‹ค.

์ด๊ฑธ ํ†ตํ•ด์„œ ๊ฐ„๋‹จํ•œ ์‹ค์Šต์„ ํ•ด๋ณด๊ฒ ๋‹ค.
/collections API๋Š” ์ปฌ๋ ‰์…˜ ๋ชฉ๋ก์„ ์กฐํšŒํ•˜๋Š” API๋‹ค. ์•„์ง ์•„๋ฌด๊ฒƒ๋„ ๋งŒ๋“ ์ ์ด ์—†์–ด์„œ ๋“ค์–ด์žˆ๋Š”๊ฑด ์—†๋‹ค.





์ปฌ๋ ‰์…˜ ์ƒ์„ฑ

์ปฌ๋ ‰์…˜์„ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์€ ๊ทธ๋ฆฌ ์–ด๋ ต์ง€ ์•Š๋‹ค.
๋‹ค์Œ์€ 256์งœ๋ฆฌ Dot Product์šฉ ๋ฒกํ„ฐ ์ปฌ๋ ‰์…˜ "products"๋ฅผ ๋งŒ๋“œ๋Š” ๊ฐ„๋‹จํ•œ ์š”์ฒญ์ด๋‹ค.

PUT /collections/products
{
    "vectors": {
      "size": 256,
      "distance": "Dot"
    }
}

์„ฑ๊ณต์ด ๋–จ์–ด์ง€๋ฉด

๋ฆฌ์ŠคํŠธ์—์„œ ์กฐํšŒ ๊ฐ€๋Šฅํ•˜๊ณ 

์ƒ์„ธ ์ •๋ณด๋„ ์ด๋ ‡๊ฒŒ ํ™•์ธํ•ด๋ณผ ์ˆ˜ ์žˆ๋‹ค.

๋ญ ์ด๊ฒƒ์ €๊ฒƒ ๋งŽ๋‹ค.


๊ทธ๋ฆฌ๊ณ  UI ์ปฌ๋ ‰์…˜์—์„œ๋„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋  ๊ฒƒ์ด๋‹ค.




๋ฉ€ํ‹ฐ ๋ฒกํ„ฐ

์œ„์—์„œ ๋งŒ๋“  ๋ฒกํ„ฐ ์ปฌ๋ ‰์…˜์€ ๋‹จ์ผ ๋ฒกํ„ฐ๋งŒ์„ ๊ฐ€์ง€๋Š” ์ปฌ๋ ‰์…˜์ด๋‹ค.
ํ•˜์ง€๋งŒ ๋ฒกํ„ฐ ํ•„๋“œ๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ ๋šซ๋Š” ๊ฒƒ๋„ ๊ฐ€๋Šฅํ•˜๋‹ค.
vectors ์•ˆ์— ๋˜ ํ‚ค๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ ๋‘ฌ์„œ ๊น”๋ฉด ๋œ๋‹ค.

PUT /collections/products2
{
    "vectors": {
      "image": {
        "size": 256,
        "distance": "Dot"
      }, 
      "text": {
        "size": 256,
        "distance": "Dot"
      }
    }
}





์ปฌ๋ ‰์…˜ alias

alias๋Š” ์ปฌ๋ ‰์…˜์— ๋Œ€ํ•ด ๋ถ™์ผ ์ˆ˜ ์žˆ๋Š” ๋˜ ๋‹ค๋ฅธ ๋ณ„๋ช…์ด๋‹ค.

Elasticsearch์—์„œ๋Š” ์ธ๋ฑ์Šค๋ฅผ ์ƒˆ๋กœ์šด ์ธ๋ฑ์Šค๋กœ ์˜ฎ๊ธธ๋•Œ, ๋‹ค์šดํƒ€์ž„ ์—†์ด ๊ต์ฒดํ•˜๊ธฐ ์œ„ํ•ด์„œ alias ๊ธฐ๋ฐ˜ ์Šค์œ„์นญ์„ ์‚ฌ์šฉํ•˜๊ณค ํ•œ๋‹ค. qdrant๋„ ๊ฐ™์€ ๋ฐฉ๋ฒ•์„ ์ง€์›ํ•œ๋‹ค.

alias์˜ ์ƒ์„ฑ์€ ์ด๋Ÿฐ ์‹์œผ๋กœ ์ด๋ค„์ง„๋‹ค.

๊ทธ๋ƒฅ ์ปฌ๋ ‰์…˜์— products_prod๋ž€ ์ด๋ฆ„์„ ๋ถ™์ธ ๊ฒƒ์ด๋‹ค.

๊ทธ๋Ÿผ ์ด์ œ products_prod๋ž€ ์ด๋ฆ„์œผ๋กœ๋„ products ์ปฌ๋ ‰์…˜์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.

๋งŒ๋“ค์–ด์ง„ alias ๋ชฉ๋ก์€ ์ „์šฉ api๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

alias์˜ ์‚ญ์ œ์™€ ์ƒ์„ฑ์„ ๋‹จ์ผ BATCH๋กœ ๋ฌถ์–ด์„œ ์˜๋ฉด ๋‹ค์šดํƒ€์ž„ ์—†์ด alias๊ฐ€ ๋‹ค๋ฅธ ์ปฌ๋ ‰์…˜์„ ๊ฐ€๋ฆฌํ‚ค๊ฒŒ ํ•  ์ˆ˜๋„ ์žˆ๋‹ค.

์šด์˜์— ์žˆ์–ด ๊ฑฐ์˜ ํ•„์ˆ˜์ ์ธ ํŠธ๋ฆญ์ด๋‹ค.



์ฐธ์กฐ
https://qdrant.tech/documentation/concepts/collections/