深度解读|NebulaGraph x 阿里云计算巢,云上构建超大规模图数据库

news2025/7/8 22:38:01

近期,杭州悦数科技有限公司与阿里云计算巢达成合作,NebulaGraph 作为首款图数据库产品正式入驻阿里云计算巢,为用户带来了云端一键部署企业级图数据库集群的全新体验。同时,该服务集成了多款 NebulaGraph 周边可视化图数据库管理工具,让用户在云端也可以快速从数据中获得洞察力。

近年来,图数据库的概念被越来越多的企业反复提及。图(Graph)是一种存储实体,及实体之间关系的数据结构,而图数据库(Graph Database)则是一个使用图数据进行存储,同时使用图结构进行语义查询的数据库。

图数据库能够高效地将关联数据的实体作为顶点(vertex)存储,关系作为边(edge)存储,并允许对这些点边结构进行高性能的检索和查询,也可以为这些点和边添加属性。正因为具有这些特性,才使得图数据库能够以最接近直观认知的形式存储数据,并且能够将这些关系完美地呈现出来。

01 图数据库的发展趋势

为什么要使用图数据库,而不是关系型数据库?

关系型数据库实现了快速的逐行访问和数据一致性(ACID 事务),但当数据规模变大且数据间关系变得复杂时,使用关系模型检索时需要多个表的属性执行连接操作,数据写入时也需考虑外键约束,从而导致较大的额外开销,对性能有极高的要求。而图数据库则在处理复杂关系上有着天然优势,尤其在海量数据多对多的复杂实体联系场景中有着异常突出的表现,主要体现在性能、灵活性和敏捷性三个方面。

关系数据库 vs 图数据库(多跳查询)

其次,图数据库是基于图模型以一种直观的方式存储和展示这些关系。因为是基于事物关系的模型表达,图因此也具有天然的可解释性。

目前,图数据技术因其在处理海量关联数据时的天然优势和符合人脑直观印象的展示形式正被应用在多个行业的生产环境和业务实践场景中。例如,数据集成(知识图谱)、个性化推荐、欺诈与威胁检测、风险分析与合规、身份(与控制权)验证、IT 基础 设施管理、供应链与物流、社交网络研究等,甚至于 AI 机器学习、NLP(自然语言处理)、区块链等新兴技术领域,你都可以看到图数据技术的身影。

上云的趋势在加速,对于弹性能力提出更高要求

根据 Gartner 的预计,云服务一直保持较快的增速和渗透率。大量的商业软件,正在从 10 年前完全私有本地逐步转向基于云服务的商业模式。云服务的一大优点是其提供了近乎无限的弹性能力,这也要求各种基于云基础设施的软件必须有更好的快速弹性扩缩容能力。

在此背景下,开源分布式图数据库 NebulaGraph 成为了阿里云计算巢上第一家图数据库合作伙伴,与阿里云一起帮助更多企业用户更好地进行低成本、高效率的云上图数据库部署。

“对于数据库产品来说,底层基础设施的稳定性以及安全性对于客户来说至关重要。阿里云是国内领先的云计算提供商,我们看重其稳定的基础设施和安全性,此次与阿里云计算巢的合作,通过阿里云计算巢更高效地利用底层资源的弹性扩缩容以及便捷的服务编排等能力,可以使我们的客户放心、省心地使用基于云上的 NebulaGraph 产品。”NebulaGraph 创始人兼 CEO 叶小萌表示。

什么是云原生图数据库?

云原生,即云上内生的云能力,天然就“生于云,长于云”,基于统一的架构和云原生基础设施,实现多云/混合云解决方案、边云协同等能力。云原生时代下,企业应用数据的方式发生了根本性变化,即基于统一云基础设施的云原生数据库、大数据解决方案,将成为企业数字化转型的数据底座。

传统模式下,企业采购硬件资源,数据库部署在自建 IDC 并由企业监管和运维。企业的开发人员则采用 DevOps 模式或安排 IT 人员来管控数据库。接入业务后要时刻关注数据库集群状态来保障可用性,这对数据库内部实现不太了解的用户来说是个巨大的挑战。而云计算作为技术载体,天然具备跨越时空的优势,云技术正在从单一的计算能力发展为体系化的创新。对于企业来说,“上云”是一个技术选择、是企业数字化的起点,而基于云构建新的生产关系,打造新的业务增长引擎则是一个战略选择。

