跳转至

全文索引限制

Caution

本文介绍全文索引的限制,请在使用全文索引前仔细阅读。

全文索引有如下 16 条限制:

  • 全文索引当前仅支持LOOKUP语句。
  • 不支持全文索引的名称包含大写字母。
  • 定长字符串长度超过 256 字节,将无法创建全文索引。
  • 全文索引依赖原生索引,必须先为 Tag/Edge type 创建原生索引。
  • 如果 Tag/Edge type 上存在全文索引,无法删除或修改 Tag/Edge type。
  • 一个 Tag/Edge type 只能有一个全文索引。
  • 属性的类型必须为String
  • 全文索引不支持多个 Tag/Edge type 的搜索。
  • 不支持排序全文搜索的返回结果,而是按照数据插入的顺序返回。
  • 全文索引不支持搜索属性值为NULL的属性。
  • 写入数据时,Elasticsearch 会自动创建相应的索引。在 NebulaGraph 中创建全文索引,但是未写入数据,查询时会报错text search not found
  • 不支持修改 Elasticsearch 中的索引,只能删除重建。
  • 不支持管道符。
  • WHERE子句只能用单个条件进行全文搜索。
  • 全文索引不会与图空间一起删除。
  • 确保同时启动了 Elasticsearch 集群和 NebulaGraph,否则可能导致 Elasticsearch 集群写入的数据不完整。
  • 在点或边的属性值中不要包含'\,否则会导致 Elasticsearch 集群存储时报错。
  • 从写入 NebulaGraph,到写入 listener,再到写入 Elasticsearch 并创建索引可能需要一段时间。如果访问全文索引时返回未找到索引,可等待索引生效(但是,该等待时间未知,也无返回码检查)。
  • 使用 K8s 方式部署的 NebulaGraph 集群不支持全文索引。

最后更新: December 2, 2022