V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
NebulaGraph
V2EX  ›  推广

图数据库对比: Neo4j vs Nebula Graph vs HugeGraph

  •  
  •   NebulaGraph · 2020-08-27 16:13:39 +08:00 · 2129 次点击
    这是一个创建于 1550 天前的主题,其中的信息可能已经有所发展或是发生改变。

    性能测试对比

    本文系腾讯云安全团队李航宇、邓昶博撰写

    图数据库在挖掘黑灰团伙以及建立安全知识图谱等安全领域有着天然的优势。为了能更好的服务业务,选择一款高效并且贴合业务发展的图数据库就变得尤为关键。本文挑选了几款业界较为流行的开源图数据库与 Nebula Graph 进行了多角度的对比。

    图数据库介绍

    Neo4j

    Neo4j 是目前业界广泛使用的图数据库,包含社区版本和商用版本,本文中使用社区版本。

    HugeGraph

    HugeGraph 是百度基于 JanusGraph 改进而来的分布式图数据库,主要应用场景是解决百度安全事业部所面对的反欺诈、威胁情报、黑产打击等业务的图数据存储和图建模分析需求。具有良好的读写性能。

    Nebula Graph

    Nebula Graph 是一款开源的分布式图数据库,采用 shared-nothing 分布式架构,擅长处理千亿节点万亿条边的超大规模数据集,从而更好地服务企业级应用。

    测试硬件环境

    硬件测试环境

    性能对比

    我们使用不同量级的图从入库时间,一度好友查询,二度好友查询,共同好友查询几个方面进行了对比,结果如下:

    测试结果

    可以看到在导入性能上,数据量小的时候 Nebula Graph 的导入效率稍慢于 Neo4j,但在大数据量的时候 Nebula Graph 的导入明显优于其他两款图数据库;在 3 种查询场景下,Nebula Graph 的效率都明显高于 Neo4j,与 HugeGraph 相比也有一定的优势。

    查询语言对比

    查询语言对比

    从查询语句的角度出发,Gremlin 比较复杂,nGQL 和 Cypher 比较简练,从可读性角度出发,nGQL 比较类 SQL 化,比较符合大家的使用习惯。

    可视化对比

    查询语言对比

    在可视化方面,所有的平台都还只处于可用状态,Nebula Graph 的选择性扩展在团伙挖掘中是一个加分项,但是在二度结果展示流畅度,展示结果自定义展示方面还有优化空间。

    在比较了多款业内主要使用的开源数据库后,我们从性能,学习成本和与业务的贴合程度多个角度考虑,最终选择了性能出众,上手简单,能大幅提高业务效率的 Nebula Graph 图数据库。

    本文首发于 Nebula Graph 论坛阅读本文的你有任何疑问,欢迎前往论坛和作者进行讨论,原帖传送门https://discuss.nebula-graph.com.cn/t/topic/1013

    2 条回复    2020-08-27 19:25:33 +08:00
    leven87
        1
    leven87  
       2020-08-27 17:49:06 +08:00
    目前用的是 Neo4j, 还是非常顺手的
    iblislsy
        2
    iblislsy  
       2020-08-27 19:25:33 +08:00
    neo4j 如何回溯节点状态,有没有方法
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2928 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 12:42 · PVG 20:42 · LAX 04:42 · JFK 07:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.