检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
漏洞修复说明 表1 已修补的开源及第三方软件漏洞列表 软件名称 软件版本 CVE编号 CSS得分 漏洞描述 受影响版本 解决版本 log4j 2.13.2 CVE-2021-44228 9.8 Apache Log4j2 2.0-beta9 through 2.15.0 (excluding
禁止在升级观察期内使用。 无法对已删除数据库的残留文件进行扫描。 如果集群元数据信息存在不一致情况,该函数可能会错误扫描到有效的数据文件。 pg_get_scan_residualfiles() 描述:用于获取当前节点所有扫描到的残留文件记录。该函数为实例级函数,与当前所在的数据库无关,可以在任意实例上运行。
扫描残留文件函数 扫描残留文件函数仅8.3.0及以上集群版本支持,本章节所有函数仅限sysadmin角色调用。 pg_scan_residualfiles() 描述:用于扫描当前节点所连接数据库的所有残留文件记录。该函数为实例级函数,与当前所在的数据库相关,可以在任意实例上运行。
案例:改建分区表 逻辑上的一张表根据某种策略分成多个物理块进行存储,这张逻辑上的表称之为分区表,每个物理块则称为一个分区。一般对数据和查询都有明显区间段特征的表使用分区策略可通过较小不必要的数据扫描,从而提升查询性能 在查询时,可通过分区剪枝技术尽可能减少底层数据扫描,即缩小表的扫描范围。分区
案例:改建分区表 逻辑上的一张表根据某种策略分成多个物理块进行存储,这张逻辑上的表称之为分区表,每个物理块则称为一个分区。一般对数据和查询都有明显区间段特征的表使用分区策略可通过较小不必要的数据扫描,从而提升查询性能 在查询时,可通过分区剪枝技术尽可能减少底层数据扫描,即缩小表的扫描范围。分区
案例:改建分区表 逻辑上的一张表根据某种策略分成多个物理块进行存储,这张逻辑上的表称之为分区表,每个物理块则称为一个分区。一般对数据和查询都有明显区间段特征的表使用分区策略可通过较小不必要的数据扫描,从而提升查询性能 在查询时,可通过分区剪枝技术尽可能减少底层数据扫描,即缩小表的扫描范围。分区
显示当前数据库中所有访问特定索引的统计信息。 索引可以通过简单的索引扫描或“位图”索引扫描进行使用。位图扫描中几个索引的输出可以通过AND或者OR规则进行组合, 因此当使用位图扫描的时候,很难将独立对行抓取与特定索引进行组合, 因此,一个位图扫描增加pg_stat_all_indexes
显示当前数据库中所有访问特定索引的统计信息。 索引可以通过简单的索引扫描或“位图”索引扫描进行使用。位图扫描中几个索引的输出可以通过AND或者OR规则进行组合, 因此当使用位图扫描的时候,很难将独立对行抓取与特定索引进行组合, 因此,一个位图扫描增加pg_stat_all_indexes
显示当前数据库中所有访问特定索引的统计信息。 索引可以通过简单的索引扫描或“位图”索引扫描进行使用。位图扫描中几个索引的输出可以通过AND或者OR规则进行组合, 因此当使用位图扫描的时候,很难将独立堆行抓取与特定索引进行组合, 因此,一个位图扫描增加pg_stat_all_indexes
有被使用的情况。针对这种情况,本文将列举几种常见的场景和优化方法。 场景一:返回结果集很大 以行存表的Seq Scan和Index Scan为例: Seq Scan:按照表的记录的排列顺序从头到尾依次检索扫描,每次扫描要取到所有的记录。这也是最简单最基础的扫表方式,扫描的代价比较大。
功能描述 显示SQL语句的执行计划。 执行计划将显示SQL语句所引用的表采用的扫描方式,如:简单的顺序扫描、索引扫描等。如果引用了多个表,执行计划还会显示使用的JOIN算法。 执行计划的最关键部分是语句的预计执行开销,即计划生成器估算执行该语句将花费多长的时间。 若指定了ANAL
执行计划显示如何对指代SQL语句的表格进行扫描,分为次序扫描和索引扫描。 SQL语句执行成本为预估的查询时间(查询的语句成本单位是随机的,通常情况下检查对象为磁盘页)。 查看SQL查询的计划和成本,可通过以下方式: 在“SQL终端”中输入查询或使用已有查询,单击工具栏的来查看解释计划。 若要
功能描述 显示SQL语句的执行计划。 执行计划将显示SQL语句所引用的表采用的扫描方式,如:简单的顺序扫描、索引扫描等。如果引用了多个表,执行计划还会显示使用的JOIN算法。 执行计划的最关键部分是语句的预计执行开销,即计划生成器估算执行该语句将花费多长的时间。 若指定了ANAL
功能描述 显示SQL语句的执行计划。 执行计划将显示SQL语句所引用的表采用的扫描方式,如:简单的顺序扫描、索引扫描等。如果引用了多个表,执行计划还会显示使用的JOIN算法。 执行计划的最关键部分是语句的预计执行开销,这是计划生成器估算执行该语句将花费多长的时间。 若指定了ANAL
列存小CU多导致的性能慢问题 实际业务场景中,用户会大量使用列存表,但是列存表使用不当会造严重的性能问题,最常见的就是列存小CU过多导致的性能慢问题。 问题现象 系统IO长期飙升过高,查询偶发性变慢。 查看偶发慢业务慢时的执行计划信息,慢在cstore scan,且扫描数据量不大但扫描CU个数较多。
存在于查询计划树的叶子节点,它不仅可以扫描表,还可以扫描函数的结果集、链表结构、子查询结果集。常见的扫描算子如下表所示: 表1 扫描算子 算子 含义 场景 SeqScan 顺序扫描 最基本的扫描算子,用于扫描物理表(没有索引辅助的顺序扫描)。 IndexScan 索引扫描 选择条件涉及的属性上建立了索引。
存在于查询计划树的叶子节点,它不仅可以扫描表,还可以扫描函数的结果集、链表结构、子查询结果集。常见的扫描算子如下表所示: 表1 扫描算子 算子 含义 场景 SeqScan 顺序扫描 最基本的扫描算子,用于扫描物理表(没有索引辅助的顺序扫描)。 IndexScan 索引扫描 选择条件涉及的属性上建立了索引。
和服务器性能及分析数据库所用的查询路径,并找出最拥挤,开销最高和运行最慢的节点。 图形化执行计划展示了SQL语句所引用的表是如何被扫描的(普通顺序扫描和索引扫描)。 SQL语句的执行开销取决于其运行时长(可使用任意开销单位度量,但是通常以磁盘中每页的抓取数计算。) Costliest:“Self
tb_motor_vehicle列存表的分区扫描上。 已确认该表的分区键为createtime,而涉及的SQL中无任何createtime的筛选和过滤条件,基本可以确认是由于慢SQL的计划没有走分区剪枝,导致了全表扫描,对于185亿条数据量的表,全表扫描性能会很差。 处理方法 在慢SQL的过滤条件中增加分区筛选条件,避免走全表扫描。
对HStore表执行SELECT查询时,会扫描列存主表CU上的数据、Delta表上I记录中的数据、内存中每行数据更新信息,并将三种信息合并后返回。 在通过主键索引或唯一索引查询数据的场景中: 对于传统列存表,唯一索引会同时存储行存Delta表上的数据位置信息(blocknum,offset)与列存主表的数据位置信