С какой версии Milvus начать
Выбор подходящей версии Milvus - залог успеха любого проекта, использующего технологию векторного поиска. Поскольку различные версии Milvus приспособлены к различным требованиям, понимание важности выбора правильной версии имеет решающее значение для достижения желаемых результатов.
Правильный выбор версии Milvus может помочь разработчику быстро освоить и создать прототип или оптимизировать использование ресурсов, оптимизировать усилия по разработке и обеспечить совместимость с существующей инфраструктурой и инструментами. В конечном итоге речь идет о поддержании производительности разработчиков и повышении эффективности, надежности и удовлетворенности пользователей.
Доступные версии Milvus
Разработчикам доступны три версии Milvus, и все они с открытым исходным кодом. Эти три версии - Milvus Lite, Milvus Standalone и Milvus Cluster - отличаются друг от друга функциями и тем, как пользователи планируют использовать Milvus в краткосрочной и долгосрочной перспективе. Итак, давайте рассмотрим их по отдельности.
Milvus Lite
Как следует из названия, Milvus Lite - это облегченная версия, которая легко интегрируется с Google Colab и Jupyter Notebook. Он упакован в виде одного бинарного файла без дополнительных зависимостей, что позволяет легко установить и запустить его на своей машине или внедрить в Python-приложения. Кроме того, Milvus Lite включает в себя автономный сервер Milvus на основе CLI, что обеспечивает гибкость при запуске непосредственно на вашем компьютере. Встраивать ли Milvus в Python-код или использовать его как отдельный сервер - зависит только от ваших предпочтений и требований конкретного приложения.
Функции и возможности
Milvus Lite включает в себя все основные функции векторного поиска Milvus.
Возможности поиска: Поддержка top-k, range и гибридного поиска, включая фильтрацию метаданных, для удовлетворения различных требований к поиску.
Типы индексов и метрики сходства: Поддерживает 11 типов индексов и пять метрик сходства, обеспечивая гибкость и возможности настройки для конкретного случая использования.
Обработка данных: Обеспечивает пакетную (Apache Parquet, Arrays, JSON) и потоковую обработку данных с легкой интеграцией через коннекторы для Airbyte, Apache Kafka и Apache Spark.
CRUD-операции: Обеспечивает полную поддержку CRUD (создание, чтение, обновление/вставка, удаление), предоставляя пользователям широкие возможности управления данными.
Области применения и ограничения
Milvus Lite идеально подходит для быстрого создания прототипов и локальной разработки, предлагая поддержку быстрой настройки и экспериментов с небольшими наборами данных на вашей машине. Однако его ограничения становятся очевидными при переходе к производственным средам с большими наборами данных и более жесткими требованиями к инфраструктуре. Таким образом, хотя Milvus Lite является отличным инструментом для первоначального изучения и тестирования, он может не подойти для развертывания приложений в условиях больших объемов или готовности к производству.
Доступные ресурсы
Автономный Milvus
Milvus предлагает два режима работы: Standalone и Cluster. Оба режима идентичны по основным функциям векторной базы данных и различаются по поддержке объема данных и требованиям к масштабируемости. Это различие позволяет выбрать режим, который наилучшим образом соответствует размеру вашего набора данных, объему трафика и другим требованиям к производственной инфраструктуре.
Milvus Standalone - это режим работы системы векторных баз данных Milvus, в котором она функционирует независимо, как один экземпляр, без кластеризации или распределенной настройки. В этом режиме Milvus работает на одном сервере или машине, обеспечивая такие функции, как индексирование и поиск векторов. Он подходит для ситуаций, когда объем данных и трафика относительно невелик и не требует распределенных возможностей, предоставляемых кластерной системой.
Особенности и возможности
Высокая производительность: Векторный поиск в огромных наборах данных (миллиарды и более) с исключительной скоростью и эффективностью.
Возможности поиска: Поддержка top-k, range и гибридного поиска, включая фильтрацию метаданных, для удовлетворения различных требований к поиску.
Типы индексов и метрики сходства: Поддерживает 11 типов индексов и 5 метрик сходства, обеспечивая гибкость и возможности настройки для конкретного случая использования.
Обработка данных: Обеспечивает как пакетную (Apache Parquet, Arrays, Json), так и потоковую обработку данных, с легкой интеграцией через коннекторы для Airbyte, Apache Kafka и Apache Spark.
Репликация данных и обход отказа: Встроенные функции репликации и обхода/возврата отказа обеспечивают целостность данных и доступность приложений даже во время сбоев или отказов.
Масштабируемость: Достигайте динамической масштабируемости с помощью масштабирования на уровне компонентов, что позволяет плавно увеличивать и уменьшать масштабы в зависимости от потребностей. Milvus может автомасштабироваться на уровне компонентов, оптимизируя распределение ресурсов для повышения эффективности.
Многопользовательская поддержка: Поддержка многопользовательского доступа с возможностью управления до 10 000 коллекций/разделов в кластере, обеспечивая эффективное использование ресурсов и изоляцию для различных пользователей или приложений.
CRUD-операции: Обеспечивает полную поддержку CRUD-операций (создание, чтение, обновление/вставка, удаление), предоставляя пользователям широкие возможности управления данными.
Основные компоненты:
Milvus: основной функциональный компонент.
etcd: Движок метаданных, отвечающий за доступ и хранение метаданных из внутренних компонентов Milvus, включая прокси, индексные узлы и многое другое.
MinIO: механизм хранения, отвечающий за сохранение данных в Milvus.
Рисунок 1: Автономная архитектура Milvus
Доступные ресурсы
Документация
Milvus Cluster
Milvus Cluster - это режим работы системы векторных баз данных Milvus, в котором она функционирует и распределяется между несколькими узлами или серверами. В этом режиме экземпляры Milvus объединяются в кластер, образуя единую систему, которая может обрабатывать большие объемы данных и более высокую нагрузку на трафик по сравнению с автономной системой. Milvus Cluster предлагает функции масштабируемости, отказоустойчивости и балансировки нагрузки, что делает его подходящим для сценариев, в которых необходимо обрабатывать большие данные и эффективно обслуживать множество одновременных запросов.
Функции и возможности
Наследует все функции, доступные в Milvus Standalone, включая высокопроизводительный векторный поиск, поддержку нескольких типов индексов и метрик сходства, а также простую интеграцию с фреймворками пакетной и потоковой обработки.
Обеспечивает беспрецедентную доступность, производительность и оптимизацию затрат за счет использования распределенных вычислений и балансировки нагрузки на нескольких узлах.
Позволяет развертывать и масштабировать безопасные рабочие нагрузки корпоративного уровня с меньшими общими затратами благодаря эффективному использованию ресурсов в кластере и оптимизации распределения ресурсов в зависимости от потребностей рабочей нагрузки.
Основные компоненты:
Milvus Cluster включает восемь компонентов микросервисов и три сторонних зависимости. Все микросервисы могут быть развернуты на Kubernetes независимо друг от друга.
Компоненты микросервисов
Корневой координатор
Прокси
Координата запроса
Узел запросов
Индексный коорд
Индексный узел
Коорд данных
Узел данных
Сторонние зависимости
etcd: Хранит метаданные для различных компонентов в кластере.
MinIO: Отвечает за сохранение данных в больших файлах в кластере, таких как индексные и бинарные файлы журналов.
Pulsar: Управляет журналами последних операций мутации, выводит потоковый журнал и предоставляет сервисы публикации и подписки журналов.
Рисунок 2: Архитектура кластера Milvus
Доступные ресурсы
Документация | Как начать работу
Принятие решения о том, какую версию Milvus использовать
Решая, какую версию Milvus использовать для своего проекта, вы должны учитывать такие факторы, как размер набора данных, объем трафика, требования к масштабируемости и ограничения производственной среды. Milvus Lite идеально подходит для создания прототипов на вашем ноутбуке. Milvus Standalone обеспечивает высокую производительность и гибкость при проведении векторного поиска в ваших наборах данных, что делает его подходящим для небольших развертываний, CI/CD и автономных развертываний, когда у вас нет поддержки Kubernetes... И наконец, Milvus Cluster обеспечивает беспрецедентную доступность, масштабируемость и оптимизацию затрат для рабочих нагрузок корпоративного уровня, что делает его предпочтительным выбором для крупномасштабных высокодоступных производственных сред.
Есть и другая версия, не требующая особых усилий, - это управляемая версия Milvus под названием Zilliz Cloud.
В конечном итоге выбор версии Milvus будет зависеть от конкретного случая использования, требований к инфраструктуре и долгосрочных целей. Тщательно проанализировав все эти факторы и разобравшись в функциях и возможностях каждой версии, вы сможете принять взвешенное решение, соответствующее потребностям и целям вашего проекта. Выбираете ли вы Milvus Standalone или Milvus Cluster, вы можете использовать мощь векторных баз данных для повышения производительности и эффективности ваших приложений искусственного интеллекта.
- Доступные версии Milvus
- Milvus Lite
- Автономный Milvus
- Milvus Cluster
- Принятие решения о том, какую версию Milvus использовать
On This Page
Try Managed Milvus for Free
Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.
Get StartedLike the article? Spread the word