杭州2020年6月9日 /美通社/ -- Nebula Graph V1.0 于6月9日正式对外发布,它采用 shared-nothing 分布式架构,擅长处理千亿节点万亿条边的海量关联数据集,从而更好地服务企业级应用。Nebula Graph 的设计初衷是未解决企业应用中海量数据的实时处理问题,相比其他解决方案,它可以更快处理更多的数据量,这使得 Nebula Graph 成为业界领先的高性能图数据库。
Nebula Graph 是一个开源的图数据库,由杭州欧若数网科技有限公司(下文简称:欧若数网)自主研发维护。欧若数网研发人员来自阿里巴巴、Facebook、、IBM 等大厂。
此外,高可用的分布式架构使它在企业级应用中具有在线水平扩容、数据恢复特性。
除了分布式架构,Nebula Graph 独创图查询语言 -- nGQL。这是一种为图结构设计的类 SQL 查询语言,有 SQL 使用背景的工程师可快速上手 nGQL。
同时,Nebula Graph 开发了一款图数据可视化工具 -- Nebula Graph Studio,具备数据导入和图探索功能,可对数据来进行实时交互分析,帮助用户理解图数据结构。
在过去的2年时间里,近1.25亿美元注入 Nebula Graph 所在的图数据库行业,长期资金市场对图数据库行业的支持可见一斑。
和 RDBMS 不同,图数据库不仅存储数据本身,也存储了数据之间的深层关系。因此,图数据库可高效地管理万亿级别关联数据,挖掘数据之间的深层关系,而这恰恰是传统的关系型数据库(RDBMS)难以解决的问题。
对 CIO 而言,Nebula Graph 是挖掘现存数据关联关系潜在价值的绝佳选择。对希望低成本、高效地处理关联关系的架构师而言,Nebula Graph 也是一个理想的选择方案。此外,数据科学家也可用 Nebula Graph 深挖数据背后的关联价值。
现代商业社会产生了海量数据,不同的数据储存在不同的地方,容易形成信息孤岛。利用 Nebula Graph,公司能够打通信息孤岛,挖掘数据中有意义的关联信息加以利用。例如,在金融领域,可通过 Nebula Graph 发现潜在风险,预防团伙作案的金融欺诈事件;政府有关部门也可用于监控线上活动、机构、账号等,第一时间发现潜在威胁、应对可疑情况。
除了上述场景,还有许多 Nebula Graph 适用场景。通过 Nebula Graph,社会化媒体网可将用户进行点对点连接,更好地服务于他们;在物联网(IoT)领域,只有设备间的关联有意义,才能带来更大的商业经济价值;线上零售、医疗保健领域、(AI)领域,Nebula Graph 也可助力处理、挖掘关联信息。
“之前京东数科的图服务是由 JanusGraph 提供的,我们碰到的主体问题是写入和查询速度很慢,且社区不活跃 bug fix 不及时,导致业务使用体验不理想。正在寻找新的解决方案时,遇到 Nebula Graph 刚启动,所以京东数科图技术团队立刻就参与了 Nebula Graph 的开源社区,并一起参与和合作开发了很多功能。借助 Nebula Graph 图数据库的高性能分布式存储和查询能力,从京东数科海量数据集中挖掘重要的关联关系,很好的助力内部和集团业务的开展。目前,我们正在将更多的图项目从传统方案迁移到 NebulaGraph。”
“在接触 Nebula Graph 之前,我们的图谱项目已经试用过多个知名的开源图数据库,包括 Neo4j、JanusGraph、DGraph 这些在 DB-Engine 上排名非常靠前的产品,但在规模和性能上没法满足我们的要求,导致项目始终没上线。当遇到 Nebula Graph 后,我们得知 Nebula Graph 的架构设计简洁可扩展,且基于 C++ 开发,性能特别强劲,具备非常强的互联网分布式基因;Nebula的同学们也非常给力靠谱,大家一起解决了N多个技术难题,成功把性能提升到远超最初规划,并且基于公司已有基础设施,搭建了一套图数据库平台,方便业务接入。现在,我们正在通力合作,把更多的知识图谱项目迁移到 Nebula Graph 上面来。”
基于图的风控和推荐方案相比传统方案有很大的技术优势,通过图技术赋予的新能力,我们在业务上发现了很多有意思的增长点。但由于业务上对于低时延、高并发的要求,我们从始至终在寻找高性能的开源图数据库方案。在通过详尽的比较 Nebula Graph、Neo4j、DGraph、JanusGraph 几种开源方案后,我们最终选用了 Nebula Graph,是基于这样几个原因:
高性能,经过性能比较测试后,Nebula 的性能相比其他几个更能够很好的满足我们的期望;
社区支持,我们对于图的使用也在摸索过程中,很多问题能够在社区很快得到响应。
“基于企业间关系的企业图谱、供应链关系、企业知识图谱这些应用都是非常典型的知识图谱应用,也很适合使用图数据库来作为基础设施支撑业务发展。最初阶段,个人会使用了某知名单机图数据库的方案,很好的支持了彼时业务的快速扩张;但随着网络式的数据量和访问规模快速增加,这样的方案在扩展性和时效性上的问题越来越突出。在得知 Nebula Graph 去年5月份开源后,我们就一直持续关注其动态,其分布式架构很适合我们的业务需求,并且迭代速度相当快速。在经过几个月的试用和调优后,Nebula Graph 已经在相当多内部业务上替代了原方案;未来,随着对于 OpenCypher 的兼容,我们计划将更多业务迁移到 Nebula Graph上。”
“I have a graph,a red graph. 小红书作为一个在线社区,有着很多的图存在:用户和笔记的交互关系,用户和用户的关注关系,电商交易关系等等。关系型数据库往往不能有效支撑小红书这样一个量级的图有效存储和实时查询计算。笔者接触过不少图数据库,一些寄希望于摩尔定律的发展,其他在性能上达不到我们的要求。我们选用Nebula图数据库,首先来自对团队的信任,创始人和核心成员在Facebook和蚂蚁金服,阿里等大公司做过图数据库,支撑了在线业务数据流下的推荐、搜索和风控等多个场景,深刻理解数据和业务形态以及之上的算法场景和需求,是最熟悉中国一线互联网公司图数据库需求的团队。其次诸多核心架构设计保证了对于超大规模数据的支持和集群规模的可扩展性。值得一提的是,对于图上经典的热点问题,Nebula最早应小红书需求实现了蓄水池抽样算法。我们也利用Nebula这个风控底层武器来保护小红书社区这个Red Graph,同时也在赋能给我们的其它业务算法线。”