《阿里云认证的解析与实战-数据仓库ACP认证》——云原生数据仓库AnalyticDB MySQL版解析与实践(下)——一、弹性能力(资源池、分时弹性)

简介: 《阿里云认证的解析与实战-数据仓库ACP认证》——云原生数据仓库AnalyticDB MySQL版解析与实践(下)——一、弹性能力(资源池、分时弹性)

1. 弹性能力:资源池

 

AnalyticDB MySQL版的弹性模式集群版(新版)采取了存储计算分离架构,支持对计算资源进行弹性扩缩。

资源池功能可以对计算资源进行弹性划分,不同资源池之间的计算资源在物理上完全隔离。

通过数据库账号绑定到不同的资源池,SQL查询根据绑定关系路由至对应的资源池进行执行,从而满足实例内部多租户、混合负载的需求。

 

image.png

 

1) 资源池分类

 

a) 默认资源池

 

默认资源池USER_DEFAULT是实例创建时便存在的,不可被删除。

未被分配到用户自定义资源池的计算资源均归属于默认资源池,计算资源不可被直接调整。

未被绑定的AnalyticDB MySQL数据库账号均与默认资源池绑定。

 

b) 自定义资源池

 

用户自定义创建的资源池,可以进行资源池的计算资源、查询执行模式、AnalyticDB MySQL账号与资源池的绑定关系进行修改。

通过资源池管理或CREATE RESOURCE GROUP创建。

 

2) 查询类型

 

集群版新版支持将一个集群资源划分为多个资源池,不同用户绑定到不同的资源池,通过资源池隔离实现计算任务的优先级调度,保障核心业务不受复杂计算和突发状况影响,同时将不同的查询分类,合理分配资源使集群性能达到最大化。

 

在AnalyticDB MySQL数据库中,查询类型有三种:

 

Default_Type:默认查询类型。

Batch:Batch查询类型,适用于数据量较大的复杂查询。

Interactive:Interactive查询类型,适用于延迟要求高的实时分析查询。

 

查询示例

 

问题描述:用户A、B日常进行一些简单查询,用户C会进行数据量较大的复杂查询分析。

解决方案:将用户A、B绑定查询类型为Interactive的资源池source_a,将用户C绑定查询类型为Batch的资源池source_b,用户C在进行大型计算查询时,用户A和用户B进行简单查询的速度不受影响。

 

3) 资源组/资源池(E系列支持)

 

通过CREATE RESOURCE GROUP可以创建资源组,资源组创建DDL样例:

 

CREATE RESOURCE GROUP group_name

[QUERY_TYPE = {interactive, batch}]

[NODE NUM=N]

 

使用场景

实例内部多租户/多部门/多业务需要资源隔离。

 混合负载隔离,避免相互影响。

 

特点

 不同资源组之间的计算资源支持资源在物理上完全隔离。

 支持资源组级别计算资源分时弹性。

 支持存储层流量比例隔离。

 支持配置资源组默认执行模型(interactive or batch)。

 

游戏行业某客户资源组案例

 默认资源组:用于数据在线分析决策,如新用户充值行为、广告投放效果分析、玩家游戏行为分析等。

ETL资源组:用于ETL计算,如数据加工/清洗、维度关联扩展、指标统计聚合等。

 

image.png

 

2. 弹性能力:EIU

 

集群版新版集群采用了存储分离架构,集群的存储资源与计算资源相互独立。弹性IO资源Elastic IO Unit,简称EIU是衡量集群存储性能的元单位,可用于单独扩容存储资源。

 

基于EIU的存储性能指标如下:

 

image.png

 

需要单独扩容弹性IO资源EIU场景:

 

数据导入:购买的计算资源较小,而大量的数据写入导致存储节点I/O先达到瓶颈。

高并发点查:购买的计算资源很小,而高并发点查导致存储CPU成为瓶颈。

 

3. 弹性能力:分时弹性

 

AnalyticDB MySQL数据库支持按小时设置计算资源弹性扩容规则,解决计算资源峰谷需求问题,降低计算资源成本。

 

白天查询业务高峰:白天工作高峰期,准时弹出计算资源,让业务查询更快,提高应用体验。

晚上ETL计算高峰:晚上ETL高峰期,准时弹出计算资源,让ETL计算任务稳定运行,低峰期准时释放,降低资源成本。

 

如下图,在上午8:30至11:30为业务高峰期,此时的负载为70%、QPS为400、响应时间为440ms,通过分时弹性,在业务高峰期将计算资源进行扩容,由原来的64core扩容至256core,来保障业务高峰期的平稳运行;在业务低峰期准时释放资源降低资源使用成本。

 

image.png

 

4. 操作演示-实现AnalyticDB MySQL版

 

(详见第一章实验部分)

