《阿里云认证的解析与实战-数据仓库ACP认证》——云原生数据仓库AnalyticDB PostgreSQL版解析与实践(上)——三、产品相关概念(下)

本文涉及的产品
对象存储 OSS,20GB 3个月
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 《阿里云认证的解析与实战-数据仓库ACP认证》——云原生数据仓库AnalyticDB PostgreSQL版解析与实践(上)——三、产品相关概念(下)

更多精彩内容,欢迎观看:《阿里云认证的解析与实战-数据仓库ACP认证》——云原生数据仓库AnalyticDB PostgreSQL版解析与实践(上)——三、产品相关概念(中):

https://developer.aliyun.com/article/1222911?spm=a2c6h.13148508.setting.17.75bf4f0e5XwXp0


1. 备份恢复

 

1) 技术原理介绍

 

基础备份+日志归档+一致性恢复点=集群恢复

 

基础备份:ADB PG集群物理基础备份,不会阻塞用户业务执行,因此,集群的基础备份期间,依然会产生大量WAL日志。

日志归档:集群恢复需要WAL持续归档。

一致性恢复点:通过在数据库的访问入口处(QD节点)独占获取事务提交锁,阻塞其他事务的提交,从而保证恢复点创建时刻的集群事务一致性。

集群恢复:通过一致性恢复点,恢复时,将集群各个节点对齐到事务一致的数据库状态。

 

2) 基础备份

 

image.png

 

基础备份又称全量备份,是对整个集群的所有primary节点(包括master,但不包括secondary master)进行全量数据备份。

公有云默认备份到OSS。

备份不阻塞业务,备份期间产生的增量WAL日志由归档操作保证备份到OSS。

备份期间,会自动重新备份异常的节点,如主备切换、连接异常等情况。

备份完成后,创建一致性恢复点,作为恢复时的恢复目标,以保证恢复集群一致性。

 

3) 日志备份

 

image.png

 

日志备份,又称增量备份。通过归档命令,对集群的所有primary节点上的WAL日志段进行备份

公有云默认备份到OSS。

 

4) 创建一致性恢复点

 

image.png 

 

请求创建一致性恢复点:

ü 独占申请两阶段提交锁,阻塞其他分布式事务提交。

ü Master节点创建恢复点。

ü Segment节点创建恢复点。

ü 释放两阶段提交锁。

ü 等待恢复点WAL日志归档。

 

通过分布式提交锁,确保恢复点创建时刻的集群事务一致性。

一致性恢复点在集群的每个primary节点新增一条WAL日志记录。

只有完成WAL日志归档的一致性恢复点,才能够用于分布式集群的归档恢复。

 

5) 恢复新实例

 

image.png

 

并行从OSS下载基本备份。

更新集群拓扑结构,并重启集群。

设置一致性恢复点作为恢复目标。

添加高可用备机,完成恢复。

持续下载并恢复归档的WAL日志。

 

2. 资源隔离

 

1) 资源管理简介

 

ADB PG实例资源包括:CPU、IO、内存、并发连接、查询计划。

 

常见资源问题

 并发连接数被占满,无法接受连接

 内存超过可用内存范围,进程被杀死

 IO带宽争用导致查询和写入性能下降

 

资源管理方案

 资源队列Resource Queue:使用最多的是并行度和CPU优先级的设置

 资源组Resource GroupCPU

 

2) 资源队列技术介绍

 

资源队列能够对数据库的CPU、内存等资源进行限制,对多租户资源限制、保障数据库稳定运行具有一定的作用

支持进行四种类型的资源限制:并发限制、CPU限制、内存限制和查询计划限制。

 

image.png

 

3) 创建资源队列示例

CREATE RESOURCE QUEUE name WITH (queue_attribute=value[ ... ])where queue attribute is
ACTIVE_STATEMENTS=integer
[MAX_COST=float [COST_OVERCOMMIT={TRUE|FALSE}]]
MINCOST=float]
[PRIORITY={MIN|LOW|MEDIUM|HIGH|MAX}]
[MEMORY_LIMIT='memory_units']

  

=# CREATE RESOURCE QUEUE adhoc WITH(ACTIVE STATEMENTS=3);创建带有并发限制的队列

创建带有内存限制的队列CREATE RESOURCE QUEUE myqueue WITH(ACIIVESTATEMENIS=20,MEMORY_LIMIT='2000MB');

=# CREATE RESOURCE QUEUE executive WITH (ACTIVE_STATEMENTS=3, PRIORITY=MAX); 设置优先级

 

