我正在使用neo4j版本String patternString = "^(?=[^B]*+B)(?=[^T]*+T)(?=[^L]*+L)";
String[] dictionary = {"AL", "BAL", "BAK", "LABAT", "TAL", "LAT", "BALAT", "LA", "AB", "LATAB", "TAB"};
for (int i=0; i<dictionary.length; i++)
{
Pattern p = Pattern.compile(patternString);
Matcher m = p.matcher(dictionary[i]);
if(m.find())
{
System.out.println("Match: " + dictionary[i]);
}
}
。数据库中将有超过 10亿个节点。
截至目前,我正在使用索引(得到here的想法)来获取特定属性(即用户名等)的节点。但似乎索引使写入数据库的速度变慢。
如何在Match: LABAT
Match: BALAT
Match: LATAB
中使用 Java API 来查询特定属性的节点?
答案 0 :(得分:0)
正如你所说的索引。您还可以创建图形结构(例如树或列表)以结构化方式访问节点,请参阅:
http://neo4j.com/docs/stable/cypher-cookbook-path-tree.html
与任何其他数据库索引一样,会增加写入性能影响。
为什么不升级到更新版本?喜欢2.3.1?