NebulaGraph 是一个可靠的分布式、线性扩容、性能高效的图数据库,其 Shared Nothing 和存储计算分离的底层架构让它具有了云原生的特征,可以有效降低成本和弹性扩缩容。而云端部署则屏蔽了数据库部署、性能调优、运维等繁杂过程,几分钟内就可以在云上创建一个图数据库,并快速扩展计算、存储等资源。

作为能够容纳海量关联数据并进行毫秒级查询延时的高性能图数据库产品,NebulaGraph 已经被多家行业领先的科技和通信公司应用在反欺诈、风险控制、社区发现等场景,其中某头部互联网公司的 NLP 团队也基于 NebulaGraph 搭建了自己的图数据库平台,目前已经有 60 多条业务线接入使用,在智能助理、搜索召回等业务场景均已落地。

NebulaGraph 在阿里云上部署的架构图

02 在云上部署 NebulaGraph 有哪些好处?

开箱即用:快速部署更方便

由于云厂商提供了统一的基础设施,企业无需自行采购硬件,还可以根据业务的灵活度和资源需求弹性调配云资源,实现快速上线。基于阿里云计算巢提供的 ROS(资源编排),NebulaGraph 实现了云上自动化部署,几分钟内即可交付一个图数据库集群,相比传统以天、甚至以周为单位的交付周期,有极大的提升。

其次,NebulaGraph Cloud 支持包年包月与按量付费的灵活付费方式,节省新购设备、自建机房等一次性建设费用,当不再需要的时候可以及时销毁,显著降低了研发成本。为了进一步的优化体验,下一阶段 NebulaGraph 还将结合自身在云上的优化特性和测试结果,陆续推出高性价比的云服务器规格套餐,让用户以更低的价格获得更高的性能,大家不妨也拭目以待一下。

高可用性:数据备份更安心

  • 架构高可用

NebulaGraph 集群包含三类服务,即 Query Service、Storage Service 和 Meta Service。

1、Meta Service 采用 Leader/Follower 架构。Leader 由集群中所有的 Meta Service 节点选出,然后对外提供服务;Followers 处于待命状态,并从 Leader 复制更新的数据。一旦 Leader 节点 Down 掉,会再选举其中一个 Follower 成为新的 Leader。

2、Query Service 对应的进程是 nebula-graphd ,它由完全对等、无状态、无关联的计算节点组成,计算节点之间相互无通信。

3、Storage Service 采用 Shared-nothing 的分布式架构设计,共有三层,最底层是 Store Engine,它是一个单机版 Local Store Engine,提供了对本地数据的 get/put/scan/delete 操作,该层定义了数据操作接口,用户可以根据自己的需求定制开发相关 Local Store Plugin。

在 Local Store Engine 之上是 Consensus 层,实现了 Multi Group Raft,每一个 Partition 都对应了一组 Raft Group。

  • 数据可靠性

NebulaGraph 数据存储使用阿里云的云盘产品。云盘是阿里云为云服务器 ECS 提供的数据块级别的块存储产品,具有低时延、高性能、持久性、高可靠等特点。云盘采用分布式三副本机制,为 ECS 实例提供极高的数据可靠性保证。

极致弹性:存算分离更可靠

NebulaGraph 采用存储与计算分离的架构。存储计算分离有诸多优势,最直接的优势就是,计算层和存储层可以根据各自的情况弹性扩容、缩容。存储计算分离还带来了另一个优势:使水平扩展成为可能,通过云上极致弹性能力,保障自身扩缩容需要。

NebulaGraph 在集群部署时会创建两个弹性伸缩组,一个对应 Graph 服务,另一个对应 Storage 服务。为了更好的扩缩容体验,我们做了以下考量:

  1. 将部分控制权交到用户手里。如果是 Graph 服务只需要将 ECS 资源按照目标数量弹性伸缩即可,因为 Graph 本身是无状态的;如果是 Storage 服务,我们会在编排页面提供一个控制开关,用于弹性扩容后是否自动平衡数据,因为在业务高峰期时数据搬迁会影响服务稳定性,所以何时去执行 balance 操作可以由用户自己来完成,部署的 Dashboard 工具也支持这个操作。

  2. 安全保护策略。大家都知道数据库服务数据不丢失是第一要素,因此我们对 Storage 伸缩组启用了删除保护开关以防止用户误操作,另外当用户需要缩容时,需要先在 Dashboard 界面找到对应伸缩组管理的 Storage 节点执行数据分片移除操作,等到数据分片清空后才会接受弹性伸缩 lifecycle-hook 请求。

