GitHub 스타 3만 5천 개 이상을 향한 우리의 여정: Milvus를 처음부터 구축한 진짜 이야기
지난 몇 년 동안, 우리는 한 가지에 집중해 왔습니다. AI 시대를 위한 엔터프라이즈급 벡터 데이터베이스를 구축하는 것입니다. 어려운 부분은 하나의 데이터베이스를 만드는 것이 아닙니다. 확장 가능하고, 사용하기 쉬우며, 실제로 프로덕션에서 현실의 문제를 해결하는 데이터베이스를 만드는 것입니다.
올해 6월, 우리는 새로운 이정표에 도달했습니다. Milvus가 GitHub에서 35,000개의 스타를 달성했습니다(이 글을 쓰는 시점에는 35.5K+개의 스타를 보유하고 있습니다). 우리는 이것을 그저 또 하나의 숫자인 척하지 않을 것입니다. 이는 우리에게 큰 의미가 있습니다.
각 스타는 우리가 만든 것을 살펴보는 데 시간을 들였고, 북마크할 만큼 유용하다고 느꼈으며, 많은 경우 실제로 사용하기로 결정한 개발자 한 명을 의미합니다. 여러분 중 일부는 더 나아가 이슈를 등록하고, 코드를 기여하고, 포럼에서 질문에 답하고, 다른 개발자들이 막혔을 때 도와주었습니다.
우리는 잠시 시간을 내어 우리의 이야기, 즉 지저분한 부분까지 모두 포함한 진짜 이야기를 공유하고자 합니다.
다른 어떤 것도 제대로 작동하지 않았기 때문에 Milvus를 만들기 시작했습니다
2017년 당시, 우리는 간단한 질문에서 시작했습니다. AI 애플리케이션이 등장하기 시작하고 비정형 데이터가 폭발적으로 증가하는 상황에서, 의미 이해를 가능하게 하는 벡터 임베딩을 어떻게 효율적으로 저장하고 검색할 수 있을까?
전통적인 데이터베이스는 이를 위해 만들어지지 않았습니다. 그것들은 고차원 벡터가 아니라 행과 열에 최적화되어 있습니다. 기존 기술과 도구는 우리가 필요로 하는 것에 대해 불가능하거나 고통스러울 정도로 느렸습니다.
우리는 사용 가능한 모든 것을 시도했습니다. Elasticsearch로 해결책을 억지로 조합해 보기도 했습니다. MySQL 위에 커스텀 인덱스를 구축하기도 했습니다. FAISS도 실험해 보았지만, 그것은 프로덕션 데이터베이스 인프라가 아니라 연구용 라이브러리로 설계된 것이었습니다. 우리가 엔터프라이즈 AI 워크로드를 위해 구상했던 완전한 솔루션을 제공하는 것은 아무것도 없었습니다.
그래서 우리는 직접 만들기 시작했습니다. 그것이 쉬울 것이라고 생각했기 때문이 아닙니다. 데이터베이스는 제대로 만들기 악명 높을 정도로 어렵습니다. 하지만 AI가 어디로 향하고 있는지 볼 수 있었고, 그곳에 도달하려면 목적에 맞게 구축된 인프라가 필요하다는 것을 알았기 때문입니다.
2018년이 되자, 우리는 훗날 Milvus가 될 것을 깊이 개발하고 있었습니다. "vector database"라는 용어조차 아직 존재하지 않았습니다. 우리는 사실상 새로운 범주의 인프라 소프트웨어를 만들고 있었고, 이는 흥분되는 일이면서도 두려운 일이었습니다.
Milvus 오픈소스화: 공개적으로 구축하기
2019년 11월, 우리는 Milvus 버전 0.10을 오픈소스로 공개하기로 결정했습니다.
오픈소스로 공개한다는 것은 자신의 모든 결함을 세상에 드러내는 것을 의미합니다. 모든 임시방편, 모든 TODO 주석, 완전히 확신하지 못하는 모든 설계 결정까지 말입니다. 하지만 우리는 벡터 데이터베이스가 AI의 핵심 인프라가 되려면, 그것이 모두에게 열려 있고 접근 가능해야 한다고 믿었습니다.
반응은 압도적이었습니다. 개발자들은 Milvus를 단지 사용하기만 한 것이 아니라 개선했습니다. 우리가 놓친 버그를 찾아냈고, 우리가 고려하지 못했던 기능을 제안했으며, 우리의 설계 선택에 대해 더 깊이 생각하게 만드는 질문을 던졌습니다.
2020년, 우리는 LF AI & Data Foundation에 합류했습니다. 이는 단지 신뢰성을 위한 것이 아니었습니다. 이를 통해 우리는 지속 가능한 오픈소스 프로젝트를 유지하는 방법을 배웠습니다. 거버넌스를 다루는 법, 하위 호환성을 유지하는 법, 몇 달이 아니라 수년 동안 지속되는 소프트웨어를 만드는 법을 배웠습니다.
2021년에는 Milvus 1.0을 출시하고 LF AI & Data Foundation에서 졸업했습니다. 같은 해, 우리는 10억 규모 벡터 검색을 위한 BigANN 글로벌 챌린지에서 우승했습니다. 그 승리는 기분 좋은 일이었지만, 더 중요하게는 우리가 실제 문제를 올바른 방식으로 해결하고 있다는 것을 검증해 주었습니다.
가장 어려운 결정: 처음부터 다시 시작하기
여기서부터 상황은 복잡해집니다. 2021년에는 Milvus 1.0이 많은 사용 사례에서 잘 작동하고 있었지만, 엔터프라이즈 고객들은 계속해서 같은 것을 요구했습니다. 더 나은 클라우드 네이티브 아키텍처, 더 쉬운 수평 확장, 더 단순한 운영이었습니다.
우리는 선택해야 했습니다. 계속 패치해 나갈 것인가, 아니면 처음부터 다시 만들 것인가. 우리는 다시 만들기로 선택했습니다.
Milvus 2.0은 본질적으로 완전한 재작성에 가까웠습니다. 우리는 동적 확장성을 갖춘 완전히 분리된 스토리지-컴퓨트 아키텍처를 도입했습니다. 2년이 걸렸고, 솔직히 우리 회사 역사상 가장 스트레스가 컸던 시기 중 하나였습니다. 수천 명이 사용하던 작동 중인 시스템을 버리고 검증되지 않은 것을 만들고 있었기 때문입니다.
하지만 2022년에 Milvus 2.0을 출시했을 때, 그것은 Milvus를 강력한 벡터 데이터베이스에서 엔터프라이즈 워크로드까지 확장할 수 있는 프로덕션 준비 인프라로 변화시켰습니다. 같은 해, 우리는 Series B+ funding round도 완료했습니다—돈을 태우기 위해서가 아니라, 제품 품질과 글로벌 고객 지원에 더 집중하기 위해서였습니다. 우리는 이 길에 시간이 걸릴 것임을 알고 있었지만, 모든 단계는 탄탄한 기반 위에 구축되어야 했습니다.
AI와 함께 모든 것이 가속화되었을 때
2023년은 RAG (retrieval-augmented generation)의 해였습니다. 갑자기 시맨틱 검색은 흥미로운 AI 기법에서 챗봇, 문서 Q&A 시스템, AI 에이전트를 위한 필수 인프라로 바뀌었습니다.
Milvus의 GitHub stars가 급증했습니다. 지원 요청도 몇 배로 늘었습니다. 벡터 데이터베이스를 들어본 적도 없던 개발자들이 갑자기 인덱싱 전략과 쿼리 최적화에 대해 정교한 질문을 하기 시작했습니다.
이 성장은 흥미로웠지만 동시에 감당하기 벅찼습니다. 우리는 기술뿐만 아니라 커뮤니티 지원에 대한 접근 방식 전체도 확장해야 한다는 것을 깨달았습니다. 더 많은 developer advocates를 채용했고, 문서를 완전히 다시 작성했으며, 벡터 데이터베이스를 처음 접하는 개발자를 위한 교육 콘텐츠를 만들기 시작했습니다.
우리는 또한 Milvus의 완전 관리형 버전인 Zilliz Cloud를 출시했습니다. 어떤 사람들은 왜 우리의 오픈소스 프로젝트를 "상업화"하느냐고 물었습니다. 솔직한 답은 엔터프라이즈급 인프라를 유지하는 것은 비용이 많이 들고 복잡하다는 것입니다. Zilliz Cloud는 핵심 프로젝트를 완전히 오픈소스로 유지하면서도 Milvus 개발을 지속하고 가속화할 수 있게 해줍니다.
그리고 2024년이 왔습니다. Forrester named us a leader in the vector database category. Milvus는 GitHub stars 30,000개를 넘었습니다. 그리고 우리는 깨달았습니다: 우리가 7년 동안 닦아온 길이 마침내 고속도로가 되었다는 것을. 더 많은 엔터프라이즈가 벡터 데이터베이스를 핵심 인프라로 채택하면서, 우리의 비즈니스 성장은 빠르게 가속화되었습니다—우리가 구축한 기반이 기술적으로도 상업적으로도 확장될 수 있음을 입증한 것입니다.
Milvus 뒤의 팀: Zilliz
흥미로운 점이 하나 있습니다: 많은 사람들이 Milvus는 알지만 Zilliz는 모릅니다. 사실 우리는 그것도 괜찮다고 생각합니다. Zilliz 는 Milvus 뒤의 팀입니다—우리가 그것을 만들고, 유지보수하고, 지원합니다.
우리가 가장 중요하게 여기는 것은 멋진 데모와 프로덕션 준비 인프라의 차이를 만들어내는 화려하지 않은 것들입니다: 성능 최적화, 보안 패치, 초보자에게 실제로 도움이 되는 문서, 그리고 GitHub issues에 신중하게 응답하는 일입니다.
우리는 미국, 유럽, 아시아 전역에 24/7 글로벌 지원 팀을 구축했습니다. 개발자들은 우리의 시간대가 아니라 그들의 시간대에 도움이 필요하기 때문입니다. 우리는 "Milvus Ambassadors"라고 부르는 커뮤니티 기여자들이 있으며, 이들은 이벤트를 조직하고, 포럼 질문에 답하며, 종종 우리보다 개념을 더 잘 설명합니다.
우리는 또한 AWS, GCP 및 다른 클라우드 제공업체와의 통합을 환영해왔습니다—그들이 자체 관리형 Milvus 버전을 제공할 때조차도 말입니다. 더 많은 배포 옵션은 사용자에게 좋습니다. 다만 팀들이 복잡한 기술적 문제에 부딪히면, 시스템을 가장 깊은 수준에서 이해하는 우리가 결국 직접 문의를 받는 경우가 많다는 점을 보아왔습니다.
많은 사람들은 오픈 소스를 단순한 "도구 상자"라고 생각하지만, 실제로는 그것을 사랑하고 믿는 수많은 사람들의 집단적 노력인 "진화적 과정"입니다. 아키텍처를 진정으로 이해하는 사람만이 버그 수정, 성능 병목 분석, 데이터 시스템 통합, 아키텍처 조정 이면의 "왜"를 설명할 수 있습니다.
따라서 오픈 소스 Milvus를 사용 중이거나, 벡터 데이터베이스를 AI 시스템의 핵심 구성 요소로 고려하고 있다면, 가장 전문적이고 시의적절한 지원을 위해 저희에게 직접 문의하시기를 권장합니다.
프로덕션에서의 실제 영향: 사용자들의 신뢰
Milvus의 사용 사례는 우리가 처음 상상했던 범위를 넘어 성장했습니다. 우리는 모든 산업 분야에서 세계에서 가장 까다로운 기업들의 AI 인프라를 지원하고 있습니다.
Bosch는 글로벌 자동차 기술 리더이자 자율주행의 선구자로, Milvus를 통해 데이터 분석을 혁신하여 데이터 수집 비용을 80% 절감하고 연간 140만 달러를 절약했으며, 중요한 엣지 케이스를 위해 수십억 개의 주행 시나리오를 밀리초 단위로 검색하고 있습니다.
Read AI는 월간 활성 사용자 수백만 명에게 서비스를 제공하는 가장 빠르게 성장하는 생산성 AI 기업 중 하나로, Milvus를 사용하여 수십억 개의 레코드 전반에서 20~50ms 미만의 검색 지연 시간을 달성하고 에이전틱 검색에서 5배의 속도 향상을 이루었습니다. 그들의 CTO는 "Milvus는 중앙 저장소 역할을 하며 수십억 개의 레코드 속에서 우리의 정보 검색을 구동합니다."라고 말합니다.
A global fintech leader는 200개 이상의 국가와 25개 이상의 통화에서 수백억 건의 거래를 처리하는 세계 최대 디지털 결제 플랫폼 중 하나로, 경쟁사보다 5~10배 빠른 배치 수집 성능을 제공하는 Milvus를 선택하여 다른 솔루션에서 8시간 이상 걸리던 작업을 1시간 이내에 완료했습니다.
Filevine은 미국 전역의 수천 개 로펌이 신뢰하는 선도적인 법률 업무 플랫폼으로, 수백만 건의 법률 문서에 걸쳐 30억 개의 벡터를 관리하며, 변호사들이 문서 분석에 소요하는 시간을 60~80% 절감하고 법률 사건 관리를 위한 "데이터의 진정한 의식"을 실현하고 있습니다.
우리는 또한 거의 모든 산업 분야에서 NVIDIA, OpenAI, Microsoft, Salesforce, Walmart, 및 그 외 많은 기업을 지원하고 있습니다. 10,000개 이상의 조직이 Milvus 또는 Zilliz Cloud를 자신들의 벡터 데이터베이스로 선택했습니다.
이것들은 단순한 기술적 성공 사례가 아닙니다. 벡터 데이터베이스가 사람들이 매일 사용하는 AI 애플리케이션을 구동하는 핵심 인프라로 조용히 자리 잡아가고 있음을 보여주는 사례입니다.
우리가 Zilliz Cloud를 만든 이유: 서비스형 엔터프라이즈급 벡터 데이터베이스
Milvus는 오픈 소스이며 무료로 사용할 수 있습니다. 하지만 엔터프라이즈 규모에서 Milvus를 제대로 운영하려면 깊은 전문 지식과 상당한 리소스가 필요합니다. 인덱스 선택, 메모리 관리, 확장 전략, 보안 구성—이러한 것들은 결코 사소한 결정이 아닙니다. 많은 팀은 운영 복잡성 없이, 그리고 엔터프라이즈 지원과 SLA 보장 등을 갖춘 Milvus의 성능을 원합니다.
그래서 우리는 Zilliz Cloud를 만들었습니다. 이는 AWS, GCP, Azure를 포함한 5대 주요 클라우드와 전 세계 25개 리전에 배포된 Milvus의 완전 관리형 버전으로, 성능, 보안, 안정성을 요구하는 엔터프라이즈 규모 AI 워크로드를 위해 특별히 설계되었습니다.
Zilliz Cloud가 다른 점은 다음과 같습니다.
대규모 확장성과 고성능: 당사의 독자적인 AI 기반 AutoIndex 엔진은 오픈 소스 Milvus보다 3~5배 빠른 쿼리 속도를 제공하며, 인덱스 튜닝이 전혀 필요하지 않습니다. 클라우드 네이티브 아키텍처는 수십억 개의 벡터와 수만 개의 동시 쿼리를 지원하면서도 1초 미만의 응답 시간을 유지합니다.
기본 제공 보안 및 컴플라이언스: 저장 및 전송 중 암호화, 세분화된 RBAC, 포괄적인 감사 로깅, SAML/OAuth2.0 통합, BYOC(bring your own cloud) 배포. 우리는 기업이 실제로 필요로 하는 GDPR, HIPAA 및 기타 글로벌 표준을 준수합니다.
비용 효율성에 최적화: 계층형 핫/콜드 데이터 스토리지, 실제 워크로드에 대응하는 탄력적 확장, 사용량 기반 요금제를 통해 자체 관리형 배포에 비해 총소유비용을 50% 이상 줄일 수 있습니다.
벤더 종속성 없는 진정한 클라우드 애그노스틱: 벤더 종속성 없이 AWS, Azure, GCP, Alibaba Cloud 또는 Tencent Cloud에 배포하세요. 어디에서 실행하든 글로벌 일관성과 확장성을 보장합니다.
이러한 기능은 화려하게 들리지 않을 수 있지만, 엔터프라이즈 팀이 대규모 AI 애플리케이션을 구축할 때 매일 직면하는 실제 문제를 해결합니다. 그리고 가장 중요한 점은, 내부적으로는 여전히 Milvus이므로 독점적 종속성이나 호환성 문제가 없다는 것입니다.
다음 단계: Vector Data Lake
우리는 "벡터 데이터베이스"라는 용어를 만들고 최초로 이를 구축했지만, 여기서 멈추지 않습니다. 이제 다음 진화 단계인 Vector Data Lake를 구축하고 있습니다.
우리가 해결하려는 문제는 다음과 같습니다: 모든 벡터 검색에 밀리초 단위 지연 시간이 필요한 것은 아닙니다. 많은 기업은 과거 문서 분석, 배치 유사도 계산, 장기 추세 분석을 포함해 가끔 쿼리되는 대규모 데이터셋을 보유하고 있습니다. 이러한 사용 사례에서는 기존의 실시간 벡터 데이터베이스가 과도한 선택이자 비용이 많이 드는 선택입니다.
Vector Data Lake는 대규모이면서 자주 접근되지 않는 벡터에 특별히 최적화된 스토리지-컴퓨트 분리 아키텍처를 사용하며, 실시간 시스템보다 비용을 크게 낮게 유지합니다.
핵심 기능은 다음과 같습니다:
통합 데이터 스택: 일관된 형식과 효율적인 스토리지로 온라인 및 오프라인 데이터 계층을 원활하게 연결하므로, 재포맷이나 복잡한 마이그레이션 없이 핫 티어와 콜드 티어 간에 데이터를 이동할 수 있습니다.
호환 가능한 컴퓨트 생태계: Spark 및 Ray와 같은 프레임워크와 네이티브로 작동하며, 벡터 검색부터 기존 ETL 및 분석까지 모두 지원합니다. 즉, 기존 데이터 팀이 이미 알고 있는 도구를 사용해 벡터 데이터로 작업할 수 있습니다.
비용 최적화 아키텍처: 핫 데이터는 빠른 접근을 위해 SSD 또는 NVMe에 유지되고, 콜드 데이터는 S3와 같은 객체 스토리지로 자동 이동합니다. 스마트 인덱싱 및 스토리지 전략은 필요할 때 I/O를 빠르게 유지하면서 스토리지 비용을 예측 가능하고 합리적으로 만듭니다.
이는 벡터 데이터베이스를 대체하려는 것이 아니라, 엔터프라이즈에 각 워크로드에 맞는 올바른 도구를 제공하려는 것입니다. 사용자 대상 애플리케이션을 위한 실시간 검색, 분석 및 히스토리 처리에 적합한 비용 효율적인 벡터 데이터 레이크입니다.
우리는 여전히 무어의 법칙과 제본스 역설 뒤에 있는 논리를 믿습니다. 컴퓨팅의 단위 비용이 낮아질수록 도입은 확산됩니다. 벡터 인프라에도 같은 원리가 적용됩니다.
인덱스, 스토리지 구조, 캐싱, 배포 모델을 매일 꾸준히 개선함으로써, 우리는 AI 인프라를 모두에게 더 접근 가능하고 경제적으로 만들고, 비정형 데이터를 AI 네이티브 미래로 가져오는 데 기여하고자 합니다.
여러분 모두에게 큰 감사드립니다!
35K+개의 스타는 우리가 진심으로 자랑스럽게 여기는 것을 의미합니다. Milvus가 추천하고 기여할 만큼 유용하다고 생각하는 개발자 커뮤니티입니다.
하지만 우리는 아직 끝나지 않았습니다. Milvus에는 수정해야 할 버그, 개선해야 할 성능, 그리고 커뮤니티가 요청해 온 기능들이 있습니다. 우리의 로드맵은 공개되어 있으며, 무엇을 우선순위에 둘지에 대한 여러분의 의견을 진심으로 원합니다.
숫자 자체가 중요한 것은 아닙니다. 중요한 것은 그 스타들이 나타내는 신뢰입니다. 우리가 계속 공개적으로 구축하고, 피드백에 귀 기울이며, Milvus를 계속 더 좋게 만들어 갈 것이라는 신뢰입니다.
기여자 여러분께: 여러분의 PR, 버그 리포트, 문서 개선은 매일 Milvus를 더 좋게 만듭니다. 정말 감사합니다.
사용자 여러분께: 여러분의 프로덕션 워크로드를 저희에게 맡겨 주시고, 저희가 늘 정직할 수 있도록 해 주는 피드백을 보내 주셔서 감사합니다.
커뮤니티 여러분께: 질문에 답해 주시고, 이벤트를 조직해 주시며, 새로 오신 분들이 시작할 수 있도록 도와주셔서 감사합니다.
벡터 데이터베이스가 처음이시라면, 시작하실 수 있도록 기꺼이 도와드리겠습니다. 이미 Milvus 또는 Zilliz Cloud를 사용하고 계시다면, 여러분의 경험을 들려주시면 감사하겠습니다. 그리고 저희가 무엇을 만들고 있는지 궁금하신 것뿐이라면, 저희 커뮤니티 채널은 언제나 열려 있습니다.
AI 애플리케이션을 가능하게 하는 인프라를 함께 계속 만들어 갑시다.
여기에서 저희를 만나보세요: GitHub의 Milvus | Zilliz Cloud | Discord | LinkedIn | X | YouTube
계속 읽기

Context Engineering Strategies for AI Agents: A Developer’s Guide
Learn practical context engineering strategies for AI agents. Explore frameworks, tools, and techniques to improve reliability, efficiency, and cost.

How to Build an Enterprise-Ready RAG Pipeline on AWS with Bedrock, Zilliz Cloud, and LangChain
Build production-ready enterprise RAG with AWS Bedrock, Nova models, Zilliz Cloud, and LangChain. Complete tutorial with deployable code.

What is the K-Nearest Neighbors (KNN) Algorithm in Machine Learning?
KNN is a supervised machine learning technique and algorithm for classification and regression. This post is the ultimate guide to KNN.



