这一章的英文标题是Data Modeling in an Imperfect World. 我们的世界是不完美的,在设计系统的时候就要注意,不要被现实所误导,采用一些实际上并不合理的结构。
在数据源不可靠的时候,不要对模型的物理层强加太多结构,一旦数据被修改,相应的结构就会被破坏。这种场景下,最好对原始数据保留足够的灵活性,在需要使用某种特定结构时动态地进行构建。
【就好像数据结构也分为可变和不可变的,可变的性能差,但是修改的代价小,不可变的性能好,但是修改的代价大。具体使用哪一种需要根据修改的频繁程度来衡量。】
变更表记录变更,然后驱动实际的记录进行变更。这样在审查时能看到所有关联的修改,而不用把当天所有的记录都打出来进行再重新梳理。
【直接修改记录这种想法很直观,但是实际使用时会丢失一些逻辑结构。在保证逻辑结构的基础上重建数据会更好。】
组织在设计系统时会被其自身的沟通结构所限制,设计出的系统会有相同的结构。
【在设计系统时,要考虑组织自身的结构。对康威定律理解不够,之后需要再看看。】