索引介绍
Nebula Graph支持两种类型索引:原生索引和全文索引。
原生索引
原生索引可以基于指定的属性查询数据,有如下特点:
包括Tag索引和Edge type索引。
必须手动重建索引(
REBUILD INDEX
)。支持创建同一个Tag或Edge type的多个属性的索引(复合索引),但是不能跨Tag或Edge type。
复合索引可以实现部分匹配检索,遵循最左匹配原则。详情请参见LOOKUP FAQ。
LOOKUP不支持
CONTAINS
和STARTS WITH
等字符串操作符。
原生索引操作
全文索引
全文索引用于对字符串属性进行前缀搜索、通配符搜索、正则表达式搜索和模糊搜索,有如下特点:
只允许创建一个属性的索引。
只能创建指定长度(不超过256字节)字符串的索引。
不支持逻辑操作,例如
AND
、OR
、NOT
。
全文索引操作
在对全文索引执行任何操作之前,请确保已经部署全文索引。详情请参见部署全文索引和部署listener。
部署完成后,Elasticsearch集群上会自动创建全文索引。不支持重建或修改全文索引。如果需要删除全文索引,请在Elasticsearch集群上手动删除。
使用全文索引请参见使用全文索引查询。
NULL值说明
不支持对值为NULL的属性创建索引。
范围查询
原生索引除了可以查询单个结果之外,还可以执行范围查询。当前仅支持对数字、日期和时间类型的属性进行范围查询。