> > > 字节跳动开发套件数据集成团队(DTS ,Data Transmission Service)在字节跳动内基于 Flink 实现了流批一体的数据集成服务。其中一个典型场景是 Kafka/ByteMQ/RocketMQ -> HDFS/Hive 。Kafka/ByteMQ/RocketMQ... 本文主要介绍 DTS MQ dump 在极端场景中遇到的数据丢失问题的排查与优化,最后介绍了上线效果。 本文分两次连载,[第一篇主要介绍Flink Checkpoint 以及 MQ dump 写入流程。](http://mp.weixin.qq.com/s?__biz=MzkwM...
Kafka/ByteMQ/RocketMQ -> HDFS/Hive(下面均称之为 MQ dump,具体介绍可见 字节跳动基于 Flink 的 MQ-Hive 实时数据集成 ) 在数仓建设第一层,对数据的准确性和实时性要求比较高。目前字节跳动中国区 MQ dump 例行任务数巨大,日均处理流量在 PB 量级。巨大的任务量和数据量对 MQ dump 的稳定性以及准确性带来了极大的挑战。本文主要介绍 DTS MQ dump 在极端场景中遇到的数据丢失问题的排查与优化,最后介绍了上线效果。# 线上...
> > 字节跳动开发套件数据集成团队(DTS ,Data Transmission Service)在字节跳动内基于 Flink 实现了流批一体的数据集成服务。其中一个典型场景是 Kafka/ByteMQ/RocketMQ -> HDFS/Hive 。Kafka/ByteMQ/RocketMQ ->... 本文主要介绍 DTS MQ dump 在极端场景中遇到的数据丢失问题的排查与优化,最后介绍了上线效果。 本文分两次连载,第一篇主要介绍Flink Checkpoint 以及 MQ dump 写入流程。HDFS 集群某个元数据节点由于硬件故障...
非常有必要熟练掌握 Flink 框架的使用和运维。本文不会涉及对 Flink 框架的技术剖析,而是侧重于工程实践,力求实用。笔者会结合自己运维多个大型 Flink 任务的经验,对于『如何系统化地调优 Flink 任务、提升性能』给出一套完整的方法论。# 如何发现性能问题?解决问题的前提是发现问题。那么如何知道一个 Flink 任务是否存在性能问题呢?Flink 作业性能不佳时一般有以下一些表现,可根据业务情况综合判断:- 上游 Kafka Top...
日志服务提供 Kafka 协议消费功能,可以将一个日志主题当作一个 Kafka Topic 来消费,每条日志对应一条 Kafka 消息。您可以使用 Flink kafka 连接器连接日志服务,通过 Flink 任务将日志服务中采集的日志数据消费到下游的大数据组件或者数据仓库。本文通过 Flink SQL 任务,实现读取 TLS 主题中的日志数据,然后写入到 ESCloud 索引中。 流程介绍 准备数据源 TLS 主题。您需要在日志服务控制台创建一个日志项目,然后创建一个日志主题,...
日志服务提供 Kafka 协议消费功能,可以将一个日志主题当作一个 Kafka Topic 来消费,每条日志对应一条 Kafka 消息。您可以使用 Flink kafka 连接器连接日志服务,通过 Flink 任务将日志服务中采集的日志数据消费到下游的大数据组件或者数据仓库。本文通过 Flink SQL 任务,实现读取 TLS 主题中的日志数据,然后写入到 ESCloud 索引中。 流程介绍 准备数据源 TLS 主题。您需要在日志服务控制台创建一个日志项目,然后创建一个日志主题,...
其中Atlas通过Kafka获取外部系统的元数据变更消息。在开源版本中,每台服务器支持的Kafka Consumer数量有限,在每日百万级消息体量下,经常有长延时等问题,影响用户体验。在2020年底,我们针对Atlas的消息消费部分做了重构,将消息的消费和处理从后端服务中剥离出来,并编写了Flink任务承担这部分工作,比较好的解决了扩展性和性能问题。然而,到2021年年中,团队开始重点投入私有化部署和火山公有云支持,对于Flink集群的依赖引入了可维...
其中Atlas通过Kafka获取外部系统的元数据变更消息。在开源版本中,每台服务器支持的Kafka Consumer数量有限,在每日百万级消息体量下,经常有长延时等问题,影响用户体验。在2020年底,我们针对Atlas的消息消费部分做了重构,将消息的消费和处理从后端服务中剥离出来,并编写了Flink任务承担这部分工作,比较好的解决了扩展性和性能问题。然而,到2021年年中,团队开始重点投入私有化部署和火山公有云支持,对于Flink集群的依赖引入了可维...
性能也不足以支撑业务的增长。**2018年,公司内部开始大力推广Flink,并且针对大量旧任务使用PyJStorm的情况,提供了 PyJStorm到**P** yFlink的兼容适配。**流式任务托管平台的建设一定程度上解决了流式任务运维管理的问题。 **数据流ETL链路也在2018年全面迁移到了 ****P** yFlink** ,进入了流式计算的新时代。*** **第二个阶段是2018至2020年**随着流量的进一步上涨,PyFlink和Kafka的性能瓶颈、以及JSON数据格式...
性能也不足以支撑业务的增长。**2018年,公司内部开始大力推广Flink,并且针对大量旧任务使用PyJStorm的情况,提供了PyJStorm到PyFlink的兼容适配。** 流式任务托管平台的建设一定程度上解决了流式任务运维管理的问题。**数据流ETL链路也在2018年全面迁移到了PyFlink,进入了流式计算的新时代。**- **第二个阶段是2018至2020年**随着流量的进一步上涨,PyFlink和Kafka的性能瓶颈、以及JSON数据格式带来的性能和数据质量问题都...
在数据开发平台上创建对应的Flink SQL任务。- 将报警条件映射为报警平台的触发规则。3、Flink SQL作业将消费Kafka的数据,计算监控指标,并写到TSDB中。4、报警平台将基于TSDB中的时序数据,周期性地检测是否触发报警。若触发报警,将回调数据质量平台。5、数据质量平台根据报警平台的回调请求,处理后续报警发送逻辑。### Flink SQL作业的执行逻辑用户在数据质量平台上配置kafka数据的监控规则时,有可能会为一个topic配...
Kafka 连接器提供从 Kafka Topic 或 BMQ Topic 中消费和写入数据的能力,支持做数据源表和结果表。您可以创建 source 流从 Kafka Topic 中获取数据,作为作业的输入数据;也可以通过 Kafka 结果表将作业输出数据写入到 Kafka Topic 中。 注意事项使用 Flink SQL 的用户需要注意,不再支持 kafka-0.10 和 kafka-0.11 两个版本的连接器,请直接使用 kafka 连接器访问 Kafka 0.10 和 0.11 集群。Kafka-0.10 和 Kafka-0.11 两个版本的连接...
**01****背景**众所周知,Flink 中的 State 保存了算子计算过程的中间结果。当任务出现异常时,可以通过查询任务快照中的 State 获取有效线索。 但目前对于 Flink SQL 任务来说... KafkaSource 中的 State 是用于记录当前消费的 Offset 信息。如场景二所示,我们可以通过查询 Source 算子的状态,获取到任务中消费 Kafka Topic 的 Partition 和 Offset 信息。 还有一种比较常见的场景,比...