检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
算子级调优 算子级调优介绍 一个查询语句要经过多个算子步骤才会输出最终的结果。由于个别算子耗时过长导致整体查询性能下降的情况比较常见。这些算子是整个查询的瓶颈算子。通用的优化手段是EXPLAIN ANALYZE/PERFORMANCE命令查看执行过程的瓶颈算子,然后进行针对性优化。
SQL查询执行流程 SQL引擎从接收SQL语句到执行SQL语句需要经历的步骤如图1和表1所示。其中,红色字体部分为DBA可以介入实施调优的环节。 图1 SQL引擎执行查询类SQL语句的流程 表1 SQL引擎执行查询类SQL语句的步骤说明 步骤 说明 1、语法&词法解析 按照约定的
如果目标数据源为云上服务,则网络互通需满足如下条件: GDS-kafka集群与云上服务处于不同区域的情况下,需要通过公网或者专线打通网络。通过公网互通时,需确保GDS-kafka集群已绑定EIP,数据源所在的主机可以访问公网且防火墙规则已开放连接端口。 GDS-kafka集群与云上服务同区域情
在左侧导航栏单击“作业管理”,进入该实例的作业管理页面。 单击指定作业名称,可以进入作业详情页面,查看该作业的相关信息,包括连接配置、服务参数配置及表/字段映射配置。 启动作业 登录GaussDB(DWS)控制台。 在左侧导航栏选择“数据 > 数据集成 > 实例管理”,进入实例管理页面。
结合OBS服务提供脚本保存功能,OBS可全局设置,将SQL语句保存成文本文件放到OBS中。 该工具仅8.1.3及以上集群版本支持。 编辑器依赖GaussDB(DWS)和OBS服务,用户首先需要有GaussDB(DWS)集群查询和OBS查询,操作等功能,同时对接CTS服务,用于开启日志进行操作类接口的事件记录。
使用GaussDB(DWS) 的ODBC驱动,SQL查询结果中字符类型的字段内容会被截断 问题现象 使用GaussDB(DWS) 的ODBC驱动,SQL查询结果中字符类型的字段内容会被截断,需通过SQL语法CAST BYTEA转成二进制才能完整取出字段信息。但是,同样的程序连接ORACLE、SQL
在Java中,读取character类型的表字段时返回类型为什么是byte? 问题现象 数据库中新建一张表,某个表字段使用character类型,在Java中读取character类型的字段时返回类型是byte。 例如,创建示例表table01: 1 2 3 4 CREATE TABLE
时间/日期操作符 用户在使用时间和日期操作符时,对应的操作数请使用明确的类型前缀修饰,以确保数据库在解析操作数的时候能够与用户预期一致,不会产生用户非预期的结果。 比如下面示例没有明确数据类型就会出现异常错误。 1 SELECT date '2001-10-01' - '7' AS
文本检索调试函数 ts_debug([ config regconfig, ] document text, OUT alias text, OUT description text, OUT token text, OUT dictionaries regdictionary[]
优化器方法配置 这些配置参数提供了影响查询优化器选择查询规划的原始方法。如果优化器为特定的查询选择的缺省规划并不是最优的,可以通过使用这些配置参数强制优化器选择一个不同的规划来临时解决这个问题。更好的方法包括调节优化器开销常量、手动运行ANALYZE、增加配置参数default_
案例:改写SQL消除in-clause 优化前 in-clause/any-clause是常见的SQL语句约束条件,有时in或any后面的clause都是常量,类似于: 1 2 3 4 select count(1) from calc_empfyc_c1_result_tmp_t1
映射管理 映射概述 在开始创建作业任务之前,还需要创建表结构映射,对应源端与目的端的数据库表结构,帮助用户更容易针对不同数据库进行数据迁移。 创建表结构映射 登录GaussDB(DWS)控制台。 在左侧导航栏选择“数据 > 数据集成 > 映射管理”,进入映射管理页面。 单击“创建表映射配置”,进入创建表映射配置页面。
CHARSET CHARSET指定表的默认字符集。GaussDB(DWS)不支持该属性修改表定义信息,DSC迁移时会将该关键字删除。 输入示例 1 2 3 4 5 6 CREATE TABLE `public`.`runoob_tbl_test`( `runoob_id`
CHECKSUM 在MySQL中,CHECKSUM表示对所有的行维护实时校验和。GaussDB(DWS)不支持该属性修改表定义信息,DSC迁移时会将该关键字删除。 输入示例 1 2 3 4 5 6 7 8 9 10 11 12 CREATE TABLE `public`
DEFAULT alter table增加列包含not null约束时,如果无default值,在MySQL中会插入默认值,而在GaussDB(DWS)中插入到非空表时会报错,因此针对常见数据类型,alter table add column包含not null约束补充默认default值(详情见表1)。
UNION UNION 是 MERGE 引擎的建表参数。通过该关键字建表类似于创建普通视图。新创建的表将在逻辑上合并UNION关键字限定的多个表的数据。DSC迁移时会将该特性转为GaussDB视图创建语句。 输入示例 1 2 3 4 5 6 7 8 9 10 11
时间/日期函数 age(timestamp, timestamp) 描述:将两个参数相减,并以年、月、日作为返回值。若相减值为负,则函数返回亦为负。 返回值类型:interval 示例: 1 2 3 4 5 SELECT age(TIMESTAMP '2001-04-10', TIMESTAMP
Roaring Bitmap函数 GaussDB(DWS)自8.1.3集群版本开始,支持高效的位图处理函数和操作符,可用于用户画像,精准营销等场景,极大的提高了查询性能。 rb_build(array) 描述:将int数组转成roaringbitmap类型。 返回值类型:roaringbitmap
Roaring Bitmap聚合函数 GaussDB(DWS)自8.1.3集群版本开始,支持高效的位图聚合函数,可用于用户画像,精准营销等场景,极大的提高了查询性能。 rb_build_agg(int) 描述:将分组内的int值聚合成一个roaringbitmap值。 返回值类型:roaringbitmap
获取残留文件列表函数 pg_get_residualfiles() 描述:用于获取当前节点的所有残留文件记录。该函数为实例级函数,与当前所在的数据库无关,可以在任意实例上运行。 返回值类型:record 返回信息如下: 表1 pg_get_residualfiles()返回字段 名称