Milvus向量数据库管理工具[Attu]实践

Attu是一款专为Milvus向量数据库打造的开源数据库管理工具,提供了便捷的图形化界面,极大地简化了对Milvus数据库的操作与管理流程。阿里云Milvus集成了Attu,以便更加高效地管理数据库、集合(Collection)、索引(Index)和实体(Entity)等的管理。

前提条件

已完成网络安全设置,详情请参见网络访问与安全设置

访问Attu页面

  1. 在浏览器中输入访问地址。支持以下两种访问方式:

    • 内网访问地址:{{clusterId}}-internal.milvus.aliyuncs.com:3000

    • 公网访问地址:{{clusterId}}.milvus.aliyuncs.com:3000

      说明

      如果您使用公网访问地址,则可以直接在实例详情 页面单击Attu manager

  2. 在弹出的对话框中输入所要访问的数据库、用户名和密码,单击连接,即可打开Attu管理页面。

    在实例创建完成后,系统会自动创建一个名为default的默认数据库,并为您创建一个名为root的用户,该用户的密码由您在创建实例时自行设置。

管理Database

该功能使您能够管理数据库,包括创建、删除和查看操作。要使用此功能,您必须具备相应的数据库管理权限。

说明

default为默认数据库,无法进行删除操作。

创建Database步骤如下:

  1. 在Attu页面,单击左侧的

    图标。

  2. 在database页面,单击**+数据库**。

  3. 在弹出的对话框中,输入数据库名称,单击创建

管理Collection

Collection管理模块为您提供了强大的表结构设计、数据导入导出以及日常维护功能。要使用此功能,您必须具备相应的Collection管理权限。以下示例演示了创建Collection、索引以及导入和加载向量数据的过程。

  1. 在Attu页面,单击左侧的

    图标。

  2. 在Collection页面,单击创建Collection,创建名称为demo的Collection。

  3. 单击创建索引,创建名称为demo_idx的索引。

  4. 导入一定规模的样本数据到demo中。

  5. 加载向量数据到内存中。

说明

  • 您可以通过单击释放来将已加载至内存中的Collection数据进行释放。虽然数据会保留在存储介质上,但在释放后将无法执行检索操作。

  • 您也可以通过单击drop来永久删除Collection及其数据,使其无法恢复使用。

向量检索

通过向量检索功能,您可以进行数据探索、模型验证以及应用开发等操作。

  1. 在Attu页面,单击左侧的

    图标。

  2. 选择已经加载的Collection,输入需要进行相似性搜索的向量,定义好搜索参数,单击搜索

    返回信息如下图所示。

    您还可以单击上面的Advanced Filter,通过输入Filter条件,对Collection中的标量字段进行过滤,获取更快更为精确的搜索结果。

管理用户和角色

通过该功能,您可以创建新的用户和角色,并为用户分配特定角色及相应权限。

创建用户

  1. 在Attu页面,单击左侧的

    图标。

  2. 用户们 页签,单击**+用户**。

  3. 在弹出的对话框中,设置用户名密码 以及用户的角色,单击创建

创建角色

  1. 用户 页面,单击角色页签。

  2. 角色 页签,单击**+角色**。

  3. 在弹出的对话框中,设置角色名、选择相应的权限,单击创建

    权限详细说明,请参见权限说明

权限说明

Milvus中的授权对象主要包含全局、集合和用户。授权时如果权限选择*****,则意味着该角色拥有授权对象的所有API调用权限。每个对象对应的权限和接口API如下表所示。

全局

|-----------------------|----------------------------------|
| 权限 | API接口 |
| CreateCollection | CreateCollection |
| DropCollection | DropCollection |
| DescribeCollection | DescribeCollection |
| ShowCollections | ShowCollections |
| RenameCollection | RenameCollection |
| FlushAll | FlushAll |
| CreateOwnership | CreateUser CreateRole |
| DropOwnership | DeleteCredential DropRole |
| SelectOwnership | SelectRole/SelectGrant |
| ManageOwnership | OperateUserRole OperatePrivilege |
| CreateResourceGroup | CreateResourceGroup |
| DropResourceGroup | DropResourceGroup |
| DescribeResourceGroup | DescribeResourceGroup |
| ListResourceGroups | ListResourceGroups |
| TransferNode | TransferNode |
| TransferReplica | TransferReplica |
| CreateDatabase | CreateDatabase |
| DropDatabase | DropDatabase |
| ListDatabases | ListDatabases |
| CreateAlias | CreateAlias |
| DropAlias | DropAlias |
| DescribeAlias | DescribeAlias |
| ListAliases | ListAliases |

集合

|--------------------|---------------------------------------------------|
| 权限 | API接口 |
| CreateIndex | CreateIndex |
| DropIndex | DropIndex |
| IndexDetail | DescribeIndex/GetIndexState/GetIndexBuildProgress |
| Load | LoadCollection/GetLoadingProgress/GetLoadState |
| GetLoadingProgress | GetLoadingProgress |
| GetLoadState | GetLoadState |
| Release | ReleaseCollection |
| Insert | Insert |
| Delete | Delete |
| Upsert | Upsert |
| Search | Search |
| Flush | Flush/GetFlushState |
| GetFlushState | GetFlushState |
| Query | Query |
| GetStatistics | GetCollectionStatistics |
| Compaction | Compact |
| Import | BulkInsert/Import |
| LoadBalance | LoadBalance |
| CreatePartition | CreatePartition |
| DropPartition | DropPartition |
| ShowPartitions | ShowPartitions |
| HasPartition | HasPartition |

用户

|------------|------------------|
| 权限 | API接口 |
| UpdateUser | UpdateCredential |
| SelectUser | SelectUser |

相关推荐
代码吐槽菌44 分钟前
基于SSM的汽车客运站管理系统【附源码】
java·开发语言·数据库·spring boot·后端·汽车
伏虎山真人1 小时前
开源数据库 - mysql - 组织结构(与oracle的区别)
数据库·mysql·开源
精致先生2 小时前
问题记录01
java·数据库·mybatis
Channing Lewis2 小时前
salesforce developer console 匿名执行是以什么身份执行的
数据库·安全·salesforce
双子座断点2 小时前
QStringList 使用详解
数据库
bw8767206872 小时前
金融工程--pine-script 入门
数据库·金融
三日看尽长安花4 小时前
【Redis:原理、架构与应用】
数据库·redis·架构
想做白天梦4 小时前
多级反馈队列
java·windows·算法
尘浮生5 小时前
Java项目实战II基于Spring Boot的美食烹饪互动平台的设计与实现(开发文档+数据库+源码)
java·开发语言·数据库·spring boot·微信小程序·小程序·美食
forestqq5 小时前
构建后端为etcd的CoreDNS的容器集群(七)、编写适合阅读的域名管理脚本
运维·数据库·etcd