Jas*_*ett 5 database naming-conventions
在对性能进行非规范化时,是否通常使用特殊的命名约定?
例如,假设您有一个customer
包含date_of_birth
列的表.然后,您可以添加一age_range
列,因为有时候计算该客户的年龄范围太昂贵了.然而,人们可能会看到这种情况变得混乱,因为不清楚哪些值是权威的,哪些值是派生的.所以也许你想要命名那个列denormalized_age_range
或什么.
对这些列使用特殊的命名约定是否常见?如果是这样,是否有针对此类事项建立的命名约定?
编辑:这是另一个更现实的例子,说明非规范化会给你带来性能提升.这是来自现实案例.假设您正在编写一个应用程序,可以跟踪美国所有大学的大学课程.如果您选择该学位,您需要能够为每个学位展示您毕业的学分数.学位的学分实际上计算起来非常复杂,需要很长时间(每学位超过一秒).如果您有一个比较100个不同学位的报告,那么动态计算学分计数是不切实际的.当我遇到这个问题时我做了什么,我在表格中添加了一credit_count
列,degree
并预先计算了每个学位的学分.这解决了性能问题.