[Qdrant] Points

์ด์ „ ํฌ์ŠคํŠธ
https://blog.naver.com/sssang97/223841995115
Points๋Š” ์ปฌ๋ ‰์…˜ ๋‚ด์— ์กด์žฌํ•˜๋Š” ์‹ค์ œ ๋ฐ์ดํ„ฐ์˜ ์ตœ์†Œ ์ง‘ํ•ฉ์ด๋‹ค.

Elasticsearch์˜ Document์™€ ๋™๋“ฑํ•˜๊ณ , ๊ทธ๋ƒฅ ํ…Œ์ด๋ธ”์˜ ํ•œ ํ–‰์„ ๋งํ•˜๋Š”๊ฑฐ๋ผ๊ณ  ๋ณด๋ฉด ๋œ๋‹ค.

Point๋Š” ์ด 3๊ฐœ์˜ ๋ถ€๋ถ„์œผ๋กœ ๊ตฌ์„ฑ๋œ๋‹ค.
๊ณ ์œ  ID, ๋ฒกํ„ฐ๊ฐ’, Payload๋‹ค.

qdrant๋Š” ์ € 3๊ฐ€์ง€ ๋ชจ๋‘์— ๋Œ€ํ•ด์„œ ์ตœ์ ํ™”๋œ ์ ‘๊ทผ์„ ์ œ๊ณตํ•œ๋‹ค.




๋ฐ์ดํ„ฐ ์‚ฝ์ž…

PUT API๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฐ”๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ง‘์–ด๋„ฃ์„ ์ˆ˜ ์žˆ๋‹ค.
ํ–‰ ํ•˜๋‚˜๋ฅผ ์ง‘์–ด๋„ฃ๋Š” ๊ฐ„๋‹จํ•œ ์š”์ฒญ์ด๋‹ค.

id๊ฐ€ ์ € Point์˜ ๊ณ ์œ ํ•œ ID๊ณ , vector๊ฐ€ ๋ฐ”๋กœ ๊ทธ ๋ฒกํ„ฐ๋‹ค.
qdrant์˜ ID๋Š” ๊ฝค ์—„๊ฒฉํ•œ ํ˜•์‹์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๋ฌธ์ž์—ด์ผ ๊ฒฝ์šฐ์—๋Š” ๋ฐ˜๋“œ์‹œ ์ •ํ•ด์ง„ UUID ํ˜•์‹์œผ๋กœ ์™€์•ผ ํ•˜๊ณ , ์•„๋‹ˆ๋ฉด ์ •์ˆ˜๋กœ๋งŒ ๋„ฃ์„ ์ˆ˜ ์žˆ๋‹ค.

payload๋Š” ๊ทธ๋ƒฅ ๋ฒกํ„ฐ ์ด์™ธ์˜ ํ•„๋“œ ๊ฐ’๋“ค์ด๋ผ๊ณ  ๋ณด๋ฉด ๋œ๋‹ค. ์•„๋ฌด๊ฑฐ๋‚˜ ๋„ฃ์„ ์ˆ˜ ์žˆ๋‹ค.


๊ทธ๋ƒฅ points ๋ฐฐ์—ด์— ์—ฌ๋Ÿฌ๊ฐœ๋ฅผ ๋„ฃ์œผ๋ฉด ๋™์‹œ์— ๋„ฃ์„ ์ˆ˜๋„ ์žˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ , ์ € PUT API๋Š” ์ƒ์„ฑ๊ณผ ์ˆ˜์ •์„ ๊ฒธํ•œ๋‹ค.
๊ฐ™์€ ID๋กœ ๋‹ค์‹œ ์ง‘์–ด๋„ฃ์œผ๋ฉด ์ƒˆ๋กœ ๋งŒ๋“ค์–ด์ง€๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ ๊ฐ’์˜ ๋ณ€๊ฒฝ์ด ๋˜๋Š” ์…ˆ์ด๋‹ค.




points ํ•„ํ„ฐ ๊ฒ€์ƒ‰ (scroll)

qdrant๋Š” ๋ฒกํ„ฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ง€๋งŒ, Elasticsearch์ฒ˜๋Ÿผ ํ•„ํ„ฐ์— ๋Œ€ํ•ด์„œ๋„ ๊ฝค ๋น ๋ฅธ ํ•„ํ„ฐ ์„ฑ๋Šฅ์„ ๋ณด์žฅํ•  ์ˆ˜ ์žˆ๋‹ค.

๋‹จ์ผ ํ•„ํ„ฐ์— ๋Œ€ํ•ด์„œ๋„ ์ž˜ ๋™์ž‘ํ•˜๊ณ 


๋ณต์žกํ•œ ํ•„ํ„ฐ ์กฐ๊ฑด์— ๋Œ€ํ•ด์„œ๋„ ๊ฝค ๊ดœ์ฐฎ์€ ์„ฑ๋Šฅ์„ ๋ณด์ผ ์ˆ˜ ์žˆ๋‹ค.

๋‹ค๋งŒ, ์ € Payload ํ•„๋“œ๋“ค์— ๋Œ€ํ•ด์„œ ์ •๋ ฌ์„ ์ง€์ •ํ•ด์•ผ ํ•œ๋‹ค๊ฑฐ๋‚˜, ๋ญ”๊ฐ€ ๋ณต์žกํ•œ ํ–‰์œ„๋ฅผ ํ•ด์•ผํ•œ๋‹ค๋ฉด Payload Index๋ผ๋Š” ๊ฒƒ์„ ๋ณ„๋„๋กœ ๊ตฌ์„ฑํ•ด์•ผ ํ•œ๋‹ค.




vector ์œ ์‚ฌ๋„ ๊ฒ€์ƒ‰

์ด๊ฒŒ ์•„๋งˆ ์ด DB๋ฅผ ์“ฐ๋Š” ์ฃผ ๋ชฉ์ ์ผ ๊ฒƒ์ด๋‹ค.
query API๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฒกํ„ฐ ๊ธฐ๋ฐ˜์˜ ์œ ์‚ฌ๋„ ๊ฒ€์ƒ‰์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

query API๋Š” ๋ฒกํ„ฐ ๊ฒ€์ƒ‰๊ณผ ํ•จ๊ป˜ ํ•„ํ„ฐ๋ฅผ ์ง€์ •ํ•˜๋Š” ๊ฒƒ ๋˜ํ•œ ์ง€์›ํ•œ๋‹ค.

๋น ๋ฅด๊ธฐ๋„ ๊ต‰์žฅํžˆ ๋น ๋ฅด๋‹ค.

์ฟผ๋ฆฌ ์‘์šฉ์— ๋Œ€ํ•œ ๊ฒƒ์€ ๋ณ„๋„๋กœ ์ž์„ธํ•˜๊ฒŒ ๋‹ค๋ค„๋ณด๊ฒ ๋‹ค.