检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
u1; 授予u2通过v2视图查询省份2数据的权限: 1 GRANT SELECT ON v2 TO u2; 查询结果验证 切换到u1账号连接集群。 1 SET ROLE u1 PASSWORD '*********'; 查询v1视图,u1仅能查询到视图v1数据。 1 2 3 4
算子级调优 算子级调优介绍 一个查询语句要经过多个算子步骤才会输出最终的结果。由于个别算子耗时过长导致整体查询性能下降的情况比较常见。这些算子是整个查询的瓶颈算子。通用的优化手段是EXPLAIN ANALYZE/PERFORMANCE命令查看执行过程的瓶颈算子,然后进行针对性优化。
算子级调优 算子级调优介绍 一个查询语句要经过多个算子步骤才会输出最终的结果。由于个别算子耗时过长导致整体查询性能下降的情况比较常见。这些算子是整个查询的瓶颈算子。通用的优化手段是EXPLAIN ANALYZE/PERFORMANCE命令查看执行过程的瓶颈算子,然后进行针对性优化。
referenced in equivalence conditions with const value. errhint:请使用EXPLAIN命令查看更多的详细信息。 level: ERROR 父主题: 安全
设置输入参数 切换至“场景示例”页签,用户可在场景示例中查看本服务更详细的场景SDK使用方法。 图3 场景示例 SDK列表 表1提供了GaussDB(DWS)支持的SDK列表,您可以在GitHub仓库查看SDK更新历史、获取安装包以及查看指导文档。 表1 表1 GaussDB(DWS)支持的SDK列表
终止正在执行的查询后,正在执行的SQL语句会停止执行。 如果某查询被终止,该查询对数据库所做的变更会被撤销。该查询后的查询不会执行。 以下情况查询无法终止,“结果”页签显示该查询的执行结果: 服务器已执行完毕该查询,正在准备生成结果。 服务器已执行完毕该查询,查询结果正在从服务器传送至Data
入命令。 如果仅需要查看非空闲的查询语句,则使用如下命令查看: 1 SELECT datname, usename, state FROM pg_stat_activity WHERE state != 'idle'; 分析长时间运行的查询语句状态。 若查询语句处于正常状态,则等待其执行完毕。
入命令。 如果仅需要查看非空闲的查询语句,则使用如下命令查看: 1 SELECT datname, usename, state FROM pg_stat_activity WHERE state != 'idle'; 分析长时间运行的查询语句状态。 若查询语句处于正常状态,则等待其执行完毕。
操作会产生大量的磁盘页面碎片,从而逐渐降低查询的效率,需要将磁盘页面碎片恢复并交还操作系统,即VACUUM FULL操作,这种场景下需要查找出哪些表执行过UPDATE; 判断一张表是否是维度表,是否可以从Hash表变更为复制表,可以查看这张表是否执行过UPDATE或DELETE,
登录MRS管理控制台。 选择“集群列表 > 现有集群”,单击要查看的集群名称,进入集群基本信息页面。 单击“文件管理”,选择“HDFS文件列表”。 进入您要导入到GaussDB(DWS)集群的数据的存储目录,并记录其路径。 图1 在MRS上查看数据存储路径 创建外表。 SERVER名字填写10
上一次成功回放的开始时间。 lastendtime timestamp with time zone 上一次成功回放的结束时间。 应用示例 在容灾集群上查看备表回放状态: 1 2 3 4 5 SELECT * FROM pg_fine_dr_info; relid | lastcsn | lastxmin
行数估算过小,优化器选择走NestLoop导致性能下降 问题现象 查询语句执行慢,卡住无法返回结果。SQL语句的特点是2~3张表left join,然后通过SELECT查询结果,执行计划如下: 原因分析 优化器在选择执行计划时,对结果集评估较小,导致执行计划走了NestLoop,性能下降。
GAUSS-03260 GAUSS-03251: "time out of range" SQLSTATE: 22008 错误原因:越界。 解决办法:查看原始数据。 GAUSS-03252: "'time' units '%s' not recognized" SQLSTATE: 22023
PLATE1)执行删除操作,系统做了保护。如果想查看当前服务中有哪几个数据库,可以用gsql的\l命令查看。 如果有用户正在与要删除的数据库连接,则删除操作失败。如果要查看当前存在哪些数据库连接,可以通过视图v$session查看。 不能在事务块中执行DROP DATABASE命令。
PLATE1)执行删除操作,系统做了保护。如果想查看当前服务中有哪几个数据库,可以用gsql的\l命令查看。 如果有用户正在与要删除的数据库连接,则删除操作失败。如果要查看当前存在哪些数据库连接,可以通过视图v$session查看。 不能在事务块中执行DROP DATABASE命令。
3及以上集群版本支持。 实时查询功能默认不开启,启动实时查询功能需要在“监控设置 > 监控采集”页面打开“实时查询监控”指标项,操作详情请参见监控采集。开启实时查询后可能会导致数据量过大,请谨慎操作。 历史查询功能默认不开启,启动历史查询功能需要在“监控设置 > 监控采集”页面打开“历史查询监控”指
TABLE 删除表 DROP TABLE 删除表的所有数据 TRUNCATE 定义分区表 分区表是一种逻辑表,数据是由普通表存储的,主要用于提升查询性能。所涉及的SQL语句,请参考下表。 表4 分区表定义相关SQL 功能 相关SQL 创建分区表 CREATE TABLE PARTITION
以下以零售百货公司标准查询为例,演示在GaussDB(DWS) 中进行的基本数据查询。 在进行数据查询之前,请先执行“Analyze”命令生成与数据库表相关的统计信息。统计信息存储在系统表PG_STATISTIC中,执行计划生成器会使用这些统计数据,以生成最有效的查询执行计划。 查询示例如下:
未分区剪枝导致SQL查询慢 问题现象 SQL语句查询慢,查询的分区表总共185亿条数据,查询条件中没有涉及分区键。 1 2 SELECT passtime FROM table where passtime<'2020-02-19 15:28:14' and passtime>'2020-02-18
GAUSS-02844: "numeric field overflow" SQLSTATE: 22003 错误原因:数据越界。 解决办法:查看原始数据大小。 GAUSS-02845: "invalid input syntax for type double precision: