前言
在上一篇《如何搭建个人博客(2)- UI 设计》文章中,我们已经完成博客的 UI 设计,本文将基于设计稿分析一下如何设计后台的数据字段,合理的数据设计不仅能提高项目的可拓展性/维可护性,还能减少前端开发的工作量
数据库选型
-
关系型数据库:以二维表格的形式存储数据,数据扩展灵活度低(需要提前定义字段的类型)
-
非关系型数据库:以 key-value 形式存储数据,数据扩展灵活度高
-
考虑到博客存储的数据并不复杂,且需要灵活地扩展以支持博客的多变(例如:博客皮肤样式,暂时无法确定 Object 中存储的内容),最后选择非关系型数据库(mongodb)以支持博客的开发
数据表分析
-
用户表:存储用户名、登陆密码、个人信息....
-
博客配置表:存储博客配图、友情链接、皮肤样式....
-
文章分类表:存储文章分类相关的数据
-
文章表:存储文章标题、文章内容、文章评论.....
-
生活表:存储生活记录相关的数据
-
日志告警表:存储日志告警配置的数据
-
数据统计表:根据日志上报,统计数据(PV、UV、错误...)
-
本地日志
注:
-
个人博客无需用户系统
-
日志存储本地即可,且定时删除,减少服务器的存储压力
用户表
博客配置表
文章分类表
文章表
生活表
日志告警表
数据统计表
本地日志
结尾
虽然基于 UI 设计图完成了我们数据表的设计,但是后期的需求变化也可能导致数据表的变化。正如工作中的需求一样,是不可能一层不变的,提前构思和规划数据表的设计,能大大减少后期的开发和维护成本。好了,在下一篇文章中,我们将对齐前后端接口协议。