数据库物理设计

数据库物理设计

2023年7月27日发(作者:)

数据库物理设计数据库物理设计要做什么:1、选择合适的数据库管理系统。2、定义数据库,表及字段的命名规范。3、根据所选择的DBMS系统选择合适的字段类型。4、反范式化设计。⼀、选择哪种数据库:Oracle和SqlServer是商业数据库。(适合企业级项⽬)mysql和pgsql是开源数据库。(适合互联⽹项⽬)⼆、表及字段的命名规范:1、可读性原则。通过⼤⼩写格式化名字。如CustAddress⽽不是custaddress。2、表意性原则。见名知意。如表的过程应该能体现存储的数据内容。3、长名性原则。尽量少或不使⽤缩写。三、字段类型的选择数据类型⼀⽅⾯影响数据存储空间的开销,另⼀⽅⾯也会影响数据查询性能。当⼀个列可以选择多种数据类型时,应该优先选择数据类型,其次是⽇期或⼆进制类型,最后是字符类型。对于相同级别的数据类型,应该优先选择占⽤空间⼩的数据类型。以上选择原则主要是从以下两个⾓度考虑:1、在对数据进⾏⽐较(查询条件,JOIN条件及排序)操作时,同样的数据,字符处理往往⽐数字处理慢。2、在数据库中,数据处理以页为单位,列的长度越⼩,利于性能提升。具体如何选择呢?char与varchar如何选择:1、如果列中要存储的长度差不多是⼀致的额,则应该考虑选择char;否则应该考虑⽤varchar。(如⼿机号码,⾝份证号码)2、如果列中的最⼤数据长度⼩于50byte,则⼀般也考虑char。如果这个列很少⽤,也可以选择varchar3、⼀般不宜定义⼤于50byte的char类型列。decimal与float如何选择:1、精确选decimal。2、⾮精确选float,因为占⽤空间⼩。时间类型如何存储:对于只是查询显⽰或变动不频繁的⽇期,⽤int。经常要使⽤的话,⽤datetime。1、⽤int来存储时间字段的优缺点:优点;字段长度⽐datetime⼩。缺点:使⽤不⽅⾯,要进⾏函数转换才能看懂。限制:只能存储到2038-1-19 11:14:07。即2的32次⽅2、需要存储的时间粒度。年 ⽉ ⽇ ⼩时 分 秒 周其他:如何选择主键:1、区分业务主键和数据库主键:业务主键:标⽰业务数据,进⾏表与表之间的关联。数据库主键:优化数据存储。(Innodb会⽣成6个字节的隐含主键)2、根据数据库的类型,考虑主键是否需要顺序增长。3、主键的字段类型所占空间要尽可能⼩。避免使⽤外键约束:1、降低数据导⼊的效率2、增加维护成本3、虽然不建议使⽤外键约束,但是相关联的列上⼀定要建⽴索引。避免使⽤触发器:1、降低数据导⼊的效率2、可能会出现意想不到的数据异常3、是业务逻辑变的复杂。严禁使⽤预留字段:1、⽆法准确的知道预留字段的类型2、⽆法准确的知道预留字段中所存储的内容3、后期维护预留字段所要的成本,同增加⼀个字段所需要的成本是相同的。四、反范式化设计为了性能和读取效率的考虑⽽适当的对第三范式的要求进⾏违反,⽽允许存在少量的数据冗余。也就是⽤空间来换时间。

发布者:admin,转转请注明出处:http://www.yc00.com/news/1690431447a348946.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信