【加精】漫画 | 数据库设计全过程

本人花费半年的时间总结的《Java面试指南》已拿腾讯等大厂offer,已开源在github ,欢迎star!

转载声明:转载请注明出处,本技术博客是本人原创文章

本文GitHub https://github.com/OUYANGSIHAI/JavaInterview 已收录,这是我花了6个月总结的一线大厂Java面试总结,本人已拿大厂offer,欢迎star

原文链接:blog.ouyangsihai.cn >> 【加精】漫画 | 数据库设计全过程

引言

数据库已成为现代信息系统的基础和核心,它的设计全过程可划分为规划、需求分析、概念设计、逻辑设计、物理设计、实现和运行维护

 

漫画 | 数据库设计全过程

规划

漫画 | 数据库设计全过程

 

调查研究

对数据库的应用系统、面向对象、使用单位等与数据库功能和数据存在关联的事物进行全面理解和调查。

漫画 | 数据库设计全过程

可行性分析

从技术、可用设备、时间效率、经济效益、法律法规等方面进行可行性分析,然后产出可行性分析报告,确定其可行性

确定目标和计划

在经过调查研究和可行性分析之后,可以开始确定目标、工作流程和开发计划等

 

漫画 | 数据库设计全过程

需求分析

漫画 | 数据库设计全过程

 

分析用户活动

了解用户的业务活动和职能,弄清楚其业务流程,如果业务复杂,可以分成多个子业务处理,最终我们要搞清楚业务功能和流程,画出业务流程

确定系统范围

顾名思义,确定系统范围即确定数据库的数据和功能范围,如果是划分为多个数据库时,需要确定每个数据库涉及的数据范围

分析用户活动涉及的数据

深入分析用户的业务活动,弄清楚的业务数据的流向和需要加工处理的内容,得出数据流图

分析系统数据

对数据库设计数据进行分析,确定数据库存储方式等等内容,产出数据字典

概念设计

 

漫画 | 数据库设计全过程

 

概念设计可以分为三步,局部概念模型、全局概念模型、模型评审

局部概念模型设计

  • 确定局部概念模型的范围
  • 定义实体
  • 定义联系
  • 确定属性
  • 逐一画出所有的局部ER图,并附以相应的说明文件

 

全局概念模型

  • 确定公共实体类型
  • 合并局部E-R图
  • 消除不一致因素
  • 优化全局E-R图
  • 画出全局E-R图,并附以相应的说明文件

 

模型评审

  • 用户评审
  • 开发人员评审
  • 开发人员评审

    逻辑设计

     

    漫画 | 数据库设计全过程

     

    将概念结构转换为一般的关系、网状、层次模型

    将转换来的关系、网状、层次模型向指定数据库管理系统支持的数据模型转换

    对数据模型进行优化

    物理设计

     

    漫画 | 数据库设计全过程

     

    物理设计可分为:存储结构设计、确定存放位置、设计存取方法、考量数据完整性和安全性、数据库执行程序设计

    存储结构设计包括表的设计、表字段设计、字段类型设计、字段长度设计等等

    确定存放位置包括存储物理位置,比如是否需要分服务器等等,可以考虑把需要经常访问或者某一模块需要的数据组合放在一起

    程序设计可以帮助实现解除系统应用程序和数据的耦合,当系统应用程序变更时,可不修改数据结构,反之亦然

    实现

     

    漫画 | 数据库设计全过程

     

     

    漫画 | 数据库设计全过程

     

     

    漫画 | 数据库设计全过程

     

     

    漫画 | 数据库设计全过程 漫画 | 数据库设计全过程

     

    运行维护

     

    运行维护是一个长期的工作,应用程序执行、环境变更、数据存储内容不断变化等都要求不断的对数据库进行监测、评估、调整、备份和修改

    漫画 | 数据库设计全过程
    本人花费半年的时间总结的《Java面试指南》已拿腾讯等大厂offer,已开源在github ,欢迎star!

    转载声明:转载请注明出处,本技术博客是本人原创文章

    本文GitHub https://github.com/OUYANGSIHAI/JavaInterview 已收录,这是我花了6个月总结的一线大厂Java面试总结,本人已拿大厂offer,欢迎star

    原文链接:blog.ouyangsihai.cn >> 【加精】漫画 | 数据库设计全过程


     上一篇
    浅析Mysql的隔离级别及MVCC 浅析Mysql的隔离级别及MVCC
    一、Mysql的四个隔离级别预备工作: 先创建一个test数据库及account表,1234567create database test;use test;create table account(id int not null,bal
    下一篇 
    一文教会你数据库性能调优(附某大型医院真实案例) 一文教会你数据库性能调优(附某大型医院真实案例)
    作者:OwenZeng 链接:www.cnblogs.com/OwenZeng 前言微软工程师的一个工程师曾经对性能调优有一个非常形象的比喻:剥洋葱 。我也非常认可,让我们来一层一层拨开外面它神秘的面纱。 六大因素下面祭出的是我