标签: neo4j

记录 spring neo4j 的密码查询

我尝试使用以下 log4j 配置记录由 spring 数据 neo4j 生成的密码查询:

log4j.rootLogger=DEBUG, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

log4j.category.org.springframework.data.neo4j=DEBUG
Run Code Online (Sandbox Code Playgroud)

但是,我看不到日志中显示了密码查询。有人对调查为 spring neo4j 数据映射生成的密码查询的方法有什么想法吗?

logging neo4j cypher

1
推荐指数
2
解决办法
4118
查看次数

按聚合排序的密码顺序

我需要在查询期间聚合数据,然后按此数据排序。

根据密码文档:

如果要使用聚合对结果集进行排序,则必须将聚合包含在要在 ORDER BY 中使用的 RETURN 中。

我有以下密码查询:

START profile=node(31) MATCH (profile)-[r:ROLE]->(story)
WHERE r.role="LEADER" and story.status="PRIVATE" 
WITH story MATCH (story)<-[r?:RATED]-() 
RETURN distinct story ,sum(r.rate) as rate ORDER BY rate DESCENDING
Run Code Online (Sandbox Code Playgroud)

上面的查询工作正常,问题是我必须在我的结果集中包含sum(r.rate)

当查询响应应该是故事列表/页面时,我通过存储库使用Cypherdsl(我的存储库扩展了 CypherDslRepository )...

我可以使用按聚合函数排序而不将其包含在结果集中吗?
有什么解决方法吗?

谢谢。

sql-order-by aggregate-functions neo4j cypher

1
推荐指数
1
解决办法
626
查看次数

在 neo4j 中为单个属性设置多个值

我正在使用 neo4j 2.1.2 社区版。

我的查询,我可以为单个属性添加多个值吗?

例如,假设我有一个名为“11”的节点。11 具有名为 name - john, age-34, sex -m, phone_no- 1234,5678 的属性。所以它有两个 phone_no 值。那么我如何创建一个具有属性名称、年龄、性别和电话号码的节点,其中电话号码有 2 个值。

通常会这样做(对于单个电话号码),

CREATE (n:Person{name:'john',age:34,gender:'m', phone_no:1234})
Run Code Online (Sandbox Code Playgroud)

因此,对于多个电话号码,我可以执行以下操作:

CREATE (n:Person{name:'john',age:34,gender:'m', phone_no:1234,5678})
Run Code Online (Sandbox Code Playgroud)

那么我如何使用密码查询来实现它呢?

谢谢

neo4j cypher

1
推荐指数
1
解决办法
3322
查看次数

余弦相似性 - 作为推荐引擎的缺点?

