当前位置: 首页 > article >正文

探索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进行连接

验证导包是否成功:

python3 -c "from pymilvus import Collection"

初次尝试连接

首先在vscode中连接tencent云
在这里插入图片描述
点击remote connecting 也就是最后一个,输入

ssh -i /path/to/your-private-key.pem root@your-server-public-ip

后面这个root@your-server-public-ip替换成
在这里插入图片描述
然后按照要求一直下一步就可以,下面开始使用milvus

新建数据库

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这个是可选项

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了。赶快动手实践吧!


http://www.kler.cn/a/465114.html

相关文章:

  • 大带宽服务器和普通服务器相比较的优势
  • 局域网中单台交换机VLAN应用
  • rsync中远端文件的校验和存储缓存的黑科技
  • Docker--Docker Image(镜像)
  • Visual Point Cloud Forecasting enables Scalable Autonomous Driving——点云论文阅读(12)
  • STM32的LED点亮教程:使用HAL库与Proteus仿真
  • RT-Thread中堆和栈怎么跟单片机内存相联系
  • XIAO Esp32S3 播放网络Mp3
  • ELK日志收集系统部署
  • C与语言GDB调试
  • ubuntu 常见问题(持续记录)
  • BLDC无感控制的驱动逻辑
  • [网络安全]数据安全领域关键技术总结
  • 深入刨析数据结构之排序(上)
  • 【GPT】Coze使用开放平台接口-【8】创建应用
  • 多模态论文笔记——CogVLM和CogVLM2
  • Java基于SpringBoot的甘肃非物质文化网站的设计与实现,附源码
  • 您的公司需要小型语言模型
  • Tailwind CSS 实战:表单设计与验证实现
  • Eclipse中引入NS3项目