如何升级已废弃的Neo4J lucene索引?

问题描述 投票:2回答:1

我从3.3.9升级到3.5.17版本的Neo4J,当启动时,它说。

Deprecated index providers in use: lucene-1.0 (9 indexes). Use procedure 'db.indexes()' to see what indexes use which index provider.

然后当我运行该命令时,它列出了9个索引,看起来像:

| "INDEX ON :Concept(name)"   | "Unnamed index" | ["Concept"]   | ["name"]      | "ONLINE" | "node_label_property" | 100.0    | {version: "1.0", key: "lucene"} | 3  | ""  

问题是:如何升级它们?这些都是为了搜索而做的,那么我应该删除它们吗?或者在新版本中是怎么操作的?

neo4j lucene
1个回答
1
投票

你可以保留旧的索引或删除它们并创建新的索引。

对于每个索引,你可以做如下操作。

  1. 删除每个索引
DROP INDEX ON :Concept(name); 
  1. 创建一个新的(本地)索引
CREATE INDEX ON :Concept(name);

  1. 验证它们是否已被创建。
CALL db.indexes();

(这将显示进度)

注意,本机索引有时可能对每个参数的长度有限制(最大长度4096)。在这种情况下,索引不会被创建,你会在步骤3看到一个错误。

在这种情况下,您可以简单地对您出错的类型的属性进行搜索,使用 SIZE(node.property) 来过滤结果。然后更改该参数,(可选)在上面添加一个约束条件,以避免将来出现这种情况。

© www.soinside.com 2019 - 2024. All rights reserved.