Full-text index restrictions¶
Caution
- This topic introduces the restrictions for full-text indexes. Please read the restrictions very carefully before using the full-text indexes.
- Version 3.5.0 redoes the full-text index function, which is not compatible with the previous versions, and requires deleting the previous index data and rebuilding the index.
For now, full-text search has the following limitations:
- Currently, full-text search supports
LOOKUP
statements only.
- The full-text index name can contain only numbers, lowercase letters, and underscores.
- The names of full-text indexes within different graph spaces cannot be duplicated.
- The query returns 10 records by default. You can use the
LIMIT
clause to return more records, up to 10,000. You can modify the ElasticSearch parameters to adjust the maximum number of records returned.
- If there is a full-text index on the tag/edge type, the tag/edge type cannot be deleted or modified.
- The type of properties must be
STRING
orFIXED_STRING
.
- Full-text index can not be applied to search multiple tags/edge types.
- Full-text index can not search properties with value
NULL
.
- Altering Elasticsearch indexes is not supported at this time.
- Modifying the analyzer is not supported. You have to delete the index data and then specify the analyzer when you rebuild the index.
- Make sure that you start the Elasticsearch cluster and Nebula Graph at the same time. If not, the data writing on the Elasticsearch cluster can be incomplete.
- It may take a while for Elasticsearch to create indexes. If Nebula Graph warns no index is found, you can check the status of the indexing task.
- NebulaGraph clusters deployed with K8s do not have native support for the full-text search feature. However, you can manually deploy the feature yourself.
Caution
This topic introduces the restrictions for full-text indexes. Please read the restrictions very carefully before using the full-text indexes.
For now, full-text search has the following limitations:
- Currently, full-text search supports
LOOKUP
statements only.
- The full-text index name can contain only numbers, lowercase letters, and underscores.
- The names of full-text indexes within different graph spaces cannot be duplicated.
- If there is a full-text index on the tag/edge type, the tag/edge type cannot be deleted or modified.
- The type of properties must be
STRING
orFIXED_STRING
.
- Full-text index can not be applied to search multiple tags/edge types.
- Sorting for the returned results of the full-text search is not supported. Data is returned in the order of data insertion.
- Full-text index can not search properties with value
NULL
.
- Altering Elasticsearch indexes is not supported at this time.
- The pipe operator is not supported.
WHERE
clauses supports full-text search only working on single terms.
- Make sure that you start the Elasticsearch cluster and Nebula Graph at the same time. If not, the data writing on the Elasticsearch cluster can be incomplete.
- It may take a while for Elasticsearch to create indexes. If Nebula Graph warns no index is found, wait for the index to take effect (however, the waiting time is unknown and there is no code to check).
- NebulaGraph clusters deployed with K8s do not support the full-text search feature.
Last update:
August 28, 2023