检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
取值范围:字符串,要符合标识符的命名规范。 group_name 控制组名称。 设置控制组名称时,语法可以使用双引号,也可以使用单引号。 group_name对大小写敏感。
GaussDB(DWS) SQL开发规范 DDL操作规范 INSERT操作规范 UPDATE&DELETE操作规范 SELECT操作规范 父主题: GaussDB(DWS)开发设计建议
GaussDB(DWS)开发设计规范 GaussDB(DWS)总体开发设计规范 GaussDB(DWS)连接管理规范 GaussDB(DWS)对象设计规范 GaussDB(DWS) SQL开发规范 GaussDB(DWS)外表功能开发规范 GaussDB(DWS)存储过程开发规范
注释规范: 注释应该是有意义的,而不应是重述代码。 注释应简洁、易懂,以中文为主。为了表达准确,名词或操作上也可以使用英文。
取值范围:字符串,要符合标识符的命名规范。 group_name 控制组名称。 设置控制组名称时,语法可以使用双引号,也可以使用单引号。 group_name对大小写敏感。
取值范围:字符串,要符合标识符的命名规范。 group_name 控制组名称。 设置控制组名称时,语法可以使用双引号,也可以使用单引号。 group_name对大小写敏感。
取值范围:字符串,要符合标识符的命名规范。 group_name 控制组名称。 设置控制组名称时,语法可以使用双引号,也可以使用单引号。 group_name对大小写敏感。
【建议】给可以显式命名的约束显式命名。除了NOT NULL和DEFAULT约束外,其他约束都可以显式命名。
GaussDB(DWS)存储过程开发规范 建议5.1 避免使用复杂的存储过程,避免存储过程嵌套 违反规范的影响: 复杂和嵌套的存储过程维护成本高,故障定位难度大,恢复耗时长。 方案建议: 不使用存储过程或只使用一层存储过程,不嵌套。
GaussDB(DWS) PL/pgSQL使用规则 父主题: GaussDB(DWS)开发设计规范
GaussDB(DWS)连接管理规范 规则1.1 GaussDB(DWS)集群必须配置负载均衡 违反规则的影响: 负载不均衡导致性能问题,严重情况会导致业务中断。 CN故障场景,业务无法自恢复或恢复时间长。 方案建议: 配置ELB负载均衡,应用连接负载均衡IP。
总体开发设计规范 下表是GaussDB(DWS)开发过程中需遵循的开发设计规范全集列表,可以单击链接跳转到对应的规则下了解详细说明。
包拆分 包规范迁移为以包名命名的模式,包体中的存储过程和函数迁移为Packagename.procedurename和Packagename.funtionname。 设置pkgSchemaNaming=true后,可以进行迁移。
【建议】关联字段在命名上,尽可能体现出明显的关联关系。例如,采用同样名称来命名。 父主题: GaussDB(DWS)数据库对象设计规则
GaussDB(DWS)外表功能开发规范 规则4.1 GDS服务需单独使用服务器部署在DWS集群外 违反规范的影响: GDS如果部署在DWS集群内,会与DWS集群CN/DN节点发生资源争抢,导致双方性能同时劣化。 方案建议: GDS服务单独使用服务器部署在DWS集群外。
取值范围:字符串,要符合标识符的命名规范。 AUTHORIZATION user_name 指定模式的所有者。当不指定schema_name时,把user_name当作模式名,此时user_name只能是角色名。 取值范围:已存在的用户名/角色名。
GaussDB(DWS) JDBC配置规则 目前,GaussDB(DWS)相关的第三方工具可以通过JDBC进行连接的,此部分将介绍工具配置时的注意事项。 连接参数 【关注】第三方工具通过JDBC连接GaussDB(DWS)时,JDBC向GaussDB(DWS)发起连接请求,会默认添加以下配置参数
GaussDB(DWS) SQL编写规则 DDL 【建议】在GaussDB(DWS)中,建议DDL(建表、comments等)操作统一执行,在批处理作业中尽量避免DDL操作。避免大量并发事务对性能的影响。 【建议】在非日志表(unlogged table)使用完后,立即执行数据清理
GaussDB(DWS)表设计规则 GaussDB(DWS)是分布式架构。数据分布在各个DN上。总体上讲,良好的表设计需要遵循以下原则: 【关注】将表数据均匀分布在各个DN上。数据均匀分布,可以防止数据在部分DN上集中分布,从而导致因存储倾斜造成集群有效容量下降。通过选择合适的分布列
取值范围:字符串,要符合标识符的命名规范。 AUTHORIZATION user_name 指定模式的所有者。当不指定schema_name时,把user_name当作模式名,此时user_name只能是角色名。 取值范围:已存在的用户名/角色名。