除此之外,阿里云的弹性扩缩容提供了丰富的伸缩规则与定时任务能力,用户可以针对业务波动情况以及应用场景(OLTP 或者 OLAP)动态伸缩 Graph 节点,针对 CPU 平均使用率弹性扩容 Storage 节点。

安全可靠:角色身份可溯源

NebulaGraph 支持严格的角色访问控制和 LDAP(Lightweight Directory Access Protocol)等外部认证服务,能够有效提高数据安全性。当客户端连接到 NebulaGraph 时,NebulaGraph 会创建一个会话,会话中存储连接的各种信息,如果开启了身份验证,就会将会话映射到对应的用户。

同时,NebuaGraph 内置角色权限,用户可以把角色分配给创建的用户,从而实现访问控制。

03 如何在云上部署 NebulaGraph ?

目前,NebulaGraph 与阿里云计算巢正在开展限时免费试用活动,需要试用的用户登录到阿里云计算巢后,先申请试用权限,填写信息审批通过后,就可以看到一个完全白屏化的服务创建页面。

在引导步骤里填写必须的配置参数,一键提交后等待 5 分钟左右即可体验 NebulaGraph,随后正常使用图数据的各种功能即可,大大降低了用户部署数据库的门槛。

参考内容:

1. Gartner 2019 年十大数据和分析技术趋势

2.《NebulaGraph 白皮书》

3.《图数据库白皮书》:中国信息通信研究院 云计算与大数据研究所

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/109141.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python-面向对象

目录 面向对象 封装 继承 重写 重载 多态 单下划线、双下划线、头尾双下划线说明: 面向对象 类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。类变量:类变量在整个实例化的对…

ENSP防火墙进入web登陆界面

步骤 新建拓扑【选择USG6000V】然后导入USG6000V得镜像包进入到防火墙的CLI界面 账户与密码 账户:admin 密码Admin123(密码输入不会显示) 输入正确账户密码后会提醒修改密码输入 y 回车后提醒如下: 输入旧密码 输入新密码&…

基于禁忌搜索的TSP问题求解仿真输出路线规划图和收敛曲线

目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 禁忌搜索(Tabu Search或Taboo Search,简称TS)是对局部搜索(LS)的一种扩展,是一种全局寻优算法,其特点是采用禁忌…

践行者访谈实录:你真的了解CMMI吗?

2022年12月21日晚8点,我参与了《践行者》访谈节目,历时2小时,就CMMI有关的话题和主持人徐东伟老师,和热心的听众进行了在线交流。节目结束后,禅道公司的小朋友们整理了文字记录如下。 相信大家对CMMI的认知或多或少地…

Android自定义ViewGroup的布局,往往都是从流式布局开始

前言 前面几篇我们简单的复习了一下自定义 View 的测量与绘制,并且回顾了常见的一些事件的处理方式。 那么如果我们想自定义 ViewGroup 的话,它和自定义View又有什么区别呢?其实我们把 ViewGroup 当做 View 来用的话也不是不可以。但是既然…

端到端网络全链路监控方案

结构日渐复杂,设备类型、设备数量逐渐增加,设备间的连接关系随之复杂化,同时随着无线网络的发展,网络中的连接关系逐渐去“线”化,如何可观、高效的对网络间复杂的连接关系进行监控和管理,成为用户不可忽视…

2022年最好用的五款设备管理软件

工厂是典型的设备密集型组织,设备固定资产具有数量多、种类多、使用周期长、使用地点分散等特征。如果依然在使用传统的手工记录数据、手工巡检、纸质维保、电话维修的方式,势必给企业带来损失。 设备是众多企业经营中支出的主要组成部分,在…

(二十)Vue之非单文件组件

