3.3.2 벡터 데이터베이스
벡터 데이터베이스는 말 그대로 벡터를 저장하는 저장소입니다. 벡터는 앞에서도 살펴봤듯이 여러 숫자로 이루어진 데이터의 나열을 말합니다. 이를테면 상품에 대한 사람의 선호도를 여러 숫자로 표현한 것이 벡터일 수 있습니다. 그리고 숫자의 나열을 저장하는 곳이 벡터 데이터베이스입니다.
벡터 데이터베이스는 단순히 벡터를 저장하는 것 외에도 데이터를 관리하며, 검색하는 일도 합니다. 즉, 일반 데이터베이스와 달리 벡터 데이터베이스는 데이터의 정확한 값 대신 데이터 간의 ‘유사성’을 바탕으로 검색하는 데 사용됩니다.
예를 들어 일반 데이터베이스에서 나이가 30 이상인 사람의 정보를 가져오는 쿼리는 다음과 같습니다.
코드
SELECT * FROM customers WHERE age >= 30;
하지만 벡터 데이터베이스는 일반 데이터베이스와 같이 질문하지 않습니다. 벡터 데이터베이스에 질의하는 방식에 대해 좀 더 알아볼까요? 예를 들어 물류 센터 A회사는 사용자로부터 다음과 같은 질의를 받았습니다.