标签: neo4j

有人使用Neo4j Embedded(v 1.8.x)和JDK 7吗?

我想知道是否有人在使用Neo4J 1.8.x Embedded和Sun JDK 7?如果是这样,你有没有遇到任何问题,他们是什么?

我还要澄清一点,我不打算构建Neo4J源代码 - 只在Sun Java 7上运行Neo4j 1.8.1 Embedded.

我知道Neo4j 1.9是第一个支持Java 7的版本,但是如果Neo 1.8.1在Sun JDK 7上运行没有任何问题,我们将考虑部署它.

使用Java 7有许多好处(例如安全性等),但如果与Neo 1.8.1存在兼容性问题,我们想了解一下.

谢谢,鲍勃

neo4j java-7

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

Neo4j - Gremlin - 如何对.groupCount.cap()返回的结果进行排序

我有一个问题.这个查询:

g.V.filter{it.type == 'user'}.outE.filter{it.label == 'follow'}.outV.groupCount().cap()
Run Code Online (Sandbox Code Playgroud)

返回HashMap

{v[1]=1, v[138]=3, v[140]=3, v[6]=1, v[203]=1, v[619]=7, v[131]=1, v[10]=4, v[192]=1, ...}
Run Code Online (Sandbox Code Playgroud)

怎么订购?输出需要是v [619] = 7,v [10] = 4 ,, v [138] = 3,v [140] = 3,...

g.V.filter{it.type == 'user'}.outE.filter{it.label == 'follow'}.outV.groupCount().cap().sort{-it.value} not working
Run Code Online (Sandbox Code Playgroud)

感谢名单

sorting neo4j gremlin

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

结合MongoDB和像Neo4J这样的GraphDB

作为我正在开发的CMS的一部分,我已经将MongoDB作为主要数据存储区,它提供给ElasticSearch和Redis.所有这些都是伪装配置的.

我目前正在尝试在JSON(一种DSL类型)中开发一个声明性api,在实现时,它将使我能够在JSON中编写统一查询,但在后端这些数据存储区协同工作以得出结果.联合搜索,如果你愿意.

现在,在充实了这个Json api支持的查询类型的同时,我遇到了一类查询,我目前的设置并没有(有效地)支持这些查询:基于图形的查询,比如朋友的朋友,RDF查询,等我也想支持的东西.

所以我正在寻找一种方法,将GraphDB引入这个生态系统中,并且最合适.我应该说应用程序层位于Node.js.

我看过很多比较Neo4J(流行的GraphDB)和MongoDB的文章,但没有那么多的实际用例,其中2是补充的真实场景.

任何指针高度赞赏.

graph mongodb neo4j

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

如何从neo4j返回所有最新节点?

是否可以查询neo4j以获取最新节点?在这种情况下,索引属性"timestamp"记录每个节点上的时间(以毫秒为单位).

我发现的所有密码示例都涉及到图形类型的查询 - "从节点n开始并遵循关系.返回在一个字段上排序的结果集的一般最佳方法是什么?这是否可以在诸如node4j的图形数据库中实现?

lucene neo4j cypher gremlin

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

索引集合弹簧数据neo4j

我正在试验/学习弹簧数据neo4j.我有一个非常简单的应用程序存储来自Twitter的推文.请参阅下面的代码段.

@NodeEntity
public class Tweet {

    @GraphId
    private Long id;

    private String tweet;

