墨天轮访谈 | 百度云邱学达:GaiaDB如何解决云上场景的业务需求?
分享嘉宾:邱学达
百度云原生数据库资深技术专家
整理:墨天轮社区
导读
业务上云的大背景对弹性与可靠性的要求越来越高,传统架构的单机数据库或是分片数据库已经很难支撑快速增长的业务,导致单机瓶颈、扩容缩量、故障恢复慢、兼容性、资源利用率低等一系列的问题显现,同时单机时代数据库的的缺点会在云上高倍率放大。
基于这些痛点,墨天轮技术社区邀请到来自百度云数据库资深技术专家,拥有多年数据库与分布式存储开发经验的嘉宾邱学达,为大家带来【GaiaDB架构解析及互联网应用案例】的主题分享,谈谈云原生数据库GaiaDB如何解决云上场景的业务需求。
GaiaDB是什么?
1、 GaiaDB 的核心特性
GaiaDB是百度自研的新一代企业级云原生数据库,采用领先的存算分离架构设计,真正实现按需、极致弹性扩展能力,最大容量可扩展128TB以上,吞吐达到150+万 QPS ,成本仅商业数据的 1/10。
作为设计之初的核心理念,GaiaDB能够完全兼容开源生态,同时GaiaDB还拥有易扩展、易维护、强一致、多地域的核心特性。

图1 GaiaDB的核心特性介绍
2、 GaiaDB 的设计架构
GaiaDB的设计架构从上至下分别是接入层、计算层、存储层,接入层负责连接池,负载均衡基础的功能,包括ip的黑白名单;计算层使用传统的易主多重架构,读写逻辑包括ACID,完全兼容MySQL生态;存储层负责热数据也就是wal日志高可用、高可靠,以及数据页的高可用高可靠。
GaiaDB特性得以实现的核心是存算分离的技术,即通过对传统数据库的改造,把计算层和存储层分为了两个层级,这样就能够解决两层分别弹性、分别结偶,分别高可用,从而打破了传统单机计算存储的匹配不均,以及比例不等的痛点。
不仅如此,GaiaDB能够帮助主库在同等的计算资源中取得更高的性能。传统的架构下中主库负载高,而在新的架构下,主库只需要把WAL日志写到存储层的log series集群中,当高可靠的log series集群存储下来之后,主库就可以返回并提交事务,从而将数据页回放,日志的高可用,高可靠留给存储层结构来做,这样便大大降低了主库以及CPU内存的这种负载压力。

图2 GaiaDB的高可用架构示意
3、GaiaDB 优势
首先GaiaDB能够全方位、100%兼容MySQL,做到SQL语法兼容、协议兼容、工具生态兼容、其他特性兼容。

图3 GaiaDB优势:兼容并包
GaiaDB的极致弹性表现在计算层弹性与存储层弹性,计算节点横向与纵向弹性,耗时小于30s,同时扩容过程对业务透明。其次存储层弹性能够实现按需分配,提高共享存储池的利用率,同时支持接入各类冷热介质/分层存储,介质只影响读延迟。

图4 GaiaDB优势:极致弹性
GaiaDB第三个优势是备份恢复,在并行备份与恢复时,百TB备份耗时小于1h。GaiaDB支持逻辑备份、物理备份、同时支持AWS S3接口。

GaiaDB第四个优势是数据强一致,实现秒级故障恢复。架构每一层都实现高可用、高可靠。
主库不负责数据的持久化,因此故障不影响数据的完整性,大大降低了数据恢复的时间,降低风险。

图5 GaiaDB优势:数据强一致
互联网业务下要求多地多活,当单地出现故障时能够快速恢复业务。GaiaDB提供的IDC容灾部署架构能够支持异地热活,同时能够轻松实现故障切换,保证业务的顺利进行。

图6 GaiaDB IDC容灾部署架构
最后,GaiaDB提供运维管理与集群监控的功能。在运维管理中,提供可视化与命令行的运维管理方式,包括集群创建、启停、库表管理、备份管理、空间分析和节点拓扑等。同时GaiaDB采用了开源的Prometheus+Grafana作为监控方案,实现计算节点、LS、PS等节点的多指标监控。