4) 指派角色(用户)到资源队列

 

指派角色到优先级队列

ü 一旦创建了一个资源队列,用户必须把角色(用户)指派到它们合适的资源队列。

ü 如果没有显式地把角色指派资源队列,它们将进入默认资源队列pg_default。默认资源队列的活动语句限制是20,没有代价限制。

 

=# ALTER ROLE name RESOURCE QUEUE queuename;
=# CREATE ROLE name WITH LOGIN RESOURCE QUEUE queue_name;

 

从资源队列移除角色

 

如果用户想要从一个资源队列移除一个角色并且把它们放在默认队列中,可以将该角色的队列指派改成none。例如:

=#ALTER ROLE role name RESOURCE QUEUE none;

  

修改资源队列配置

 

ALTER RESOURCE QUEUE命令更改资源队列的限制。

=# AITER RESOURCE QUEUE adhoc WITH(ACIIVE_STATEMENTS=5);
=# ALTER RESOURCE QUEUE exec WITH (PRIORITY=MAX);

  

删除资源队列

 

DROP RESOURCE QUEUE命令可以删除资源队列。要删除一个资源队列,该队列不能有指派给它的角色,也不能有任何语句在其中等待。

 

5) 状态监控

 

查看队列中的语句和资源队列状态

 gp_toolkit.gp_resqueue_status视图允许管理员查看一个负载管理资源队列的状态和活动。

 语句:

SELECT*FROM gp_toolkit.gp_resqueue_status

  

查看资源队列统计信息

 如果想要持续跟踪资源队列的统计信息和性能,用户可以使用pg_stat_resqueues系统视图来查看在资源队列使用上收集的统计信息。

 语句:

SELECT * FROM pg_stat_resqueues

  

查看指派到资源队列的角色

 要查看指派给资源队列的角色,执行下列在pg_roles和gp_toolkit.gp_resqueue_status系统目录表。

 语句:

SELECT rolname, rsqname FROMpg_roles, gp_toolkit.gp_resqueue_status WHERE  pgroles.rolresqueue=gptoolkit.gp resqueue status.queueid

  

查看资源队列的等待查询

 用户可以看到所有资源队列的所有当前活跃的以及在等待的查询。

 语句:

SELECT * FROM gp_toolkit.gp_locks_on_resqueue WHERE  lorwaiting='true'

  

查看活动语句的优先权

 查看当前正在被执行的语句并且提供优先权、会话ID和其他信息。

 语句:

SELECT * FROM gp_toolkit.gp_resq_priority_statementSELECT * FROM gp_toolkit.gp_resq_priority_statement

  

重置活动语句的优先权

 gp_adjust_priority(session_id,statement_count,priority)调整当前正在被执行的语句的优先权。使用这个函数,超级用户可以提升或者降低任意查询的优先权。

 语句:

SELECT gp_adjust_priority(752,24905,'HIGH')

 

