Использование Embedded Milvus для мгновенной установки и запуска Milvus с Python
Обложка
Эта статья написана в соавторстве с Алексом Гао и Анджелой Ни.
Milvus - это векторная база данных с открытым исходным кодом для приложений искусственного интеллекта. Он предлагает различные способы установки, включая сборку из исходного кода и установку Milvus с помощью Docker Compose/Helm/APT/YUM/Ansible. Пользователи могут выбрать один из способов установки в зависимости от своей операционной системы и предпочтений. Однако в сообществе Milvus есть много специалистов по изучению данных и инженеров по искусственному интеллекту, которые работают с Python и жаждут более простого метода установки, чем те, что доступны сейчас.
Поэтому вместе с Milvus 2.1 мы выпустили embedded Milvus - версию, удобную для работы с Python, чтобы расширить возможности разработчиков на Python в нашем сообществе. В этой статье рассказывается о том, что такое встроенный Milvus, и приводятся инструкции по его установке и использованию.
Перейти к:
Обзор встроенного Milvus
Встроенный Milvus позволяет быстро установить и использовать Milvus с Python. Он может быстро создать экземпляр Milvus и позволяет запускать и останавливать службу Milvus в любое время. Все данные и журналы сохраняются, даже если вы остановите встроенный Milvus.
Сам встроенный Milvus не имеет внутренних зависимостей и не требует предварительной установки и запуска сторонних зависимостей, таких как etcd, MinIO, Pulsar и т. д.
Все, что вы делаете со встроенным Milvus, и каждый кусок кода, написанный для него, может быть безопасно перенесен в другие режимы Milvus - автономный, кластерный, облачную версию и т. д. Это отражает одну из самых характерных особенностей встроенного Milvus - "Write once, run anywhere".
Когда использовать встраиваемый Milvus?
Встроенный Milvus и PyMilvus созданы для разных целей. Вы можете выбрать встроенный Milvus в следующих сценариях:
Вы хотите использовать Milvus без установки Milvus любым из представленных здесь способов.
Вы хотите использовать Milvus без длительного запуска процесса Milvus на вашей машине.
Вы хотите быстро использовать Milvus без запуска отдельного процесса Milvus и других необходимых компонентов, таких как etcd, MinIO, Pulsar и т. д.
Рекомендуется НЕ использовать встроенный Milvus:
В производственной среде.(Чтобы использовать Milvus для производства, рассмотрите кластер Milvus или облако Zilliz, полностью управляемый сервис Milvus).
Если у вас высокие требования к производительности.(Если говорить сравнительно, то встроенный Milvus может не обеспечить наилучшую производительность).
Сравнение различных режимов Milvus
В таблице ниже приведено сравнение нескольких режимов работы Milvus: автономный, кластерный, встроенный Milvus и облако Zilliz, полностью управляемый сервис Milvus.
сравнение
Как установить встроенный Milvus?
Перед установкой встраиваемого Milvus необходимо убедиться, что у вас установлен Python 3.6 или более поздней версии. Встраиваемый Milvus поддерживает следующие операционные системы:
Ubuntu 18.04
Mac x86_64 >= 10.4
Mac M1 >= 11.0
Если все требования выполнены, вы можете запустить $ python3 -m pip install milvus
для установки встроенного Milvus. Вы также можете добавить версию в команду, чтобы установить определенную версию встроенного Milvus. Например, если вы хотите установить версию 2.1.0, выполните команду $ python3 -m pip install milvus==2.1.0
. В дальнейшем, когда выйдет новая версия встроенного Milvus, вы также можете выполнить команду $ python3 -m pip install --upgrade milvus
, чтобы обновить встроенный Milvus до последней версии.
Если вы старый пользователь Milvus, который уже установил PyMilvus ранее и хочет установить встроенный Milvus, вы можете запустить $ python3 -m pip install --no-deps milvus
.
После выполнения команды установки необходимо создать папку данных для встроенного Milvus в каталоге /var/bin/e-milvus
, выполнив следующую команду:
sudo mkdir -p /var/bin/e-milvus
sudo chmod -R 777 /var/bin/e-milvus
Запуск и остановка встроенного Milvus
После успешной установки вы можете запустить службу.
Если вы запускаете встроенный Milvus в первый раз, сначала необходимо импортировать Milvus и настроить встроенный Milvus.
$ python3
Python 3.9.10 (main, Jan 15 2022, 11:40:53)
[Clang 13.0.0 (clang-1300.0.29.3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import milvus
>>> milvus.before()
please do the following if you have not already done so:
1. install required dependencies: bash /var/bin/e-milvus/lib/install_deps.sh
2. export LD_PRELOAD=/SOME_PATH/embd-milvus.so
3. export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib:/usr/local/lib:/var/bin/e-milvus/lib/
>>>
Если вы уже успешно запускали встроенный Milvus ранее и вернулись, чтобы перезапустить его, вы можете напрямую запустить milvus.start()
после импорта Milvus.
$ python3
Python 3.9.10 (main, Jan 15 2022, 11:40:53)
[Clang 13.0.0 (clang-1300.0.29.3)] on darwinType "help", "copyright", "credits" or "license" for more information.
>>> import milvus
>>> milvus.start()
>>>
Вы увидите следующий результат, если вы успешно запустили службу встроенного Milvus.
---Milvus Proxy successfully initialized and ready to serve!---
После запуска службы вы можете запустить другое окно терминала и запустить код примера "Hello Milvus", чтобы поиграть со встроенным Milvus!
# Download hello_milvus script
$ wget https://raw.githubusercontent.com/milvus-io/pymilvus/v2.1.0/examples/hello_milvus.py
# Run Hello Milvus
$ python3 hello_milvus.py
Когда вы закончите использовать встроенный Milvus, мы рекомендуем изящно завершить его работу и очистить переменные окружения, выполнив следующую команду или нажав Ctrl-D.
>>> milvus.stop()
if you need to clean up the environment variables, run:
export LD_PRELOAD=
export LD_LIBRARY_PATH=
>>>
>>> exit()
Что дальше
После официального выхода Milvus 2.1 мы подготовили серию блогов, в которых рассказываем о новых возможностях. Читайте подробнее в этой серии блогов:
- Как использовать строковые данные для расширения возможностей приложений поиска по сходству
- Использование Embedded Milvus для мгновенной установки и запуска Milvus с Python
- Увеличение пропускной способности базы данных Vector с помощью реплик в памяти
- Понимание уровня согласованности в векторной базе данных Milvus
- Понимание уровня согласованности в векторной базе данных Milvus (часть II)
- Как база данных Milvus Vector обеспечивает безопасность данных?
- Обзор встроенного Milvus
- Как установить встроенный Milvus?
- Запуск и остановка встроенного 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