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

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 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

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
14天前
|
SQL 数据可视化 关系型数据库
轻松入门MySQL:深入探究MySQL的ER模型,数据库设计的利器与挑战(22)
轻松入门MySQL:深入探究MySQL的ER模型,数据库设计的利器与挑战(22)
|
14天前
|
存储 关系型数据库 MySQL
轻松入门MySQL:数据库设计之范式规范,优化企业管理系统效率(21)
轻松入门MySQL:数据库设计之范式规范,优化企业管理系统效率(21)
|
6天前
|
存储 关系型数据库 MySQL
MySQL引擎对决:深入解析MyISAM和InnoDB的区别
MySQL引擎对决:深入解析MyISAM和InnoDB的区别
17 0
|
10天前
|
存储 关系型数据库 MySQL
MySQL基础入门:数据库操作全攻略
MySQL基础入门:数据库操作全攻略
44 0
|
10天前
|
关系型数据库 MySQL 数据库
卸载云服务器上的 MySQL 数据库
卸载云服务器上的 MySQL 数据库
30 0
|
2天前
|
关系型数据库 MySQL 数据库
数据库基础(mysql)
数据库基础(mysql)
|
3天前
|
SQL 关系型数据库 数据库
【后端面经】【数据库与MySQL】SQL优化:如何发现SQL中的问题?
【4月更文挑战第12天】数据库优化涉及硬件升级、操作系统调整、服务器/引擎优化和SQL优化。SQL优化目标是减少磁盘IO和内存/CPU消耗。`EXPLAIN`命令用于检查SQL执行计划,关注`type`、`possible_keys`、`key`、`rows`和`filtered`字段。设计索引时考虑外键、频繁出现在`where`、`order by`和关联查询中的列,以及区分度高的列。大数据表改结构需谨慎,可能需要停机、低峰期变更或新建表。面试中应准备SQL优化案例,如覆盖索引、优化`order by`、`count`和索引提示。优化分页查询时避免大偏移量,可利用上一批的最大ID进行限制。
17 3
|
3天前
|
存储 关系型数据库 MySQL
【后端面经】【数据库与MySQL】为什么MySQL用B+树而不用B树?-02
【4月更文挑战第11天】数据库索引使用规则:`AND`用`OR`不用,正用反不用,范围中断。索引带来空间和内存代价,包括额外磁盘空间、内存占用和数据修改时的维护成本。面试中可能涉及B+树、聚簇索引、覆盖索引等知识点。MySQL采用B+树,因其利于范围查询和内存效率。数据库不使用索引可能因`!=`、`LIKE`、字段区分度低、特殊表达式或全表扫描更快。索引与NULL值处理在不同数据库中有差异,MySQL允许NULL在索引中的使用。
10 3
|
5天前
|
关系型数据库 MySQL 数据库连接
Django(四):Django项目部署数据库及服务器配置详解(MySQL)
Django(四):Django项目部署数据库及服务器配置详解(MySQL)
28 11
|
14天前
|
关系型数据库 MySQL 数据库
轻松入门MySQL:精准查询,巧用WHERE与HAVING,数据库查询如虎添翼(7)
轻松入门MySQL:精准查询,巧用WHERE与HAVING,数据库查询如虎添翼(7)

相关产品

  • 云数据库 RDS MySQL 版