




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库设计规范和设计工具Mysql设计、使用及数据字典工具规范化设计规范行业规范3大范式第一范式(1NF)无重复的列 - 一张表不能够有相同的字段,这是所有范式的基础第二范式(2NF)属性完全依赖于主键 消除部分子函数依赖 - 一张表必须要有唯一标示第三范式(3NF)属性不依赖于其它非主属性 消除传递依赖 反范式设计(冗余结构设计) - 提升性能的手段从数据库的设计角度遵循范式没有什么问题,但是在实际的项目设计中会出现很大的问题,需要额外查询更多字表。反范式设计的目的:用空间来换取时间,把数据冗余在多个表中,当查询时可以减少或者是避免表之间的关联。数据冗余可以带来很好的读取性能,比如 NOSQL模型大量使用反范式设计。参考/zhangminemail/article/details//CareySon/archive/2010/02/16/.html/binyue/p/.html第三方规范sharding-jdbc Sql书写规范分片键必须放在where条件第一位(有可能是新版本bug);查询分片必须携带分片键,例如分片键是CREATE_DATE,分片前是SELECT ID FROM TABLE WHERE ID=?,分片后查询需要SELECT ID FROM TABLE WHERE CREATE_DATE=? AND ID=?。不携带分片键仍然可以获得正确结果,但是会进行全表查询,性能低下;sharding-jdbc 功能及限制http:/dangdangdotcom.github.io/sharding-jdbc/01-start/features/http:/dangdangdotcom.github.io/sharding-jdbc/01-start/limitations/http:/dangdangdotcom.github.io/sharding-jdbc/01-start/sql-supported/我们的规范说明:本规范适用于新的设计,已存在的历史设计暂不做调整。本规范适用于wdzj oltp事务处理型应用,不适用于olap分析型应用。 DB设计 ER图创建和维护ER图和数据字典设计ER图有助于思考实体与实体关系,ER图能明确表达实体关系 (1:1 , 1:N , M:N)在DB设计阶段要考虑业务场景、及相应的查询语句和索引创建和维护数据字典: 必须含有表定义说明,字段含义说明 字段枚举值和含义 需要完整罗列,填写到 comment中分库分表设计 设计阶段要考虑业务的数据量,进行扩展性、hash算法设计,分片技术选型设计事务型应用 跟钱有关的应用必须使用事务 需要考虑锁的设计 选择 innodb 乐观锁、行锁、避免死锁,跨DB事务 最终一致性善用冗余设计 如评论量、浏览量、 表定义表名命名 统一小写、 有意义的名字前缀:表名不加前缀(不同业务应该分开存储到不同的库中,如果实际中单个库涉及到多个业务,使用业务类型作为前缀,如 hongbao_ 红包业务的表,openplat_ 开放平台业务的表)、索引idx_、视图前缀v_、存储过程前缀sp_、触发器前缀tr_;表定义 必须含有comment说明注释;表定义 必须有明确的字符集UTF-8 ;表定义 必须有明确的存储引擎 (MyISAM、InnoDB等);必须有明确的主键字段定义、约束定义、外键定义 字段定义字段命名 统一小写、用有意义的英文或拼音命名不允许非null字段,确定default取值;必须有含义说明、完整的字段枚举值和含义 在comment说明注释;必须有明确的字符集UTF-8 ; 类型选择能使用字符串类型(string)就不用文本类型(text)能使用数值型(int)的就不用字符串类型(string)int(10) - 不能限定长度能使用时间类型(date,time,datetime)的就不用字符串类型能使用小值类型(tinyint,smallint,mediumint,int,bigint)的就不用大值类型(tinyint,smallint,mediumint,int,bigint)善用数值类型,unsigned 、decimal用于精度要求非常高的类型,如decimal(12,2)善用二进制类型 binary慎用timestamp、存储过程、触发器、like、正则、 避免复杂的SQLo 禁止用子查询o 表连接最多两层o 分页计数 count (子查询 - 只需要where部分)o 禁止使用mysql函数o 性能不佳的情况将join拆分为多个单表查询后台新闻分页查询 - SELECT REPLYCOUNT, TYPENAME, SHORTLINK, TYPEID, NEWSID, NEWSIDX, RESOURCEFROM, DISPLAYFLG, TOPFLG, PUBLISHDATE, TITLE, AUTHOR, SUMMARY, ORIGINALFLG, WDZJONLY, SUBJECTTYPE, HITS, PICURL, OUTHTMLFILEURL, VERIFYFLG, VERIFYUSERNAME, VERIFYUSERID, VERIFYDATE, KEYWORDS, DESCRIPTION, STAYLONG, SEOTITLE, INSUSERNAME, WDZJUSERLEVELLABEL FROM ( SELECT T.REPLYCOUNT AS REPLYCOUNT, T1.TYPENAME, T1.SHORTLINK, T.TYPEID, T.NEWSID, T.NEWSIDX, T.RESOURCEFROM, T.DISPLAYFLG, T.TOPFLG, T.PUBLISHDATE, T.TITLE, T.SHORTTITLE, T.AUTHOR, T.SUMMARY, T.ORIGINALFLG, T.WDZJONLY, T.SUBJECTTYPE, T.HITS, T.RECOMMEND, T.PICURL, T.OUTHTMLFILEURL, T.VERIFYFLG, T.VERIFYUSERNAME, T.VERIFYUSERID, T.VERIFYDATE, T.KEYWORDS, T.DESCRIPTION, T.STAYLONG, T.SEOTITLE, T.INSUSERNAME, T.WDZJUSERLEVELLABEL FROM WDZJNEWSTYPE T1, WDZJNEWS T WHERE T.TYPEID = T1.TYPEID AND T.APPNEWSFLG = 0 AND T.NEWSFLG = 0 AND T.TYPEID = 47 AND ( T1. LEVEL = 0,22,47 OR T1. LEVEL LIKE 0,22,47,% ) AA ORDER BY AA.NEWSIDX DESC, AA.PUBLISH_DATE DESCselect title from WDZJNEWS where typeid regexp 4$; #查询类型id为4的新闻 慎用全表扫描档案信批报告 取数没有分页 , 现在是取出所有数据在内存分页 - 取合适大小的分页数量 ( 全量静态化 合适大小 1000条,常规业务应该按照实际恩也大小查询 如 20条) 善用 预处理查询 , 禁用拼sql方式规避sql注入 、 sql语句缓存提升性能 SQL性能查询计划分析explain慢查询分析 mysql记录慢查询( 运维周期提供慢查询记录邮件,每2周解决top10的慢查询 ),应用记录慢查询索引使用 索引使用生产环境db更新运维更新不符合以下规范的打回修改 含有null字段; 没有default value缺省取值; 表定义 无comment说明注释; 表定义 缺少明确的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年新疆克州州直机关遴选公务员事业单位选聘工作人员考试真题
- 2024年贵州六枝特区招聘事业单位工作人员考试真题
- 威尼斯小艇的课件课
- 工业安全技术员知识培训课件
- 平面向量的加法课件
- FGGH-生命科学试剂-MCE
- exo-α-1-2-3-Mannosidases-Bacteroides-thetaiotaomicron-生命科学试剂-MCE
- 滨州事业单位笔试真题2025
- 夷陵区安全管理培训课件
- 环保产业园2025年循环经济发展模式下的可持续发展战略报告
- 人工智能与虚拟现实技术的融合应用
- UL508标准中文版-2018工控产品UL中文版标准
- GB/Z 37551.102-2024海洋能波浪能、潮流能及其他水流能转换装置第102部分:用已有运行测量数据评估波浪能转换装置在另一布放地点的发电性能
- 电力线路常见故障培训
- 新质生产力:未来经济发展的重要引擎
- 机油化学品安全技术(MSDS)说明书
- 一年级开学家长会 课件
- 第4课 用联系的观点看问题 第一框
- 2024版万达商业广场管理合同书模板
- 胖东来运营管理-管理人员规划
- 婴幼儿常见睡眠问题及对策
评论
0/150
提交评论