探索Milvus数据库:新手入门指南(tencent云)

开启向量数据库的奇妙之旅

在数据科学和机器学习领域,Milvus是一个专为向量数据设计的开源数据库。它以其高性能和易于使用的特点,成为了处理大规模向量搜索任务的理想选择。如果你是Milvus的新手,这篇文章将带你一步步了解如何开始你的Milvus之旅。

什么是Milvus?

Milvus是一个开源的向量数据库,专为处理大规模向量数据而设计。它支持多种类型的向量搜索任务,包括但不限于最近邻搜索(Nearest Neighbor Search)。Milvus通过优化存储和计算资源的使用,使得在大数据环境下进行高效的向量搜索成为可能。它与主流的机器学习框架如TensorFlow和PyTorch兼容,使得数据科学家和开发者能够轻松地将Milvus集成到他们的工作流程中。

为什么选择Milvus?

选择Milvus的理由有很多。首先,它提供了高性能的向量搜索能力,这对于需要快速检索相似项的应用场景至关重要。其次,Milvus支持多种索引类型,包括Faiss、Annoy、HNSW等,这些索引技术可以帮助用户根据不同的需求选择合适的索引策略。此外,Milvus还提供了一个友好的用户界面和一个完整的API集,使得即使是初学者也能快速上手。

如何开始使用Milvus?

要开始使用Milvus,你需要遵循以下步骤:

  1. 安装 :访问官方GitHub页面下载并安装适合你操作系统的版本。
    具体操作请查看https://milvus.io/docs/install_standalone-docker-compose.md,这里在安装之前请查看安装此款软件对应的一些requirements,

我这边选择的是tencent云(ubuntu 22.04LTS),docker形式安装docker 版本:27.4.1。安装完成之后输入sudo docker-compose ps,可以看到我装的是2.5.1的版本

  1. 数据库连接

在python 的命令行中输入pip install pymilvus==2.5.1,一会儿我们要用python进行连接

验证导包是否成功:

python 复制代码
python3 -c "from pymilvus import Collection"

初次尝试连接

首先在vscode中连接tencent云

点击remote connecting 也就是最后一个,输入

python 复制代码
ssh -i /path/to/your-private-key.pem root@your-server-public-ip

后面这个root@your-server-public-ip替换成

然后按照要求一直下一步就可以,下面开始使用milvus

新建数据库

python 复制代码
name1="zibo_bbq"
from pymilvus import MilvusClient, DataType
#创建连接
client = MilvusClient(
    uri="http://localhost:19530",
    token="root:Milvus"
)
#建表
schema = MilvusClient.create_schema(
    auto_id=False,
    enable_dynamic_field=True,
)
#给表中增加字段,包含字段名称,字段类型,是否是主键等信息
schema.add_field(field_name="my_id", datatype=DataType.INT64, is_primary=True)
schema.add_field(field_name="emb", datatype=DataType.FLOAT_VECTOR, dim=3)
schema.add_field(field_name="my_varchar", datatype=DataType.VARCHAR, max_length=512)

##对向量进行检索需要增加这个index_params,不过新版的2.5这个是可选项

python 复制代码
index_params = client.prepare_index_params()
index_params.add_index(
    field_name="emb", 
    index_type="AUTOINDEX",
    metric_type="COSINE"
)
##创建name1数据库,并建表
client.create_collection(
    collection_name=name1,
    schema=schema,
    index_params=index_params
)

#准备数据

复制代码
data = [
    {"my_id": 0, "emb": [0.1, 0.2, 0.3], "my_varchar": "今天天气真好"},
    {"my_id": 1, "emb": [0.3, 0.2, 0.2], "my_varchar": "天气真好"}
]
#插入数据
client.insert(
    collection_name=name1,
    data=data
)

#加载数据库并进行检索

复制代码
client.load_collection(name1)

##这个是输出"my_varchar字段的内容

复制代码
client.search(name1,[[0.2,0.3,0.3]],output_fields=["my_varchar"])

执行之后,你可以看到结果被正确的检索出来

现在你已经知道了如何开始使用Milvus了。赶快动手实践吧!

相关推荐
ClouGence13 小时前
Oracle CDC 架构优化:从主库直连到 DataGuard 备库同步
数据库·后端·oracle
无响应de神15 小时前
三、用户与权限管理
数据库·mysql
麦聪聊数据1 天前
数据服务化时代:企业数据能力输出的核心路径
数据库
shushangyun_1 天前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
DARLING Zero two♡1 天前
【MySQL数据库】数据类型与表约束
数据库·mysql
曹牧1 天前
Oracle EXPLAIN PLAN
数据库·oracle
BD_Marathon1 天前
SQL学习指南——视图
数据库·sql
活宝小娜1 天前
mysql详细安装教程
数据库·mysql·adb
贤时间1 天前
codex 助力oracle ebs 开发
数据库·oracle
秉承初心1 天前
PostgreSQL 数据性能瓶颈突破实战
数据库·postgresql·oracle