本文主要介绍基于代价进行并行优化、并行执行的云数据库的并行查询引擎的关键问题和核心技术。背景信息 随着数据规模的不断扩大,用户SQL的执行时间越来越长,这不仅对数据库的优化能力提出更高的要求,并且对数据库的执行模式也提出了新的...
并行查询背景 PolarDB 亚马逊在2017年发表的关于Aurora的这篇paper[1],引领了云原生关系型数据库的发展趋势,而作为国内最早布局云计算的厂商,阿里云也在2018年推出了自己的云原生关系数据库 PolarDB,和Aurora的理念一致,PolarDB 深度...
对于大数据量、较复杂的时空查询,Ganos可直接利用PG并行查询的能力从而加速时空查询。并行查询原理 PG并行查询是表级的并行,其并行查询示意图如下。注意事项 并行查询的worker数量越大,查询时CPU负载越重,对于CPU负载本身较重的场景...
通过对分区表使用跨机并行查询,提升数据库的性能。功能介绍 当前对分区表使用跨机并行查询支持的功能如下所示:支持range分区的并行查询。支持list分区的并行查询。支持hash分区的并行查询。支持分区裁剪。支持带有索引的分区表并行查询。...
对于大数据量、较复杂的时空查询,Ganos可直接利用PG并行查询的能力从而加速时空查询。并行查询原理 PG并行查询是表级的并行,其并行查询示意图如下。注意事项 并行查询的worker数量越大,查询时CPU负载越重,对于CPU负载本身较重的场景...
概述 当代计算机往往有更多的核心可以使用,并行查询是现代数据库必不可少的能力。PolarDB PostgreSQL版 对分区表的并行查询,和普通表相比有更加优异的性能。使用说明 PolarDB PostgreSQL版 的并行查询功能默认开启。根据并行的方式,分区...
具体操作请参见 配置数据库代理 的并行查询说明。PolarDB集群group by/order by涉及的数据量非常大导致临时表很大,如何处理?这个问题的关键在于查询产生的临时表量过高过密集,您可以通过开启 多机并行查询 来解决这个问题,开启多机并行...
更多关于并行查询和Hash Join的并行执行的文字说明,请参见 并行查询(Parallel Query)和 Hash Join的并行执行。
对于大数据量、较复杂的时空查询,Ganos可直接利用PG并行查询的能力从而加速时空查询。并行查询原理 PG并行查询是表级的并行,其并行查询示意图如下。注意事项 并行查询的worker数量越大,查询时CPU负载越重,对于CPU负载本身较重的场景...
PolarDB MySQL版 8.0版本重磅推出弹性并行查询框架,当您的查询数据量到达一定阈值,就会自动启动并行查询框架,从而使查询耗时指数级下降。功能简介 弹性并行查询(Elastic Parallel Query,ePQ)目前支持单机并行和多机并行两种并行引擎...
REPLICA_AUTO(默认):仅只读节点会根据数据库负载(如CPU使用率等)决定是否禁止并行查询计划,并会根据查询代价选择并行度,而主节点不会开启并行查询。说明 更多关于并行度配置策略的详细介绍,请参见 并行资源控制策略配置。parallel_...
通过对分区表使用跨机并行查询,提升数据库的性能。功能介绍 当前对分区表使用跨机并行查询支持的功能如下所示:支持range分区的并行查询。支持list分区的并行查询。支持hash分区的并行查询。支持分区裁剪。支持带有索引的分区表并行查询。...
概述 当代计算机往往有更多的核心可以使用,并行查询是现代数据库必不可少的能力。PolarDB PostgreSQL版(兼容Oracle)对分区表的并行查询,和普通表相比有更加优异的性能。使用说明 PolarDB PostgreSQL版(兼容Oracle)的并行查询功能默认...
概述 当代计算机往往有更多的核心可以使用,并行查询是现代数据库必不可少的能力。PolarDB PostgreSQL版(兼容Oracle)对分区表的并行查询,和普通表相比有更加优异的性能。使用说明 PolarDB PostgreSQL版(兼容Oracle)的并行查询功能默认...
PolarDB PostgreSQL版(兼容Oracle)提供了跨机并行查询(Parallel Execution)的功能,支持多个计算节点...PolarDB PostgreSQL版(兼容Oracle)支持对分区表使用跨机并行查询的功能,提升数据库性能,具体可参见 对分区表使用跨机并行查询。
PolarDB PostgreSQL版(兼容Oracle)提供了跨机并行查询(Parallel Execution)的功能,支持多个计算节点...PolarDB PostgreSQL版(兼容Oracle)支持对分区表使用跨机并行查询的功能,提升数据库性能,具体可参见 对分区表使用跨机并行查询。
本文为您介绍并行查询的使用限制以及与串行执行结果可能不兼容的地方,帮助您正确使用并行查询功能。并行查询的使用限制 PolarDB 会持续迭代并行查询的能力,目前以下情况在并行计划中会有一定的局限性:查询非Innodb表,查询无法并行。...
如果下面的任一条件为真,即便对一个给定查询通常可以产生并行查询计划,规划器都不会为它产生并行查询计划:查询要写任何数据或者锁定任何数据库行。如果一个查询在顶层或者 CTE 中包含了数据修改操作,那么不会为该查询产生并行计划。一...
如果函数和聚集会写数据库、访问序列、改变事务状态(即便是临时改变,例如建立一个 EXCEPTION 块来捕捉错误的 PL/pgsql)或者对设置做持久化的更改,它们一定要被标记为 PARALLEL UNSAFE。类似地,如果函数会访问临时表、客户端连接状态、...
本文档基于TPC-H测试 PolarDB MySQL版 8.0.1和8.0.2版本 集群版 的OLAP负载性能,您可以按照本文介绍自行测试对比,快速了解数据库系统的性能。并行查询简介 PolarDB MySQL版 8.0版本 集群版 推出并行查询(Parallel Query)框架。当您的...
PolarDB PostgreSQL版(兼容Oracle)支持使用跨机并行查询功能进行分析型查询,实现一定的HTAP能力。本文介绍如何使用跨机并行查询,提升分析型查询的性能。原理介绍 当一条查询请求在查询协调节点上被执行跨机并行查询时,该查询产生的...
PolarDB PostgreSQL版(兼容Oracle)支持使用跨机并行查询功能进行分析型查询,实现一定的HTAP能力。本文介绍如何使用跨机并行查询,提升分析型查询的性能。原理介绍 当一条查询请求在查询协调节点上被执行跨机并行查询时,该查询产生的...
本文以TPC-H为例,为您介绍并行查询使用示例。说明 本文的TPC-H的实现基于TPC-H的基准测试,并不能与已发布的TPC-H基准测试结果相比较,本文中的测试并不符合TPC-H基准测试的所有要求。GROUP BY和ORDER BY支持 AGGREGATE函数支持(SUM/AVG/...
跨机并行查询功能还可以用于加速构建B-tree索引,同时支持加速创建B-Tree索引的GLOBAL索引。本文介绍工作原理以及如何使用该功能加速索引构建。原理介绍 PolarDB PostgreSQL版(兼容Oracle)在执行索引构建时,会首先扫描待构建索引的基表...
跨机并行查询功能具有如下优势:具备一定的HTAP能力:能在TP数据上实时执行分析型查询。执行分析查询的只读节点和执行TP型查询的只读节点可以物理隔离,避免影响TP业务。结合 PolarDB PostgreSQL版(兼容Oracle)存储计算分离的架构,可以...
本文介绍如何在 PolarDB 的并行查询中使用Hash Join功能。简单并行Hash Join 前提条件 集群版本需为 PolarDB MySQL版 8.0 集群版,且Revision version为8.0.2.1.0或以上,您可以参见 查询版本号 确认集群版本。并行策略 上图中是并行度为4...
本文介绍了如何免费体验弹性并行查询ePQ带来的查询加速及性能提升。背景 PolarDB MySQL版 8.0版本重磅推出弹性并行查询(Elastic Parallel Query,ePQ):将一个复杂查询任务拆分为多个子任务,子任务可以被派发到同集群内的任意节点并发...
可能的原因可见何时会用到并行查询?和并行安全性。在执行一个并行计划时,可以用 EXPLAIN(ANALYZE,VERBOSE)来显示每个计划节点在每个工作者上的统计信息。这些信息有助于确定是否所有的工作被均匀地分发到所有计划节点以及从总体上理解...
PolarDB PostgreSQL版 的弹性跨机并行查询(ePQ)支持并行写入及查询OSS外部表。前提条件 支持的 PolarDB PostgreSQL版 的版本如下:PostgreSQL 14(内核小版本14.9.13.0及以上)PostgreSQL 11(内核小版本1.1.35及以上)说明 您可通过如下...
本文介绍如何使用EXPLAIN语句查看执行计划输出中与并行查询相关的内容。查询用表 本文示例中使用 pq_test 表进行并行查询测试。表结构如下:SHOW CREATE TABLE pq_test\G*1.row*Table:pq_test Create Table:CREATE TABLE `pq_test`(`id` ...
如果在业务设计上需要使用到ePQ,那么可以将业务中的分析型SQL提取出来,使用一个特定的数据库来进行ePQ查询:ALTER DATABASE ap_database SET polar_enable_px=ON;或使用某个特定的账户,专门用来执行分析型的SQL:ALTER ROLE ap_role SET...
PolarDB PostgreSQL版(兼容Oracle)的弹性跨机并行查询(ePQ)支持并行写入及查询OSS外部表。背景信息 PolarDB PostgreSQL版(兼容Oracle)支持通过 oss_fdw 插件创建OSS外部表,其物理存储位于 阿里云对象存储OSS 上,在数据库内仅保存表...
PolarDB PostgreSQL版(兼容Oracle)的弹性跨机并行查询(ePQ)支持并行写入及查询OSS外部表。背景信息 PolarDB PostgreSQL版(兼容Oracle)支持通过 oss_fdw 插件创建OSS外部表,其物理存储位于 阿里云对象存储OSS 上,在数据库内仅保存表...
如果在业务设计上需要使用到ePQ,那么可以将业务中的分析型SQL提取出来,使用一个特定的数据库来进行ePQ查询:ALTER DATABASE ap_database SET polar_enable_px=ON;或使用某个特定的账户,专门用来执行分析型的SQL:ALTER ROLE ap_role SET...
如果在业务设计上需要使用到ePQ,那么可以将业务中的分析型SQL提取出来,使用一个特定的数据库来进行ePQ查询:ALTER DATABASE ap_database SET polar_enable_px=ON;或使用某个特定的账户,专门用来执行分析型的SQL:ALTER ROLE ap_role SET...
当优化器判断对于某一个特定的查询,并行查询是最快的执行策略时,优化器将创建一个查询计划。该计划包括一个 Gather 或者 Gather Merge 节点。下面是一个简单的例子:EXPLAIN SELECT*FROM pgbench_accounts WHERE filler LIKE '%x%';QUERY...
test",pwd:"123456Aa",roles:[{role:"readAnyDatabase",db:"admin"}]})创建成功的返回结果如下:Successfully added user:{"user":"test","roles":[{"role":"readAnyDatabase","db":"admin"}]} 查询数据库账号 查询云数据库MongoDB实例的...
关闭并行查询 在控制台基本信息的集群地址区域,单击 编辑配置,打开 编辑地址配置 页面,可关闭并行查询,具体操作请参见 配置数据库代理。说明 控制台关闭并行查询后,需要确认系统参数 max_parallel_degree 同时为0,确保并行查询被完全...
查询数据库账号 查询云数据库MongoDB实例的所有数据库账号 在admin数据库执行如下命令:db.getCollection("system.users").find()说明 该命令可以直接复制执行,无需修改。返回结果如下:{ '_id':"admin.root",'userId':BinData(3,"b079b4c...
背景信息 PolarDB-X 支持访问同一 PolarDB-X 实例下的多个不同的数据库,就如同单机MySQL的跨数据库查询。通常,PolarDB-X 登录时需要指定一个DB_NAME作为默认数据库。您可以使用USE语句动态切换当前Schema,方便同时管理多个数据库。语法 ...