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

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云解析 DNS,旗舰版 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数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
2月前
|
存储 负载均衡 安全
高效管理大型数据库:分片与复制的策略与实践
在当今数据驱动的世界中,管理和优化大型数据库系统是每个企业的关键任务。特别是在面对数据量迅速增长的情况下,如何确保系统的高可用性和性能成为重要挑战。本文探讨了两种核心技术——分片(Sharding)和复制(Replication),以及它们在实际应用中的策略与实践。通过对比这两种技术的优缺点,并结合具体案例分析,本文旨在为数据库管理员和开发者提供一套高效管理大型数据库的综合方案。
|
19天前
|
消息中间件 缓存 监控
优化微服务架构中的数据库访问:策略与实践
随着微服务架构的普及,如何高效管理和优化数据库访问成为了关键挑战。本文探讨了在微服务环境中优化数据库访问的策略,包括数据库分片、缓存机制、异步处理等技术手段。通过深入分析实际案例和最佳实践,本文旨在为开发者提供实际可行的解决方案,以提升系统性能和可扩展性。
|
17天前
|
存储 关系型数据库 分布式数据库
揭秘PolarDB:中国云原生数据库的超级英雄,如何颠覆传统数据存储?
在数字化时代,数据成为企业的核心资产,而云原生数据库则是推动企业转型的关键。PolarDB凭借其先进的存储计算分离架构,在性能、可靠性和易用性方面脱颖而出,成为国内领先的选择。它支持多种数据库引擎,提供多副本存储机制,并采用按量付费模式,有效降低管理和成本压力,助力企业实现高效、可靠的数字化转型。
30 1
|
23天前
|
JavaScript 前端开发 数据库
数据库测试场景实践总结
本文介绍了数据库超时和应用锁表SSDB测试场景的验证方法,通过锁定数据表模拟写入失败情况,并利用SSDB进行重试。测试需开发人员配合验证功能。同时,提供了SSDB服务器登录、查询队列数量及重启服务等常用命令。适用于验证和解决数据库写入问题。
22 7
|
2月前
|
Cloud Native 数据库 开发者
云原生数据库2.0问题之帮助阿里云数据库加速技术更新如何解决
云原生数据库2.0问题之帮助阿里云数据库加速技术更新如何解决
|
2月前
|
Cloud Native 关系型数据库 分布式数据库
云原生数据库2.0问题之PolarDB利用云计算技术红利如何解决
云原生数据库2.0问题之PolarDB利用云计算技术红利如何解决
|
2月前
|
Cloud Native 关系型数据库 分布式数据库
云原生关系型数据库PolarDB问题之PolarDB相比传统商用数据库的优势如何解决
云原生关系型数据库PolarDB问题之PolarDB相比传统商用数据库的优势如何解决
32 1
|
23天前
|
存储 负载均衡 数据库
探索后端技术:从服务器架构到数据库优化的实践之旅
在当今数字化时代,后端技术作为支撑网站和应用运行的核心,扮演着至关重要的角色。本文将带领读者深入后端技术的两大关键领域——服务器架构和数据库优化,通过实践案例揭示其背后的原理与技巧。无论是对于初学者还是经验丰富的开发者,这篇文章都将提供宝贵的见解和实用的知识,帮助读者在后端开发的道路上更进一步。
|
2月前
|
人工智能 关系型数据库 分布式数据库
DB+AI会擦出怎样的火花?一站式带你了解阿里云瑶池数据库经典的AI产品服务与实践!
从 DB+AI 精选解决方案、特惠权益等,一站式带你了解阿里云瑶池数据库经典的AI产品服务与实践。
|
2月前
|
存储 关系型数据库 MySQL
再探PolarDB —— PolarDB MySQL 四大场景下的全方位评测
本文全面评测了阿里云PolarDB MySQL在四大关键场景下的表现:Serverless极致弹性、列存索引(IMCI)、弹性并行查询(ePQ)以及无感秒切高可用。通过官方提供的免费体验资源,我们深入了解了PolarDB MySQL的核心能力和性能。Serverless极致弹性列存索引(IMCI弹性并行查询(ePQ)无感秒切高可用此外,文章还介绍了PolarDB MySQL在数据备份和HTAP(混合事务/分析处理)场景下的优势,包括灵活的备份策略、高效的全量和库表恢复方式,以及通过IMCI支持的HTAP能力。这些特性共同构成了PolarDB MySQL作为一款先进的云数据库服务的强大竞争力。

热门文章

最新文章

下一篇
无影云桌面