【视频】-PolarDB-云原生云关系型数据库的解析与实践(下)|学习笔记(一)

本文涉及的产品
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
日志服务 SLS,月写入数据量 50GB 1个月
云原生数据库 PolarDB MySQL 版,通用型 2核8GB 50GB
简介: 快速学习【视频】-PolarDB-云原生云关系型数据库的解析与实践(下)

开发者学堂课程【关系型数据库 ACP 认证课程【视频】-PolarDB-云原生云关系型数据库的解析与实践(下)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/927/detail/14621


【视频】-PolarDB-云原生云关系型数据库的解析与实践(下)

 

内容简介:

一、前言

二、PolarDB 备份

三、PolarDB 恢复

四、PolarDB 数据迁移

五、PolarDB 数据同步

六、回顾与总结

 

一、前言

PolarDB 的备份与恢复,数据现在已经成为了很多企业的核心资产。随着我们向移动互联网、物联网、IT业务的发展,企业的各种数据越来越呈现出向规模化,爆炸式的这种增长并且我们的业务也越来越复杂,要求实时的在线的快速进行相应的业务也越来越多,所以对于我们使用数据库,管理数据库的人来讲怎么来去保护我们企业核心数据的安全有效会越来越富有挑战性。因为我们处于互联网,面向互联网提供服务,所以有时候难免会遇到一些不太好的一些问题,比如数据被自己误删、我们的系统存在一些漏洞或者像前两年特别流行,肆虐地向勒索病毒这一类的东西,又或者硬件自己会有一些故障,比如火灾、地震等等这种人力不可抗拒的这种自然因素都可能导致数据的丢失,因此对于一个数据库系统来讲良好的备份和恢复的机制是非常的重要的。

 

二、PolarDB 备份

1、PolarDB 备份概述

image.pngPolarDB 本身是为了应对这种业务变化快,数据量激增的高并发场景而设计的数据库。 PolarDB 支持数据备份跟Redo的日志备份,大概有两大类,后面会详细讲解。自身也采用了物理备份,每天默认为自动进行备份一次,也可以手动发起备份。

所谓的数据备份或者物理备份就是指我们在某一个时间点上通过手动或者自动的机制,让我们 PolarDB 的集群进行全亮的采集再形成一个快照,或者我们叫一个备份集,这是一个物理备份或者称之为快照备份。

Redo 日志主要是用于一些增量数据的收集就是我们生成的备份集还是指定在默认的操作的时间点,但是时间点与时间点之间、备份集与备份集之间可能会有一些增量的数据,这是通过Redo 日志进行备份跟收集的。

在 PolarDB 的设计里面我们通过完整的、全亮的物理日志、数据备份,以及增量的 Redo 日志收集,这两个部分的数据会通过异步的压缩传输,然后在 OSS 里进行归档。意味着我们完整的数据都会在 OSS 里进行压缩并归档。

那么我们通过一个完整的数据备份全量数据备份跟指定的那个时间点之间的一段时间内的 Redo 的增量的日志备份就可以让 PolarDB 可以恢复到指定的时间点。

自动备份跟手动备份都不会影响 PolarDB 集群的运行。备份的文件默认是保留七天。

手动备份最多可以保持三个,自动备份每天默认一个。备份的文件是不能删除的。

2、手动备份与自动备份

image.png从操作的机制上来讲 PolarDB 分成了手动备份和自动备份自动。

从字面上手动备份就是我们自己通过按钮触发的,自动备份就是我们在后台去设置一些自动触发的机制,比如定时触发某种机制。

(1)自动备份

在 PolarDB 的设置里自动备份是默认开启的,它会按照我们设置的备份策略进行自动的备份数据,达到定时备份的效果,保证数据安全性。在默认的情况下, PolarDB 会按照每天备份一次的频率进行自动的备份。

我们也可以根据我们业务的实际的需要控制台设置,在备份设置这个地方设置我们自动备份的频率和备份文件保留的时长等,我们可以设置一些参数。

(2)手动备份

手动备份是我们主动去触发的备份。但我们可以根据业务需求随时随地进行。

手动备份主要就是在 PolarDB 的控制台找到你的目标集群就是你的目标的 PolarDB  。进去之后,左侧这里截图隐掉了1个导航栏,在配置管理里面有一个叫做备份与恢复的一个页面,进去之后找到备份列表,在一个单独的页签处点击创建备份。此时会弹出一个对话框,创建备份的一个对话框。点击确定以后会触发一个手动备份的任务。

在列表里面会多一行记录,上面参数是备份集的id、备份开始的时间、结束的时间、状态,这里有一个叫做一致性快照的时间点是指数据进行备份的精确的时间点。因为我们提交备份的任务在后台是一个队列进行操作的,那精确的数据是在哪个时间点发生备份以一次性快照时间为准。

