iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >自己总结的数据库设计规范
  • 379
分享到

自己总结的数据库设计规范

2024-04-02 19:04:59 379人浏览 安东尼
摘要

总体方向思维1.数据架构和容量规划相关    a.总数据量的预估,一年或两年为期限,直接影响硬盘容量规划    b.是否关联其他数据库和环境,关联

总体方向思维

1.数据架构和容量规划相关
    a.总数据量的预估,一年或两年为期限,直接影响硬盘容量规划
    b.是否关联其他数据库和环境,关联数据会影响数据增长量
    c.数据重要性,是否需要集群,备份级别的要求,不重要数据可选择定期归档或清除旧数据,硬盘要求可降低
        ps:数据重要性大体分为:完全不可丢失,丢一些可以接受,丢一部分可以接受,全丢都不影响

2.性能相关
    a.平均活跃连接数预估,活跃连接数越多,查询也不会少,数据库压力就上来了
    b.预估QPS数据,增删查改的频率,QPS越高,数据库压力越大
    c.代码是否有轮巡和重复查询现象,太过频繁操作数据库显然也会增加压力
    d.代码是否有先查后改和没过滤条件的查询等问题逻辑,人为增加数据库压力的逻辑不可取
    e.代码是否有缓存机制,特别针对静态信息,能显著减少数据库压力,但是要看框架设计思路

3.增长量
    a.数据增长和并发增长的预估,按月和按年预估,初期压力不高可理解,但是别忘了要预估长期压力
    b.直接业务和关联业务增长的预估,算单库压力,同上,要看中长期,而关联业务附带的压力往往被忽略


设计表时要注意

4.表结构是否科学
    a.表字段避免null值出现,null值很难查询优化且占用额外的索引空间,推荐默认数字0代替null。
    b.使用合适的INT类型,而非无脑BIGINT,如果非负则加上UNSIGNED(这样数值容量会扩大一倍),当然能使用TINYINT、SMALLINT、MEDIUM_INT更好。
    c.如果只是分类字段(例如性别)或者是数据差异较少(例如月份)的字段,建议使用枚举或整型代替字符串类型
    d.尽量使用TIMESTAMP而非DATETIME,因为DATETIME会逐步退出历史
    e.单表不要有太多字段,建议在20以内,或者说是单条记录所有字段加起来控制在8K字节内,因为innodb默认一个数据页是16K,存两行数据,超过就会造成行溢出,影响性能
    f.用整型来存IP,电话号码,身F证等信息,然后代码拼接实现
    g.慎用blog/text大字段,因为容易造成内存溢出,尽量也只用在非常用查询字段,或者查询时主动隐藏该字段,按需显示
    h.慎用存储过程,触发器,函数,因为比较耗费数据库内部资源,用程序实现更好
    i.字符集,注释,字段的关联统一性,字符集和字段统一可以避免类型转换和主从报错,注释统一方便查询其含义

5.索引结构设计规范

    a.索引越多,理论上查询越快,但是占用硬盘空间也越多,数据插入越慢(写完数据还要写索引),需要慎重考虑索引的必要性
    b.不要用外键,删除和修改字段会造成关联定,异常麻烦,尽量用程序约束就足够了
    c.建立索引要注意数据差异对比,差异太少不适合建立独立索引,应和其他字段建立联合索引,但要注意最左匹配原则,避免建立重复的索引
    d.尽量避免在WHERE子句中对字段进行NULL值判断,否则将导致引擎放弃使用索引而进行全表扫描
    e.字符字段尽量只建前缀索引,且最好不要做主键,因为范围查询性能差,建议建立一个自增整型字段做主键,字符字段做唯一索引
    f.插入操作太多的字段应避免使用唯一索引,因为每次插入都会判断唯一性,耗费不必要的性能,虽然查询也会判断,但是这个性能损耗少很多,可以忽略








您可能感兴趣的文档:

--结束END--

本文标题: 自己总结的数据库设计规范

