模糊匹配性能和neo4j差10倍,如何优化

neo4j【0.015s】:
match (n:Struct) where n.name contains “xxxxxxxx”
nebula【0.24s】:
match (n:Struct) where properties(n).name contains “xxxxxxxx”

neo4j【0.015s】:
match (n:Struct) where n.name contains “xxxxxxxx” or n.name contains “yyyy”
nebula【0.24s】:
match (n:Struct) where properties(n).name contains “xxxxxxxx” or properties(n).name contains “yyyy”

neo4j【0.015s】:
match (n:Struct|Function|Enum|Class) where n.name contains “xxxxxxxx” or n.name contains “yyyy”
nebula【1.925s】:
match (n:Struct) where properties(n).name contains “xxxxxxxx” or properties(n).name contains “yyyy”
Union
match (n:Function) where properties(n).name contains “xxxxxxxx” or properties(n).name contains “yyyy”
Union
match (n:Enum) where properties(n).name contains “xxxxxxxx” or properties(n).name contains “yyyy”
Union
match (n:Class) where properties(n).name contains “xxxxxxxx” or properties(n).name contains “yyyy”

全文索引试试?

定长字符串长度超过 256 字节,将无法创建全文索引,不太满足我们的要求。

而且neo4j也是没索引情况下测试的性能。

这里性能差的具体原因是什么呢?与参数有关吗?