Nebula 索引查询

Nebula Graph 里,要判断某个点(Tag)属性是否已有索引,可以用 索引管理语句 来查看。


1. 查看当前图空间已有的索引

SHOW TAG INDEXES;
SHOW EDGE INDEXES;
  • SHOW TAG INDEXES; 会列出所有点(Tag)上的索引。
  • SHOW EDGE INDEXES; 会列出所有边上的索引。

输出里通常包含:索引名、对应的 Tag/Edge、索引的属性列。


2. 查看具体索引定义

DESCRIBE TAG INDEX <index_name>;
  • 能看到这个索引覆盖了哪些属性字段(比如 name, age)。
  • 如果你要查的属性在这里,就说明有索引。

3. 示例

假设你有一个 Tag User

SHOW TAG INDEXES;

可能返回:

+----------------+------+
| Index Name     | Tag  |
+----------------+------+
| idx_user_name  | User |
| idx_user_age   | User |
+----------------+------+

再看某个索引:

DESCRIBE TAG INDEX idx_user_name;

结果可能是:

+-------+--------+
| Field | Type   |
+-------+--------+
| name  | string |
+-------+--------+

说明 User.name 上有索引。


4. 补充:确认索引是否可用

  • 索引创建后,需要 REBUILD TAG INDEX <index_name>; 才会生效。
  • 可以用 SHOW TAG INDEX STATUS; 查看索引的重建状态。

✅ 总结:
判断某个节点属性是否被建索引 →

  1. SHOW TAG INDEXES; 看是否有对应索引。
  2. DESCRIBE TAG INDEX xxx; 看索引里有没有你关心的属性。
  3. SHOW TAG INDEX STATUS; 确认索引是否已完成重建并可用。

要不要我帮你写一个 一键脚本(比如 Python 或 nGQL 脚本),自动检查某个 Tag 的某个字段是否已有索引?

posted @ 2025-09-03 09:41  X1OO  阅读(18)  评论(0)    收藏  举报