2.1.2.3 分身问题(Doppelgängers):多版本并存处理 2.1.2.3 分身问题:多版本并存处理 在构建扁平化数据架构的征途中,我们往往沉浸在“消灭连接”带来的性能快感中。通过将嵌套的JSON文档或关联的实体属性直接平铺进宽表,查询延迟确实大幅降低。然而,天下没有免费的午餐,当我们试图将复杂的世界压扁时,一个幽灵般的对手便会从阴影中浮现——这就是“分身问题”。 想象一下,在一个电商订单的扁平化宽表中,为了查询便利,我们将商品的快照信息(如商品名称、类目、价格)直接冗余存储在订单行项目中。这本是一个经典的空间换时间策略。但现实往往是残酷的:同一个 ,在上午10点的订单里叫“纯棉T恤”,到了下午2点的促销活动中,运营人员将其更名为“限时特惠·精梳棉T恤”。