核心特性—混合负载HTAP

本文涉及的产品
云原生数据库 PolarDB 分布式版,标准版 2核8GB
简介: PolarDB-X是一款支持HTAP(Hybrid Transaction/Analytical Processing)的数据库,在支持高并发、事务性请求的同时,也对分析型的复杂查询提供了良好的支持。

为了提高复杂分析型查询的速度,PolarDB-X将计算任务切分并调度到多个计算节点上,从而利用多个节点的计算能力,加速查询的执行。这种方式也称为MPP并行计算。目前只有PolarDB-X只读实例集群默认开启了MPP并行计算能力。p325031.png

查询优化器

PolarDB-X的优化器面向HTAP负载设计,对复杂查询有着良好的支持。TP类查询包含的表数量通常有限(例如3个以内),并且Join条件往往被索引覆盖,且查询涉及的数据量较小。而对于不符合上述特征的复杂查询,则对优化器提出了更高的要求。

PolarDB-X采用了基于代价的优化器技术,能够根据实际数据量、数据分布情况等,搜索到较优的执行计划,例如,对Join顺序进行调整、选择合适的Join或聚合算法,对关联子查询去关联化等。执行计划的好坏很大程度上决定了查询效率,查询优化对于分析型查询至关重要。

HTAP智能路由

现阶段,阻碍HTAP数据库实际应用的一大障碍是分析型查询(AP)对TP类查询的影响。为了解决这一问题,PolarDB-X建议用户部署独立的只读集群,只读集群与原集群在硬件资源上完全分离,从而将AP类查询对TP类查询的影响降到最低。

PolarDB-X优化器会基于代价估计将请求区分为TP与AP负载,其中AP查询会被进一步改写为分布式执行计划,发往只读集群进行计算,避免它对主实例的TP类查询造成影响。p325032.png

分布式执行

分布式执行计划下一步会被切分为多个阶段(Stage),每个阶段又会生成多个并行的分片(Split),这些分片被下发到多个计算节点执行。计算节点之间通过高速网络互联。在计算过程中往往需要对中间结果进行多次交换(Exchange),直到最后一个Stage将结果收集汇总、回复给发起查询的客户端。p325033.png

全局一致性读

传统读写分离架构下,数据复制的延迟可能带来的数据写后读(read-after-write)不一致问题。PolarDB-X中,对于路由给只读实例的查询,默认开启全局一致性读能力,确保业务不会读到过期的数据,向主实例写入成功后能在只读库读到写入的数据。

相关实践学习
快速体验PolarDB开源数据库
本实验环境已内置PostgreSQL数据库以及PolarDB开源数据库:PolarDB PostgreSQL版和PolarDB分布式版,支持一键拉起使用,方便各位开发者学习使用。
相关文章
|
4月前
|
存储 缓存 安全
MPP架构数据仓库使用问题之DADI相比其他方案,在资源使用上有什么优势
MPP架构数据仓库使用问题之DADI相比其他方案,在资源使用上有什么优势
|
5月前
|
SQL Oracle 关系型数据库
关系型数据库Oracle并行处理能力
【7月更文挑战第10天】Oracle数据库的并行处理能力主要体现在其并行查询(Parallel Query, PQ)和并行执行(Parallel Execution, PE)功能上。这是Oracle为了提高大规模数据处理效率,特别是在多处理器或多核服务器环境中的性能而设计的功能。 1. **并行查询**:当一个SQL查询被提交给Oracle时,如果查询涉及到大量的数据操作,Oracle可以将这个查询分解成多个子任务,并行地在不同的处理器或核心上执行这些子任务,从而加快查询速度。并行查询可以应用于表扫描、索引扫描、排序、哈希连接等操作。 2. **并行执行**:并行执行是Oracle数据库的
82 2
|
5月前
|
固态存储 测试技术 数据库
最新测试揭秘:TDengine 线性扩展能力能否满足你的性能需求?
**摘要:** TDengine 的线性扩展能力通过CPU和磁盘测试得以验证。在CPU测试中,使用TDengine V3.3.0.0和taosBenchmark,随着CPU核数从4增至12,写入性能线性提升,每个CPU增加对应约50W条/秒的提升,保持CPU在瓶颈状态。磁盘IO测试中,使用低速机械盘,增加磁盘数量导致写入性能成比例增长,充分利用新增磁盘IO。测试结果表明,无论CPU还是磁盘扩展,TDengine都能有效利用资源,展示出出色的线性扩展能力。
69 0
|
7月前
|
SQL 架构师 大数据
提升企业级数据处理效率!3.0 系列版本的四个集群优化点详解
为了帮助企业更好地进行大数据处理,我们在此前 TDengine 3.x 系列版本中进行了几项与集群相关的优化和新功能开发,本文将对这几项重要优化进行详细阐述。
107 0
|
监控 负载均衡 测试技术
扩展性:构建无限可能的高性能系统
扩展性:构建无限可能的高性能系统
|
存储 缓存 JSON
大规模数据量下ES如何实现高性能检索?
大规模数据量下ES如何实现高性能检索?
651 0
|
7月前
|
关系型数据库 MySQL 分布式数据库
PolarDB-X最佳实践系列(三):如何实现高效的分页查询
分页查询是数据库中常见的操作。本文将介绍,如何在数据库中(无论是单机还是分布式)高效的进行翻页操作。
112947 10
PolarDB-X最佳实践系列(三):如何实现高效的分页查询
|
SQL 并行计算 Oracle
【笔记】最佳实践—混合负载HTAP的实践和优化
背景信息 本文主要提供数据库上云后OLTP+OLAP一体化架构的最佳实践,既HTAP。主要面对的业务应用范围: 混合型HTAP数据库需求:如ORACLE数据库改造上云,云上数据库方案选型; OLTP系统查询慢,存在分析型场景和瓶颈的客户; 读写分离需求。
266 0
【笔记】最佳实践—混合负载HTAP的实践和优化
|
SQL 并行计算 Oracle
最佳实践—混合负载HTAP的实践和优化
背景信息 本文主要提供数据库上云后OLTP+OLAP一体化架构的最佳实践,既HTAP。主要面对的业务应用范围: 混合型HTAP数据库需求:如ORACLE数据库改造上云,云上数据库方案选型; OLTP系统查询慢,存在分析型场景和瓶颈的客户; 读写分离需求。
664 0
最佳实践—混合负载HTAP的实践和优化
|
SQL 存储 关系型数据库
HTAP 架构 - 存储计算分离处理AP查询的挑战
HTAP 架构 - 存储计算分离处理AP查询的挑战
216 0