Neo4j安装入门一些优缺点(2)

查询节点:

Driver driver = GraphDatabase.driver( "bolt://localhost", AuthTokens.basic( "neo4j", "neo4j" ) ); Session session = driver.session(); StatementResult result = session.run( "MATCH (a:Person) WHERE a.name = 'Arthur' RETURN a.name AS name" ); while ( result.hasNext() ) { Record record = result.next(); System.out.println( record.get("name").asString() ); } session.close(); driver.close(); 3. 优缺点

使用了一段时间Neo4j,总结一下我发现的优缺点。

优点:

数据的插入,查询操作很直观,不用再像之前要考虑各个表之间的关系。

提供的图搜索和图遍历方法很方便,速度也是比较快的。

缺点:

最不能让人忍受的就是极慢的插入速度。可能是因为创建节点和边的时候需要保存一些额外信息(为了查询服务)。不知道是不是我代码的问题,插入10000个节点,10000条边花了将近10分钟...

超大节点。当有一个节点的边非常多时(常见于大V),有关这个节点的操作的速度将大大下降。这个问题很早就有了,官方也说过会处理,然而现在仍然不能让人满意。

提高数据库速度的常用方法就是多分配内存,然而看了官方操作手册,貌似无法直接设置数据库内存占用量,而是需要计算后为其”预留“内存...

4. 适用场景

鉴于其明显的优缺点,Neo4j适合存储”修改较少,查询较多,没有超大节点“的图数据。

另外,针对Neo4j的缺点,有一款使用混合索引的数据库Arangodb也许是一个不错的考虑对象。根据其官网的说明,Arangodb不仅具有一般图形数据库的优点,而且在各种操作的速度上领先于Neo4j。

Neo4j 的详细介绍请点这里
Neo4j 的下载地址请点这里

推荐阅读:

Neo4j生成测试数据

Neo4j运行原理

Neo4j High Availability 配置

Neo4J图数据库实践系列

图数据库实践系列 (一)--Neo4J简介与安装

图数据库实践系列 (二)--Neo4J空间数据存储

图数据库实践系列 (三)--Neo4j Spatial的REST集成

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/3dd3847759e0f8afce66559aa0975e01.html