如何设计实时数据平台(设计篇) (4)

图8给出了数据处理架构的演化,和OLPP的一种架构模式。其中wormhole和moonbox分别是我们开源的流式处理平台和计算服务平台,后面会具体介绍。

2)质量考量

上面的图也引出了两个主流实时数据处理架构:Lambda架构和Kappa架构,具体两个架构的介绍网上有很多资料,这里不再赘述。Lambda架构和Kappa架构各有其优劣势,但都支持数据的最终一致性,从某种程度上确保了数据质量,如何在Lambda架构和Kappa架构中取长补短,形成某种融合架构,这个话题会在新起文章中详细探讨。

当然数据质量也是个非常大的话题,只支持重跑和回灌并不能完全解决所有数据质量问题,只是从技术架构层面给出了补数据的工程方案。关于大数据数据质量问题,我们也会起一个新的话题讨论。

3)稳定考量

这个话题涉及但不限于以下几点,这里简单给出应对的思路:

高可用HA

整个实时Pipeline链路都应该选取高可用组件,确保理论上整体高可用;在数据关键链路上支持数据备份和重演机制;在业务关键链路上支持双跑融合机制

SLA保障

在确保集群和实时Pipeline高可用的前提下,支持动态扩容和数据处理流程自动漂移

弹性反脆弱

✔ 基于规则和算法的资源弹性伸缩

✔ 支持事件触发动作引擎的失效处理

监控预警

集群设施层面,物理管道层面,数据逻辑层面的多方面监控预警能力

自动运维

能够捕捉并存档缺失数据和处理异常,并具备定期自动重试机制修复问题数据

上游元数据变更抗性

✔上游业务库要求兼容性元数据变更

✔ 实时Pipeline处理显式字段

4)成本考量

这个话题涉及但不限于以下几点,这里简单给出应对的思路:

人力成本

通过支持数据应用平民化降低人才人力成本

资源成本

通过支持动态资源利用降低静态资源占用造成的资源浪费

运维成本

通过支持自动运维/高可用/弹性反脆弱等机制降低运维成本

试错成本

通过支持敏捷开发/快速迭代降低试错成本

5)敏捷考量

敏捷大数据是一整套理论体系和方法学,在前文已有所描述,从数据使用角度来看,敏捷考量意味着:配置化,SQL化,平民化。

6)管理考量

数据管理也是一个非常大的话题,这里我们会重点关注两个方面:元数据管理和数据安全管理。如果在现代数仓多数据存储选型的环境下统一管理元数据和数据安全,是一个非常有挑战的话题,我们会在实时Pipeline上各个环节平台分别考虑这两个方面问题并给出内置支持,同时也可以支持对接外部统一的元数据管理平台和统一数据安全策略。

本文我们探讨了实时数据平台RTDP的相关概念背景和架构设计方案。在架构设计方案中,我们尤其着重讲了RTDP的定位和目标,整体设计架构,以及涉及到的具体问题和考量思路。有些话题很大,可以后续单独形成文章进行专题讨论,但整体上,我们给出了一整套RTDP的设计思路和规划。在下篇技术篇中,我们会将RTDP架构设计具体化落地化,给出推荐的技术选型和我们的开源平台方案,并会结合不同场景需求探讨RTDP的不同模式应用。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpysfp.html