Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Neo4j是否有图形查询生成器工具来浏览图形和进行RCA_Neo4j_Cypher - Fatal编程技术网

Neo4j是否有图形查询生成器工具来浏览图形和进行RCA

Neo4j是否有图形查询生成器工具来浏览图形和进行RCA,neo4j,cypher,Neo4j,Cypher,我想知道是否有人知道neo4j的一个工具,它可以让非开发人员查询neo4j数据库而不必学习密码。基本上,当他们看到一些奇怪的事情时,要做一些根本原因分析 一个假设的例子可能是,我们在neo4j上对我们的店铺运营进行建模,所有交易都通过我们的应用程序记录在neo4j数据库中,但当店主发现店铺上存在一致的库存缺失时,他可能希望开始进行一些RCA,而无需学习密码。可以要求neo4j显示某一天的所有员工,然后挑选一名员工,询问该员工在店的最后6个月的所有天数以及库存偏差等 我知道我可以用cypher来编

我想知道是否有人知道neo4j的一个工具,它可以让非开发人员查询neo4j数据库而不必学习密码。基本上,当他们看到一些奇怪的事情时,要做一些根本原因分析

一个假设的例子可能是,我们在neo4j上对我们的店铺运营进行建模,所有交易都通过我们的应用程序记录在neo4j数据库中,但当店主发现店铺上存在一致的库存缺失时,他可能希望开始进行一些RCA,而无需学习密码。可以要求neo4j显示某一天的所有员工,然后挑选一名员工,询问该员工在店的最后6个月的所有天数以及库存偏差等

我知道我可以用cypher来编写这样的查询,但是要让最终用户了解这一点是很困难的,那么有没有任何图形工具可以让他们自己进行这种分析,不管是付费的还是其他的


就图形工具而言,您可以使用Neo4j 2.0浏览器,但这需要一组常用的密码查询来引入基本数据集进行分析。现在有一些可视化工具,但据我所知,没有一个适合您的场景

我建议在这种情况下,您可以组合一组采用一系列参数的模板查询。您的员工想问的每个问题都会事先翻译成Cypher,应用程序的前端将允许您的用户为您的每个问题指定范围和其他相关参数信息

可能会要求neo4j在某一天向所有员工展示,以及 然后选择一名员工,询问过去6个月内 该员工在商店,库存偏差是多少 等等

显示在特定日期工作的所有员工

MATCH (e:Employee)-[:WORKED_ON]->(d:Day)
WHERE d.Date = "11/24/2013"
RETURN e.LastName, e.FirstName, e.EmployeeId
这里的参数是
d.Date
,您的
e.EmployeeId
将用作下一次查询的参数

MATCH (e:Employee)-[:WORKED_ON]->(d:Day)
WHERE e.EmployeeId = {EmployeeId} AND d.Timestamp > 123456789
WITH e, d
MATCH (e)-[:WORKS_IN]->(s:Store)-[:ON_DAY]->(d)
WITH e, d, s
MATCH (s)-[:HAS_INVENTORY_DEVIATION]->(delta:InventoryDeviation)
RETURN e.EmployeeId, e.FirstName, e.LastName, d.Date, d.Timestamp s.StoreLocation, delta.Deviation
ORDER BY d.Timestamp DESC

在上面的查询中,您将提供来自第一个查询的
EmployeeId
,并且
d.Timestamp
值将时间戳表示为32位整数。在这种情况下,值
123456789
将表示从今天起6个月前的日期时间值。

就图形工具而言,您可以使用Neo4j 2.0浏览器,但这需要一组常用的密码查询来引入基本数据集进行分析。现在有一些可视化工具,但据我所知,没有一个适合您的场景

我建议在这种情况下,您可以组合一组采用一系列参数的模板查询。您的员工想问的每个问题都会事先翻译成Cypher,应用程序的前端将允许您的用户为您的每个问题指定范围和其他相关参数信息

可能会要求neo4j在某一天向所有员工展示,以及 然后选择一名员工,询问过去6个月内 该员工在商店,库存偏差是多少 等等

显示在特定日期工作的所有员工

MATCH (e:Employee)-[:WORKED_ON]->(d:Day)
WHERE d.Date = "11/24/2013"
RETURN e.LastName, e.FirstName, e.EmployeeId
这里的参数是
d.Date
,您的
e.EmployeeId
将用作下一次查询的参数

MATCH (e:Employee)-[:WORKED_ON]->(d:Day)
WHERE e.EmployeeId = {EmployeeId} AND d.Timestamp > 123456789
WITH e, d
MATCH (e)-[:WORKS_IN]->(s:Store)-[:ON_DAY]->(d)
WITH e, d, s
MATCH (s)-[:HAS_INVENTORY_DEVIATION]->(delta:InventoryDeviation)
RETURN e.EmployeeId, e.FirstName, e.LastName, d.Date, d.Timestamp s.StoreLocation, delta.Deviation
ORDER BY d.Timestamp DESC

在上面的查询中,您将提供来自第一个查询的
EmployeeId
,并且
d.Timestamp
值将时间戳表示为32位整数。在这种情况下,值
123456789
将代表6个月前从今天开始的日期时间值。

这只是一个例子来解释我的想法,但目的是我们希望实际的最终用户遍历图表并得出结论,而不必学习密码进行类似的简单分析。在SQL世界中,我们可以看到一些图形化的查询生成器工具,它们可以生成简单的即席报告,而对数据模型的了解很少。是否有任何工具可以帮助他们构建查询并执行。必须定义一些人可以问系统的所有可能的问题,这可能是一个有点太多的前期工作。这只是一个例子来解释我的想法,但目的是我们希望实际的最终用户遍历图表并得出结论,而不必学习密码来进行这样的简单分析。在SQL世界中,我们可以看到一些图形化的查询生成器工具,它们可以生成简单的即席报告,而对数据模型的了解很少。是否有任何工具可以帮助他们构建查询并执行。必须定义所有可能的问题,有人可以问系统可能有点太多的前期工作。我曾试图搜索网络,发现那里几乎没有什么信息,这就是为什么这篇文章。我真的不知道我们不能问社区是否有人使用过/知道任何可以满足某些共同需求的工具。当有人知道有任何开源项目或商业工具可以做同样的事情时,从头开始构建一个工具似乎非常违反直觉。我不是真的在寻找一个固执己见的答案,而是一些建议来开始我的分析。请求这样一个请求真的离题了吗?或者可以重新编写以通过此规则吗?请看一个将自然语言查询转换为密码的示例。我们将要使用Treetop来做这件事……我想是的:我确实尝试过搜索网络,但在那里发现的信息很少,这就是我写这篇文章的原因。我真的不知道我们不能问社区是否有人使用过/知道任何可以满足某些共同需求的工具。当有人知道任何开源项目或com时,从头开始构建工具似乎非常违反直觉