相关实践学习
阿里云百炼xAnalyticDB PostgreSQL构建AIGC应用
通过该实验体验在阿里云百炼中构建企业专属知识库构建及应用全流程。同时体验使用ADB-PG向量检索引擎提供专属安全存储,保障企业数据隐私安全。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
相关文章
|
19天前
|
存储 缓存 算法
HashMap深度解析:从原理到实战
HashMap,作为Java集合框架中的一个核心组件,以其高效的键值对存储和检索机制,在软件开发中扮演着举足轻重的角色。作为一名资深的AI工程师,深入理解HashMap的原理、历史、业务场景以及实战应用,对于提升数据处理和算法实现的效率至关重要。本文将通过手绘结构图、流程图,结合Java代码示例,全方位解析HashMap,帮助读者从理论到实践全面掌握这一关键技术。
67 13
|
15天前
|
物联网 调度 vr&ar
鸿蒙HarmonyOS应用开发 |鸿蒙技术分享HarmonyOS Next 深度解析:分布式能力与跨设备协作实战
鸿蒙技术分享:HarmonyOS Next 深度解析 随着万物互联时代的到来,华为发布的 HarmonyOS Next 在技术架构和生态体验上实现了重大升级。本文从技术架构、生态优势和开发实践三方面深入探讨其特点,并通过跨设备笔记应用实战案例,展示其强大的分布式能力和多设备协作功能。核心亮点包括新一代微内核架构、统一开发语言 ArkTS 和多模态交互支持。开发者可借助 DevEco Studio 4.0 快速上手,体验高效、灵活的开发过程。 239个字符
186 13
鸿蒙HarmonyOS应用开发 |鸿蒙技术分享HarmonyOS Next 深度解析:分布式能力与跨设备协作实战
|
14天前
|
自然语言处理 搜索推荐 数据安全/隐私保护
鸿蒙登录页面好看的样式设计-HarmonyOS应用开发实战与ArkTS代码解析【HarmonyOS 5.0(Next)】
鸿蒙登录页面设计展示了 HarmonyOS 5.0(Next)的未来美学理念,结合科技与艺术,为用户带来视觉盛宴。该页面使用 ArkTS 开发,支持个性化定制和无缝智能设备连接。代码解析涵盖了声明式 UI、状态管理、事件处理及路由导航等关键概念,帮助开发者快速上手 HarmonyOS 应用开发。通过这段代码,开发者可以了解如何构建交互式界面并实现跨设备协同工作,推动智能生态的发展。
111 10
鸿蒙登录页面好看的样式设计-HarmonyOS应用开发实战与ArkTS代码解析【HarmonyOS 5.0(Next)】
|
5天前
|
存储 物联网 大数据
探索阿里云 Flink 物化表:原理、优势与应用场景全解析
阿里云Flink的物化表是流批一体化平台中的关键特性,支持低延迟实时更新、灵活查询性能、无缝流批处理和高容错性。它广泛应用于电商、物联网和金融等领域,助力企业高效处理实时数据,提升业务决策能力。实践案例表明,物化表显著提高了交易欺诈损失率的控制和信贷审批效率,推动企业在数字化转型中取得竞争优势。
37 14
|
10天前
|
安全 API 数据安全/隐私保护
速卖通AliExpress商品详情API接口深度解析与实战应用
速卖通(AliExpress)作为全球化电商的重要平台,提供了丰富的商品资源和便捷的购物体验。为了提升用户体验和优化商品管理,速卖通开放了API接口,其中商品详情API尤为关键。本文介绍如何获取API密钥、调用商品详情API接口,并处理API响应数据,帮助开发者和商家高效利用这些工具。通过合理规划API调用策略和确保合法合规使用,开发者可以更好地获取商品信息,优化管理和营销策略。
|
28天前
|
数据采集 DataWorks 搜索推荐
阿里云DataWorks深度评测:实战视角下的全方位解析
在数字化转型的大潮中,高效的数据处理与分析成为企业竞争的关键。本文深入评测阿里云DataWorks,从用户画像分析最佳实践、产品体验、与竞品对比及Data Studio公测体验等多角度,全面解析其功能优势与优化空间,为企业提供宝贵参考。
107 13
|
19天前
|
运维 安全 Cloud Native
阿里云云安全中心全面解析
阿里云云安全中心作为一款集持续监测、深度防御、全面分析、快速响应能力于一体的云上安全管理平台,为企业提供了全方位的安全保障。本文将详细介绍阿里云云安全中心的功能、应用场景、收费标准以及购买建议,帮助您更好地了解和利用这一强大的安全工具。
阿里云云安全中心全面解析
|
24天前
|
数据采集 存储 JavaScript
网页爬虫技术全解析:从基础到实战
在信息爆炸的时代,网页爬虫作为数据采集的重要工具,已成为数据科学家、研究人员和开发者不可或缺的技术。本文全面解析网页爬虫的基础概念、工作原理、技术栈与工具,以及实战案例,探讨其合法性与道德问题,分享爬虫设计与实现的详细步骤,介绍优化与维护的方法,应对反爬虫机制、动态内容加载等挑战,旨在帮助读者深入理解并合理运用网页爬虫技术。
|
1月前
|
存储 监控 调度
云服务器成本优化深度解析与实战案例
本文深入探讨了云服务器成本优化的策略与实践,涵盖基本原则、具体策略及案例分析。基本原则包括以实际需求为导向、动态调整资源、成本控制为核心。具体策略涉及选择合适计费模式、优化资源配置、存储与网络配置、实施资源监控与审计、应用性能优化、利用优惠政策及考虑多云策略。文章还通过电商、制造企业和初创团队的实际案例,展示了云服务器成本优化的有效性,最后展望了未来的发展趋势,包括智能化优化、多云管理和绿色节能。
|
1月前
|
调度 开发者
核心概念解析:进程与线程的对比分析
在操作系统和计算机编程领域,进程和线程是两个基本而核心的概念。它们是程序执行和资源管理的基础,但它们之间存在显著的差异。本文将深入探讨进程与线程的区别,并分析它们在现代软件开发中的应用和重要性。
57 4