附录 C — Milvus Beginner
C.1 Milvus 安装
C.1.1 1. 安装 docker-ce
https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository。
C.1.2 2. 安装 docker-composer
$ curl -L "https://github.com/docker/compose/releases/download/2.22.0/docker-compose-$(uname -s | tr 'A-Z' 'a-z')-$(uname -m)" -o /usr/local/bin/docker-compose
$ sudo chmod +x /usr/local/bin/docker-compose
$ docker-compose --version
C.1.3 3. 安装 docker-milvus 并启动
$ mkdir milvus && cd milvus
$ wget https://github.com/milvus-io/milvus/releases/download/v2.3.1/milvus-standalone-docker-compose.yml -O docker-compose.yml
$ sudo docker compose up -d
$ sudo docker compose ps
C.2 Milvus 测试
警告
为了避免不同网络环境下的端口限制,可以使用 Nginx 的 TCP Proxy 功能代理 Milvus 默认的 19530
端口和 9091
端口。具体配置参见:列表 C.1。
列表 C.1: Nginx 反向代理配置
stream {
server {
listen 8081;
proxy_pass 127.0.0.1:19530;
}
server {
listen 8082;
proxy_pass 127.0.0.1:9091;
}
}
C.2.1 安装 Milvus SDK
python3 -m pip install pymilvus
C.2.2 测试 Milvus
from pymilvus import connections,db
= connections.connect(
res ='127.0.0.1',
host='8081'
port
)
# database = db.create_database("test")
= db.list_database()
res print(res)
# ['default', 'test']
执行 docker-compose logs -f | grep 'test'
可以看到 Milvus 创建 test
数据库的日志:
列表 C.2: 创建数据库日志
milvus-standalone | [2023/09/26 05:30:03.922 +00:00] [INFO] [proxy/impl.go:174] ["CreateDatabase received"] [traceID=91fb5dbbd0a5a8028b7c048552bbbbb9] [role=proxy] [dbName=test]
milvus-standalone | [2023/09/26 05:30:03.922 +00:00] [INFO] [proxy/impl.go:182] ["CreateDatabase enqueued"] [traceID=91fb5dbbd0a5a8028b7c048552bbbbb9] [role=proxy] [dbName=test]
milvus-standalone | [2023/09/26 05:30:03.923 +00:00] [INFO] [rootcoord/root_coord.go:772] ["received request to create database"] [traceID=91fb5dbbd0a5a8028b7c048552bbbbb9] [role=rootcoord] [dbName=test] [msgID=444519207108608004]
milvus-standalone | [2023/09/26 05:30:03.925 +00:00] [INFO] [rootcoord/meta_table.go:272] ["create database"] [traceID=91fb5dbbd0a5a8028b7c048552bbbbb9] [db=test] [ts=444519207108608005]
milvus-standalone | [2023/09/26 05:30:03.925 +00:00] [INFO] [rootcoord/root_coord.go:804] ["done to create database"] [traceID=91fb5dbbd0a5a8028b7c048552bbbbb9] [role=rootcoord] [dbName=test] [msgID=444519207108608004] [ts=444519207108608005]
milvus-standalone | [2023/09/26 05:30:03.925 +00:00] [INFO] [proxy/impl.go:190] ["CreateDatabase done"] [traceID=91fb5dbbd0a5a8028b7c048552bbbbb9] [role=proxy] [dbName=test]
C.3 Milvus CLI
很多时候,使用类似 mysql 这样的客户端工具来连接数据库并进行相关操作会更便捷。Milvus 也提供了类似的客户端端工具 milvus_cli
,来方便我们对 Milvus 进行相关操作。
可以采用如下命令来安装 milvus_cli
客户端:
pip install milvus-cli
具体的使用如图:图 C.1。
milvus_cli
的使用命令参考:Milvus Client Commands。
警告
在安装 milvus_cli
的时候,可能会存在依赖库的版本冲突,这可能会导致安装的 milvus_cli
无法正常使用,如图 图 C.2 所示。此时,更新相关依赖的版本,并重新安装 milvus_cli
即可。