数据库的六个设计阶段

需求分析是设计的起点。

电商需求:产品、用户、订单。
连其中之一都不够。

概念设计的 ER 图。

用户和订单是主题。
关系就是下订单。

关系模型中的逻辑设计。

用户表,订单表。
不要错过任何一个球场。

物理设计定义了存储结构。

常用字段已添加索引。
不要盲目添加。

在实施阶段建立数据库和表格。

要导入的数据。
不要被卡住。

操作和维护是标准的。

待备份。
别忘了

数据库设计过程包括几个主要阶段

我们必须一步一步地进行数据库设计,就像盖房子必须先打地基一样。

需求分析可以追溯到2 01 8 年的项目,当时我们公司想要开发一个新的系统。
我们首先要弄清楚客户想要什么,需要存储什么数据,以及需要处理什么业务。
花了几个月的时间。

概念结构设计,就像房子的框架一样,应该在2 01 9 年初完成。
我们使用实体关系模型(ER模型)来绘制所有实体以及它们之间的关系,就像构建房子的骨架一样。

逻辑结构设计,那是在2 02 0年夏天的时候。
这个时候我们需要选择一个数据模型,比如关系模型,然后决定数据的逻辑组织,就像决定房子的内部布局一样。

物理设计,将在2 02 1 年秋季进行。
此时我们需要考虑如何在硬盘上存储数据,如何创建索引,同时还要考虑安全性和优化性能。
这就像装修房子和完成水电工作一样。

数据库实施将于2 02 2 年春季进行。
届时,我们将把设计方案变成实际的数据库。
数据加载、应用程序编码和测试都必须手动完成。

最后,数据库运维,它是一项持续的任务,从数据库的实现开始,永远持续下去。
数据的安全性、完整性和性能应该受到监控,并且应该定期维护和优化,就像搬进房子后应该定期清洁和维护一样。
应保留。

数据库设计不仅仅是存储数据,还涉及检索效率和数据关系。
就像设计房子一样,要考虑居住的舒适度。

如今,越来越多的人使用关系型数据库,因为它高效且具有强大的管理和存储能力,已经成为主流。
不过,随着技术的发展,我们也要跟上步伐,看看是否有新的数据库技术能够更好地满足需求。

数据库设计的六个阶段详解

哎呀,刚入行的时候,数据库设计真是个大问题。
但后来我遇到了很多陷阱,慢慢找到了自己的路。
我给大家讲一下我个人经历的几个阶段。
我保证这些都是实用信息,绝非谎言。

1 .系统需求分析阶段
这是一个起点,但以后可能没用。
同年,我刚刚接管了一家超市的库存管理系统。
我什么都不懂,就立即去找老板和收银员交谈。
你猜怎么着?老板说系统应该更快,收银员说登录应该更容易,老员工说应该可以统计损失。
信息是混乱的。
后来,我每天在超市呆了两周,观察他们如何工作,什么时候卡住,什么时候累。
最后,我意识到数据应该包含库存编号、产品名称、价格、数量,并且需要根据产品名称和日期进行验证。
然后我写了一份需求文档。
老板看了就说,嗯,还可以吧。
那是2 01 0年,超市刚刚开业。
他使用了非常基本的 Excel 电子表格,然后转向数据库。

2 概念框架设计阶段
一旦需求明确,就该绘制ER图了。
当时我正在手绘,A4 纸上写满了实体、属性和关系。
如果你仔细想想,实体是表,属性是字段,关系是表之间的关联。
例如,产品具有产品编号、名称和价格等属性,库存具有产品编号和数量等属性。
产品和库存之间存在一对多的关系。
一种产品对应多条库存记录。
一旦你画好了图,你应该与你的老板和开发人员讨论,以确保每个人都理解它。
那一年是2 01 1 年,公司里有一位老师傅教我画ER图。
他表示,图纸越清晰,以后开发就越容易。

3 设计阶段逻辑结构
将ER图转化为关系表就是设计逻辑结构。
我按照 ER 图将每个实体变成一个表,将属性变成字段。
例如,产品表具有产品编号(主键)、产品名称和价格等字段。
库存表有产品编号(外键)和数量等字段。
那么我们就需要思考如何减少数据冗余。
例如,产品表和库存表中都出现一个产品编号,但只能有一张产品表,以保证数据一致性。
那是2 01 2 年,这是我第一次接触MySQL。
标准化当时确实很痛苦,但经过更多练习后,我变得更好了。

4 物理设计阶段
此阶段涉及考虑如何存储数据以及如何快速查找数据。
我当时负责的超市系统数据量不大,存储在普通硬盘上,索引也不是太复杂。
后来老板说查询速度太慢,我就开始研究B树索引和哈希索引。
那是2 01 3 年,超市生意越来越好,顾客越来越多,数据量一下子增加了好几倍,查询速度慢得像蜗牛,我才意识到索引的重要性。

5 数据库实现阶段
该阶段用于实际创建数据库、加载数据和编写程序。
我按照设计文档在 MySQL 中创建了一个数据库和表,然后编写了一个简单的 Python 脚本将 Excel 表中的原始数据导入到数据库中。
下一步是编写一个应用程序,允许用户通过界面检查库存和更改价格。
最后,进行了测试,发现并修复了一些错误。
那是2 01 4 年,超市系统终于开始运转了。
老板很高兴,说比Excel电子表格好用多了。

6 数据库运维阶段
系统已联网,但尚未联网完全的。
您需要监控数据库、定期备份数据并防范攻击。
当时我每天都会看数据库日志,发现异常就赶紧处理。
后来我还学会了用LVM做快照,这样如果数据出现问题,可以快速恢复。
那是2 01 5 年,超市系统已经运行了一段时间,出现过几次数据丢失的情况。
幸好有备份,及时恢复了。

总的来说,数据库设计并不是一朝一夕就能理解的。
这必须一步一步来,每一步都必须认真对待。
我当时踩过的坑现在想起来还历历在目。
希望我的经验对你有帮助,不要像我一样碰壁。