检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
案例:设置cost_param对查询性能优化 cost_param参数用于控制在特定的客户场景中,使用不同的估算方法使得估算值与真实值更接近。此参数可以同时控制多种方法,与某一方法对应的位做与操作,不为0表示该方法被选择。 场景一:优化前 cost_param的bit0(set
GaussDB(DWS)数据库用户管理 使用CREATE USER和ALTER USER可以创建和管理数据库用户。 非三权分立下,GaussDB(DWS)用户账户只能由系统管理员或拥有CREATEROLE属性的安全管理员创建和删除。 三权分立时,用户账户只能由安全管理员创建。 创建用户
} } 示例2 客户端内存占用过多解决 此示例主要使用setFetchSize来调整客户端内存使用,它的原理是通过数据库游标来分批获取服务器端数据,但它会加大网络交互,可能会损失部分性能。 由于游标事务内有效,故需要先关闭自动提交。 1 2 3 4 5 6 7
如果TPC-H和TPC-DS数据同时测试,需要启动以上4个GDS,如果只测试TPC-DS或TPC-H数据,请根据后面的“#xxx”备注启动对应的GDS服务即可。 -d dir:保存有待导入数据的数据文件所在目录。 -p ip:port:GDS监听IP和监听端口。IP替换为ECS的内网IP,确
GS_WLM_SQL_ALLOW GS_WLM_SQL_ALLOW视图显示已经设置的资源管理SQL白名单。 其中白名单包括两部分内容: 系统默认的SQL白名单。 通过GUC参数wlm_sql_allow_list设置的SQL白名单。 父主题: 系统视图
PG_STAT_ALL_INDEXES PG_STAT_ALL_INDEXES视图显示当前数据库中所有访问特定索引的统计信息。 索引可以通过简单的索引扫描或“位图”索引扫描进行使用。位图扫描中几个索引的输出可以通过AND或者OR规则进行组合, 因此当使用位图扫描的时候,很难将独立对行抓取与特定索引进行组合,
PGXC_OS_RUN_INFO PGXC_OS_RUN_INFO视图显示集群中各节点上操作系统运行的状态信息,除新增node_name(节点名称)字段外,其余字段内容和PV_OS_RUN_INFO视图相同。需要有系统管理员权限或预置角色gs_role_read_all_stats权限才可以访问此视图。
PGXC_STAT_BGWRITER PGXC_STAT_BGWRITER视图显示集群中各节点上后端写进程活动的统计信息,除新增node_name(节点名称)字段外,其余字段内容和PG_STAT_BGWRITER视图相同。需要有系统管理员权限才可以访问此视图。 表1 PGXC_STAT_BGWRITER字段
PGXC_WAIT_EVENTS PGXC_WAIT_EVENTS视图显示集群中各节点各类等待状态和事件的统计信息,其字段内容和GS_WAIT_EVENTS视图相同。需要有系统管理员权限才可以访问此视图。 表1 PGXC_WAIT_EVENTS字段 名称 类型 描述 nodename
语句预估执行时间,单位为毫秒。 status text 语句执行结束状态:正常为finished,异常为aborted。该处记录的语句状态应为数据库服务端执行状态,当服务器端执行成功,结果集返回时报错,该语句应为finished。 abort_info text 语句执行结束状态为aborted时显示异常信息。
案例:调整局部聚簇键 局部聚簇 (Partial Cluster Key,简称PCK),列存储下一种通过min/max稀疏索引实现基表快速扫描的索引技术。Partial Cluster Key可以指定多列,但是一般不建议超过2列。PCK适用于列存大表点查询加速。 优化前 创建一个
将导出文件发送至指定目录文件夹。如果这里省略,则使用标准输出。 -f /home//backup/MPPDB_table_backup -p 指定服务器所监听的TCP端口或本地Unix域套接字后缀,以确保连接。 -p 8000 -h “集群地址”如果通过公网地址连接,请指定为集群“公网访
普通用户创建或删除GDS/OBS外表语句时报错,提示没有权限或权限不足 问题现象 创建GDS或OBS外表语句时,管理员用户可以执行成功,但普通用户执行时报错“ERROR: permission denied to create foreign table in security mode
创建和管理GaussDB(DWS)分区表 分区表就是把逻辑上的一张表根据分区策略分成几张物理块库进行存储,这张逻辑上的表称之为分区表,物理块称之为分区。分区表是一张逻辑表,不存储数据,数据实际是存储在分区上的。当进行条件查询时,系统只会扫描满足条件的分区,避免全表扫描,从而提升查询性能。
DBMS_RANDOM 接口介绍 高级功能包DBMS_RANDOM支持的所有接口请参见表1。 表1 DBMS_RANDOM接口参数说明 接口名称 描述 DBMS_RANDOM.SEED 设置一个随机数的种子。 DBMS_RANDOM.VALUE 生成一个大小介于指定的low及high之间的随机数。
DBMS_JOB 接口介绍 高级功能包DBMS_JOB支持的所有接口请参见表1。 表1 DBMS_JOB 接口名称 描述 DBMS_JOB.SUBMIT 提交一个定时任务。作业号由系统自动生成。 DBMS_JOB.SUBMIT_NODE 提交一个定时任务。执行节点由用户指定,作业号由系统自动生成。
算子级调优 算子级调优介绍 一个查询语句要经过多个算子步骤才会输出最终的结果。由于个别算子耗时过长导致整体查询性能下降的情况比较常见。这些算子是整个查询的瓶颈算子。通用的优化手段是EXPLAIN ANALYZE/PERFORMANCE命令查看执行过程的瓶颈算子,然后进行针对性优化。
数据倾斜调优 数据倾斜问题是分布式架构的重要难题,它破坏了MPP架构中各个节点对等的要求,导致单节点(倾斜节点)所存储或者计算的数据量远大于其他节点,所以会造成以下危害: 存储上的倾斜会严重限制系统容量,在系统容量不饱和的情况下,由于单节点倾斜的限制,使得整个系统容量无法继续增长。
优化器参数调整 本节将介绍影响GaussDB(DWS) SQL调优性能的优化器配置参数,配置方法参见设置GUC参数。 表1 CN配置参数 参数/参考值 描述 enable_nestloop=on 控制查询优化器对嵌套循环连接(Nest Loop Join)类型的使用。当设置为“on”后,优化器优先使用Nest
动态调用存储过程 动态调用存储过程必须使用匿名的语句块将存储过程或语句块包在里面,使用EXECUTE IMMEDIATE…USING语句后面带IN、OUT来输入、输出参数。 语法 语法请参见图1。 图1 call_procedure::= using_clause子句的语法参见图2。