Инженерный взгляд: почему Milvus — привлекательный вариант для ваших приложений?
Векторные базы данных необходимы для современного управления данными и широко используются при создании приложений — от рекомендательных систем и чат-ботов до искусственного общего интеллекта (AGI) и retrieval augmented generation (RAG). В этой динамичной среде Milvus является первопроходцем, а его недавний релиз, Milvus 2.3, представляет множество интересных новых функций и улучшений.
В этом блоге мы рассмотрим Milvus 2.3 с инженерной точки зрения и поделимся соображениями о том, почему Milvus 2.3 является отличным выбором для новичков и существующих пользователей с трех ключевых сторон: выбора базы данных, опыта разработки и надежности системы.
Баланс производительности, стоимости и масштабируемости
При выборе векторной базы данных большинство пользователей учитывают три основных фактора: производительность, стоимость и масштабируемость. Предыдущая серия Milvus 2.x ставила во главу угла масштабируемость, делая их адаптируемыми к различным средам и способными хранить и искать миллиарды векторов. Milvus 2.3 идет еще дальше в оптимизации масштабирования, обеспечивая плавный переход от миллионов к миллиардам векторов благодаря своему облачно-нативному разделению хранения и вычислений.
Milvus 2.3 также предоставляет пользователям несколько вариантов развертывания с учетом производительности и стоимости, включая варианты docker для GPU, CPU (ARM64 и x86), а также варианты Kubernetes (Milvus Operator и Helm).
Пользователи, для которых производительность является приоритетом, могут выбрать Milvus 2.3 с docker для GPU, что обеспечивает производительность в 3–10 раз выше, чем вариант с CPU.
Пользователи, чувствительные к стоимости, могут выбрать вариант Milvus для ARM64, который более бюджетен, сохраняя при этом приемлемую производительность.
Milvus 2.3 также поддерживает MMap — системный вызов UNIX, который отображает файлы и другие объекты в память, тем самым значительно увеличивая емкость данных на одной машине при сниженных затратах. Согласно результатам нашего тестирования, при поддержке MMap Milvus может удвоить емкость данных, ограничив снижение производительности пределами 20%. Мы продолжим оптимизировать эту функцию в предстоящей версии Milvus 2.3.1, стремясь увеличить емкость данных до 20 раз по сравнению с текущей.
Предоставление разработчикам простоты
Современным приложениям требуется больше, чем базовые функции векторного поиска, такие как вставка, удаление и извлечение. Например, разным приложениям нужны разные запросы, такие как top-k векторные запросы, запросы на основе расстояния и запросы с фильтрацией по атрибутам. Кроме того, этим приложениям могут потребоваться другие методы для вычисления векторного расстояния, включая евклидово расстояние (L2), скалярное произведение (IP) и косинусное сходство (COSINE).
Milvus 2.3 улучшил свой API, чтобы удовлетворить все эти разнообразные требования, сделав разработку более простой. Например, новая функция upsert упрощает управление данными, объединяя вставку и обновление данных в одну строку кода. Индекс ScaNN обеспечивает высокопроизводительное индексирование, предлагая более высокую скорость запросов, чем старые версии.
Milvus также поддерживает интеграцию данных с другими продуктами, предоставляя инструменты миграции и возможности инкрементального захвата данных для упрощения управления данными.
Обеспечение стабильности и доступности на уровне секунд
Milvus доказал свою надежность и доступность для производственных сред благодаря постоянной оптимизации.
В серии 2.1.x была представлена репликация памяти, что значительно повысило стабильность системы. Серия 2.2.x добавила возможности изоляции сбоев для групп ресурсов, повысив отказоустойчивость системы. Развивая успехи предыдущих версий, Milvus 2.3 представляет Look Aside Load Balancer, который обеспечивает еще более быстрое обнаружение событий узлов и гарантирует переключение при отказе и расширение ресурсов на уровне секунд.
Milvus 2.3 также включает улучшенное управление памятью, усовершенствованные последовательные обновления и поддержку большего числа таблиц в одном кластере, что приводит к дополнительному повышению общей стабильности системы.
Заключение
В быстро развивающейся сфере векторных баз данных Milvus 2.3 выделяется как образец совершенства. Он предлагает всё, что нужно пользователям в современной векторной базе данных: высокую производительность, масштабируемость, доступность, стабильность и экономическую эффективность.
По мере того как технологии продолжают развиваться, развивается и Milvus. Мы продолжим неустанно оптимизировать Milvus и внедрять передовые функции в будущих версиях, такие как удаление по выражениям, бесшовное развертывание в облаке Azure, расширенная поддержка массивов, оптимизация значений по умолчанию/null и динамическое добавление столбцов. Следите за новостями.
Это путешествие — не то, в которое мы отправляемся в одиночку. Мы приглашаем всё сообщество активно изучать Milvus, делиться своими идеями и вносить вклад в дальнейшую эволюцию этой замечательной технологии.
Читать далее

Why Teams Are Migrating from Weaviate to Zilliz Cloud — and How to Do It Seamlessly
Explore how Milvus scales for large datasets and complex queries with advanced features, and discover how to migrate from Weaviate to Zilliz Cloud.

Zilliz Cloud Delivers Better Performance and Lower Costs with Arm Neoverse-based AWS Graviton
Zilliz Cloud adopts Arm-based AWS Graviton3 CPUs to cut costs, speed up AI vector search, and power billion-scale RAG and semantic search workloads.

Expanding Our Global Reach: Zilliz Cloud Launches in Azure Central India
Zilliz Cloud expands to Azure Central India. This new region helps customers meet compliance, reduce latency, and optimize cloud costs when building AI applications.



