原则性
- 基于hadoop集群的计算需要考虑排队
- 长时间的数据计算需要考虑数据源的稳定性【是否会有数据增删修改或周期性大规模迭代更新,以及数据是否在业务有效生命周期内】,并保证待计算数据源的稳定性,不能产生与时间有关的源数据的变化。
- 对数据源的稳定性【数据源时间段内不可用】以及上下文数据之间产出周期【如果前一个数据源不能按时产出或者产出不正确,下一个数据处理阶段如何处理】是否能无缝衔接或者是否容许间断衔接,而无缝衔接在发生意外时,如果数据具有业务有效时间限制,如何处理保证数据的有效性。间断衔接情况下如何设计系统。
- 大型数据计算系统一定不能依赖业务数据有效时间,需要保证系统即使超出或者不在有效时间内时,如果具备完善数据情况下也要能够正确计算,即对计算的时间无实时依赖。【系统代码中最好无DateTime.Now,getdate(),now()等函数,相关时间一定要有指定数值】
- 时间是数据有效性【超出业务有效期,或者计算系统对实时有着不良依赖】、稳定性【基于时间会有对数据的操作可能产生】的隐性因素。