    @Indexed
    Set<String> hashtags;
Run Code Online (Sandbox Code Playgroud)

问题是,存储哈希标记的最佳方法是什么,以便我可以快速获取它们所属的推文?我能想到的是在Set上使用@Indexed或实际创建一个单独的Hashtag NodeEntity并在它和tweet之间建立关系.我无法找到一个NodeEntity索引集的任何文件,所以我不知道,如果设置的对象或设置每个字符串索引的创建索引.任何建议都会很好.谢谢.

neo4j spring-data-neo4j

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

neo4j:在neo4j graphDB中为节点和RelationshipTypes添加多个属性

我想在neo4j(java)中根据Facebook数据构建社交网络图.我正在尝试搜索相关的示例来理解这些概念,但仍然无法获得任何这些特定类型.请帮助我知道如何实现它,如果可能的话,提供适当的链接,我可以获得相关的帮助.

我想拥有节点和关系(边缘)属性,如下所示:

Node properties:
   String id, name, town;
   int numOfFriends;
   Double age;
   Date dateOfJoining
   HashSet<String> postIdSet;

Relationship Properties:
   boolean Knows;
   int numOfLikes, numOfComments;
   float wtLikes, wtComments;
   String relationship;
Run Code Online (Sandbox Code Playgroud)

如何创建graphDB具有上述属性的节点和边?

我有一个示例代码结构,用于创建graphDB和添加节点和关系,如下所示:

GraphDatabaseService graphDB = new GraphDatabaseFactory().newEmbeddedDatabase(DB_PATH);
registerShutdownHook(graphDB);

Transaction tx = graphDB.beginTx();
try {
    /* define relationshipType*/
    RelationshipType rel = DynamicRelationshipType.withName(??);

    /* create new node with given properties*/
    Node node1 = graphDB.createNode();

    /* set node1 properties e.g. node1.id="1234" */

    /* create another new node with given properties */ …
Run Code Online (Sandbox Code Playgroud)

java edges nodes neo4j graph-databases

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

在开始使用spring数据neo4j之前,我是否需要了解spring框架?

这是一个大学项目.教授告诉我们需要将neo4j用于图形数据库,由于POJO不能作为节点存储在neo4j中,我们也需要使用spring数据.听起来不错.当我真正编写代码时,我遇到的教程就是我的头脑.示例代码使用了注释,xml,bean和诸如此类的东西,而没有任何解释它们来自何处.我认为它们都是我没有经验的弹簧框架的一部分.那么在考虑春天neo4j之前我需要学习多少春天?我不能向我的教授寻求帮助,因为他是管理类型的人,他知道像技术这样的所有单词,但不知道它们是如何工作的.

spring neo4j spring-data-neo4j

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

优化Neo4j Cypher查询

我正在做的是获取所有与用户配置文件*具有特定定向关系的配置文件*,如果这些配置文件具有备用配置文件*,则在用户备用配置文件*与其关联时获取这些配置文件.我也需要关系的方向.

我的问题是,大约10000个节点需要大约5秒钟来获取数据.我有节点和关系的自动索引.

这是我的节点相关的方式:

用户 - [:简介] - >配置文件A - [:相关] - >概貌< - [?:我] - > ProfileB2 < - [?:相关] -ProfileA2 < - [:资料] - 用户

我的查询如下所示:

START User=node({source}) 
MATCH User-[:profile]->ProfileA-[rel:related]->ProfileB 
WHERE User-->ProfileA-->ProfileB 
WITH ProfileA, rel, ProfileB 
MATCH ProfileB<-[?:me]->ProfileB2<-[relB?:related]-ProfileA2<-[:profile]-User 
WHERE relB IS NULL OR User-->ProfileA-->ProfileB<-->ProfileB2<--ProfileA2<--User
RETURN ProfileB, COLLECT(ProfileB2), rel, relB
LIMIT 25
Run Code Online (Sandbox Code Playgroud)

知道如何优化查询吗?


  • 个人资料:ProfileB
  • 用户个人资料:ProfileA
  • 备用配置文件:ProfileB2
  • 用户备用配置文件:ProfileA2

neo4j cypher

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

neo4j:java错误:找不到NodeImpl#0的属性

我正在用java编写neo4j演示代码.以下是我正在创建节点,索引它们并打印其属性的代码的一部分.

String NODE_KEY = "UserID";
String NODE_PROPERTIES = "UserProperties";

createAndIndexUser(String userID){
    Node node = graphDB.createNode();
    node.setProperty(NODE_KEY, nodeID);
    neo4jGraph.nodeIndex.add(node, NODE_KEY, userID);
    return node;
}

for(int i=0 ; i<100 ; i++){
    String userID = "userID_"+i;
    Node node = createAndIndexUser(userID);
    node.setProperty(NODE_PROPERTIES, strNodeProperties);
}

Iterable<Node> allNodes = GlobalGraphOperations.at(graphDB).getAllNodes();

for(Node n: allNodes){
    System.out.println("n.getPropertyKeys: "+n.getPropertyKeys());
    System.out.println(n.getProperty(NODE_KEY));
}
Run Code Online (Sandbox Code Playgroud)

当我执行此代码时,第一个println的输出是:

n.getPropertyKeys: []
Run Code Online (Sandbox Code Playgroud)

而对于第二次打印,我收到一个错误:

Exception in thread "main" org.neo4j.graphdb.NotFoundException: 'UserID' property not found for NodeImpl#0.
Run Code Online (Sandbox Code Playgroud)

在哪里以及我做错了什么?为什么不打印所有属性键n.getProperty(NODE_KEY)

是否还有其他方法可以获取所有节点并打印其属性?

java runtime-error neo4j node-neo4j

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

cypher vs neo4j-sh:为什么我们两个都有?

我明白2如何不同:

  • neo4j-sh(不是我猜的真实姓名)适用于类似文件系统的抽象
  • cypher更像是一种类似SQL的方法

但为什么我们两个都有?

我实际上非常喜欢将数据结构作为文件系统进行操作的能力(就像FUSE对procfs之类的东西一样)并且很乐意在其中编写所有重要的脚本.

但它是否气馁?我想做的最后一件事是依赖于将来不支持或弃用的技术.

neo4j

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