检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
GaussDB(DWS) Database和Schema设计规则 GaussDB(DWS)中可以使用Database和Schema实现业务的隔离,两者区别在于Database的隔离更加彻底,各个Database之间共享资源极少,可实现连接隔离、权限隔离等,Database之间无法
GaussDB(DWS)表设计规则 GaussDB(DWS)是分布式架构。数据分布在各个DN上。总体上讲,良好的表设计需要遵循以下原则: 【关注】将表数据均匀分布在各个DN上。数据均匀分布,可以防止数据在部分DN上集中分布,从而导致因存储倾斜造成集群有效容量下降。通过选择合适的分布列,可以避免数据倾斜。
JDBC配置数据库第三方连接池 背景信息 由于GaussDB(DWS)当前没有自己的JDBC连接池,且继承于PG的连接池已下线,因此GaussDB(DWS)建议使用第三方的druid、Hikari CP、dbcp2等连接池。 JDBC继承于PG的连接池已下线,不推荐使用。 下述J
GaussDB(DWS)约束设计规则 DEFAULT和NULL约束 【建议】如果能够从业务层面补全字段值,则不建议使用DEFAULT约束,避免数据加载时产生不符合预期的结果。 【建议】给明确不存在NULL值的字段加上NOT NULL约束,优化器会在特定场景下对其进行自动优化。 【
案例:设置cost_param对查询性能优化 cost_param参数用于控制在特定的客户场景中,使用不同的估算方法使得估算值与真实值更接近。此参数可以同时控制多种方法,与某一方法对应的位做与操作,不为0表示该方法被选择。 场景一:优化前 cost_param的bit0(set
GS_WLM_USER_RESOURCE_HISTORY GS_WLM_USER_RESOURCE_HISTORY系统表存储与用户使用资源相关的信息,该表在CN和DN上均存有数据。该系统表的每条记录都是对应时间点某用户的资源使用情况,包括:内存、CPU核数、存储空间、临时空间、算
常运行。备升主期间正在运行的作业会失败;备升主后启动的作业不会再受影响。如果要做到DN主备切换过程中,上层业务不感知,可参考此示例构建业务层SQL重试机制。 以下用例以gsjdbc4.jar为例,如果要使用gsjdbc200.jar,请替换驱动类名(将代码中的“org.postgresql”替换成“com
Windows下配置数据源 Windows操作系统自带ODBC数据源管理器,无需用户手动安装管理器便可直接进行配置。 操作步骤 替换客户端GaussDB(DWS)驱动程序。 将GaussDB-8.1.3-Windows-Odbc.tar.gz解压后,根据需要,单击psqlodbc
配置JDBC连接(使用负载均衡方式) 背景信息 很多用户在使用JDBC连接集群时只连接集群的一个CN,这就导致单个CN压力较大并且别的CN资源浪费,并且这种方式还有单点故障导致连接不可用的风险。 用户可使用JDBC连接多个CN避免以上问题。主要有以下三种方式: 使用ELB连接集群
配置JDBC连接(使用IAM认证方式) 概述 GaussDB(DWS)提供了使用IAM认证方式访问数据库的功能。当使用JDBC应用程序连接集群时,您可以在JDBC连接中配置IAM用户名及其用户凭证等信息,在连接数据库时系统就会自动生成临时数据库凭证,从而成功连接到数据库。 当前仅支持1
Join方式的Hint 功能描述 指明Join使用的方法,可以为Nested Loop,Hash Join和Merge Join。 语法格式 1 [no] nestloop|hashjoin|mergejoin([@block_name] table_list) 参数说明 no表示hint的join方式不使用。
by或distinct中的列序号或列名来表示,count(distinct)中的列只能通过列名指定。 对于多层的查询,可以在每层指定对应层的分布列hint,只在当前层生效。 指定的count(distinct)列仅针对生成双层hashagg的计划时才生效,否则指定的分布列无效。 指定了分布列
JDBC包与驱动类 JDBC包 从管理控制台下载包名为dws_8.1.x_jdbc_driver.zip。 请参见下载JDBC或ODBC驱动。 解压后有两个JDBC的驱动jar包: gsjdbc4.jar:与PostgreSQL保持兼容的驱动包,其中类名、类结构与PostgreS
Hint仅支持在SELECT关键字后通过如下形式指定: 1 /*+ <plan hint>*/ 可以同时指定多个hint,之间使用空格分隔。hint只能hint当前层的计划,对于子查询计划的hint,需要在子查询的select关键字后指定hint。 例如: 1 select /*+ <plan_hint1>
自定义GaussDB(DWS)外部函数(pgSQL/Java)使用规则 【关注】Java UDF可以实现一些java逻辑计算,禁止在Java UDF中封装业务。 【关注】禁止在Java函数中使用任何方式连接数据库,包括但不限于JDBC。 【关注】只能选择下表中的数据类型,不支持自定义类型、复杂数据类型(Java
ODBC包及依赖的库和头文件 从管理控制台下载ODBC的软件包。 请参见下载JDBC或ODBC驱动。 Linux下的ODBC包 从软件包中获取,包名为dws_8.x.x_odbc_driver_for_xxx_xxx.zip。Linux环境下,开发应用程序要用到unixODBC提供的头文件(sql
GaussDB(DWS) Database和Schema设计规则 GaussDB(DWS)中可以使用Database和Schema实现业务的隔离,区别在于Database的隔离更加彻底,各个Database之间共享资源极少,可实现连接隔离、权限隔离等,Database之间无法直接
GaussDB(DWS)视图和关联表设计规则 视图设计 【建议】除非视图之间存在强依赖关系,否则不建议视图嵌套。 【建议】视图定义中尽量避免排序操作。 关联表设计 【建议】表之间的关联字段应该尽量少。 【建议】关联字段的数据类型应该保持一致。 【建议】关联字段在命名上,尽可能体现
GaussDB(DWS)在CPU核数、内存相同的情况下,小规格多节点与大规格三节点集群如何选择? 小规格多节点: 如果数据量不大、集群节点数量需要伸缩,但不能忍受太高的成本,可以选择小规格多节点集权。 例如,规格为8核32G的小规格集群(dwsx2.h.2xlarge.4.c6)
步骤2:测试初始表结构下的系统性能并建立基线 在优化表结构前后,请测试和记录以下详细信息以对比系统性能差异: 数据加载时间。 表占用的存储空间大小。 查询性能。 本次实践中的示例基于使用8节点的dws.d2.xlarge集群。因为系统性能受到许多因素的影响,即使您使用相同的集群配置,结果也会有所不同。