本文链接: https://www.lsjlt.com/news/50730.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 自己总结的数据库设计规范
    总体方向思维1.数据架构和容量规划相关    a.总数据量的预估,一年或两年为期限,直接影响硬盘容量规划    b.是否关联其他数据库和环境,关联...
    99+
    2024-04-02
  • 数据库设计规范(详细)
    数据库设计规范是指在设计数据库时需要遵守的一系列规则和准则,以确保数据库结构的合理性、一致性和可维护性。下面是一些常见的数据库设计规...
    99+
    2023-09-13
    数据库
  • MySQL 数据库范式化设计理论总结
    目录一、设计范式1.第一范式(1NF)2.第二范式(2NF)3.第三范式 (3NF)二、范式化设计三、反规范化设计四、设计总结一、设计范式 问题: 什么是范式化设计,为什么需要反规范...
    99+
    2024-04-02
  • 总结数据库建表/SQL/索引规范
    这篇文章主要介绍“总结数据库建表/SQL/索引规范”,在日常操作中,相信很多人在总结数据库建表/SQL/索引规范问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”总结数据库建表/...
    99+
    2024-04-02
  • 数据库设计规范有哪些
    1. 数据库表命名规范:表名应该具有描述性,表名应该使用小写字母,单词之间使用下划线连接。2. 字段命名规范:字段名应该使用小写字母...
    99+
    2023-06-10
    数据库设计规范 数据库
  • MySQL数据库设计规范是什么
    这篇“MySQL数据库设计规范是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“MySQ...
    99+
    2024-04-02
  • MySQL数据库设计规范有哪些
    本篇文章给大家分享的是有关MySQL数据库设计规范有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一、数据库设计以下所有规范会按照【高危】...
    99+
    2024-04-02
  • SQLServer数据库有哪些设计规范
    这篇文章给大家介绍SQLServer数据库有哪些设计规范,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。  SQLServer数据库的设计规范有什么  1、对象注释规则:  注释头:注释...
    99+
    2024-04-02
  • 《MySQL高级篇》九、数据库的设计规范
    文章目录 1. 为什么需要数据库设计2. 范 式2.1 范式简介2.2 范式都包括哪些2.3 键和相关属性的概念2.4 第一范式(1st NF)2.5 第二范式(2nd NF)2.6 第三范式...
    99+
    2023-09-12
    数据库 mysql 设计规范
  • MySQL数据库表设计规范是怎么样的
    小编给大家分享一下MySQL数据库表设计规范是怎么样的,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、数据库设计1、一般都使用 INNODB 存储引擎,除非读写比率<1%,才考虑使...
    99+
    2024-04-02
  • 数据库设计规范化要求有哪些
    本篇内容主要讲解“数据库设计规范化要求有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“数据库设计规范化要求有哪些”吧!  要求一:表中应该避免可为空的列。 ...
    99+
    2024-04-02
  • 关系型数据库设计规范有哪些
    关系型数据库设计规范有哪些,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1、每个表增删改的范围尽量都在本表进行这条原则也是与三大范式有些相...
    99+
    2024-04-02
  • MySQL数据库基本设计规范是怎么样的
    这篇文章将为大家详细讲解有关MySQL数据库基本设计规范是怎么样的,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。所有表必须使用Innodb存储引擎   ...
    99+
    2024-04-02
  • MongoDB 数据库的命名和设计规范有哪些
    今天就跟大家聊聊有关MongoDB 数据库的命名和设计规范有哪些,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。文档设计约束UTF-8 字符不能包含 ...
    99+
    2024-04-02
  • 数据库课程设计报告总结
    一、课程设计题目 学生信息管理系统 二、课程设计目的 数据库系统课程设计是为了配合学习数据库系统原理及应用开发而设置的,是将关系数据库理论知识转化为解决实际问题能力的重要环节。数据库系统课程设计目的在...
    99+
    2023-09-17
    数据库 java 服务器 mysql 文档资料
  • 数据库范式:数据库设计的指南针
    数据库范式概述 数据库范式是一组规则,旨在确保数据库的有效性和效率。这些规则规定了数据应该如何组织和存储,以避免数据冗余、更新异常和插入异常。以下是对每个范式的简要介绍: 第一范式 (1NF) 1NF 要求每个数据项只能出现一次,且在表中...
    99+
    2024-03-07
    数据库范式、数据建模、数据完整性、数据一致性
  • MySQL数据库的使用规范
    这篇文章给大家分享的是有关MySQL数据库的使用规范的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。一个平台或系统随着时间的推移和用户量的增多,数据库操作往往会变慢;而在Java应...
    99+
    2024-04-02
  • MySQL数据库命令和基本设计规范详细介绍
    本篇内容主要讲解“MySQL数据库命令和基本设计规范详细介绍”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL数据库命令和基本设计规范详细介绍”吧!一、数...
    99+
    2024-04-02
  • MySQL数据库的命令、基本设计以及字段等设计的规范详细说明
    本篇内容主要讲解“MySQL数据库的命令、基本设计以及字段等设计的规范详细说明”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL数据库的命令、基本设计以及...
    99+
    2024-04-02
  • MySQL数据库范式化设计的方法
    这篇文章主要讲解了“MySQL数据库范式化设计的方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL数据库范式化设计的方法”吧!一、设计范式问题: 什么是范式化设计,为什么需要反规范...
    99+
    2023-06-30
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作