Zilliz Cloud Serverless를 사용한 GenAI 앱 구축 비용 최대 50배 절감
소개
생성형 AI의 최근 발전으로 벡터 데이터베이스의 사용 사례가 기하급수적으로 증가하고 있습니다. 예를 들어, 인기 있는 대규모 언어 모델(LLM) 향상 기술인 검색 증강 생성(RAG)은 Milvus 및 Zilliz Cloud(관리형 Milvus)와 같은 벡터 데이터베이스를 활용하여 관련 정보를 저장, 인덱싱, 검색함으로써 LLM이 더 정확한 결과를 생성하도록 돕습니다.
최근 샌프란시스코에서 열린 Unstructured Data Meetup에서 Zilliz의 엔지니어링 부사장인 James Luan은 개발자들이 생성형 AI 애플리케이션에서 Zilliz의 새로운 제품인 Zilliz Cloud Serverless를 어떻게 활용할 수 있는지 논의했습니다. 간단히 말해, Zilliz의 이 새로운 서비스는 사용자가 방대한 양의 벡터 임베딩을 훨씬 적은 비용으로 저장, 인덱싱, 쿼리할 수 있게 해줍니다. 좋은 소식은 Zilliz Cloud Serverless의 성능 또한 인메모리 벡터 데이터베이스와 비교해도 매우 경쟁력 있다는 점입니다.
이 글에서는 James의 핵심 요점을 요약하고 Zilliz Cloud Serverless를 더 깊이 살펴보겠습니다. 자세한 내용은 YouTube에서 그의 발표 보기를 통해서도 확인할 수 있습니다.
AI 시대에 벡터 데이터베이스가 중요한 이유
검색 증강 생성(RAG), 추천 시스템, AI 기반 챗봇, 시맨틱 검색 엔진과 같은 최신 AI 애플리케이션과 기술에는 방대한 양의 비정형 데이터를 효율적으로 처리할 수 있는 신뢰할 수 있는 시스템이 필요합니다. 벡터 데이터베이스는 이러한 데이터를 효과적으로 저장, 인덱싱, 검색할 수 있게 해주는 저장 시스템입니다.
Milvus 및 Zilliz Cloud와 같은 벡터 데이터베이스에는 사용자가 효율적이고 빠른 데이터 검색을 위해 선택할 수 있는 고급 인덱싱 방법이 갖춰져 있습니다. 특히 Milvus와 Zilliz Cloud를 비롯한 많은 벡터 데이터베이스는 LangChain, Spark, Snowflake, Hugging Face와 같은 인기 AI 프레임워크 및 플랫폼과의 간편한 통합도 제공하여 생성형 AI 개발자가 정교한 AI 애플리케이션을 더 쉽게 구축할 수 있도록 합니다. 밀집 벡터 검색, 밀집 및 희소 벡터의 하이브리드 검색과 같은 다양한 시맨틱 검색 접근 방식을 통해 개발자는 어떤 사용 사례에서도 가장 관련성 높은 결과를 얻을 수 있습니다.
최근 Milvus 커뮤니티의 생성형 AI 개발자 1,000명을 대상으로 한 2024년 설문조사에서는 이들이 AI 애플리케이션에 사용하기 전에 벡터 데이터베이스에서 확인하는 일곱 가지 측면을 파악했습니다:
검색 품질: 주어진 쿼리에 대해 가져온 결과가 얼마나 관련성이 있는가?
비용 효율성: 운영 및 유지관리 비용 측면에서 데이터베이스가 얼마나 경제적인가?
사용 용이성: 개발자가 구현하고 관리하기에 데이터베이스가 얼마나 사용자 친화적이고 직관적인가?
성능: 데이터베이스가 쿼리를 얼마나 빠르고 효율적으로 처리하고 결과를 반환할 수 있는가?
확장성: 데이터와 테넌트가 증가해도 성능 저하 없이 데이터베이스가 얼마나 잘 처리할 수 있나요?
고가용성: 장애 발생 시 데이터베이스가 얼마나 안정적으로 가동 시간을 유지하고 데이터 손실을 방지할 수 있나요?
보안: 데이터베이스가 민감한 데이터를 얼마나 잘 보호하고 무단 액세스를 방지하나요?
그림 1: 1000명의 Gen AI 개발자로부터 수집한 벡터 데이터베이스 선택을 위한 주요 고려 사항
Milvus는 검색 품질 면에서 높은 평가를 받고 있습니다. 사용자는 다양한 인덱싱 및 벡터 검색 방법을 선택하여 성능과 재현율의 균형을 맞추고, 깊이와 맥락 모두에서 관련 정보를 검색할 수 있습니다.
사용자는 인덱싱 방법으로 Flat, IVFFlat, HNSW 등 여러 가지 중에서 선택할 수 있습니다. 각 인덱싱 방법에는 장단점이 있으며, 이러한 방법에 대한 자세한 설명은 벡터 인덱스 선택에 관한 이 글에서 확인할 수 있습니다.
벡터 검색 작업의 경우, 쿼리에 대한 관련 결과를 얻기 위해 dense, sparse 또는 hybrid search를 사용할 수 있습니다. 또한 검색 작업 중 scalar filtering을 Boolean operation 접근 방식과 함께 사용하여 결과를 더욱 정교하게 다듬을 수 있습니다.
Zilliz Cloud Serverless의 도입은 위에서 언급한 벡터 데이터베이스의 두 번째와 세 번째로 바람직한 측면인 비용 효율성과 사용 편의성을 크게 향상시킵니다. 다음 섹션에서는 Zilliz Cloud Serverless가 이 두 가지 측면에서 Milvus를 어떻게 개선하는지 보여줍니다.
AI 애플리케이션 개발에서의 일반적인 문제
AI 애플리케이션을 개발할 때, 사용할 벡터 데이터베이스를 결정한 후 다음 단계는 프로토타입을 개발하는 것입니다. 이 단계에서는 일반적으로 전체 데이터 또는 일부 하위 집합을 벡터 데이터베이스에 저장한 다음, 대규모 언어 모델 (LLM)을 선택하고 프롬프트를 개발합니다. 그런 다음, 사용 사례의 품질 목표를 충족하는 LLM과 프롬프트 집합을 선택합니다. 마지막으로, AI 애플리케이션을 프로덕션에 배포합니다.
하지만 AI 애플리케이션의 사용자 기반이 성장함에 따라 인프라를 유지 관리하고 확장하는 복잡성이 더욱 두드러집니다. 사용자당 비용, 프로덕션에서 애플리케이션 성능 모니터링, 멀티테넌시 처리, 버스트 트래픽 관리, 소프트웨어 버그 해결 등과 같은 측면을 고려해야 합니다.
사용자 기반이 커질수록 검색 품질, 지연 시간, 가용성과 같은 핵심 성능 지표를 유지하면서 사용자의 요구를 수용하는 비용이 더 많이 듭니다. 따라서 AI 애플리케이션을 프로덕션 환경에 배포할 때 올바른 인프라와 소프트웨어 아키텍처를 선택하는 것이 중요합니다.
AI 애플리케이션을 확장하는 한 가지 솔루션은 Zilliz Cloud의 전용 클러스터를 이용하는 것입니다.
그림 2: Zilliz 전용 클러스터의 아키텍처
전용 클러스터는 AI 애플리케이션을 위한 전용 환경과 리소스를 제공하여 향상된 성능으로 더 큰 데이터셋을 처리할 수 있게 합니다. 다음과 같은 고급 기능을 제공합니다:
스토리지와 컴퓨팅의 분리.
배치 워크로드를 위한 탄력적 리소스 풀.
S3와 같은 객체 스토리지 시스템으로의 데이터 백업.
훨씬 더 빠른 검색 속도를 위한 데이터 캐싱.
이러한 클러스터는 클라우드에 호스팅되어 로컬 인프라 관리의 필요성을 제거합니다.
하지만 전용 클러스터의 주요 단점은 높은 초기 비용과 지속 비용입니다. 클러스터가 검색 활동 없이 유휴 상태일 때도 월 $100 이상이 들 수 있습니다. 또한 저장된 데이터의 사용자 기반과 볼륨이 증가함에 따라 성능이 저하될 수 있습니다. 따라서 비용 효율적일 뿐만 아니라 AI 애플리케이션이 더 높은 사용자 기반에 도달할 때 확장할 수 있는 아키텍처를 구축하려면 더 나은 솔루션이 필요합니다.
Zilliz Cloud Serverless, 최대 50배 비용 절감
Zilliz Cloud Serverless는 프로덕션에서 AI 애플리케이션을 원활하게 실행하기 위한 인프라 비용을 최소화하도록 Zilliz가 제공하는 최신 아키텍처 발전을 나타냅니다. 다양한 워크로드에 적응하는 종량제 요금제 및 자동 확장과 같은 기능을 통해 인메모리 벡터 데이터베이스와 비교해 최대 50배 비용 절감을 제공합니다. 서버리스 제품은 AWS 및 GCP를 포함한 주요 클라우드 제공업체에서 사용할 수 있으며 곧 Azure에서도 제공될 예정입니다.
Figure 3- Zilliz Cloud Serverless Key Benefits
Zilliz Cloud Serverless는 AI 애플리케이션의 비용을 최적화하기 위해 네 가지 핵심 기술을 구현합니다:
논리적 클러스터 및 자동 확장
스트리밍 데이터와 과거 데이터의 분리
다양한 데이터 저장 요구에 맞춘 계층형 스토리지
멀티테넌시 및 핫-콜드 데이터 분리
이제 이러한 각 기술을 더 깊이 살펴보겠습니다.
논리적 클러스터 및 자동 확장
Zilliz Cloud Serverless는 논리적 클러스터와 자동 확장의 개념을 도입합니다. 논리적 클러스터는 물리적 클러스터의 데이터베이스에 해당합니다. 물리적 클러스터는 여러 노드 유형으로 구성되며, 각각 고유한 기능을 갖습니다:
Proxy nodes: 트래픽을 라우팅하고, 할당량에 따라 요청을 제한하며, CPU 및 네트워크 대역폭에 따라 확장됩니다.
Streaming nodes: 스트리밍 데이터 검색을 제공하며 쓰기 큐 시간 및 CPU/메모리 사용량에 따라 확장됩니다.
Query nodes: 과거 데이터 검색 요청을 처리하며 검색 큐 시간 및 CPU/메모리에 따라 확장됩니다.
Index nodes: 객체 스토리지에 저장된 blob 데이터에 대한 인덱스를 구축합니다.
Figure 4: The diagram of logical clusters
논리적 클러스터는 API 키를 통해 각 테넌트에 대한 인증 메커니즘을 사용하여 작동합니다. 각 테넌트에는 고유한 API 키가 있으며, 시스템은 이를 사용하여 요청을 라우팅하고 쿼리 작업 중 올바른 데이터가 검색되도록 보장합니다.
데이터 쓰기 작업 중에는 즉석에서 생성된 모든 데이터가 스트리밍 노드 내부에 특정 시간 간격 동안 저장됩니다. 이를 통해 최신 데이터를 낮은 지연 시간으로 검색할 수 있습니다. 잠시 후 이 스트리밍 데이터는 blob 스토리지(예: S3)로 플러시되며, 여기서 인덱스 노드가 모든 데이터의 인덱스를 구축합니다.
쿼리 작업 중에는 모든 인덱싱된 데이터가 쿼리 노드의 로컬 디스크에 캐시됩니다. 이 방법은 인메모리 인덱싱과 비교해 스토리지 비용을 크게 줄입니다.
스트리밍 데이터와 과거 데이터의 분리
이전 섹션에서 논의한 것처럼, Zilliz Cloud Serverless는 아키텍처에서 서로 다른 노드 유형을 구현하여 스트리밍 데이터를 과거 데이터와 효과적으로 분리합니다.
스트리밍 데이터는 실시간으로 지속적으로 생성되어 즉석에서 처리되는 데이터를 의미하는 반면, 과거 데이터는 이전에 수집되어 저장된 데이터를 의미합니다. 스트리밍 데이터에는 신선하고 최신 정보가 포함되어 있으며, 특정 기간 동안 스트리밍 노드 내부에 저장되어 쿼리 작업 중 빠른 검색을 보장합니다.
미리 정해진 기간이 지나면 스트리밍 노드 내부의 데이터는 blob storage로 플러시되어 사실상 historical data의 일부가 됩니다. 이 전환은 중요합니다. blob storage는 일반적으로 실시간 데이터나 fresh data와 같은 수준의 즉각적인 접근이 필요하지 않은 대량의 데이터에 대해 더 비용 효율적인 솔루션이기 때문입니다.
Figure 5- 논리적 클러스터 내 다양한 노드의 워크플로
검색 작업 중에는 모든 historical data가 query nodes에 캐시됩니다. 그런 다음 시스템은 streaming nodes와 query nodes의 검색 결과를 병합하여 포괄적인 결과를 제공합니다.
계층형 스토리지
vector databases의 높은 운영 비용의 주요 이유 중 하나는 모든 데이터가 RAM에 저장된다는 점입니다. 이 문제를 해결하기 위해 Zilliz Cloud Serverless는 아키텍처에 계층형 데이터 스토리지 기술을 도입했습니다.
계층형 데이터 스토리지는 간단합니다. 데이터는 성능 요구 사항, 비용, 접근 빈도에 따라 서로 다른 계층으로 구성됩니다. 일반적인 규칙은 자주 접근되는 데이터는 더 비싸고 고성능인 스토리지에 저장하고, 덜 자주 접근되는 데이터는 더 저렴하고 느린 스토리지에 저장하는 것입니다. 각 데이터 범주에 서로 다른 스토리지 계층을 구현함으로써 데이터 스토리지의 전체 비용을 최적화할 수 있습니다.
Figure 6- 계층형 스토리지 다이어그램
낮은 지연 시간으로 검색해야 하는 자주 접근되는 데이터는 RAM에 저장됩니다. 위에 설명된 것처럼 RAM에 데이터를 저장하는 비용은 스토리지 GB당 약 $5입니다. 하지만 그 대가로 약 100나노초 안에 결과를 얻을 수 있으며, 이는 다른 계층과 비교해 가장 빠릅니다.
반면, 덜 자주 접근되는 데이터는 Amazon S3와 같은 blob storage에 저장됩니다. 이는 스토리지 GB당 약 $0.023의 비용이 들지만 결과를 검색하는 데 10밀리초 이상이 걸립니다.
멀티테넌시와 Hot-Cold 분리
Zilliz Cloud Serverless는 특히 멀티테넌시 사용 사례를 위해 다층 데이터 캐싱을 도입합니다. 이는 "hot" 테넌트와 "cold" 테넌트의 데이터 스토리지를 구분합니다.
hot 테넌트는 데이터 검색이나 쿼리를 자주 수행하는 매우 활발한 사용자입니다. 반대로 cold 테넌트는 활동이 적고 데이터 검색을 드물게 수행합니다.
테넌트가 hot으로 분류되면 해당 데이터는 로컬 메모리에 저장되어 낮은 지연 시간의 검색이 보장됩니다. 한편 테넌트가 cold로 분류되고 데이터 검색을 수행하려는 경우, 먼저 모든 데이터를 blob storage(예: S3)에서 로드해야 하므로 hot 테넌트보다 검색 시간이 더 길어집니다.
Figure 7: 멀티테넌트 사용 사례에서의 Hot-cold 분리
애플리케이션은 blob storage의 모든 데이터를 로컬 메모리로 로드하여 지연 시간을 개선하도록 사전 워밍할 수 있습니다. 그러면 사용자가 AI 애플리케이션에 접근할 때 검색 프로세스를 낮은 지연 시간으로 완료할 수 있습니다.
Zilliz Cloud Serverless는 데이터 검색 프로세스를 더욱 가속화하기 위해 내부적으로 partition keys를 기준으로 데이터 클러스터링도 구현합니다. 데이터 검색 중 시스템은 사용 가능한 모든 데이터가 아니라 가능성이 높은 파티션 내의 데이터만 검색합니다.
아래는 hot, warm, cold 검색 간의 비용 비교입니다.
| Cold Search | Warm Search | Hot Search | |
| 1M, 768Dim | 2.3s | 80ms | 4ms |
| 10M, 768Dim | 7s | 150ms | 7ms |
Table: 단일 테넌트에서 cold 검색과 hot 검색 간의 지연 시간 비교.
그림에서 볼 수 있듯이, 콜드 검색(모든 데이터가 blob storage에 있는 경우)은 검색 작업 중 데이터 검색에 더 많은 시간이 필요합니다. 768차원 벡터로 구성된 1,000만 개의 임베딩에 대해, 시스템은 검색 작업을 완료하는 데 약 7초가 필요합니다. 이 속도는 RAG와 같은 일반적인 생성형 AI 사용 사례에는 여전히 허용 가능한 수준입니다. 반면, 동일한 시나리오에서 모든 데이터가 로컬 메모리에 있는 경우에는 7밀리초만 필요합니다.
그러나 콜드 검색을 수행하면 상당한 비용 절감 효과가 있습니다. 콜드 검색용 데이터베이스 비용은 약 915입니다. 이는 Zilliz Cloud Serverless 아키텍처를 통해 50배의 비용 절감을 의미합니다.
Zilliz Cloud의 새로운 기능은 무엇인가요?
서버리스 제품 외에도, Zilliz는 최근 프로덕션 환경에서 AI 워크로드 실행 지원을 강화하기 위해 Zilliz Cloud의 새로운 기능을 발표했습니다. 다음은 이러한 새로운 추가 기능과 개선 사항에 대한 간략한 개요입니다:
Serverless general availability (GA).
데이터베이스와 기타 데이터 시스템 간에 벡터 데이터를 원활하게 전송하기 위한 Migration Service ****
Fivetran Connector: 500개 이상의 소스에서 비정형 데이터 수집 기능을 크게 확장하는 Fivetran과의 새로운 통합
Multi-replica: 클러스터 수준 복제를 가능하게 하여 쿼리 성능과 시스템 가용성을 크게 향상시킵니다.
Auto-scaling (private preview): Zilliz Cloud는 프로덕션 환경에서 흔히 발생하는 과제, 즉 변동하는 수요에 대응해 클러스터 용량을 관리하는 문제를 해결하는 auto-scaling 기능을 private preview로 출시하고 있습니다.
새로운 Zilliz Cloud 리전 온라인: AWS Tokyo (ap-northeast-1), 이는 아시아 태평양 및 인접 지역 사용자에게 더 낮은 지연 시간, 더 나은 성능, 더 강력한 데이터 주권을 의미합니다.
그리고 더 많은 기능이 있습니다! 더 자세한 정보는 최신 Zilliz Cloud 출시 블로그를 읽어보세요.
결론
Zilliz Cloud Serverless는 AI 애플리케이션 시스템의 운영과 비용을 최적화하기 위해 Zilliz가 구현한 최신 발전을 나타냅니다. 네 가지 핵심 기술을 활용함으로써, 사용자는 잠재적으로 인메모리 벡터 데이터베이스보다 최대 50배 낮은 비용으로 AI 애플리케이션을 운영할 수 있습니다. 이러한 기술에는 논리적 클러스터, 스트리밍 및 히스토리 데이터 분리, 계층형 스토리지, 멀티테넌시 핫-콜드 분리가 포함됩니다.
Zilliz Cloud Serverless를 시작해 보고 싶다면 무료로 체험해 볼 수 있습니다. 자세히 알아보려면 이 페이지를 방문하세요!
있으니
계속 읽기

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).

Top 10 Context Engineering Techniques You Should Know for Production RAG
A practical guide to context engineering for production LLM systems, covering RAG, context processing, memory, agents, and multimodal context.

Introducing Zilliz Cloud Global Cluster: Region-Level Resilience for Mission-Critical AI
Zilliz Cloud Global Cluster delivers multi-region resilience, automatic failover, and fast global AI search with built-in security and compliance.


