检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
对于提升的子查询,skew hint支持直接使用子查询名进行hint。如果明确子查询提升后的哪一个基表存在倾斜,则直接使用基表进行hint的可用性更高。 无论对于表或列,若存在别名,则优先使用别名进行hint。 示例 指定单表倾斜 原query中进行hint。 采用如下查询进行skew hint倾斜调
如果表存在别名应优先使用别名进行hint。 index表示使用indexscan或indexonlyscan的hint时,指定的索引名称,当前只能指定一个。 对于indexscan或indexonlyscan,只有hint的索引属于hint的表时,才能使用该hint。 scan
rows(table_list #|+|-|* const) 参数说明 #,+,-,*,进行行数估算hint的四种操作符号。#表示直接使用后面的行数进行hint。+,-,*表示对原来估算的行数进行加、减、乘操作,运算后的行数最小值为1行。table_list为hint对应的单表或多
API,可以为多种关系数据库提供统一访问接口,应用程序可基于它操作数据。 GaussDB(DWS)库提供了对JDBC 4.0特性的支持,需要使用JDK1.6及以上版本编译程序代码,不支持JDBC桥接ODBC方式。JDBC开发应用程序的具体流程如下: 图1 采用JDBC开发应用程序的流程
API,可以为多种关系数据库提供统一访问接口,应用程序可基于它操作数据。 GaussDB(DWS)库提供了对JDBC 4.0特性的支持,需要使用JDK1.6及以上版本编译程序代码,不支持JDBC桥接ODBC方式。JDBC开发应用程序的具体流程如下: 图1 采用JDBC开发应用程序的流程
调用executeBatch()方法并不会清除batch。用户必须显式使用clearBatch()清除 。 在添加了一个batch的绑定变量后,用户若想重用这些值(再次添加一个batch),无需再次使用set*()方法 。 以下方法是从java.sql.Statement继承
TargetValuePtr指向缓冲区的长度,以字节为单位。 StrLen_or_IndPtr 输出参数:缓冲区的长度或指示器指针。若为空值,则未使用任何长度或指示器值。 返回值 SQL_SUCCESS:表示调用正确。 SQL_SUCCESS_WITH_INFO:表示会有一些警告信息。
i) */ i_product_name product_name ... 该hint表示:item表使用索引i进行扫描。生成计划如下所示: 父主题: 使用Plan Hint进行调优
调用executeBatch()方法并不会清除batch。用户必须显式使用clearBatch()清除 。 在添加了一个batch的绑定变量后,用户若想重用这些值(再次添加一个batch),无需再次使用set*()方法 。 以下方法是从java.sql.Statement继承
redistribute ((*) (columns)) 参数说明 no表示hint的stream方式不使用,当指定AGG分布列的hint时指定no关键字无效。 table_list为进行stream操作的单表或多表join结果集,见参数说明。 当指定分布列的hint时,*为固定写法,不支持指定表名。
对于提升的子查询,skew hint支持直接使用子查询名进行hint。如果明确子查询提升后的哪一个基表存在倾斜,则直接使用基表进行hint的可用性更高。 无论对于表或列,若存在别名,则优先使用别名进行hint。 示例 指定单表倾斜 原query中进行hint。 采用如下查询进行skew hint倾斜调
该hint表示:生成store_sales,store_returns和item三表的结果集时,最后的两表关联使用nestloop。生成计划如下所示: 父主题: 使用Plan Hint进行调优
supported”,参见以下操作: 新建一个数据库用户用于连接,或者重置准备使用的数据库用户的密码。 如果您使用的是管理员账号,参见重置密码。 如果是普通用户,可以先通过其他客户端工具(例如Data Studio)连接数据库后,使用ALTER USER语句来修改密码。 再尝试连接数据库。 需要执行以上操作的原因:
supported”,参见以下操作: 新建一个数据库用户用于连接,或者重置准备使用的数据库用户的密码。 如果您使用的是管理员账号,参见重置密码。 如果是普通用户,可以先通过其他客户端工具(例如Data Studio)连接数据库后,使用ALTER USER语句来修改密码。 再尝试连接数据库。 需要执行以上操作的原因:
经过实际数据查证,customer_address的两个join列的不同值数目较少,使用其进行join容易出现数据倾斜,故把customer_address放到最后进行join。使用如下的hint进行调优后,计划如下,运行时间116s: 1 2 3 4 select avg(netpaid)
disable 否 不使用SSL安全连接。 allow 可能 如果数据库服务器要求使用,则可以使用SSL安全加密连接,但不验证数据库服务器的真实性。 prefer 可能 如果数据库支持,那么首选使用SSL安全加密连接,但不验证数据库服务器的真实性。 require 是 必须使用SSL安全连
TargetValuePtr指向缓冲区的长度,以字节为单位。 StrLen_or_IndPtr 输出参数:缓冲区的长度或指示器指针。若为空值,则未使用任何长度或指示器值。 返回值 SQL_SUCCESS:表示调用正确。 SQL_SUCCESS_WITH_INFO:表示会有一些警告信息。
单层方括号[]可以和单层圆括号()混合使用,指定任意层的内外表顺序。不支持单层[]和双层(())一起使用。 参数说明 join_table_list 为表示表join顺序的hint字符串,可以包含当前层的任意个表(别名),或对于子查询提升的场景,也可以包含子查询的hint别名,同时任意表可以使用括号指定优先级,表之间使用空格分隔。
e.printStackTrace(); } } } 通过本地文件导入导出数据 在使用JAVA语言基于GaussDB(DWS)进行二次开发时,可以使用CopyManager接口,通过流方式,将数据库中的数据导出到本地文件或者将本地文件导入数据库中,文件格式支持CSV、TEXT等格式。
e.printStackTrace(); } } } 通过本地文件导入导出数据 在使用JAVA语言基于GaussDB(DWS)进行二次开发时,可以使用CopyManager接口,通过流方式,将数据库中的数据导出到本地文件或者将本地文件导入数据库中,文件格式支持CSV、TEXT等格式。