(资料图片)
当一家公司的日均处理的数据流量在PB级别时,巨大的任务量和数据量会对消息队列(MQ)dump的稳定性和准确性带来极大的挑战。
针对这一问题,火山引擎数智平台推出的大数据研发治理套件DataLeap,可以为企业提供完整解决方案,帮助解决MQ dump在极端场景中遇到的数据丢失问题。
例如,当HDFS(一种分布式文件系统)集群某个元数据节点由于硬件故障而宕机。那么在该元数据节点终止半小时后,运维工程师虽然可以通过手动运维操作将 HDFS 切到主 backup 节点,使得HDFS 恢复服务。但故障恢复后, MQ dump 在故障期间可能有数据丢失,产出的数据与 MQ 中的数据不一致的情况。
此时,技术人员可以在收到数据不一致的反馈后,立即借助火山引擎DataLeap进行故障排查。目前,火山引擎DataLeap基于开源Flink,已经实现了流批一体的数据集成服务。通过Flink Checkpoint的功能,Flink 在数据流中注入 barriers 将数据拆分为一段一段的数据,在不终止数据流处理的前提下,让每个节点可以独立创建 Checkpoint 保存自己的快照。
图:使用文件State 前后处理流程对比
溯源后,用户可以通过火山引擎DataLeap选择使用文件State(当前的 Checkpoint id 和 task id)解决该问题。据悉,使用文件 State 后,企业在 Notify 阶段与 HDFS 交互的 metrics(打点监控系统)的平均处理时间减少了一半。
目前,企业可以通过火山引擎DataLeap体验到上述Flink Checkpoint实践与优化方案,提升数据价值交付中的效率和质量。(作者:韩江)