一、产品介绍
在数据领域,“图”主要与图论相关。而在计算机科学领域,“图”指将图论的概念抽象成数据库里的数据结构。
上图左侧为属性图,也是图数据库里应用最广泛的一种方式,其中包含点、边和属性。在数图数据库里,也会将其按照符合图的数据结构来存储,然后基于图的语义做查询。
最简单的场景,比如微信、微博等,添加了好友关系,则建立了从一个点到另一个点之间的关联关系,在图数据库里表示为点与边;比如地图中若干个建筑物代表点,从一个建筑物到另一个建筑物之间的距离表示为边。
上图展示了开源分布式图数据库的全景,涵盖了从云原生、大数据生态、可视化整个周边的全栈产品,提供了自管、半托管以及全托管的模式供用户自由选择。可视化方面提供了Explorer和Dashboard,集成了GraphX 和Plato 数据分析产品,构建了与大数据紧密结合的生态。
上图为图数据库的产品架构,主要由 Graph Service与 Storaged Service构成。 Graph Service 提供兼容openCypher9的语法查询层,Storaged Service 基于 Raft 构建了分布式的存储并提供数据分片,通过此方式保证了数据库产品的高可用。计算特性上,提供了一些计算框架的支持,比如 Plato、GraphX 。此外,提供了多种图算法,包括RangeRank、连通分量等。
二、计算巢合作情况介绍
今年 6 月,我们在计算巢上架了NebulaGraph产品。
计算巢开放了整个阿里云的基础设施能力,提供了代运维通道、资源的弹性伸缩和对监控服务的完整支持度,极大方便了我们为客户提供服务。客户通过计算巢Portal登录之后,可以在软件服务商里找到该产品,然后基于试用中心快速体验,提供的功能包括自动部署、运维、监控,客户也可以选择授权给软件服务商代为运维。
三、如何在计算巢部署NebulaGraph
在计算巢部署NebulaGraph的流程如下:
① 登录计算巢 Portal ,填写简单信息。
② 申请试用权限。
③ 后台审批通过之后。
④ 配置服务参数。
⑤ 进行产品试用。
首先,在计算巢Portal点击NebulaGraph图标,填写个人信息,等待审批通过之后,即可进入服务配置页。
服务配置包含基础设施配置、集群节点配置、可视化产品配置。基础设施配置里需要填写网络信息,此处需重点关注业务集群是否需要与Nebula Graph部署在一起。集群节点分为 Graph节点、Meta 节点与 Storaged 节点,默认已经挑选出一些合适的机器规格。可视化产品分为Expoloer 与 Dashboard,如果没有可视化需求可选择关闭,则部署完成之后只会创建Nebula Graph集群。
如果用户选择了服务商授权代运维,则服务商可获得只读、终端登录以及操作审批三种权限,并在后台进行管理。
未来也将推出套餐服务,针对用户的服务场景方便其输入一些数据集,能够提供最佳的服务配置,简化配置时间。也会提供基础套餐、针对多种数据集规模的套餐或针对不同场景的套餐,用户可以很方便地根据业务来简化服务配置。
NebulaGraphExplorer是一款可以通过Web访问的可视化探索工具,可以通过拖拽的方式轻松找到点与点之间的关联关系,且提供了 2D与 3D 的鸟瞰模式,通过简单的操作即可找到实体与实体之间的关联关系,方便用户进行业务的分析与探索。
NebulaDashboard 是针对多集群的可视化运维工具,适合DBA 或运维人员使用。可对节点集群(包括每个节点上的服务进程)进行监控,以便第一时间收到告警。
服务启动完成时已经将Nebula 集群的相关信息导入 Dashboard 里,因此用户登录后可即刻查看当前有哪些集群在管理。点击集群入口,可以查看集群下的物理节点、每个节点上有哪些服务进程。
Dashboard也可以管理多个集群,提供相应的集群导入功能。
未来,我们将推出弹性扩缩容服务,这也是计算巢提供的一些服务扩展能力。比如Graph集群遇到瓶颈时,可以通过弹性扩缩容的能力扩充节点。同样,针对Storaged也提供了弹性伸缩,通过管理能力应对业务高峰期,感知业务瓶颈,第一时间内做出相应的弹性伸缩。
后续我们还会将服务与计算巢相关的支付渠道打通,以便用户购买服务套餐。
四、上“云”给客户带来什么
上云能够通过计算巢实现降本增效,主要体现在以下几个方面:
第一,开箱即用。如果在线下使用一款图数据库产品,需要准备机器资源、采购机器、部署服务。部署过程中出现问题还需要进行定位并联系相关人员进行解决。而云上提供了开箱即用的服务,5分钟之内即可交付一款图数据库产品,极大节省了时间成本。
第二,高可用性。云上采用了存算分离的架构,Storaged基于 Raft 的形式实现数据冗余。再结合阿里云提供的可用区,即可实现数据的备份。
第三,极致弹性的能力。存算分离的架构可以针对不同场景做不同节点的弹性伸缩,而云上能将这一优势发挥到最大。云上拥有无穷无尽的资源,可以针对场景配置一定的弹性规则,以应对峰谷等不同业务特性,实现节点资源的弹性扩缩容。
第四,安全可靠。产品内置了多种角色控制,针对不同的访问人员分配不同的角色。另外,提供了多种不同的认证方式,可以根据需求做不同的配置。
五、 部署演示
首先在配置页输入基础信息,选择可用区,重点关注业务与 Nebula集群是否在一起。然后分别配置Graph节点、Meta节点、Storaged节点的实例类型、数据盘类型、数据盘空间等,并按实际需求选择是否开启可视化产品。
选择授权代运维,点击“开始免费试用”即可进行试用。
基础信息页展示了参数、服务的访问入口等信息,部署日志里提供每一个服务部署的过程。
访问Nebula Explorer。
首先找到 Graph的私有地址填入host ,然后输入用户名、密码。进入可视化工具后需要先导入数据,方可进行图探索操作。
访问Nebula Dashboard。登录后可见已经导入了集群,包含三个物理节点,每个节点上各有一个服务,分别是 Graph、Metad和Storaged。
集群总览下可以查看服务状态是否正常。
试用中心为用户提供了 14 天的免费试用时间,用户可以通过产品与自己的业务进行对接,来体验图数据库。
下面切换至服务商视角,来展示代运维相关操作。
服务商可以查看用户创建的服务实例,可以查看有多少台 ECS ,通过监控面板可以查看每一个 ECS的 CPU、内存、磁盘、网络等监控信息。监控页可以配置一些监控规则,方便帮助客户运维实例。部署日志里可以查看部署过程。
如果服务集群出现问题,需要登录到 ECS 执行相应操作。操作指令执行完成后,计算巢服务会将服务指令上传到对象存储,客户可以通过视频回放查看操作,每一个操作都会被记录。
可通过录屏回放查看之前的操作。
每一条操作指令都能被记录,同时记录了访问时间、结束时间等。
此外,访问记录、安全审计等信息也能够被完全记录。
用户也可通过录屏回放查看服务商的运维操作,所有运维操作全透明。