企业运维训练营之数据库原理与实践— AliSQL和读写分离基本原理—AliSQL(上)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 企业运维训练营之数据库原理与实践— AliSQL和读写分离基本原理—AliSQL(上)

第二章 AliSQL和读写分离基本原理

 

一、 AliSQL

 

image.png

 

AliSQL是阿里云深度定制的MYSQL独立分支,在社区版功能上又额外提供了MySQL企业版的功能,提供了更加强大的性能,比如备份恢复、线程池、并行查询等,且能够兼容 Oracle 。

 

AliSQL基于X-Engine存储架构引擎。X-Engine是阿里云数据库产品事业部研发联机事务处理数据库引擎,目前已经应用到阿里集团诸多业务系统中,大幅缩减了业务成本。

 

全新的X-Engine存储引擎不仅能够无缝对接MySQL,同时它使用了分层存储架构的思想,面向大规模海量数据存储提供了高并发的事务处理能力,降低了存储成本。

 

在大部分大数据场景下,数据被访问的机会是不均等的,访问频繁的热数据占比很少。X-Engine能够根据数据的访问频度不同,将数据划分为多个层次。

 

image.png

 

AliSQL的常用功能如下:

 

1) Native Flashback

 

在数据库运维过程中可能会出现误操作,比如误删了某些表或表中数据。常见恢复手段是通过Binlog恢复。但Binlog操作比较复杂,容易出错且耗时较长。而通过备份集恢复则需要额外系统资源,因此在数据量较大时,恢复时间不可控。

 

针对以上痛点,AliSQL提供了Native Flashback能力。无需在客户侧进行复杂的恢复操作,经过简单的SQL语句,即可查询与恢复误操作前的历史数据,节省了大量时间,保证了业务平稳运行。

 

2) Thread Pool

 

数据库团队为了发挥RDS的最佳性能,提供了Thread Pool功能,将线程与会话分离。在拥有大量会话的同时,只需少量线程即可完成会话任务。MySQL默认线程使用会话独占模式,因此每个会话都会创建独立线程。大量会话存在会导致大量资源争抢,导致大量系统线程调度与缓存失效,进而导致数据库性能急剧下降。

 

阿里云RDS线程池实现了不同SQL的操作优先级与并发控制机制,将连接池始终控制在最佳连接数附近,保持在高性能状态。线程池具有几个优势:

 

在大量线程并发工作时,线程池会自动调节线程数量在合理范围之内,不会过高

 

大量事务并发执行时,线程池会将语句与事务分为不同优先级

 

线程池可以给予管理类SQL更高优先级,保证此类语句优先执行。

 

3) Statement Outline

 

在生产环境中,SQL语句执行计划可能经常发生改变,而利用optimizer hint与index hint可以使MySQL稳定执行,计划保持不变,以最优方法持续执行。

 

4) Sequence Engine

 

在RDS数据库系统中,不论是单节点业务组件还是分布式系统的全局唯一值,或更多系统的幂等控制,单调递增唯一值是用户的常见需求。不同数据库系统有不同的实现方法,MySQL中提供了AUTO_INCREMENT。

 

在MySQL数据库中,如果业务希望封装唯一值,使用AUTO_INCREMENT方法会有很多不便。在实际应用中也存在不同的折中方法,比如序列值由应用端或proxy生成,弊端在于会将状态带到应用端,增加扩容与缩容复杂度。因此AliSQL提供了sequence engine功能,实现了MySQL存储引擎的设计接口,但底层数据仍然使用现在的存储引擎,以达到效果。

 

5) Returning

 

MySQL语句执行结果的报文通常分为三类,分别为Resultset、OK和ERR。针对DML语句,返回OK或ERR报文会影响记录或扫描记录等属性。因此,在很多业务场景下,执行insert、update、delete等DML语句,都会跟随select查询当前内容,以方便后续的业务处理,减少客户端与服务器的交互。

 

6) Lizard事务系统

 

Lizard事务系统能够更好地提升MySQL数据库的吞吐能力,支持分布式事务与全局一致性。

 

image.png

 

使用Native Flashback功能时,可以通过select...from<表名> as of timestamp<表达式>。具体示例如上图,第一个示例表示将数据恢复到2020-11-11 0点,也支持表达式的方式。

