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

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 快速学习【视频】PolarDB-云原生关系型数据库的解析与实践

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

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


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


(3)历史库引擎 X-Engine  

X-Engine 是阿里自研的一个存储引擎,其目标是面向大规模的海量数据存储,提供一定高并发的一些事务处理能力,同时最重要的是能够降低存储成本。

首先,X-Engine 的热数据层和数据更新都是适用内存存储的,使用了一些内存数据库的技术。第二点是 X-Engine 做了流水线的事务处理机制,可以把整个受处理的几个阶段并行起来通过,然后把整个吞吐提升上去。第三点是 X-Engine 可以把访问频度低的数据逐渐淘汰,或者是合并到一个持久化的存储存储层中,然后结合多层次的存储设备,最好的是 NVM 非易失性内存, SSD 、HDD 一类的普通硬盘进行存储,因为 LSM TREE是一个分层的架构,特别适合冷热数据区分的一个分层存储,另外对性能影响较大的 Compaction 过程做了很大的优化, Compaction 是 X-Engine 本身的一个流程,需要把这个分层的数据去做 merge ,但我们做的优化可以把整个 X-Engine 的数据存储力度做一个拆分,尽量的去利用数据更新、热点较为集中,然后再合并,合并过程中复用数据以及去精细化的控制, X-Engine 处理的这个形状最核心的其实就是为了减少 Io 和计算代价去缓解合并过程中的写空间放大的问题。另外还使用更细力度的访问控制和缓存机制,去优化读的性能。

(4)并行查询

● 有效利用多核 CPU ,大幅提升长査询的查询性能

● 并行查询支持大部分 SELECT 语句

● 适用轻分析类业务、离线分析场景等

主要适用于大表查询,多表链接计算量比较大的SELECT语句,适合场景:一个场景是轻分析报表类的查询,它SQL相对复杂,相比在线tp业务也会多耗时间,但通过并行查询可以加速单次查询的效率;另外一个场景是有些只读节点系统资源相对空闲,并行查询可以利用更多的系统资源,如果有充足的CPU,充足的内存,就可以使用并行查询,把整个资源利用率和查询效率都提升起来。

第三块是在离线混合的场景,主要是隔离的场景对应上图:PolarDB上不同业务去使用不同的连接地址,底层连接到不同的实际的物理数据库节点上,互相就可以不影响。

例如:可以把某个单节点去开启并行查询执行OLTP类型的请求,所有这些请求就只会通过单节点的地址下对应的只读节点去访问,相当于复杂且耗时的SQL就不会影响核心业务。

并行查询的关键是利用多核的CPU并行处理能力,当查询数量达到一定阈值之后,阈值会提前通过某些算法进行预估,会自动启用并行查询框架,但是可以提前定义好并行查询可以用多少个线程数,对于相关的请求存储层就会把数据分到不同的线程上面,把多个线程做并行计算,最后把结果流水线汇总到总线程,总线程做多个流水线的归并返回给用户可以提高查询效率。有一些分析型场景下测试会有10倍的性能提升。

My SQL是一个SQL请求只会用一个线程,但是PolarDB并行查询上相当于在内核里孵化多个线程充分把资源利用起来,这个功能在开源的 My SQL或者RDS是没有办法实现的。

 

三、操作

image.png到控制台之后,在正常情况下,如果没有购买的话,该界面应为空,这时要新购一个 PolarDB 集群,创建新的集群。

image.png这里有不同的类型,比较常见的就是包年、包月以及按量付费,还有两个比较特别的是计算包和存储包,因为 PolarDB 是一个存储计算分离的架构,非常方便的就可以实现计算资源以及计算的计费和存储计费去做分离,他们是独立的,相当于如果做包年包月,计算资源和存储资源都是预购好的,按量付费全都不预购,但是整个的价格会没有优惠,是计算包和存储包包年、包月和按量付费的一个中间状态,比如买了计算包,就是先预购了计算的资源,这样计算资源省一点,但是存储资源可能不知道要花多少,可能有段时间非常多,突然优惠变少,这样存储资源就是按量付费的,如果买了存储包,计算资源按量付费,存储包就可以预购好,相当于存储包是包年包月这样的一个模式,所以这两个其实是一个中间状态。

下面有选择地域,创建方式包括支持从集群主集群,这两个其实是 GDN 的一个概念,也支持从 RDS 去做迁移。一般情况下, PolarDB 就是这五种模式。

系列化包括集群版,有多种架构集群版、历史集群版以及单节点的版本,常见的是买集群版。假设买8.0,可以选节点规格,最小的是2核,然后最大是88核和710G的,点立即购买即可。

PC开头的就是其 PolarDB 的一个集群ID,点击这个集群ID进去就可以看到 PolarDB 控制台的主界面。

image.png首先账号管理,新购买需要创建账号。 PolarDB 支持两种账号的模式,分别是高权限账号和普通账号,高权限账号只允许创建一个,普通账号可以支持创建多个。填写账号名,选择高权限账号和普通账号,还可以授权账号用哪些数据库。

image.png数据库管理允许在控制台上去创建一个数据库,创建 test 1,推荐设置字符集就是 UTF8 或 MP4 ,因为默认最常见的,也可以支持特殊字符,如果用其他,可能就会遇到一些 bug ,特别是中文特殊字符。创建数据库可以提前设好要授权在哪个账号,也可以去指定的权限,这些权限创建之后也可以再去修改。

创建数据库后,可以去登录数据库,登陆数据库的话有两种方式,一种是你可以 PolarDB 给的连接串;在控制台上也可以去直接用账号密码登录,数据库是和那个 RDS 是一样的。

例如用已有的账号登录,数据库已经建立好了,就可以做建表的操作。