(3)备份方法

备份的方法主要是快照备份或者物理备份。快照备份的备份类型是全亮的。 Redo 备份是一种背诵方法,其实就是我们的所谓的增量日志的备份,对应的备份的类型就是增量的备份。它的大小是根据实际占用的数据的空间计算。

存储位置称为一级备份或者二级备份,这是 PolarDB 里的一个特有的概念。那么一级备份事实上就是直接把我们的数据备份保存在 PolarDB 的自身的 PolarDBfs 就是 PolarDB 自带的分布式的存储系统上。效果特别好,因为它直接在我们的实力的空间里面,所以效果特别好。并且它本身的一级的备份采用的是一个叫做写实复制的一个机制,所以当真正发生备份的时候,它其实是把有修改的系统的那个块保留了下来,同时在生成一个新的块,被原数据的整个断断续续引用。所以这个时候你要是触发一级备份的话,其实可以做到秒级的,就会非常的快。

二级备份是只能一级备份被压缩以后通过压缩上传到 OSS 里面或者可以通过 DTS 把离线的保存在其他的介质上。相比于一级备份,二级备份必然就存在空间更大、成本更低。相对应的就是数据的备份速度恢复速度相对慢一些。

3、常规备份与增强备份

image.png

(1)常规备份

常规备份是指设置备份的时候可以选择备份周期。我们在一天的时间点内可以去选择,一天24个时段里面的任意一个时段,选择以后一天就能进行一次的常规的自动备份。但是必须勾选否则不发生常规备份。

RDS 默认配送方式 PolarDB 里面称为常规备份。

(2)增强备份

PolarDB 有一个新的机制叫做增强备份,增强备份是根据自动备份的频率区分的。

常规备份是一天只能自动执行一次,在每隔一个小时的时间段里面可以选择自动触发一次。从实践经验上来讲出于数据安全的考虑,推荐大家的常规的自动触发的备份的频率至少一周两次三次或者有的人可能习惯一天触发一次。根据数据量的大小和备份的空间决定,备份空间有一些成本的考虑在里面。

增强备份是指 PolarDB 有设计出一种新形态的一个备份,它是能够缩短备份的周期也就是一天自动触发的备份不只是一次了,你可以选择多次,通过增强备份就可以缩短备份的周期。然后,由原来的一天一次变成一天多次。从而增加备份密度,恢复数据的时候可以更精确。在增强备份的这个机制下,我们在一天之内可以自动触发多次的备份。那么,有三个选项让我们来选择,可以开启每隔两个小时备份一次、三个小时或者四个小时进行一次增强的备份。因此我们可以知道,在增强备份这种机制下,比如两个小时创建一次,意味着一天最多可以创建12次的自动备份。所以在增强备份这个机制下就会出现一天有多个自动备份这样的一个情况。

在 PolarDB 的增强机制、备份机制里面,对于一天所触发的多个自动备份,最后到底保留下哪一个,它有一个机制就是备份完成的时间在24小时以内的,会全部被保留,也就是说像这上面这个图案,我们在3月1号的八点设置了一个四个小时创建一个备份,也就意味着系统会在四个小时里面来创建一个备份并且以四个小时为一个备份的频率持续地进行创建,到3月2号的时候打满24小时就会有六个备份出现。那么这个备份在24小时里面他都会存在就是四个或者在这一天里面这6个都会存在。

但是过了零点,就是过了下一个自然天以后,那么系统就会保留这个每一天零点之后完成的第一个备份,比如这个3月2号我们在3月2号那一天24小时里面最后创建的六个备份。那么在3月3号以后,过去的24小时里面,这六个备份会删除掉后面的这五个还会留下零点之后创建了第一个备份,这是当前现代的一个机制。

4、数据备份与 Redo 备份

image.png (1)数据备份