图7 GaiaDB提供运维管理&集群监控
作为一款云原生数据库,GaiaDB采用存储和计算分离的架构,所有计算节点共享一份数据,提供分钟级的配置升降级、秒级的故障恢复、全局数据一致性和数据备份容灾服务,既融合了商业数据库稳定可靠、高性能、可扩展的特征,又具有开源云数据库简单开放、自我迭代的优势。
GaiaDB 应用场景
GaiaDB组作为百度智能云自研的云原生关系型数据库,可以100%兼容MySQL语法,存储容量最高可达128TB,单库最多可扩展到16个节点,适用于大容量、高性能、高弹行的应用场景,接下来我们来看两个典型的应用场景。
1、场景一:大容量+低成本存储
随着业务的不断发展,传统数据库架构会遇到存储和性能的双重瓶颈,无法支撑业务几十TB的高性能访问。GaiaDB采用计算和存储分离的架构,实现了大容量与低成本存储的需求。通过综合测算,GaiaDB成本只有传统架构的10%-50%。

2、场景二:爆款产品极速上线
爆款产品往往带来几天百倍流量与数据量尖峰,而传统数据库无法快速的应对这种场景,拆库拆表会极大拖慢业务迭代节奏。
GaiaDB提供了极致的弹性能力,实现秒级扩缩容,轻松应对流量浪涌。

