Manage Your Milvus Vector Database with One-click Simplicity
Draft by Zhen Chen and transcreation by Lichen Wang.
Click here to check the original post.
In the face of rapidly growing demand for unstructured data processing, Milvus 2.0 stands out. It is an AI-oriented vector database system designed for massive production scenarios. Apart from all these Milvus SDKs and Milvus CLI, a command-line interface for Milvus, is there a tool that allows users to operate Milvus more intuitively? The anwer is YES. Zilliz has announced a graphical user interface - Attu - specifically for Milvus. In this article, we would like to show you step by step how to perform a vector similarity search with Attu.
In comparison with Milvus CLI which brings the uttermost simplicity of usage, Attu features more:
- Installers for Windows OS, macOS, and Linux OS;
- Intuitive GUI for easier usage of Milvus;
- Coverage of major functionalities of Milvus;
- Plugins for expansion of customized functionalities;
- Complete system topology information for easier understanding and administration of Milvus instance.
Installation
You can find the newest release of Attu at GitHub. Attu offers executable installers for different operating systems. It is an open-source project and welcomes contribution from everyone.
You can also install Attu via Docker.
docker run -p 8000:3000 -e HOST_URL=http://{ attu IP }:8000 -e MILVUS_URL={milvus server IP}:19530 zilliz/attu:latest
attu IP
is the IP address of the environment where Attu runs, and milvus server IP
is IP address of the environment where Milvus runs.
Having installed Attu successfully, you can input the Milvus IP and Port in the interface to start Attu.
Feature overview
Attu interface consists of Overview page, Collection page, Vector Search page, and System View page, corresponding to the four icons on the left-side navigation pane respectively.
The Overview page shows the loaded collections. While the Collection page lists all the collections and indicates if they are loaded or released.
The Vector Search and System View pages are plugins of Attu. The concepts and usage of the plugins will be introduced in the final part of the blog.
You can perform vector similarity search in Vector Search page.
In System View page, you can check the topological structure of Milvus.
You can also check the detailed information of each node by clicking the node.
Demonstration
Let's explore Attu with a test dataset.
Check our GitHub repo for the dataset used in the following test.
First, create a collection named test with the following four fields:
- Field Name: id, primary key field
- Field Name: vector, vector field, float vector, Dimension: 128
- Field Name: brand, scalar field, Int64
- Field Name: color, scalar field, Int64
Load the collection for search after it was successfully created.
You can now check the newly created collection in the Overview page.
Import the test dataset into Milvus.
Click the collection name in Overview or Collection page to enter query interface to check the imported data.
Add filter, specify the expression id != 0
, click Apply Filter, and click Query.
You will find all fifty entries of entities are imported successfully.
Let's try vector similarity search.
Copy one vector from the search_vectors.csv
and paste it in Vector Value field. Choose the collection and field. Click Search.
You can then check the search result. Without compiling any scripts, you can search with Milvus easily.
Finally, let's check the System View page.
With Metrics API encapsulated in Milvus Node.js SDK, you can check the system status, node relations, and node status.
As an exclusive feature of Attu, System Overview page includes a complete system topological graph. By clicking on each node, you can check its status (refresh every 10 seconds).
Click on each node to enter the Node List View. You can check all child nodes of a coord node. By sorting, you can identify the nodes with high CPU or memory usage quickly, and locate the problem with the system.
What's more
As mentioned earlier, the Vector Search and System View pages are plugins of Attu. We encourage users to develop their own plugins in Attu to suit their application scenarios. In the source code, there is folder built specifically for plugin codes.
You can refer to any of the plugin to learn how to build a plugin. By setting the following config file, you can add the plugin to Attu.
You can see Attu GitHub Repo and Milvus Technical Document for detailed instruction.
Attu is an open-source project. All contributions are welcome. You can also file an issue if you had any problem with Attu.
We sincerely hope that Attu can bring you a better user experience with Milvus. And if you like Attu, or have some feedbacks about the usage, you can complete this Attu User Survey to help us optimize Attu for a better user experience.
Like the article? Spread the word
Keep Reading
How to Get Started with Milvus
Dynamically Change Log Levels in the Milvus Vector Database
Learn how to adjust log level in Milvus without restarting the service.
Understanding Consistency Level in the Milvus Vector Database - Part II
An anatomy of the mechanism behind tunable consistency levels in the Milvus vector database.