相关实践学习
数据库实验室挑战任务-初级任务
本场景介绍如何开通属于你的免费云数据库,在RDS-MySQL中完成对学生成绩的详情查询,执行指定类型SQL。
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
相关文章
|
17天前
|
SQL 存储 数据可视化
Ganos H3地理网格能力解析与最佳实践
本文介绍了Ganos H3的相关功能,帮助读者快速了解Ganos地理网格的重要特性与应用实践。H3是Uber研发的一种覆盖全球表面的二维地理网格,采用了一种全球统一的、多层次的六边形网格体系来表示地球表面,这种地理网格技术在诸多业务场景中得到广泛应用。Ganos不仅提供了H3网格的全套功能,还支持与其它Ganos时空数据类型进行跨模联合分析,极大程度提升了客户对于时空数据的挖掘分析能力。
|
2月前
|
存储 SQL 关系型数据库
MySQL - 深入理解锁机制和实战场景
MySQL - 深入理解锁机制和实战场景
|
1月前
|
消息中间件 Cloud Native Java
【Spring云原生系列】SpringBoot+Spring Cloud Stream:消息驱动架构(MDA)解析,实现异步处理与解耦合
【Spring云原生系列】SpringBoot+Spring Cloud Stream:消息驱动架构(MDA)解析,实现异步处理与解耦合
|
26天前
|
SQL 关系型数据库 MySQL
【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(8.0版本升级篇)
【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(8.0版本升级篇)
96 0
|
2天前
|
关系型数据库 MySQL 中间件
【MySQL实战笔记】07 | 行锁功过:怎么减少行锁对性能的影响?-02 死锁和死锁检测
【4月更文挑战第19天】在高并发环境下,死锁发生在多个线程间循环等待资源时,导致无限期等待。MySQL中,死锁可通过`innodb_lock_wait_timeout`参数设置超时或`innodb_deadlock_detect`开启死锁检测来解决。默认的50s超时可能不适用于在线服务,而频繁检测会消耗大量CPU。应对热点行更新引发的性能问题,可以暂时关闭死锁检测(风险是产生大量超时),控制并发度,或通过分散记录减少锁冲突,例如将数据分拆到多行以降低死锁概率。
18 1
|
5天前
|
SQL 关系型数据库 MySQL
Python与MySQL数据库交互:面试实战
【4月更文挑战第16天】本文介绍了Python与MySQL交互的面试重点,包括使用`mysql-connector-python`或`pymysql`连接数据库、执行SQL查询、异常处理、防止SQL注入、事务管理和ORM框架。易错点包括忘记关闭连接、忽视异常处理、硬编码SQL、忽略事务及过度依赖低效查询。通过理解这些问题和提供策略,可提升面试表现。
25 6
|
12天前
|
存储 关系型数据库 MySQL
【MySQL实战笔记】 04 | 深入浅出索引(上)-02
【4月更文挑战第9天】InnoDB数据库使用B+树作为索引模型,其中主键索引的叶子节点存储完整行数据,非主键索引则存储主键值。主键查询只需搜索一棵树,而非主键查询需两次搜索,因此推荐使用主键查询以提高效率。在插入新值时,B+树需要维护有序性,可能导致数据页分裂影响性能。自增主键在插入时可避免数据挪动和页分裂,且占用存储空间小,通常更为理想。然而,如果场景仅需唯一索引,可直接设为主键以减少查询步骤。
13 1
【MySQL实战笔记】 04 | 深入浅出索引(上)-02
|
14天前
|
存储 SQL 关系型数据库
【MySQL实战笔记】03.事务隔离:为什么你改了我还看不见?-02
【4月更文挑战第7天】数据库通过视图实现事务隔离,不同隔离级别如读未提交、读已提交、可重复读和串行化采用不同策略。以可重复读为例,MySQL使用多版本并发控制(MVCC),每个事务有其独立的视图。回滚日志在无更早视图时被删除。长事务可能导致大量存储占用,应避免。事务启动可显式用`begin`或设置`autocommit=0`,但后者可能意外开启长事务。建议使用`autocommit=1`并显式管理事务,若需减少交互,可使用`commit work and chain`。
29 5
|
16天前
|
SQL 存储 关系型数据库
【MySQL实战笔记】02.一条SQL更新语句是如何执行的-2
【4月更文挑战第5天】两阶段提交是为确保`redo log`和`binlog`逻辑一致,避免数据不一致。若先写`redo log`, crash后数据可能丢失,导致恢复后状态错误;若先写`binlog`,crash则可能导致重复事务,影响数据库一致性。一天一备相较于一周一备,能缩短“最长恢复时间”,但需权衡额外的存储成本。
16 1
|
20天前
|
测试技术 API 智能硬件
语言模型在提升智能助手引用解析能力中的创新应用
【4月更文挑战第4天】苹果研究团队推出了ReALM,一种利用大型语言模型解决引用解析的新方法,提升智能助手理解用户意图和上下文的能力。ReALM将引用解析转化为语言建模问题,尤其擅长处理屏幕上的实体,比现有系统提升超5%,性能接近GPT-4但参数更少。其模块化设计易于集成,可在不同场景下扩展。然而,复杂查询处理和依赖上游数据检测器可能影响其准确性和稳定性。
63 6
语言模型在提升智能助手引用解析能力中的创新应用

推荐镜像

更多