当前位置:  开发笔记 > 编程语言 > 正文

架构设计

如何解决《架构设计》经验,为你挑选了1个好方法。

假设你是GM dba,你必须围绕GM模型进行设计

这样做会更好吗?

table_model

类型{凯迪拉克,土星,雪佛兰}

或这个?

table_cadillac_model

table_saturn_model

table_chevrolet_model

假设业务线对于模型具有相同的列,并且每个子类型有超过一百万条记录.

编辑:

有很多CRUD

有很多处理器密集型报告

在任一模式中,都有一个model_detail表,每个模型包含3-5条记录,每个模型的详细信息不同(您无法将凯迪拉克细节添加到土星模型中)

开发团队对数据库复杂性没有任何问题

我不确定这是一个标准化问题.即使结构相同,它们也可能被认为是不同的实体.

编辑:

将结构划分为多个表的原因 - 业务线可能有不同的业务规则 - 每个业务线的addModelDetail()可能不同(即使数据格式相同) - 高添加/更新活动 - 更好的分区性能结构而不是单一结构(我猜这里不确定)?

我认为这是EAV问题的变种.当作为EAV设计时,单表结构通常被投票为坏主意.当以这种方式提出时,单表格结构通常被投票为一个好主意.有趣...

我认为最有趣的答案是有两种不同的结构 - 一种用于crud,另一种用于报告.我想我会尝试用于报告的连接/展平视图和用于crud的多个表,看看它是如何工作的.



1> Paul Mitchel..:

绝对是前一个例子.在向产品系列添加新模型时,是否要将表添加到数据库中?

推荐阅读
我我檬檬我我186
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有