数据库设计最佳实践

一、数据库设计的重要意义

     1. 数据是一个大型web、信息服务应用的核心。

     2. 良好的数据模型、数据表结构设计可以简化应用的复杂性,提高性能

 

二、数据库优化三层次

     1. 数据库系统优化:DBA通过调整数据库配置,参数,设置缓存等提高数据库系统性能

     2. 数据库设计优化:即本文的主题内容

     3. 应用程序优化:如高效的sql,少用事务,不用分布式事务

 

三、数据库设计最佳实践

     1. 表设计

      表一般包括基本表、中间表、临时表。基本表应具有原子性、原始性、演绎性、稳定性。正确处理原始单据和数据基本表间一对多、多对一的关系。

     2. 主键一般取没有意义的值,表示实体的抽象。

     3. 适当允许数据冗余,进行反范式设计,以空间换时间。在数据库三个范式中,保证原子性约束(1NF)和唯一性约束(2NF),放宽冗余性约束(3NF)。在数据冗余中,不允许低级冗余的出现(字段的重复),允许高级冗余(字段的派生出现)。

     4. 多对多的实体关系利用中间表实现。

     5. 合理使用列变行、行变列的技术。

     6. 复杂计算尽量在应用中进行。如把计算好的数据入库,把数据库中的数据取到内存中计算。

     7. 数据表水平切分和垂直切分。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值