正在生成
详细信息:
检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
基本设计规范 设计规范 规则1:禁止在数据库中存储图片、文件等大数据。图片或文件等大数据建议存储到对象存储服务中。 规则2:单行key和value数据大小最大不能超过64KB,平均大小不超过10KB。 规则3:任何表的设计都要考虑到数据的删除策略,表中的数据不能无限的增长而不删除。
设计规范 命名规范 数据库对象(库名、表名、字段名、索引名)命名建议全部使用小写字母开头,后面跟字母或者数字,数据库对象(库名、表名、字段名、索引名)名字长度建议都不要大于32字节。 数据库名称不能使用特殊字符("",.,$,\,/,*,?,~,#,:,|")和空字符\0,数据库
从命名上明确标识主键约束,例如,将主键约束命名为“PK+字段名”。 检查约束 从命名上明确标识检查约束,例如,将检查约束命名为“CK+字段名”。 父主题: 数据库对象设计
表设计 GaussDB是分布式架构。数据分布在各个DN上。总体上讲,良好的表设计需要遵循以下原则: 【关注】将表数据均匀分布在各个DN上。数据均匀分布,可以防止数据在部分DN上集中分布,从而导致因存储倾斜造成集群有效容量下降。通过选择合适的分布列,可以避免数据倾斜。 【关注】将表
表设计 总体上讲,良好的表设计需要遵循以下原则: 减少需要扫描的数据量。通过分区表的剪枝机制可以大幅减少数据的扫描量。 尽量减少随机I/O。通过聚簇可以实现热数据的连续存储,将随机I/O转换为连续I/O,从而减少扫描的I/O代价。 选择分区方案 当表中的数据量很大时,应当对表进行分区,一般需要遵循以下原则:
从命名上明确标识主键约束,例如,将主键约束命名为“PK+字段名”。 检查约束 从命名上明确标识检查约束,例如,将检查约束命名为“CK+字段名”。 父主题: 数据库对象设计
从命名上明确标识主键约束,例如,将主键约束命名为 “PK+字段名”。 检查约束 从命名上明确标识检查约束,例如,将检查约束命名为 “CK+字段名”。 父主题: 数据库对象设计
表设计 GaussDB是分布式架构。数据分布在各个DN上。总体上讲,良好的表设计需要遵循以下原则: 将表数据均匀分布在各个DN上。数据均匀分布,可以防止数据在部分DN上集中分布,从而导致因存储倾斜造成集群有效容量下降。通过选择合适的分布列,可以避免数据倾斜。 将表的扫描压力均匀分
【关注】行存表支持检查约束,而列存表不支持。 【建议】从命名上明确标识检查约束,例如,将检查约束命名为“CK+字段名”。 父主题: 数据库对象设计
【关注】行存表支持检查约束,而列存表不支持。 【建议】从命名上明确标识检查约束,例如,将检查约束命名为 “CK+字段名”。 父主题: 数据库对象设计
ClickHouse表字段设计 规则 不允许用字符类型存放时间或日期类数据,尤其是需要对该日期字段进行运算或者比较的时候。 不允许用字符类型存放数值类型的数据,尤其是需要对该数值字段进行运算或者比较的时候。字符串的过滤效率相对于整型或者特定时间类型有下降。 建议 不建议表中存储过
表设计 GaussDB是分布式架构。数据分布在各个DN上。总体上讲,良好的表设计需要遵循以下原则: 将表数据均匀分布在各个DN上。数据均匀分布,可以防止数据在部分DN上集中分布,从而导致因存储倾斜造成集群有效容量下降。通过选择合适的分布列,可以避免数据倾斜。 将表的扫描压力均匀分
ClickHouse索引设计 一级索引设计 在建表设计时指定主键字段的建议:按查询时最常使用且过滤性最高的字段作为主键。依次按照访问频度从高到低、维度基数从小到大来排列。数据是按照主键排序存储的,查询的时候,通过主键可以快速筛选数据,合理的主键设计,能够大大减少读取的数据量,提升
DataBase设计 业务隔离设计-各业务分库设计 在业务规划时,不同业务归属于不同数据库,便于后续对应用户关联的数据库下表、视图等数据库对象权限的分离管理和维护。 业务隔离设计-不要在system库中创建业务表 system数据库是ClickHouse默认的系统数据库,默认数据库中的系统
建议系统管理员创建Schema和Database,再授予相关用户对应的权限。 Database设计建议 在实际业务中,根据需要创建新的Database,不建议直接使用数据库实例默认的postgres数据库。 一个数据库实例内,用户自定义的Database数量推荐值为3个,不建议超过10个。用户自
建议系统管理员创建Schema和Database,再赋予相关用户对应的权限。 Database设计建议 【规则】在实际业务中,根据需要创建新的Database,不建议直接使用数据库实例默认的postgres数据库。 【建议】一个数据库实例内,用户自定义的Database数量推荐值为3个,不建议超过10个
表设计 总体上讲,良好的表设计需要遵循以下原则: 【关注】减少需要扫描的数据量。通过分区表的剪枝机制可以大幅减少数据的扫描量。 【关注】尽量减少随机I/O。通过聚簇/局部聚簇可以实现热数据的连续存储,将随机I/O转换为连续I/O,从而减少扫描的I/O代价。 选择存储方案 【建议】
建议系统管理员创建Schema和Database,再授予相关用户对应的权限。 Database设计建议 在实际业务中,根据需要创建新的Database,不建议直接使用集群默认的postgres数据库。 一个集群内,用户自定义的Database数量推荐值为3个,不建议超过10个。用户自定
建议系统管理员创建Schema和Database,再授予相关用户对应的权限。 Database设计建议 在实际业务中,根据需要创建新的Database,不建议直接使用集群默认的postgres数据库。 一个集群内,用户自定义的Database数量推荐值为3个,不建议超过10个。用户自定
ClickHouse宽表设计 ClickHouse宽表设计原则 ClickHouse表字段设计 ClickHouse本地表设计 ClickHouse分布式表设计 ClickHouse分区设计 ClickHouse索引设计 父主题: ClickHouse数据库设计