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 |

相关推荐
云和数据.ChenGuang43 分钟前
Django 应用安装脚本 – 如何将应用添加到 INSTALLED_APPS 设置中 原创
数据库·django·sqlite
woshilys1 小时前
sql server 查询对象的修改时间
运维·数据库·sqlserver
Hacker_LaoYi1 小时前
SQL注入的那些面试题总结
数据库·sql
建投数据2 小时前
建投数据与腾讯云数据库TDSQL完成产品兼容性互认证
数据库·腾讯云
Hacker_LaoYi3 小时前
【渗透技术总结】SQL手工注入总结
数据库·sql
岁月变迁呀3 小时前
Redis梳理
数据库·redis·缓存
独行soc3 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍06-基于子查询的SQL注入(Subquery-Based SQL Injection)
数据库·sql·安全·web安全·漏洞挖掘·hw
你的微笑,乱了夏天4 小时前
linux centos 7 安装 mongodb7
数据库·mongodb
工业甲酰苯胺4 小时前
分布式系统架构:服务容错
数据库·架构
独行soc5 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍08-基于时间延迟的SQL注入(Time-Based SQL Injection)
数据库·sql·安全·渗透测试·漏洞挖掘