文章目录基本使用一、如何定义一个组件?二、如何注册组件?三、如何使用组件?演示程序普通Vue程序单文件组件程序局部注册全局注册几个注意点1.关于组件名2.关于组件标签3.一个简写方式组件的嵌套使用关于VueComponent一个重要的内置关系&…

Shape详解

Spape详解 1.自定义背景shape 1.1gradient 1.简介 定义渐变色,可以定义两色渐变和三色渐变,及渐变样式,它的属性有下面几个2.属性 angle,只对线性渐变是有效的放射性渐变必须指定放射性的半径,gradientRadiouscentetX和…

Ubuntu安装redis服务器

官网下载redis服务器的压缩包redis-6.0.16.tar.gz 点击download 6.2.8或任意版本即可。 上传下载的压缩包到服务器或者本地虚拟机 解压压缩包,并安装gcc tar -zxvf redis-6.0.16.tar.gz解压之后可以看到redis的目录结构: 没有bin目录,而redi…

Meta CTO专访:2023年AR/VR、元宇宙的下一步怎么走

2022年对于Meta来说注定是不平凡的一年,它经历了股价大跌、万人大裁员、项目重组、季度营收首次下滑、Reality Labs季度亏损破纪录,甚至前不久Meta AR/VR业务的元老级人物、Reality Labs顾问CTO John Carck也宣布离职,这件事对于Meta甚至整个…

HEVC学习之CTU划分

一,CTU相关概念 H.265将图像划分为“树编码单元(coding tree units, CTU)”,而不是像H.264那样的1616的宏块。根据不同的编码设置,树编码块的尺寸可以被设置为6464或有限的3232或1616。 上图就是一个6464树编码块的分区示例&am…

数字ic验证|SoC的功能验证

随着设计的进行,越接近最后的产品,修正一个设计缺陷的成本就会越高。 1.功能验证概述 在IC设计与制造领域,通常所说的验证(Verification)和测试(Test)是两种不同的事 验证 在设计过程中确认…

PHP 实现PDF转图片

目录 1.环境配置: 2.实现原理: 3.安装php扩展imagick 4.安装ghostscript 5.pdf转图片 1.环境配置: 2.实现原理: Php使用扩展插件imagick进行图片处理,处理pdf时使用imagick去调用ghostscript 3.安装php扩展imag…

spring-boot如何自行写一个starter并且使用

这里说的starter是pom中引入的一系列starter包,比如spring-boot-starter-web、mybatis-plus-boot-starter等。本文先已mybatis-spring-boot-starter的使用进行说明,然后得到使用的流程(套路),然后根据该流程&#xff0…

ddim原理及代码(Denoising diffusion implicit models)

前言 之前学习了 DDPM(DDPM原理与代码剖析)和 IDDPM(IDDPM原理和代码剖析), 这次又来学习另一种重要的扩散模型。它的采样速度比DDPM快很多(respacing),扩散过程不依赖马尔科夫链。 Denoising diffusion implicit models, ICLR 2021 理论 Astract和Int…

百果园通过港交所上市聆讯:八成营收来自加盟店,余惠勇为董事长

撰稿|汤汤 来源|贝多财经 近日,深圳百果园实业(集团)股份有限公司(下称“百果园”)通过港交所上市聆讯,并披露了聆讯后招股书。 根据招股书介绍,百果园是中国最大的水果零售经营商。根据弗若斯…

数据库实验6 存储过程实验

前言:游标的mysql代码不懂写,所以没有运行结果 实验6 存储过程实验 实验6.1 存储过程实验 1.实验目的 掌握数据库 PL/SQL 编程语言,以及数据库存储过程的设计和使用方法。 2.实验内容和要求 存储过程定义,存储过程运行,存储过程更名,存…

股票价、量走势图绘制

在证券投资分析领域中价、量走势分布图是投资者常用的一个参考方面。本案例主要介绍股票每日收盘价格、成交量的走势图以及月交易量分布饼图的绘制技能,并进一步介绍了子图的绘制方法。今有股票代码600000行情交易数据表(trd.xlsx)&#xff0…

SPDK线程模型

一、reactor线程 与传统的reactor线程模型相比,SPDK的reactor在功能实现上还是有很大区别的,线程不在基于流水线形式进行作业,而是采用Run-To-Complete来做运行处理。 如图所示,每个reactor线程会绑定一个cpu core,线…