我已经看到 K-Nearest Neighbor 算法中使用余弦相似度来根据用户偏好生成推荐。在这些模型中,用户对给定产品的评分被视为向量,然后两个用户之间的相似度由两个向量之间的余弦相似度确定。(例如http://www.neo4j.org/graphgist?8173017

我的问题是: 谁能解释一下使用余弦相似度的推荐引擎如何解释并行用户偏好?在我看来,如果两个用户具有平行(但不同)的偏好,则他们可以具有完全极性的评级偏好,并且产生 1 的余弦相似度。例如,如果一个用户将 5 部电影评为 10 颗星中的 1 部电影,而另一个用户将 5 部电影评为 10 颗星中的 10 颗,则他们的余弦相似度将为 1(在我看来,这似乎是一个不准确的衡量标准用户相似性)。

余弦相似度

问题示例:如果我们测量两个用户的用户偏好,并且测量他们对 3 个产品的偏好,我们可以将他们的偏好存储为两个向量:

a =(1,1,1) 和 b=(10,10,10)

然后我们可以使用余弦相似度来衡量它们彼此之间的相似程度。但在这种情况下,它们的余弦相似度将是 1,即使它们代表了相反的用户偏好。

recommendation-engine machine-learning knn neo4j cosine-similarity

1
推荐指数
1
解决办法
3559
查看次数

删除neo4j中的重复节点

我得到多个节点

MATCH(n:Employee{name:"Govind Singh"}) return (n);
Run Code Online (Sandbox Code Playgroud)

实际上我错误地创建了重复的节点。

现在我想删除除一个之外的所有重复节点。

nodes neo4j cypher

1
推荐指数
1
解决办法
4900
查看次数

即使在 Neo4j 中使用限制子句,您也可以获得完整的结果计数

出于性能原因,我限制了结果的数量,所以我有一个类似的查询

MATCH (a:Part) RETURN a limit 50

是否可以获取带有标签 Part 的节点的完整计数,以便显示结果代表 X 条记录中的 50 个结果?

neo4j

1
推荐指数
1
解决办法
804
查看次数

使用 NEO4j 显示具有多个关系的节点

我使用以下代码创建了一个图表。我如何不仅返回节点,还返回每个用户连接到多个视频的时间和地点以及每个视频连接到多个用户的关系?

CREATE CONSTRAINT ON (u:User) ASSERT u.user IS UNIQUE;
CREATE CONSTRAINT ON (v:Video) ASSERT v.video IS UNIQUE;

USING PERIODIC COMMIT 100000
LOAD CSV WITH HEADERS FROM 'asdfjkl;' AS line
WITH distinct line.user as user_data
MERGE (:User {user: user_data });

USING PERIODIC COMMIT 100000
LOAD CSV WITH HEADERS FROM 'asdfjkl;' AS line
WITH distinct line.video as video_data
MERGE (:Video {video: video_data });

USING PERIODIC COMMIT 100000
LOAD CSV WITH HEADERS FROM 'asdfjkl;' AS line
MATCH (u:User {user: line.user })
MATCH (v:Video …
Run Code Online (Sandbox Code Playgroud)

relationship nodes neo4j graph-databases cypher

1
推荐指数
1
解决办法
2889
查看次数

非托管扩展neo4j上的密码查询

我的 neo4j 服务器有一个非托管扩展。

和如下代码。

@Path("/helloworld")
public class HelloWorldResource {

    private final GraphDatabaseService database;

    public HelloWorldResource(@Context GraphDatabaseService database) {
        this.database = database;
    }

   @GET
   @Produces(MediaType.TEXT_PLAIN)
   @Path("/{nodeId}")
   public Response hello(@PathParam("nodeId") long nodeId) {
        String res = ""; 

        try ( Transaction ignored = database.beginTx();)
        {
            //@@problem
            Result result = database.execute( "MATCH (n:KISI) where id(n)=1 return n" );

        } catch (Exception e) {
            res = "Error = " + e.getMessage();
        }

        return Response
            .status(Status.OK)
            .entity(("nodeId =" + nodeId + " " + res).getBytes(Charset
                    .forName("UTF-8"))).build(); …
Run Code Online (Sandbox Code Playgroud)

java neo4j cypher

1
推荐指数
1
解决办法
341
查看次数

如何从 py2neo 图查询返回节点?

我如何使用结果并将其转换为节点或关系graph.run,例如。

result = graph.run('match (x:Person) return x')
Run Code Online (Sandbox Code Playgroud)

如何将结果转换为 Py2neo v3 节点/关系?

neo4j python-2.7 py2neo

1
推荐指数
1
解决办法
4697
查看次数

匹配与一组其他节点相关的所有节点-Neo4j

我刚刚开始使用neo4j,希望对尝试解决问题有所帮助。

我有一组Questions要求提供信息(Slots)的答案。

该图的规则(即Slots required每个的Question)如下所示:

图表图在这里

在一个场景中,我有一组插槽例如,[ Slot ASlot B]我希望能够检查所有QuestionsSlots相关的如[ Question 1Question 2]。

然后,我希望能够检查Questions所有required Slots可用的,例如[ Question 1]

这有可能吗,如果可以的话我应该怎么做?

neo4j py2neo

1
推荐指数
1
解决办法
90
查看次数