检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
个外部服务器。因此,如果您希望在默认数据库postgres中创建外表读取MRS数据,可以跳过本章节。 如果您希望使用普通用户在自定义数据库中创建外表读取MRS数据,必须先在自定义数据库中手动创建一个外部服务器。本章节将为您介绍,如何使用普通用户在自定义数据库中创建外部服务器。步骤如下:
执行SQL时出现表死锁,提示LOCK_WAIT_TIMEOUT锁等待超时 问题现象 执行SQL时出现LOCK_WAIT_TIMEOUT锁等待超时的错误。 原因分析 锁等待超时一般是因为有其他的SQL语句已经持有了锁,当前SQL语句需要等待持有锁的SQL语句执行完毕释放锁之后才能执
显示查询在计划节点上的执行时间。 Contribution (%) 显示查询在计划节点上的执行时间占整个查询执行时间的百分比。 Self Cost 显示在计划节点上执行查询的“Total Cost”,即为所有子节点的总开销。 Total Cost 显示在计划节点上执行查询所消耗的总成本。
执行计划算子 算子介绍 SQL执行计划中每一个步骤为一个数据库运算符,也叫作一个执行算子。GaussDB(DWS)中算子是基本的数据处理单元,合理地组合算子、优化算子的顺序和执行方式,可以提升数据的处理效率。 GaussDB(DWS)算子可分为:扫描算子、控制算子、物化算子、连接算子、其他算子等。
执行计划算子 算子介绍 SQL执行计划中每一个步骤为一个数据库运算符,也叫作一个执行算子。GaussDB(DWS)中算子是基本的数据处理单元,合理地组合算子、优化算子的顺序和执行方式,可以提升数据的处理效率。 GaussDB(DWS)算子可分为:扫描算子、控制算子、物化算子、连接算子、其他算子等。
根据规则把“语义解析”的输出等价转化为执行上更为优化的结构。 4、查询优化 根据“查询重写”的输出和数据库内部的统计信息规划SQL语句具体的执行方式,也就是执行计划。统计信息和GUC参数对查询优化(执行计划)的影响,请参见调优手段之统计信息和调优手段之GUC参数。 5、查询执行 根据“查询优化”规划的执行路径执
根据规则把“语义解析”的输出等价转化为执行上更为优化的结构。 4、查询优化 根据“查询重写”的输出和数据库内部的统计信息规划SQL语句具体的执行方式,也就是执行计划。统计信息和GUC参数对查询优化(执行计划)的影响,请参见调优手段之统计信息和调优手段之GUC参数。 5、查询执行 根据“查询优化”规划的执行路径执
执行查询与结果收集 通过编写shell脚本自动化执行查询和结果收集 父主题: 测试方法
执行数据导入 直接查询外表查看MRS数据源的数据 如果数据量较少,可直接使用SELECT查询外表,即可查看到MRS数据源的数据。 执行以下命令,则可以从外表查询数据: 1 SELECT * FROM foreign_product_info; 查询结果显示如数据文件中所示的数据
PG_FOREIGN_SERVER PG_FOREIGN_SERVER系统表存储外部服务器定义。一个外部服务器描述了一个外部数据源,例如一个远程服务器。外部服务器通过外部数据封装器访问。 表1 PG_FOREIGN_SERVER字段 名字 类型 引用 描述 oid oid - 行
视图查询时执行失败 问题现象 在连接集群数据库之后,使用某个视图执行查询,可能会操作失败,提示错误信息如下: [GAUSS-01850] : object with oid 16420 is not a partition object 原因分析 此视图是建立分区表的某个分区上的
PG_FOREIGN_SERVER PG_FOREIGN_SERVER系统表存储外部服务器定义。一个外部服务器描述了一个外部数据源,例如一个远程服务器。外部服务器通过外部数据封装器访问。 表1 PG_FOREIGN_SERVER字段 名字 类型 引用 描述 oid oid - 行
性能优于in条件,最优的执行计划应该是将“in 常量”转化为join操作。 分析过程 打印语句的执行计划: 执行计划中,in条件还是作为普通的过滤条件存在。这种场景下,join操作的性能优于in条件,最优的执行计划应该是将“in 常量”转化为join操作。 处理方法 GUC参数q
创建弹性云服务器ECS 参考《弹性云服务器用户指南》创建弹性云服务器,创建的规格可参见下表。 由于TPC-DS、TPC-H数据集占用空间较大,以TPC-DS 1000X和TPC-H 1000X为例,分别占用930GB和1100GB。请创建弹性云服务器时,根据需求添加数据盘,举例如下:
执行动态查询语句 介绍执行动态查询语句。GaussDB(DWS)提供两种方式:使用EXECUTE IMMEDIATE、OPEN FOR实现动态查询。前者通过动态执行SELECT语句,后者结合了游标的使用。当需要将查询的结果保存在一个数据集用于提取时,可使用OPEN FOR实现动态查询。
多个表同时进行MERGE INTO UPDATE时,执行失败 问题现象 多个表同时进行MERGE INTO UPDATE时,执行失败。 原因分析 查看日志,发现有如下错误日志: 1 dn_6007_6008 YY003 79375943437085786 [BACKEND] DETAIL:
L语句执行完毕释放锁之后才能执行。当申请的锁等待时间超过GUC参数lockwait_timeout的设定值时,系统会报LOCK_WAIT_TIMEOUT的错误。 执行VACUUM FULL命令时出现报错的原因一般为执行命令超时,如果对整个数据库执行VACUUM FULL执行时间较长可能会超时。
执行动态查询语句 介绍执行动态查询语句。GaussDB(DWS)提供两种方式:使用EXECUTE IMMEDIATE、OPEN FOR实现动态查询。前者通过动态执行SELECT语句,后者结合了游标的使用。当需要将查询的结果保存在一个数据集用于提取时,可使用OPEN FOR实现动态查询。
执行业务报错could not determine which collation to use for string hashing 问题现象 执行SELECT查询时报错could not determine which collation to use for string hashing。
执行Plan Hint的Scan方式不生效 问题现象 DWS中指定了Plan Hint的scan方式,但是并未生效。 原因分析 Plan Hint语法使用错误。Plan Hint的Scan语法应在SELECT语句中增加“/*+ indexscan(table_name index_name)