代码之家  ›  专栏  ›  技术社区  ›  Aggelos Biboudis

数据库建模或数据库设计:谁先来?

  •  3
  • Aggelos Biboudis  · 技术社区  · 16 年前

    我想知道域实现的常见做法是什么。首先设计需要持久性或数据库模式的业务对象,然后从实体关系图(然后是ORM POCO)生成它?

    我将开始一个解决方案,但我想知道哪一个是最可取的“模式”。

    (*由NHibernate提供动力)

    2 回复  |  直到 16 年前
        1
  •  8
  •   duffymo    16 年前

    取决于您是对象建模者还是关系建模者。偏好取决于你最了解的东西。

    我是一个对象人,所以我想说,在对象中建模问题,然后从中得到关系模式。

    我认为有很多关于数据的问题没有被对象解决(例如,索引、主键和外键、规范化),这些对象表示完成后仍有一些工作要做。

    但是任何关系型的人都会认为他们是第一流的,应该坐在驾驶座上。

    我怀疑这个问题是否会有一个明确的答案。我不认为应该有。存在一个真实的对象关系阻抗不匹配。对象以实例为中心;关系模型是基于设置的。两者都需要仔细考虑。

        2
  •  0
  •   Mircea Grelus    16 年前

    通常的实践都是这样的,这取决于每个实现者的偏好。正如达菲莫建议的那样,你应该和你最了解的人一起去。

    但是,您还应该考虑使用数据的常规模式是什么。在任何一个模型中都有很好的模型,但是在性能方面非常昂贵的东西不是一个好的选择。平衡在中间的某个地方。

    我个人更倾向于关注数据库方面的事情,主要是因为数据库是难以扩展的。在设计数据库时要记住这一点有帮助。您不必按照严格的缩放规则进行初始设计,但记住这一点可能有助于您不做设计决策,这相当于在以后需要缩放时将您自己放在脚上。