专用的冗余结构支撑大数据查询
为完成特定的性能目标可以设计一些面向主题的冗余结构,比如结存表,明细表等。功能上,一个单据描述一个业务实体,但如果单据的量级很大
为完成特定的性能目标可以设计一些面向主题的冗余结构,比如结存表,明细表等。
功能上,一个单据描述一个业务实体,但如果单据的量级很大,那么可以设计一个根单据并行的“影子”单据,这个“影子”单据由原始单据生成,为实现特定的性能目标而设计,针对这个特定的目标可以通过减少维度来降低数据精度,这样有效压缩数据量,通过增加冗余列减少表关联,甚至可以做一些分区和分表的处理,这样的针对特定场景的定制冗余结构一定是性能最优化的。
冗余结构可以实时维护,比如单据的增删改这些数据触点都要顺便维护一下这个结构。当然也可以批量维护,比如可以T+1的方式维护这个数据,如果要实时,差异数据可以从原始单据中查询。
专用的冗余结构是大数据很终极的解决方案,就像并行是大数据量计算终极方案一样,代价是原始单据的一些操作性能会受一些影响,但整体体验影响不大。如果架构上没有支持特定数据的定制化的冗余结构,那就需要客户化开发来实现,有一定的工作量。
如果目标是必须要达成的,且只有这一种,那也别无选择。