zoukankan      html  css  js  c++  java
  • 图数据库的选择与对比(Neo4j)

    Neo4j是由Java和Scala写成的一个NoSql数据库,专门用于网络图的存储。作为一个图形数据库Neo4j有以下优点

    • 更快的数据库操作。当然,有一个前提条件,那就是数据量较大,在MySql中存储的话需要许多表,并且表之间联系较多
    • 数据更直观,相应的SQL语句也更好写(Neo4j使用Cypher语言,与传统SQL相比语义清晰简单)。
    • 更灵活。不管有什么新的数据需要存储,都是一律的节点和边,只需要考虑节点属性和边属性。而MySql中即意味着新的表,还要考虑和其他表的关系。
    • 数据库操作的速度并不会随着数据库的增大有明显的降低。这得益于Neo4j特殊的数据存储结构和专门优化的图算法。

     ArangoDB是一个原生多模型数据库,兼有key/value键/值对、graph图和document文档数据模型,提供了涵盖三种数据模型的统一的数据库查询语言,并允许在单个查询中混合使用三种模型。

    ArangoDB是一个原生多模型数据库,兼有key/value键/值对、graph图和document文档数据模型,提供了涵盖三种数据模型的统一的数据库查询语言,并允许在单个查询中混合使用三种模型。

    ArangoDB的优点:

    • 可以灵活的使用键值对、文档、图及其组合构建你的数据模型。
    • 跟其它文档型数据库相比,ArangoDB占用的存储空间更少,因为ArangoDB是模式自由的元数据模式。(空间利用率高)
    • 可通过JavaScript进行扩展

    二者进行对比:

    • 数据存储
      • Neo4j对于图的存储自然是经过特别优化的。不像传统数据库的一条记录一条数据的存储方式,Neo4j的存储方式是:节点的类别,属性,边的类别,属性等都是分开存储的,这将大大有助于提高图形数据库的性能。
      • ArangoDB中的存储格式非常类似JSON,叫做VelocyPack格式的二进制格式存储。
    • 数据读写
      • Neo4j中,存储节点时使用了"index-free adjacency",即每个节点都有指向其邻居节点的指针,可以让我们在O(1)的时间内找到邻居节点。
      • ArangoDB中,默认的索引(节点,边)是哈希索引,不能用于范围查询、排序。整体使用了查询速度快也在O(1)左右
    • 易用性
      • 二者差不多,neo4j采用的是cypher语义清晰
      • arangoDB采用的是AQL易用性现在参考较少
    • 综合
      • Neo4j作为较早的一批图形数据库之一,文档和各种技术博客较多,技术成熟可用成功案例多。
      • Neo4j查询的高性能表现、易于使用的特性及其设计的灵活性和开发的敏捷性,以及坚如磐石般的事务管理特性等特点,都充分说明了使用Neo4j是一个不错的选择。有关它的所有优点,总结起来,主要表现在以下几个方面。

      (1)闪电般的读/写速度,无与伦比的高性能表现。

      (2)非结构化数据存储方式,在数据库设计上具有很大的灵活性。

      (3)能很好地适应需求变化,并适合使用敏捷开发方法。

      (4)很容易使用,可以用嵌入式、服务器模式、分布式模式等方式来使用数据库。

      (5)使用简单框图就可以设计数据模型,方便建模。

      (6)图数据的结构特点可以提供更多更优秀的算法设计。

      (7)完全支持ACID完整的事务管理特性。

      (8)提供分布式高可用模式,可以支持大规模的数据增长。

      (9)数据库安全可靠,可以实时备份数据,很方便恢复数据。

      (10)图的数据结构直观而形象地表现了现实世界的应用场景

    • 硬件部署

      Neo4j如果没有热备、容错的需求,一台普通的服务器就可以了,比如内存 32G,4 个内核。

     图数据库2015-2019排名

     

     

  • 相关阅读:
    软件公司项目经理岗位职责
    指针和链表
    数据结构
    五子棋
    AtCoder Grand Contest 031 B
    两道dp
    博客搬迁
    [Codeforces Round #526 (Div. 2)]
    [Educational Codeforces Round 55 (Rated for Div. 2)][C. Multi-Subject Competition]
    [codeforces Mail.Ru Cup 2018 Round 3][B Divide Candies ][思维+数学]
  • 原文地址:https://www.cnblogs.com/baobaotql/p/13815941.html
Copyright © 2011-2022 走看看