차세대 APK 보안의 잠금 해제: Trend Micro의 Milvus 여정
Trend Micro는 오랫동안 사이버 보안 분야의 선구자로서, 진화하는 위협에 대응하기 위한 최첨단 솔루션을 꾸준히 제공해 왔습니다. 모바일 보안에 전념하는 Trend Micro는 APK(Android application package) 보안을 강화하기 위한 여정에 착수했습니다. 이러한 효율성 추구의 핵심에는 강력한 오픈 소스 벡터 데이터베이스인 Milvus를 보안 인프라에 통합하는 것이 있습니다.
이 블로그에서는 Trend Micro가 직면한 과제와 Milvus가 정확히 어떻게 해결책이 되었는지 살펴보겠습니다.
Android 생태계를 보호하기 위한 Trend Micro의 사명
디지털로 연결된 세상이 모바일 애플리케이션에 점점 더 의존함에 따라 Android 생태계를 보호하는 것은 무엇보다 중요해졌습니다. 보안 소프트웨어 분야의 글로벌 리더인 Trend Micro는 이러한 과제를 인식하고 모바일 보안 앱과 기반 인프라 개발을 담당하는 전문 팀을 구성했습니다. 이들의 사명은 Trend Micro의 독자 알고리즘을 활용해 바이러스를 포함한 APK를 탐지하고 무력화하는 것입니다.
데이터베이스 솔루션의 부상과 몰락: MySQL과 Faiss
Trend Micro는 이 프로젝트의 초기 단계에서 APK 유사도 검색을 위해 MySQL을 선택했습니다. 이 관계형 데이터베이스는 처음에는 SQL 쿼리와 증가하는 데이터셋의 효율적인 처리를 가능하게 하며 제 역할을 잘 수행했습니다. 그러나 데이터셋이 수천만 건으로 불어나고 매일 수십만 건씩 증가하면서 MySQL은 확장성 문제에 직면했습니다. 쿼리 지연 시간이 급증하여 시스템의 응답성을 저해하는 병목 현상이 발생했습니다.
이러한 과제를 극복하기 위해 Trend Micro는 Facebook이 출시한 유사도 검색 전용 라이브러리인 Faiss로 관심을 돌렸습니다. Faiss는 속도 면에서는 뛰어났지만, 프로덕션 환경에 필요한 핵심 기능이 부족했습니다. 데이터 관리 기능과 고가용성 기능의 부재로 인해 APK 보안이라는 미션 크리티컬한 작업에는 적합하지 않았습니다. Faiss의 비분산 특성은 수평 확장성을 더욱 저해했으며, 팀은 더 강력한 솔루션을 찾아야 했습니다.
Milvus: 포괄적인 벡터 검색 엔진
MySQL과 Faiss의 한계가 분명해지자 Trend Micro는 갈림길에 서게 되었습니다. 강력하고 확장 가능한 솔루션을 찾던 이들은 Trend Micro의 이전 접근 방식의 문제점을 해결하는 C++로 제작된 포괄적인 벡터 검색 엔진인 혁신적인 Milvus를 도입하게 되었습니다.
Evaluated Solution Comparison Summary
주요 인덱스 라이브러리와의 원활한 통합
Milvus는 Faiss, NMSLIB, Annoy를 포함한 주류 벡터 인덱스 라이브러리와의 원활한 통합이라는 돋보이는 기능으로 차별화되었습니다. 이러한 통합은 Trend Micro에 전략적 이점이 되어, Milvus가 제공하는 추가 기능을 활용하면서 Faiss의 속도를 이용할 수 있게 했습니다.
간단하고 직관적인 API와 수평 확장성
Milvus는 간단하고 직관적인 API를 제공하여 개발 팀이 특정 사용 사례에 따라 인덱싱 유형을 선택할 수 있는 전례 없는 유연성을 제공합니다.
Faiss와 달리 Milvus는 분산 아키텍처를 채택하여 상한 없이 원활한 수평 확장을 가능하게 했습니다. Trend Micro의 데이터셋이 기하급수적으로 증가함에 따라 Milvus의 설계는 증가한 부하를 처리하기 위해 더 많은 노드를 손쉽게 추가할 수 있도록 보장하여 APK 분석 인프라의 미래 대응력을 확보했습니다.
향상된 모니터링 기능
모든 미션 크리티컬 애플리케이션의 중요한 측면인 모니터링은 Milvus가 두각을 나타낸 또 다른 분야였습니다. 선도적인 오픈 소스 모니터링 도구인 Prometheus에 대한 기본 지원을 갖춘 Milvus는 Trend Micro가 성능 지표를 면밀히 추적할 수 있게 했습니다. 쿼리 지연 시간부터 데이터 가져오기 속도까지, 이 모니터링 기능은 선제적인 문제 해결을 가능하게 하여 탄력적인 APK 보안 시스템을 보장했습니다.
디지털 환경이 계속 진화함에 따라, Trend Micro의 Milvus 여정은 혁신적인 솔루션 도입의 중요성을 잘 보여줍니다. Milvus는 기존 과제를 해결하고 Trend Micro가 모바일 보안의 새로운 위협에 대응할 수 있는 미래 준비 상태로 나아가도록 이끌었습니다.
실질적 영향 실현: 낮은 지연 시간과 높은 데이터 가져오기 속도
Trend Micro의 ThashSearch 서비스에 Milvus를 구현한 것은 실질적인 결과로 이어졌습니다. 몇 달 동안 운영 중인 ThashSearch 서비스는 평균 쿼리 지연 시간을 지속적으로 95밀리초 미만으로 달성하고 있습니다. 이러한 낮은 지연 시간은 Trend Micro가 잠재적으로 유해한 APK에 대해 기업 및 개인 사용자에게 신속하게 경고할 수 있도록 하여 전반적인 보안 태세를 크게 강화합니다.
엔드투엔드 쿼리의 평균 지연 시간이 95ms 이내임을 보여주는 대시보드
하지만 중요한 것은 낮은 지연 시간만이 아닙니다. 데이터 집약적인 APK 분석 세계에서는 새로운 데이터 수집 속도도 그만큼 중요합니다. Milvus는 약 10초 만에 300만 개의 192차원 벡터 데이터를 수집할 수 있는 인상적인 데이터 가져오기 속도를 보여주었습니다. 이러한 빠른 데이터 가져오기 기능은 Trend Micro에 매우 중요하며, 데이터베이스가 항상 최신 상태를 유지하도록 보장하고 가장 정확하고 최신의 유사도 검색을 가능하게 합니다.
미래를 향하여
Trend Micro는 미래를 바라보며 Milvus의 로드맵과 향후 기능이 APK 분석 운영을 어떻게 더욱 최적화할 수 있을지에 큰 관심을 가지고 있습니다. Milvus에 문자열 유형 ID가 도입되면 가능성이 열리며, Trend Micro는 Redis 캐싱의 필요성을 없애 아키텍처를 간소화할 계획입니다.
또한 Trend Micro는 완전한 분산 시스템으로 발전하려는 Milvus의 계획에 기대를 걸고 있습니다. 현재 Milvus는 하나의 쓰기 노드만 지원하지만, 향후 버전에서는 이 제한을 제거하는 것을 목표로 하고 있습니다. TrendMicro는 이를 운영을 수평적으로 확장하고, 더 큰 데이터셋과 더 높은 쿼리 볼륨을 처리하는 능력을 강화할 기회로 보고 있습니다. ThashSearch 서비스의 성공에 힘입어, Trend Micro는 조직 내에서 Milvus의 활용 범위를 확대하는 것을 고려하고 있으며, 효율적인 벡터 유사도 검색의 이점을 얻을 수 있는 다른 프로젝트와 워크플로우에 통합하는 방안을 모색하고 있습니다.
계속 읽기

Vector Databases vs. Object-Relational Databases
Use a vector database for AI-powered similarity search; use an object-relational database for complex data modeling with both relational integrity and object-oriented features.

Similarity Metrics for Vector Search
Exploring five similarity metrics for vector search: L2 or Euclidean distance, cosine distance, inner product, and hamming distance.

Bringing AI to Legal Tech: The Role of Vector Databases in Enhancing LLM Guardrails
Discover how vector databases enhance AI reliability in legal tech, ensuring accurate, compliant, and trustworthy AI-powered legal solutions.



