从cypher neo4j-shell输出状态消息到控制台

时间:2015-04-24 16:37:48

标签: shell neo4j console cypher

我正在使用neo4j-shell运行一些Neo4j cypher查询。在我导入大型CSV文件时,它们的执行时间很长。

我想在导入的每个阶段完成时向控制台输出一些消息,这样我们就可以在运行时看到导入进度而无需等待执行完成。

我已经检查了Cypher RefCard,但找不到这样的例子。 cypher是否支持输出到shell控制台窗口?

5 个答案:

答案 0 :(得分:3)

我觉得这是一个非常有趣的话题。 IMO以强大的方式实现它的最好方法是编写服务器插件:

答案 1 :(得分:1)

"返回"字符串打印两次,因为第一个是标题,第二个是内容。你可以使用" AS"使用反引号更改标题以使其看起来更好:

MATCH (n) 
DETACH DELETE n;
RETURN "Existing data removed" AS `Action:`;

更好的是,您可以将操作输出与消息结合起来:

MATCH (n) 
DETACH DELETE n
RETURN count(n) AS `Existing data removed:`;

答案 2 :(得分:0)

那会很棒,但我不认为这是可能的。在过去,我已经计算了密码查询的数量,然后计算终端中成功消息的数量(呃;)

最好的办法是编写一个脚本,将cypher查询逐个传递给shell并在其间输出。

(另外,您可能已经涵盖了这一点,但为了帮助缓慢导入,请记住创建适当的索引并avoid the eager!)

答案 3 :(得分:0)

嗯......好的。你可以把RETURN语句给你一个线索,例如。

load cvs with headers from 'file1.csv'
return 'file1'
load cvs with headers from 'file2.csv'
return 'file2'

答案 4 :(得分:0)

我使用RETURN完成了此操作。但每个RETURN值打印两次! 不知道到底发生了什么。但是对于调试很好。

RETURN "Removing existing data...";
MATCH (n)
DETACH DELETE n;
RETURN "Existing data removed";