干货分享 | 揭秘下一代云数据库引擎MyBase for MySQL

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
简介: RDS MySQL、开放包容、灵活弹性、超配&隔离

作者:陈招尚(胜通)



一、MyBase MySQL 核心特性解析


1)MyBase MySQL 的能力矩阵图


如下图所示MySQL能力矩阵图:


1.png


左侧是对中大型企业对数据库的要求:


第一,有权限的管理逻辑,针对不同企业客户有不同的特殊要求;第二,资源企业需要可控管理;第三,业务的场景下,数据没有瓶颈;第四,满足本企业定制化特性,例如定制化的业务监控;最后,核心的企业数据库,要具备开放和包容的特性,希望能够在数据库做到可上可下。


对于以上需求简单总结,MyBase专属指引MySQL4个方向去发展。第一,RDS MySQL要具备企业级数据库所有的能力,例如权限管理、安全性、监控、自治等。第二,在资源方面,大型企业在做预算的时候要做的简单,真正去使用的时候要做的复杂,让整体的资源效率利用率做得更高,为公司节省成本。第三,要做到灵活的弹性,让数据库最好永远没有瓶颈,最后是一定要做到开放包容。


2)具备 RDS MySQL 所有能力


2.png


企业级RDS MySQL数据库产品优势与价值:


1. 可用性业界第一

  • 最高保障99.99%可用性,包括:三可用区部署的企业版,双可用区部署的高可用本地盘版独享和独占实例。
  • 秒级高可用,最快10秒完成主备切换,透明代理服务极大限度降低切换给应用带来的影响。


2. 企业级数据库安全

  • 事前、事中、事后全方位数据安全保护矩阵。
  • 企业版提供RPO=0数据库解决方案,数据100%零丢失。
  • 按时间点秒级恢复,异地恢复,闪回保障数据安全。


3. 易扩展

  • 最快秒级升级能力满足动态业务需求。
  • 只读实例、分析实例随业务需求动态扩展。
  • 自动化读写分离功能,业务零改造。


4. 高性能

  • AliSQL内核优化,性能比开源高80%。
  • 动态自适应线程池,高并发状态下性能保持一致稳定。
  • Query Cache提高至少一倍读性能。
  • 经历双十一的内核大并发更新写能力,最高TPS5w。


3)AliSQL 特性概览


3.png


如上图所示,内核特性从8.0  5.7开始进行全面对齐,用可插拔方式实现。开源MySQL升级时可快速跟进,从Feature来看Thread Pool线程池,可看到Oracle的官网是MySQL发行公司,企业版里也有线程池,线程池重要的特性就是对性能上有优化好处,当你的数据库连接非常大的时候,不管是长连接或是短连接,始终保持自适应最优的数据库连接状态。


在新的线程池设计, Oracle的官方企业版MySQL实现可以防止的抖动,让性能始终处于高位,同时在链接反应不过来的的情况下,以DB的身份登陆,实现进一步的管理。


Fast Query Cache, 在8.0已经下线,因为本身在MySQL里实现机制上还有很大缺陷的情况下,通过克服这样的缺陷,实现明显的结果集缓存效果提升,尤其是大规格,如到32核及以上,MySQL单个对利用多CPU的能力不是非常充分,但是Fast Query Cache可以实现这方面的很大提升。CCL&HotQueue对SQL语句可以在内核里面发布命令,控制它的并发度、过滤等。


4)超配与隔离的统一


超配与隔离,某种程度上来说是一个互斥的词,但做到了统一:用户间专属隔离,用户内超配共享


4-1.png4-2.png



如上图所示,在两个用户之间,专属集群在机器级别实现了专属的隔离,云上专属数据库中心,100%资源专属,包含CPU、IO、内存、网络等。因为专属,可以进行部分权限的下放,做到对中心应用和边缘应用的相互隔离,不同业务形态专属不同集群,隔离中心应用和边缘应用的相互影响。


内部可以超配共享,主备资源交叉部署,充分利用硬件能力,相比RDS PAAS始终有热备机器未使用,最大可节省相当于PAAS一半投入,充分规划业务,混合交叉部署多方业务于同一个集群。


整个PAAS平台,在保证稳定性优先的同时,资源利用率可以提升一倍。用户间专属隔离,用户内可以实现超配共享,实现了统一性关系。


5)灵活弹性控制


资源专属,可以对资源进行部分弹性控制。


5.png


如上图所示,是一台主机配置64c512gb级别的机器,开始可以8个8c16gb的实例,但随着业务发展,可以让其中的部分实例,抢到32c16gb的资源,满足不同业务对数据库实例资源的个性化需求,如某些实例CPU给多点,某些实例IO给多点,某些实例网络放宽点,这样的状态优点在于DB可以对实体资源做一些个性化控制。另外,弹性规则自动化实现,避免人为介入的延迟,针对重保实例可设置为独享资源,不参与资源弹性分配逻辑。基于硬件资源的使用率(内存分配率、空间分配率、CPU利用率、IO利用率、网络利用率等),DAS智能化触发实例的无缝调度,实现资源最大化利用(研发中)。


6)更加开放的MySQL权限


6.png


如上图所示,可以将MySQL 的change master to权限释放,主节点接到线下连接到线上高速通道打通直接做备实例,也支持备份文件上传到OSS恢复到专属集群。全面兼容开源,线上、线下、多云体验一致。


7)开放OS权限:兼容企业原有系统和原有运维模式


部署个性化的企业应用,高效的DBA脚本管理。


7.png


