Основные компоненты
Кластер Milvus состоит из пяти основных компонентов и трех сторонних зависимостей. Каждый компонент может быть развернут на Kubernetes независимо:
Компоненты Milvus
- Координатор: для обеспечения высокой доступности может быть включен режим master-slave.
- Прокси: один или несколько на кластер
- Узел потоковой передачи: один или несколько на кластер
- Узел запросов: один или несколько на кластер
- Узел данных: один или несколько на кластер
Зависимости от сторонних производителей
- Meta Store: Хранит метаданные для различных компонентов milvus, например, etcd.
- Хранилище объектов: Отвечает за сохранение данных больших файлов в milvus, таких как индексные и бинарные файлы журналов, например S3.
- Хранилище WAL: Обеспечивает сервис записи с опережением (WAL) для milvus, например woodpecker.
- В режиме нулевого диска woodpecker WAL напрямую использует объектное хранилище и метахранилище без дополнительного развертывания, что снижает зависимость от сторонних производителей.
Режимы развертывания Milvus
Существует два режима работы Milvus:
Автономный
Единственный экземпляр Milvus, в котором все компоненты работают в одном процессе, что подходит для небольших наборов данных и низкой рабочей нагрузки. Кроме того, в автономном режиме можно выбрать более простую реализацию WAL, такую как woodpecker и rocksmq, чтобы исключить необходимость в сторонних зависимостях от WAL Storage.
Автономная_архитектура
В настоящее время невозможно выполнить онлайн-обновление с автономного экземпляра Milvus на кластер Milvus, даже если бэкенд хранилища WAL поддерживает режим кластера.
Кластер
Распределенный режим развертывания Milvus, при котором каждый компонент работает независимо и может быть масштабирован для обеспечения эластичности. Такая конфигурация подходит для больших наборов данных и сценариев с высокой нагрузкой.
Распределенная_архитектура
Что дальше
- Прочитайте раздел "Распределение вычислений/хранилищ", чтобы понять механизм и принцип работы Milvus.