GaiaDB既融合了商业数据库稳定可靠、高性能、可扩展的特征,又具有开源云数据库简单开放、自我迭代的优势,解决云上业务的需求,相信GaiaDB是很好的选择。
我今天的分享就到这里,谢谢大家!
更多精彩内容,欢迎大家观看现场视频回放与会议资料
视频回放:https://www.modb.pro/video/6327
会议资料:https://www.modb.pro/doc/60830
- 查看原文:https://www.modb.pro/db/399683
- 查看【国产数据库沙龙】互联网行业应用专场文章、视频回放资源:https://www.modb.pro/topic/399271
欲了解更多可以进入墨天轮,围绕数据人的学习成长提供一站式的全面服务,打造集新闻资讯、在线问答、活动直播、在线课程、文档阅览、资源下载、知识分享及在线运维为一体的统一平台,持续促进数据领域的知识传播和技术创新。
关注官方公众号: 墨天轮、 墨天轮平台、墨天轮成长营、数据库国产化 、数据库资讯
墨天轮访谈 | 百度云邱学达:GaiaDB如何解决云上场景的业务需求?的更多相关文章
- 融云SDK触达用户数破20亿 王者风范双倍展现
11月1日,融云SDK触达用户数突破20亿,业务增长速度及用户覆盖量再创即时通讯云领域新高.自去年11月10日公布SDK触达用户数破10亿以来,融云仅用了一年时间,便取得了触达用户数翻倍的成绩,迅猛的 ...
- 为什么360、百度、腾讯出的Mac端云盘客户端都只有同步盘?(用户量小,同步盘开发成本低,Linux下都没有客户端)
如题,顾名思义,同步盘是用来同步的,不具备增量的功能,像这三家在Windows端出的客户端都是即有同步也有增量的. 陆续出来的,可能大家更多的是跟随策略,不得不提dropbox是这样的形式.mac电脑 ...
- selenium自动化 | 借助百度AI开放平台识别验证码登录职教云
#通过借助百度AI开放平台识别验证码登录职教云 from PIL import Image from aip import AipOcr import unittest # driver.get(zj ...
- 3D点云深度学*
3D点云深度学* 在自动驾驶中关于三维点云的深度学*方法应用.三维场景语义理解的方法以及对应的关键技术介绍. 1. 数据 但是对于3D点云,数据正在迅速增长.大有从2D向3D发展的趋势,比如在open ...
- 阿里云服务器 && 如何window链接到阿里云服务器
现在的时间是:2016年10月11日 1:购买学生机 阿里云手机app上 -> 学生专区 -> 购买: 需要注意的是:如果没有自己需要的系统,比如没有linux操作系统的ecs,那 ...
- 袋鼠云研发手记 | 数栈·开源:Github上400+Star的硬核分布式同步工具FlinkX
作为一家创新驱动的科技公司,袋鼠云每年研发投入达数千万,公司80%员工都是技术人员,袋鼠云产品家族包括企业级一站式数据中台PaaS数栈.交互式数据可视化大屏开发平台Easy[V]等产品也在迅速迭代.在 ...
- 免费网站监控服务阿里云监控,DNSPod监控,监控宝,360云监控使用对比
网站会因为各种原因而导致宕机,具体表现为服务器没有响应,用户打不开网页,域名解析出错,搜索引擎抓取页面失败,返回各种HTTP错误代码.网站宕机可能带来搜索引擎的惩罚,网站服务器不稳定与百度关系文章中就 ...
- 上传文件到Ubuntu阿里云服务器(windows到Linux的文件上传)
上传文件到Ubuntu阿里云服务器(windows到Linux的文件上传) 最近在阿里云上面租了一个轻量级服务器玩玩,学习学习怎么在服务器部署网站.然后嘞,在想要将本地文件上传到服务器的时候,自己研究 ...
- WordPress腾讯云存储搭建教程,完美解决
写在前面的话: 为什么会有今天的话题:WordPress+腾讯云存储? 因为博主不想使用七牛云,也不想使用又拍云,所以才有了今天的话题. 在使用腾讯云存储的过程中是很不顺利的,万幸的是现在终于完美融合 ...
- 华为云Stack新版发布:构筑行业云底座,共创行业新价值
摘要:在以"政企深度用云,释放数字生产力"为主题的华为云Stack战略暨新品发布会上,华为云提出深度用云三大关键举措,并发布华为云Stack 8.2版本,以智能进化推动创造行业新价 ...
随机推荐
- 在 Hub 上使用 Presidio 进行自动 PII 检测实验
我们在 Hugging Face Hub 上托管的机器学习 (ML) 数据集中发现了一个引人关注的现象: 包含个人未经记录的私密信息.这一现象为机器学习从业者带来了一些特殊挑战. 在本篇博客中,我们将 ...
- 【IDEA】DEBUG调试问题
不要将断点打在方法的声明上: 会有一个菱形标志,在标记之后运行DEBUG模式会跑不起来 查看所有的断点标记: 在这里直接找到所有标记位置,弄掉就会跑起来了
- 【转载】 gym atari游戏的环境设置问题:Breakout-v0, Breakout-v4, BreakoutNoFrameskip-v4和BreakoutDeterministic-v4的区别
版权声明:本文为CSDN博主「ok_kakaka」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明.原文链接:https://blog.csdn.net/clksjx/ ...
- 带有最小间隔时间的队列读取实现 —— 最小等待时间的队列 —— Python编程(续)
接前文: 带有最小间隔时间的队列读取实现 -- 最小等待时间的队列 -- Python编程 由于上次的设计多少有些简单,这里对此丰富一下. ============================== ...
- 为什么我们需要不断的开发不同的机器学习模型 —— Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?
引用: 作者:xyzh https://www.zhihu.com/question/26726794/answer/151282052 写给懒得看的人: 没有最好的分类器,只有最合适的分类器. 随机 ...
- SSH如何通过proxy进行服务器连接
openssh是什么这里不做解释,但凡是用过linux系统的一般都是会了解这个的,毕竟openssh都是系统自带的应用. openssh一般都是指linux上的客户端,很多linux系统自有客户端的s ...
- vue项目之主页布局
1.背景 2.基本结构 代码: <template> <el-container class="home-container"> <!-- 头部--& ...
- 高性能无锁队列 Disruptor 核心原理分析及其在i主题业务中的应用
作者:来自 vivo 互联网服务器团队- Li Wanghong 本文首先介绍了 Disruptor 高性能内存队列的基本概念.使用 Demo.高性能原理及源码分析,最后通过两个例子介绍了 Disru ...
- Linux input 子系统详解
1. 模块概述 1.1.相关资料和代码研究 drivers/input/ include/uapi/linux/input-event-codes.h 2. 模块功能 linux核心的输入框架 3. ...
- OpenPCDet复现过程记录
0.前言 OpenPCDet项目之前我就复现过,一个很优秀的项目,这几天又需要用到这个项目,再次复现遇到了不少问题,特此记录复现的流程 1.环境准备 1.1.前置条件 以下是我安装的版本 CUDA 1 ...