새로운 데이터 때문에 답답하신가요? 저희 벡터 데이터베이스가 도와드릴 수 있습니다
빅데이터 시대에는 어떤 데이터베이스 기술과 애플리케이션이 각광받게 될까요? 다음 게임 체인저는 무엇일까요?
비정형 데이터가 저장된 전체 데이터의 약 80~90%를 차지하는 상황에서, 점점 커지는 이러한 데이터 레이크를 우리는 어떻게 다루어야 할까요? 전통적인 분석 방법을 사용하는 것을 생각할 수도 있지만, 이러한 방법은 유용한 정보를 끌어내는 데 실패하며, 경우에 따라서는 어떤 정보도 얻지 못합니다. 이 질문에 답하기 위해 Zilliz 연구개발팀의 "삼총사"인 Dr. Rentong Guo, Mr. Xiaofan Luan, Dr. Xiaomeng Yi가 범용 벡터 데이터베이스 시스템을 구축할 때 직면한 설계와 과제를 논의하는 글을 공동 집필했습니다.
이 글은 중국 최대 소프트웨어 개발자 커뮤니티인 CSDN이 발행하는 저널 Programmer에 수록되었습니다. 이번 Programmer 호에는 2020년 튜링상 수상자인 Jeffrey Ullman, 2018년 튜링상 수상자인 Yann LeCun, MongoDB의 CTO Mark Porter, OceanBase 창업자 Zhenkun Yang, PingCAP 창업자 Dongxu Huang 등의 글도 포함되어 있습니다.
아래에서 전문을 공유합니다:
AI 지향 범용 벡터 데이터베이스 시스템의 설계와 실제
소개
현대의 데이터 애플리케이션은 오늘날 데이터의 약 20%를 차지하는 정형 데이터를 손쉽게 다룰 수 있습니다. 그 도구 상자에는 관계형 데이터베이스, NoSQL 데이터베이스 등의 시스템이 있습니다; 반면 전체 데이터의 약 80%를 차지하는 비정형 데이터에는 신뢰할 수 있는 시스템이 마련되어 있지 않습니다. 이 문제를 해결하기 위해, 이 글에서는 전통적인 데이터 분석이 비정형 데이터에서 겪는 문제점을 논의하고, 나아가 자체 범용 벡터 데이터베이스 시스템을 구축하면서 직면했던 아키텍처와 과제를 논의합니다.
AI 시대의 데이터 혁명
5G와 IoT 기술의 빠른 발전으로 산업계는 데이터 수집 채널을 확대하고 현실 세계를 디지털 공간에 더욱 투영하려 하고 있습니다. 이는 엄청난 과제를 가져왔지만, 성장하는 산업에는 막대한 이점도 함께 가져왔습니다. 이러한 어려운 과제 중 하나는 새롭게 유입되는 데이터에서 더 깊은 통찰을 얻는 방법입니다.
IDC 통계에 따르면 2020년에만 전 세계적으로 40,000엑사바이트가 넘는 신규 데이터가 생성되었습니다. 그중 20%만이 정형 데이터입니다 - 수치 계산과 관계 대수를 통해 고도로 정렬되어 있으며 구성 및 분석이 쉬운 데이터입니다. 반면 비정형 데이터(나머지 80%를 차지)는 데이터 유형의 변형이 매우 풍부하여, 전통적인 데이터 분석 방법으로는 깊은 의미를 밝혀내기 어렵습니다.
다행히도 우리는 비정형 데이터와 AI가 동시에 빠르게 진화하는 과정을 경험하고 있으며, AI는 그림 1과 같이 다양한 유형의 신경망을 통해 데이터를 더 잘 이해할 수 있게 해줍니다.
그림 1: 임베딩 과정
임베딩 기술은 Word2vec의 등장 이후 빠르게 인기를 얻었고, "모든 것을 임베딩하라"는 아이디어가 머신러닝의 모든 분야로 확산되었습니다. 이는 두 가지 주요 데이터 계층의 등장으로 이어집니다: 원시 데이터 계층과 벡터 데이터 계층입니다. 원시 데이터 계층은 비정형 데이터와 특정 유형의 정형 데이터로 구성됩니다; 벡터 계층은 머신러닝 모델을 통과한 원시 계층에서 비롯된, 쉽게 분석 가능한 임베딩의 집합입니다.
원시 데이터와 비교했을 때, 벡터화된 데이터는 다음과 같은 장점을 지닙니다:
- 임베딩 벡터는 추상적인 데이터 유형으로, 비정형 데이터의 복잡성을 줄이는 데 특화된 통합 대수 시스템을 구축할 수 있음을 의미합니다.
- 임베딩 벡터는 밀집 부동소수점 벡터로 표현되므로 애플리케이션이 SIMD를 활용할 수 있습니다. SIMD는 GPU와 거의 모든 최신 CPU에서 지원되므로, 벡터 전반의 계산은 비교적 낮은 비용으로 높은 성능을 달성할 수 있습니다.
- 머신 러닝 모델을 통해 인코딩된 벡터 데이터는 원본 비정형 데이터보다 저장 공간을 적게 차지하여 더 높은 처리량을 가능하게 합니다.
- 임베딩 벡터 간에는 산술 연산도 수행할 수 있습니다. 그림 2는 크로스 모달 의미론적 근사 매칭의 예를 보여줍니다 - 그림에 표시된 사진들은 단어 임베딩과 이미지 임베딩을 매칭한 결과입니다.
그림 2: 크로스 모달 신경망 언어 모델 기반 의미론적 임베딩 시각화
그림 3에 표시된 것처럼, 이미지와 단어 의미론의 결합은 해당 임베딩 간의 단순한 벡터 덧셈과 뺄셈으로 수행할 수 있습니다.
그림 3: 크로스 모달 신경망 언어 모델 기반 통합 시각화 의미론적 임베딩
위의 기능 외에도, 이러한 연산자는 실제 시나리오에서 더 복잡한 쿼리 문을 지원합니다. 콘텐츠 추천은 잘 알려진 예입니다. 일반적으로 시스템은 콘텐츠와 사용자의 시청 선호도를 모두 임베딩합니다. 다음으로, 시스템은 의미론적 유사도 분석을 통해 임베딩된 사용자의 선호도를 가장 유사한 임베딩된 콘텐츠와 매칭하여, 사용자의 선호도와 유사한 새로운 콘텐츠를 도출합니다. 이 벡터 데이터 계층은 추천 시스템에만 국한되지 않으며, 사용 사례에는 전자상거래, 악성코드 분석, 데이터 분석, 생체 인증, 화학식 분석, 금융, 보험 등이 포함됩니다.
비정형 데이터에는 완전한 기본 소프트웨어 스택이 필요합니다
시스템 소프트웨어는 모든 데이터 지향 애플리케이션의 기반에 위치하지만, 지난 수십 년 동안 구축된 데이터 시스템 소프트웨어, 예를 들어 데이터베이스, 데이터 분석 엔진 등은 구조화된 데이터를 처리하기 위한 것입니다. 현대 데이터 애플리케이션은 거의 전적으로 비정형 데이터에 의존하며, 전통적인 데이터베이스 관리 시스템의 이점을 얻지 못합니다.
이 문제를 해결하기 위해, 우리는 Milvus라는 AI 지향 범용 벡터 데이터베이스 시스템을 개발하고 오픈 소스로 공개했습니다(참고 번호 1~2). 전통적인 데이터베이스 시스템과 비교할 때, Milvus는 다른 데이터 계층에서 작동합니다. 관계형 데이터베이스, KV 데이터베이스, 텍스트 데이터베이스, 이미지/비디오 데이터베이스 등과 같은 전통적인 데이터베이스는 원시 데이터 계층에서 작동하는 반면, Milvus는 벡터 데이터 계층에서 작동합니다.
다음 장에서는 Milvus를 구축하면서 마주한 새로운 기능, 아키텍처 설계, 기술적 과제에 대해 논의하겠습니다.
벡터 데이터베이스의 주요 속성
벡터 데이터베이스는 벡터를 저장, 검색, 분석하며, 다른 모든 데이터베이스와 마찬가지로 CRUD 작업을 위한 표준 인터페이스도 제공합니다. 이러한 "표준" 기능 외에도, 아래에 나열된 속성은 벡터 데이터베이스의 중요한 특성이기도 합니다:
- 고효율 벡터 연산자 지원
분석 엔진에서 벡터 연산자 지원은 두 가지 수준에 중점을 둡니다. 첫째, 벡터 데이터베이스는 다양한 유형의 연산자, 예를 들어 위에서 언급한 의미론적 유사도 매칭과 의미론적 산술을 지원해야 합니다. 이와 더불어, 기본 유사도 계산을 위한 다양한 유사도 메트릭을 지원해야 합니다. 이러한 유사도는 일반적으로 벡터 간의 공간적 거리로 정량화되며, 일반적인 메트릭으로는 유클리드 거리, 코사인 거리, 내적 거리가 있습니다.
- 벡터 인덱싱 지원
기존 데이터베이스의 B-tree 또는 LSM-tree 기반 인덱스와 비교하면, 고차원 벡터 인덱스는 일반적으로 훨씬 더 많은 컴퓨팅 리소스를 소비합니다. 클러스터링 및 그래프 인덱스 알고리즘을 사용하고, 행렬 및 벡터 연산에 우선순위를 두어 앞서 언급한 하드웨어 벡터 계산 가속 기능을 최대한 활용할 것을 권장합니다.
- 다양한 배포 환경 전반에서 일관된 사용자 경험
벡터 데이터베이스는 일반적으로 다양한 환경에서 개발 및 배포됩니다. 초기 단계에서는 데이터 과학자와 알고리즘 엔지니어가 대부분 노트북과 워크스테이션에서 작업하는데, 이는 검증 효율성과 반복 속도에 더 많은 주의를 기울이기 때문입니다. 검증이 완료되면 전체 규모 데이터베이스를 프라이빗 클러스터나 클라우드에 배포할 수 있습니다. 따라서 적합한 벡터 데이터베이스 시스템은 다양한 배포 환경 전반에서 일관된 성능과 사용자 경험을 제공해야 합니다.
- 하이브리드 검색 지원
벡터 데이터베이스가 보편화됨에 따라 새로운 애플리케이션이 등장하고 있습니다. 이러한 요구 사항 중 가장 자주 언급되는 것은 벡터와 다른 유형의 데이터에 대한 하이브리드 검색입니다. 이에 대한 몇 가지 예로는 스칼라 필터링 후 근사 최근접 이웃 검색(ANNS), 전문 검색과 벡터 검색의 멀티채널 리콜, 시공간 데이터와 벡터 데이터의 하이브리드 검색이 있습니다. 이러한 과제는 벡터 검색 엔진을 KV, 텍스트 및 기타 검색 엔진과 효과적으로 융합하기 위한 탄력적인 확장성과 쿼리 최적화를 요구합니다.
- 클라우드 네이티브 아키텍처
데이터 수집의 기하급수적 증가와 함께 벡터 데이터의 양이 급증하고 있습니다. 조 단위 규모의 고차원 벡터 데이터는 수천 TB의 스토리지에 해당하며, 이는 단일 노드의 한계를 훨씬 넘어섭니다. 그 결과, 수평 확장성은 벡터 데이터베이스의 핵심 역량이며, 탄력성과 배포 민첩성에 대한 사용자의 요구를 충족해야 합니다. 또한 클라우드 인프라의 도움을 받아 관측 가능성을 개선하는 동시에 시스템 운영 및 유지관리 복잡성도 낮춰야 합니다. 이러한 요구 중 일부는 멀티테넌트 격리, 데이터 스냅샷 및 백업, 데이터 암호화, 데이터 시각화의 형태로 나타나며, 이는 기존 데이터베이스에서도 일반적입니다.
벡터 데이터베이스 시스템 아키텍처
Milvus 2.0은 "로그를 데이터로", "통합 배치 및 스트림 처리", "상태 비저장", "마이크로서비스"라는 설계 원칙을 따릅니다. 그림 4는 Milvus 2.0의 전체 아키텍처를 보여줍니다.
그림 4: Milvus 2.0의 전체 아키텍처
로그를 데이터로: Milvus 2.0은 어떠한 물리적 테이블도 유지하지 않습니다. 대신 로그 영속성과 로그 스냅샷을 통해 데이터 신뢰성을 보장합니다. 로그 브로커(시스템의 백본)는 로그를 저장하고 로그 발행-구독(pub-sub) 메커니즘을 통해 컴포넌트와 서비스를 분리합니다. 그림 5에 표시된 것처럼, 로그 브로커는 "로그 시퀀스"와 "로그 구독자"로 구성됩니다. 로그 시퀀스는 컬렉션(관계형 데이터베이스의 테이블과 동일)의 상태를 변경하는 모든 작업을 기록하며, 로그 구독자는 로그 시퀀스를 구독하여 로컬 데이터를 업데이트하고 읽기 전용 복사본의 형태로 서비스를 제공합니다. pub-sub 메커니즘은 또한 변경 데이터 캡처(CDC) 및 전역 분산 배포 측면에서 시스템 확장성을 위한 여지를 제공합니다.
그림 5: 로그 스토리지를 위한 단순화된 모델
통합 배치 및 스트림 처리: 로그 스트리밍을 통해 Milvus는 실시간으로 데이터를 업데이트할 수 있으며, 이를 통해 실시간 전달 가능성을 보장합니다. 또한 데이터 배치를 로그 스냅샷으로 변환하고 스냅샷에 인덱스를 구축함으로써 Milvus는 더 높은 쿼리 효율성을 달성할 수 있습니다. 쿼리 중에 Milvus는 반환되는 데이터의 무결성을 보장하기 위해 증분 데이터와 과거 데이터 양쪽의 쿼리 결과를 병합합니다. 이러한 설계는 실시간 성능과 효율성의 균형을 더 잘 맞추며, 기존 Lambda 아키텍처에 비해 온라인 및 오프라인 시스템 모두의 유지보수 부담을 완화합니다.
상태 비저장: 클라우드 인프라와 오픈소스 스토리지 컴포넌트는 Milvus가 자체 컴포넌트 내에서 데이터를 영속화하지 않도록 합니다. Milvus 2.0은 세 가지 유형의 스토리지로 데이터를 영속화합니다: 메타데이터 스토리지, 로그 스토리지, 객체 스토리지. 메타데이터 스토리지는 메타데이터를 저장할 뿐만 아니라 서비스 디스커버리와 노드 관리도 처리합니다. 로그 스토리지는 증분 데이터 영속화와 데이터 발행-구독을 실행합니다. 객체 스토리지는 로그 스냅샷, 인덱스, 일부 중간 계산 결과를 저장합니다.
마이크로서비스: Milvus는 데이터 플레인과 제어 플레인 분리, 읽기/쓰기 분리, 온라인/오프라인 작업 분리의 원칙을 따릅니다. 이는 네 가지 서비스 계층으로 구성됩니다: 액세스 계층, 코디네이터 계층, 워커 계층, 스토리지 계층. 이러한 계층은 확장 및 재해 복구 측면에서 서로 독립적입니다. 전면 계층이자 사용자 엔드포인트인 액세스 계층은 클라이언트 연결을 처리하고, 클라이언트 요청을 검증하며, 쿼리 결과를 결합합니다. 시스템의 "두뇌"로서 코디네이터 계층은 클러스터 토폴로지 관리, 로드 밸런싱, 데이터 선언, 데이터 관리 작업을 맡습니다. 워커 계층은 시스템의 "사지"를 포함하며, 데이터 업데이트, 쿼리, 인덱스 구축 작업을 실행합니다. 마지막으로 스토리지 계층은 데이터 영속화와 복제를 담당합니다. 전반적으로 이 마이크로서비스 기반 설계는 제어 가능한 시스템 복잡성을 보장하며, 각 컴포넌트는 해당 기능을 책임집니다. Milvus는 잘 정의된 인터페이스를 통해 서비스 경계를 명확히 하고, 더 세밀한 단위를 기반으로 서비스를 디커플링하여 탄력적 확장성과 리소스 분배를 더욱 최적화합니다.
벡터 데이터베이스가 직면한 기술적 과제
벡터 데이터베이스에 대한 초기 연구는 주로 고효율 인덱스 구조와 쿼리 방법의 설계에 집중되었으며, 이로 인해 다양한 벡터 검색 알고리즘 라이브러리가 생겨났습니다(참조 번호 3~5). 지난 몇 년 동안 점점 더 많은 학계 및 엔지니어링 팀이 시스템 설계 관점에서 벡터 검색 문제를 새롭게 바라보고, 몇 가지 체계적인 솔루션을 제안했습니다. 기존 연구와 사용자 요구를 요약하여, 벡터 데이터베이스의 주요 기술적 과제를 다음과 같이 분류합니다:
- 부하 대비 비용 대비 성능 비율 최적화
기존 데이터 유형에 비해 벡터 데이터 분석은 높은 차원성 때문에 훨씬 더 많은 스토리지와 컴퓨팅 리소스를 필요로 합니다. 또한 사용자들은 벡터 검색 솔루션에서 부하 특성과 비용-성능 최적화에 대해 다양한 선호를 보여 왔습니다. 예를 들어, 극도로 큰 데이터셋(수십억 또는 수천억 개의 벡터)을 다루는 사용자들은 데이터 스토리지 비용이 낮고 검색 지연 시간의 변동이 적은 솔루션을 선호하는 반면, 다른 사용자들은 더 높은 검색 성능과 변동 없는 평균 지연 시간을 요구할 수 있습니다. 이러한 다양한 선호를 충족하기 위해 벡터 데이터베이스의 핵심 인덱스 컴포넌트는 다양한 유형의 스토리지 및 컴퓨팅 하드웨어를 갖춘 인덱스 구조와 검색 알고리즘을 지원할 수 있어야 합니다.
예를 들어, 스토리지 비용을 낮출 때 벡터 데이터와 해당 인덱스 데이터를 더 저렴한 스토리지 매체(예: NVM 및 SSD)에 저장하는 것을 고려해야 합니다. 그러나 기존의 대부분 벡터 검색 알고리즘은 메모리에서 직접 읽은 데이터에서 작동합니다. 디스크 드라이브 사용으로 인한 성능 저하를 피하기 위해, 벡터 데이터베이스는 벡터 데이터와 인덱스 구조를 위한 스토리지 솔루션에 적응할 수 있을 뿐만 아니라 검색 알고리즘과 결합된 데이터 접근의 지역성을 활용할 수 있어야 합니다(참고문헌 번호 6~8). 성능 향상을 위해 최근 연구는 GPU, NPU, FPGA 등을 포함한 하드웨어 가속 기술에 집중되어 왔습니다(참고문헌 번호 9). 그러나 가속 전용 하드웨어와 칩은 아키텍처 설계가 다양하며, 서로 다른 하드웨어 가속기 전반에서 가장 효율적으로 실행하는 문제는 아직 해결되지 않았습니다.
- 자동화된 시스템 구성 및 튜닝
벡터 검색 알고리즘에 관한 기존 연구의 대부분은 스토리지 비용, 계산 성능, 검색 정확도 간의 유연한 균형을 추구합니다. 일반적으로 알고리즘 매개변수와 데이터 특징 모두 알고리즘의 실제 성능에 영향을 미칩니다. 사용자 요구가 비용과 성능 측면에서 서로 다르기 때문에, 사용자의 요구와 데이터 특징에 맞는 벡터 쿼리 방법을 선택하는 것은 상당한 과제입니다.
그럼에도 불구하고, 벡터 데이터의 높은 차원성으로 인해 데이터 분포가 검색 알고리즘에 미치는 영향을 분석하는 수동 방법은 효과적이지 않습니다. 이 문제를 해결하기 위해 학계와 산업계는 머신 러닝 기반의 알고리즘 추천 솔루션을 모색하고 있습니다(참고문헌 번호 10).
ML 기반 지능형 벡터 검색 알고리즘의 설계 또한 연구의 핵심 분야입니다. 일반적으로 기존 벡터 검색 알고리즘은 다양한 차원성과 분포 패턴을 가진 벡터 데이터에 범용적으로 적용되도록 개발됩니다. 그 결과, 데이터 특징에 따른 특정 인덱스 구조를 지원하지 않으므로 최적화할 여지가 거의 없습니다. 향후 연구는 서로 다른 데이터 특징에 맞게 인덱스 구조를 맞춤화할 수 있는 효과적인 머신 러닝 기술도 탐구해야 합니다(참고문헌 번호 11-12).
- 고급 쿼리 의미론 지원
현대 애플리케이션은 벡터 전반에 걸쳐 더 고급 쿼리에 의존하는 경우가 많습니다 - 전통적인 최근접 이웃 검색 의미론은 더 이상 벡터 데이터 검색에 적용될 수 없습니다. 또한 여러 벡터 데이터베이스에 걸친 결합 검색이나 벡터 및 비벡터 데이터에 대한 결합 검색 수요가 나타나고 있습니다(참고문헌 번호 13).
구체적으로, 벡터 유사도를 위한 거리 메트릭의 변형이 빠르게 증가하고 있습니다. Euclidean distance, inner product distance, cosine distance와 같은 전통적인 유사도 점수는 모든 애플리케이션 요구를 충족할 수 없습니다. 인공지능 기술의 대중화와 함께, 많은 산업 분야에서 Tanimoto distance, Mahalanobis distance, Superstructure, Substructure와 같은 자체 분야별 벡터 유사도 메트릭을 개발하고 있습니다. 이러한 평가 메트릭을 기존 검색 알고리즘에 통합하고 해당 메트릭을 활용하는 새로운 알고리즘을 설계하는 것은 모두 도전적인 연구 문제입니다.
사용자 서비스의 복잡성이 증가함에 따라, 애플리케이션은 벡터 데이터와 비벡터 데이터 모두에 걸쳐 검색해야 할 것입니다. 예를 들어, 콘텐츠 추천기는 사용자의 선호도와 사회적 관계를 분석하고 이를 현재 인기 주제와 매칭하여 사용자에게 적절한 콘텐츠를 제공합니다. 이러한 검색은 일반적으로 여러 데이터 유형 또는 여러 데이터 처리 시스템에 걸친 쿼리를 포함합니다. 이러한 하이브리드 검색을 효율적이고 유연하게 지원하는 것은 또 다른 시스템 설계 과제입니다.
저자
런퉁 궈 박사(화중과학기술대학교 컴퓨터 소프트웨어 및 이론 박사)는 Zilliz의 파트너이자 R&D Director입니다. 그는 중국컴퓨터연맹 분산 컴퓨팅 및 처리 기술위원회(CCF TCDCP)의 회원입니다. 그의 연구는 데이터베이스, 분산 시스템, 캐싱 시스템, 이기종 컴퓨팅에 중점을 두고 있습니다. 그의 연구 논문은 Usenix ATC, ICS, DATE, TPDS를 포함한 여러 최상위 학회와 저널에 게재되었습니다. Milvus의 아키텍트로서 궈 박사는 고도로 확장 가능하고 비용 효율적인 AI 기반 데이터 분석 시스템을 개발하기 위한 솔루션을 모색하고 있습니다.
샤오판 루안은 Zilliz의 파트너이자 Engineering Director이며, LF AI & Data Foundation의 Technical Advisory Committee 회원입니다. 그는 Oracle 미국 본사와 소프트웨어 정의 스토리지 스타트업인 Hedvig에서 차례로 근무했습니다. 이후 Alibaba Cloud Database 팀에 합류하여 NoSQL 데이터베이스 HBase와 Lindorm의 개발을 담당했습니다. 루안은 Cornell University에서 전자컴퓨터공학 석사 학위를 취득했습니다.
샤오멍 이 박사(화중과학기술대학교 컴퓨터 아키텍처 박사)는 Zilliz의 Senior Researcher이자 연구팀 리더입니다. 그의 연구는 고차원 데이터 관리, 대규모 정보 검색, 분산 시스템의 리소스 할당에 집중되어 있습니다. 이 박사의 연구 논문은 IEEE Network Magazine, IEEE/ACM TON, ACM SIGMOD, IEEE ICDCS, ACM TOMPECS를 포함한 주요 저널과 국제 학회에 게재되었습니다.
Filip Haltmayer는 Zilliz Data Engineer로, University of California, Santa Cruz에서 컴퓨터 과학 학사 학위를 취득했습니다. Zilliz에 합류한 후 Filip은 대부분의 시간을 클라우드 배포, 고객 상호작용, 기술 발표, AI 애플리케이션 개발에 할애하고 있습니다.
참고 문헌
- Milvus Project: https://github.com/milvus-io/milvus
- Milvus: A Purpose-Built Vector Data Management System, SIGMOD'21
- Faiss Project: https://github.com/facebookresearch/faiss
- Annoy Project: https://github.com/spotify/annoy
- SPTAG Project: https://github.com/microsoft/SPTAG
- GRIP: Multi-Store Capacity-Optimized High-Performance Nearest Neighbor Search for Vector Search Engine, CIKM'19
- DiskANN: Fast Accurate Billion-point Nearest Neighbor Search on a Single Node, NIPS'19
- HM-ANN: Efficient Billion-Point Nearest Neighbor Search on Heterogeneous Memory, NIPS'20
- SONG: Approximate Nearest Neighbor Search on GPU, ICDE'20
- A demonstration of the ottertune automatic database management system tuning service, VLDB'18
- The Case for Learned Index Structures, SIGMOD'18
- Improving Approximate Nearest Neighbor Search through Learned Adaptive Early Termination, SIGMOD'20
- AnalyticDB-V: A Hybrid Analytical Engine Towards Query Fusion for Structured and Unstructured Data, VLDB'20
오픈 소스 커뮤니티에 참여하세요:
계속 읽기

Why We Built Vector Lakebase: Rethinking Unstructured Data Architecture for AI
Vector Lakebase: a unified, lake-native data foundation for AI workloads — and an answer to what happens after vector databases succeed.

A Developer's Guide to Exploring Milvus 2.6 Features on Zilliz Cloud
Milvus 2.6 marks a shift from “vector search + glue code” to a more advanced retrieval engine, and it is now Generally Available (GA) on Zilliz Cloud (a managed Milvus service).

Zilliz Named "Highest Performer" and "Easiest to Use" in G2's Summer 2025 Grid® Report for Vector Databases
Zilliz shines in G2's Summer 2025 Grid® Report as both "Highest Performer" and "Easiest to Use," solving the performance-usability dilemma.