接下篇:https://developer.aliyun.com/article/1225618?spm=a2c6h.13148508.setting.19.187d4f0etAV6Hb

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
3月前
|
机器学习/深度学习 人工智能 运维
企业内训|LLM大模型在服务器和IT网络运维中的应用-某日企IT运维部门
本课程是为某在华日资企业集团的IT运维部门专门定制开发的企业培训课程,本课程旨在深入探讨大型语言模型(LLM)在服务器及IT网络运维中的应用,结合当前技术趋势与行业需求,帮助学员掌握LLM如何为运维工作赋能。通过系统的理论讲解与实践操作,学员将了解LLM的基本知识、模型架构及其在实际运维场景中的应用,如日志分析、故障诊断、网络安全与性能优化等。
103 2
|
6天前
|
SQL 数据挖掘 关系型数据库
阿里云百炼|析言GBI全新发布:联合云上数据库,助力企业轻松实现ChatBI
析言GBI是阿里云推出的一款基于AI的智能数据分析产品,通过自然语言处理实现对话式数据分析。用户无需编写代码,即可轻松进行数据查询、分析和可视化。该产品支持多种数据库连接方式(如MySQL、PostgreSQL等),并提供多版本选择以适应不同业务需求。即将发布的动态规划BI分析功能将进一步提升复杂问题的拆解与综合分析能力。欢迎访问阿里云百炼应用广场体验析言GBI,并享受200次免费问题额度。
|
8天前
|
SQL 存储 运维
从建模到运维:联犀如何完美融入时序数据库 TDengine 实现物联网数据流畅管理
本篇文章是“2024,我想和 TDengine 谈谈”征文活动的三等奖作品。文章从一个具体的业务场景出发,分析了企业在面对海量时序数据时的挑战,并提出了利用 TDengine 高效处理和存储数据的方法,帮助企业解决在数据采集、存储、分析等方面的痛点。通过这篇文章,作者不仅展示了自己对数据处理技术的理解,还进一步阐释了时序数据库在行业中的潜力与应用价值,为读者提供了很多实际的操作思路和技术选型的参考。
21 1
|
27天前
|
存储 NoSQL 关系型数据库
阿里云数据库MongoDB版助力信也科技 打造互联网金融企业样板
我们的风控系统引入阿里云数据库MongoDB版后,解决了特征类字段灵活加减的问题,大大提高了开发效率,极大的提升了业务用户体验,获得了非常好的效果
阿里云数据库MongoDB版助力信也科技 打造互联网金融企业样板
|
8天前
|
运维 监控 Cloud Native
云原生之运维监控实践:使用 taosKeeper 与 TDinsight 实现对 时序数据库TDengine 服务的监测告警
在数字化转型的过程中,监控与告警功能的优化对保障系统的稳定运行至关重要。本篇文章是“2024,我想和 TDengine 谈谈”征文活动的三等奖作品之一,详细介绍了如何利用 TDengine、taosKeeper 和 TDinsight 实现对 TDengine 服务的状态监控与告警功能。作者通过容器化安装 TDengine 和 Grafana,演示了如何配置 Grafana 数据源、导入 TDinsight 仪表板、以及如何设置告警规则和通知策略。欢迎大家阅读。
26 0
|
1月前
|
机器学习/深度学习 数据采集 人工智能
智能化运维在企业IT管理中的应用与实践####
本文深入探讨了智能化运维(AIOps)的核心技术原理,通过对比传统运维模式,揭示了AIOps如何利用大数据、机器学习等先进技术提升故障预测准确性、优化资源分配及自动化处理流程。同时,文章详细阐述了智能化运维平台的实施步骤,包括数据收集与分析、模型训练与部署、以及持续监控与优化,旨在为企业IT部门提供一套切实可行的智能化转型路径。最后,通过几个典型应用案例,如某大型电商平台的智能告警系统和金融企业的自动化故障排查流程,直观展示了智能化运维在实际业务场景中的显著成效,强调了其在提升运维效率、降低运营成本方面的关键作用。 ####
51 4
|
2月前
|
运维 监控 关系型数据库
数据库管理中的自动化运维:挑战与解决方案
数据库管理中的自动化运维:挑战与解决方案
|
3月前
|
安全 NoSQL 关系型数据库
阿里云数据库:助力企业数字化转型的强大引擎
阿里云数据库:助力企业数字化转型的强大引擎
|
3月前
|
存储 NoSQL MongoDB
小川科技携手阿里云数据库MongoDB:数据赋能企业构建年轻娱乐生态
基于MongoDB灵活模式的特性,小川实现了功能的快速迭代和上线,而数据库侧无需任何更改
|
16天前
|
存储 Oracle 关系型数据库
数据库传奇:MySQL创世之父的两千金My、Maria
《数据库传奇:MySQL创世之父的两千金My、Maria》介绍了MySQL的发展历程及其分支MariaDB。MySQL由Michael Widenius等人于1994年创建,现归Oracle所有,广泛应用于阿里巴巴、腾讯等企业。2009年,Widenius因担心Oracle收购影响MySQL的开源性,创建了MariaDB,提供额外功能和改进。维基百科、Google等已逐步替换为MariaDB,以确保更好的性能和社区支持。掌握MariaDB作为备用方案,对未来发展至关重要。
42 3