数据备份是物理备份,就是某个时间点上 PolarDB 集群的全量数据所生成的一个快罩或者在 PolarDB 里面叫做备份集。

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍如何基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
边缘计算 Cloud Native 数据管理
【阿里云云原生专栏】云原生背景下的AIoT布局:阿里云Link平台解析
【5月更文挑战第29天】阿里云Link平台,作为阿里云在AIoT领域的核心战略,借助云原生技术,为开发者打造一站式物联网服务平台。平台支持多协议设备接入与标准化管理,提供高效数据存储、分析及可视化,集成边缘计算实现低延时智能分析。通过实例代码展示,平台简化设备接入,助力智能家居等领域的创新应用,赋能开发者构建智能生态系统。
443 3
|
10月前
|
存储 人工智能 Cloud Native
NAS深度解析:面向云原生应用的文件存储
本文深入解析了面向云原生应用的文件存储NAS,由阿里云专家分享。内容涵盖Cloud Native与AI浪潮下的技术创新,包括高性能、弹性伸缩、成本优化及数据安全等方面。针对云原生应用的特点,NAS在Serverless生态中不断演进,提供多种产品规格以满足不同需求,如极速型NAS、归档存储等,确保用户在高并发场景下获得稳定低延时的存储体验。同时,通过优化挂载参数和容器访问策略,提升整体性能与可用性。
505 11
|
存储 Cloud Native 块存储
EBS深度解析:云原生时代企业级块存储
企业上云的策略,从 Cloud-Hosting 转向 Serverless 架构。块存储作为企业应用上云的核心存储产品,将通过 Serverless 化来加速新的计算范式全面落地。在本话题中,我们将会介绍阿里云块存储企业级能力的创新,深入解析背后的技术细节,分享对未来趋势的判断。
918 3
|
Kubernetes Cloud Native 云计算
云原生技术深度解析:重塑企业IT架构的未来####
本文深入探讨了云原生技术的核心理念、关键技术组件及其对企业IT架构转型的深远影响。通过剖析Kubernetes、微服务、容器化等核心技术,本文揭示了云原生如何提升应用的灵活性、可扩展性和可维护性,助力企业在数字化转型中保持领先地位。 ####
|
运维 Kubernetes Cloud Native
Kubernetes云原生架构深度解析与实践指南####
本文深入探讨了Kubernetes作为领先的云原生应用编排平台,其设计理念、核心组件及高级特性。通过剖析Kubernetes的工作原理,结合具体案例分析,为读者呈现如何在实际项目中高效部署、管理和扩展容器化应用的策略与技巧。文章还涵盖了服务发现、负载均衡、配置管理、自动化伸缩等关键议题,旨在帮助开发者和运维人员掌握利用Kubernetes构建健壮、可伸缩的云原生生态系统的能力。 ####
|
Kubernetes Cloud Native 调度
云原生批量任务编排引擎Argo Workflows发布3.6,一文解析关键新特性
Argo Workflows是CNCF毕业项目,最受欢迎的云原生工作流引擎,专为Kubernetes上编排批量任务而设计,本文主要对最新发布的Argo Workflows 3.6版本的关键新特性做一个深入的解析。
|
监控 Cloud Native 持续交付
云原生技术深度解析:重塑现代应用开发与部署范式####
本文深入探讨了云原生技术的核心概念、关键技术组件及其在现代软件开发中的重要性。通过剖析容器化、微服务架构、持续集成/持续部署(CI/CD)等关键技术,本文旨在揭示云原生技术如何促进应用的敏捷性、可扩展性和高可用性,进而推动企业数字化转型进程。不同于传统摘要仅概述内容要点,本部分将融入具体案例分析,直观展示云原生技术在实际应用中的显著成效与挑战应对策略,为读者提供更加丰富、立体的理解视角。 ####
|
人工智能 Cloud Native Java
云原生技术深度解析:从IO优化到AI处理
【10月更文挑战第24天】在当今数字化时代,云计算已经成为企业IT架构的核心。云原生作为云计算的最新演进形态,旨在通过一系列先进的技术和实践,帮助企业构建高效、弹性、可观测的应用系统。本文将从IO优化、key问题解决、多线程意义以及AI处理等多个维度,深入探讨云原生技术的内涵与外延,并结合Java和AI技术给出相应的示例。
330 1
|
运维 Cloud Native 持续交付
云原生技术解析:从IO出发,以阿里云原生为例
【10月更文挑战第24天】随着互联网技术的不断发展,传统的单体应用架构逐渐暴露出扩展性差、迭代速度慢等问题。为了应对这些挑战,云原生技术应运而生。云原生是一种利用云计算的优势,以更灵活、可扩展和可靠的方式构建和部署应用程序的方法。它强调以容器、微服务、自动化和持续交付为核心,旨在提高开发效率、增强系统的灵活性和可维护性。阿里云作为国内领先的云服务商,在云原生领域有着深厚的积累和实践。
302 0
|
运维 Cloud Native JavaScript
云端新纪元:云原生技术深度解析深入理解Node.js事件循环及其在异步编程中的应用
【8月更文挑战第27天】随着云计算技术的飞速发展,云原生已成为推动现代软件开发和运维的关键力量。本文将深入探讨云原生的基本概念、核心价值及其在实际业务中的应用,帮助读者理解云原生如何重塑IT架构,提升企业的创新能力和市场竞争力。通过具体案例分析,我们将揭示云原生技术背后的哲学思想,以及它如何影响企业决策和操作模式。

推荐镜像

更多
  • DNS