因为机器是客户专属的,OS普通账号权限要给到客户,如上图所示,常用已经支持的命令如下:

  1. 100GB云盘:读写
  2. MySQL数据空间:只读
  3. MySQL日志空间:只读
  4. /tmp目录:读写
  5. 通用账号:安装执行非root软件




案例介绍


云数据库专属集群助力小盒科技

快速、低成本上云 ,10万学校,5000万+用户,硬件成本降低60%以上。


客户简介


小盒科技是中国知名的AI教育公司,旗下有目前国内最大的面向公立学校师生应用的教学工具之一“小盒”系列产品,以及为学生提供个性化、自适应学习辅导服务的AI课程体系“小盒课堂”。


截止目前,小盒科技的产品已经走进了全国 31个省市自治区近 400座城市的 10万所学校,有超过 5000万小学师生家长在使用小盒科技提供的工具产品、课程和教学辅导服务。未来,小盒将继续推动大数据、AI、深度学习等技术在教育领域的应用,让每个学生都有自己的AI老师,每个老师都有自己的 AI助教。


客户痛点


  • 自建数据库硬件规模大,资源利用率低,成本越来越高。
  • 维护工作量大,人力成本高。
  • 在线教育业务高低峰明显且频繁,线下数据库无法快速动态扩缩容,且对业务有侵入性。
  • 随着在线教育的发展壮大,核心业务数据库压力越来越大,需要性能优化和支撑。


解决方案


小盒科技采用云数据库专属集群的方案承载了核心小学业务和网校业务,在专属集群主机之上按需创建出不同RDS数据库实例规格,通过专属集群的超配能力合理配置资源,按业务场景需求快速构建出读写分离、代理短连接优化等不同数据库架构;同时运维上开放数据库和OS权限,客户可自主可控运维数据库。


客户价值


在阿里云上采用多台专属集群主机承载数据库业务,相比之前的机器规模,降低了60%以上;利用超配能力使得资源使用率大幅提升,节省硬件和运维成本,同时进一步降低了客户的TCO。


1.5个月快速完成核心小学业务和网校业务的全部数据库迁移和平滑上线。便捷的云上数据库服务和线下一样的体验,实现自主可控的数据库运维。


专属集群不改变客户DBA现有运维模式的同时,构建在之上的RDS for MySQL提供了自动HA、自动读写分离、快速扩容的能力,使客户更聚焦在业务本身。


8.png

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
13天前
|
关系型数据库 MySQL 数据库
Python处理数据库:MySQL与SQLite详解 | python小知识
本文详细介绍了如何使用Python操作MySQL和SQLite数据库,包括安装必要的库、连接数据库、执行增删改查等基本操作,适合初学者快速上手。
88 15
|
7天前
|
SQL 关系型数据库 MySQL
数据库数据恢复—Mysql数据库表记录丢失的数据恢复方案
Mysql数据库故障: Mysql数据库表记录丢失。 Mysql数据库故障表现: 1、Mysql数据库表中无任何数据或只有部分数据。 2、客户端无法查询到完整的信息。
|
14天前
|
关系型数据库 MySQL 数据库
数据库数据恢复—MYSQL数据库文件损坏的数据恢复案例
mysql数据库文件ibdata1、MYI、MYD损坏。 故障表现:1、数据库无法进行查询等操作;2、使用mysqlcheck和myisamchk无法修复数据库。
|
18天前
|
SQL 关系型数据库 MySQL
MySQL导入.sql文件后数据库乱码问题
本文分析了导入.sql文件后数据库备注出现乱码的原因,包括字符集不匹配、备注内容编码问题及MySQL版本或配置问题,并提供了详细的解决步骤,如检查和统一字符集设置、修改客户端连接方式、检查MySQL配置等,确保导入过程顺利。
|
26天前
|
关系型数据库 MySQL 数据库
GBase 数据库如何像MYSQL一样存放多行数据
GBase 数据库如何像MYSQL一样存放多行数据
|
1月前
|
SQL 关系型数据库 MySQL
12 PHP配置数据库MySQL
路老师分享了PHP操作MySQL数据库的方法,包括安装并连接MySQL服务器、选择数据库、执行SQL语句(如插入、更新、删除和查询),以及将结果集返回到数组。通过具体示例代码,详细介绍了每一步的操作流程,帮助读者快速入门PHP与MySQL的交互。
39 1
|
1月前
|
SQL 关系型数据库 MySQL
go语言数据库中mysql驱动安装
【11月更文挑战第2天】
54 4
|
2月前
|
存储 关系型数据库 MySQL
Mysql(4)—数据库索引
数据库索引是用于提高数据检索效率的数据结构,类似于书籍中的索引。它允许用户快速找到数据,而无需扫描整个表。MySQL中的索引可以显著提升查询速度,使数据库操作更加高效。索引的发展经历了从无索引、简单索引到B-树、哈希索引、位图索引、全文索引等多个阶段。
72 3
Mysql(4)—数据库索引
|
1月前
|
监控 关系型数据库 MySQL
数据库优化:MySQL索引策略与查询性能调优实战
【10月更文挑战第27天】本文深入探讨了MySQL的索引策略和查询性能调优技巧。通过介绍B-Tree索引、哈希索引和全文索引等不同类型,以及如何创建和维护索引,结合实战案例分析查询执行计划,帮助读者掌握提升查询性能的方法。定期优化索引和调整查询语句是提高数据库性能的关键。
252 1
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
140 2

相关产品

  • 云数据库 RDS MySQL 版