image.png参数配置:参数支持修改,如果是 PolarDB 基本上都会有文档,可以去参考 PolarDB 官方的一个文档。修改参数的话,有两种类型。一种参数是临时表,比如说像临时表这样的一个参数,是不需要重启的,可以直接去修改,改完以后就实施应用,也不会影响业务,临时表大小的参数,很多人在测试的时候可能会遇到临时表不够大的问题,就可以修改这些参数,重要的是确定以后并不能马上生效,他有一个提交修改的流程,可以一次修改多个参数。

image.png临时表参数不涉及重启实例,较简单。

PolarDB也提供开启Binlog的参数,和普通的不一样有个单独的名字:polar_log_bin。

这个参数是polar是否开启Binlog参数默认是OFF。PolarDB不依赖Binlog,可以把OFF改为ON就相当于PolarDB也开启了Binlog。对PolarDB的影响是它会单独生成一份Binlog数据,这个数据也是存储在共享存储上的,就可以通过像My SQL一样的把Binlog拿走,去做各种各样的分析。

下图这里有表示开启Binlog是要重启,所以涉及到修改这类参数会有切换的行为。

image.png性能监控:把一些常见的My SQL上的指标给抽出来,作为运维人员,有可能会发现近期的db变差或者有什么瓶颈就可以通过性能监控排查出来。

image.png集群维度的信息,例如QPS、TPS、CPU资源的使用率,下图可以看出是有两个只读节点和主节点,这些资源都是有三个节点,每个资源的CPU使用率都能看到。

image.png还包括数据代理的监控,计算节点的监控,比较高级的监控。

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
5天前
|
Cloud Native 关系型数据库 OLAP
云原生数据仓库产品使用合集之阿里云云原生数据仓库AnalyticDB PostgreSQL版的重分布时间主要取决的是什么
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
|
1天前
|
存储 弹性计算 Kubernetes
【阿里云云原生专栏】深入解析阿里云Kubernetes服务ACK:企业级容器编排实战
【5月更文挑战第20天】阿里云ACK是高性能的Kubernetes服务,基于开源Kubernetes并融合VPC、SLB等云资源。它提供强大的集群管理、无缝兼容Kubernetes API、弹性伸缩、安全隔离及监控日志功能。用户可通过控制台或kubectl轻松创建和部署应用,如Nginx。此外,ACK支持自动扩缩容、服务发现、负载均衡和持久化存储。多重安全保障和集成监控使其成为企业云原生环境的理想选择。
110 3
|
3天前
|
Cloud Native 关系型数据库 分布式数据库
祝贺!阿里云PolarDB斩获数据库国际顶会ICDE 2024工业赛道最佳论文
阿里云斩获国际顶会ICDE 2024最佳论文,0.5秒实现数据库跨机实例迁移。
祝贺!阿里云PolarDB斩获数据库国际顶会ICDE 2024工业赛道最佳论文
|
5天前
|
存储 Cloud Native 关系型数据库
PolarDB-X 是面向超高并发、海量存储和复杂查询场景设计的云原生分布式数据库系统
【5月更文挑战第14天】PolarDB-X 是面向超高并发、海量存储和复杂查询场景设计的云原生分布式数据库系统
42 2
|
5天前
|
Cloud Native 关系型数据库 分布式数据库
PolarDB是阿里云自主研发的关系型云原生数据库
【5月更文挑战第14天】PolarDB是阿里云自主研发的关系型云原生数据库
45 3
|
5天前
|
SQL 存储 关系型数据库
性能诊断工具DBdoctor如何快速纳管数据库PolarDB-X
DBdoctor是一款基于eBPF技术的数据库性能诊断工具,已通过阿里云PolarDB分布式版(V2.3)认证。PolarDB-X是阿里云的高性能云原生分布式数据库,采用Shared-nothing和存储计算分离架构,支持高可用、水平扩展和低成本存储。PolarDB-X V2.3.0在读写混合场景下对比开源MySQL有30-40%的性能提升。DBdoctor能按MySQL方式纳管PolarDB-X的DN节点,提供性能洞察和诊断。用户可通过指定步骤安装PolarDB-X和DBdoctor,实现数据库的管理和性能监控。
124 0
|
5天前
|
Cloud Native 关系型数据库 分布式数据库
数据库性能诊断工具DBdoctor通过阿里云PolarDB产品生态集成认证
DBdoctor(V3.1.0)成功通过阿里云PolarDB分布式版(V2.3)集成认证,展现优秀兼容性和稳定性。此工具是聚好看科技的内核级数据库性能诊断产品,运用eBPF技术诊断SQL执行,提供智能巡检、根因分析和优化建议。最新版V3.1.1增加了对PolarDB-X和OceanBase的支持,以及基于cost的索引诊断功能。PolarDB-X是阿里巴巴的高性能云原生分布式数据库,兼容MySQL生态。用户可通过提供的下载地址、在线试用链接和部署指南体验DBdoctor。
154 0
|
5天前
|
存储 关系型数据库 分布式数据库
数据库索引回表困难?揭秘PolarDB存储引擎优化技术
PolarDB分布式版存储引擎采用CSM方案均衡资源开销与可用性。
数据库索引回表困难?揭秘PolarDB存储引擎优化技术
|
5天前
|
运维 关系型数据库 分布式数据库
PolarDB产品使用合集之在选择分布式数据库时,主要考虑是什么
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
5天前
|
SQL 关系型数据库 数据库
关系型数据库选择合适的数据库管理系统
【5月更文挑战第5天】关系型数据库选择合适的数据库管理系统
259 2
关系型数据库选择合适的数据库管理系统

热门文章

最新文章