首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >生产环境中的面试问题,实时链路中的Kafka数据发现某字段值错误,怎么办?

生产环境中的面试问题,实时链路中的Kafka数据发现某字段值错误,怎么办?

作者头像
王知无-import_bigdata
发布于 2023-11-14 10:51:25
发布于 2023-11-14 10:51:25
5320
举报

大家好呀,今天分享的是一个生产环境中遇到的问题。也是群友遇到的一个面试问题。

原问题是:

早晨8点之后发现kafka的record中某个字段的值出现了错误,现在已经10点了,需要对kafka进行数据订正,怎么样定位和解决这个问题,达到最快响应和最小影响。

这个问题是一个很「大」的问题,我们挑重点的说。

首先,我们在做数据开发的过程中涉及到一些基本要素:时效性保障、质量保障、稳定性保障,此外还有敏捷性、可管理性等其他要素。根据公司业务场景和重要性不同,重点也有所侧重。

时效性保障

时效性保障主要关注的几个方面:

  • Kafka延迟监控:Flink消费产生的lag、业务数据下发的延迟;
  • 在分层和时效延迟上做好平衡,保证链路的可复用的同时避免链路过程产生额外的时效问题;
  • 数据乱序;
  • 压测,应对流量高峰期,特别是大促场景下,提前做好资源保障、任务优化等措施;
  • 设置延时基线,通过优化程序代码、资源、解决倾斜与反压等问题,使其控制在基线内;
  • 指标监控,监控任务FailOver情况、CheckPoint指标、GC情况、作业反压等,出现异常告警。

数据质量保障

这是个老生常谈的话题了。我们在离线时代已经有了非常完善的数据质量监控体系。大家重点看加粗内容即可。

数据一致性监控
  1. 实时计算端到端的一致性。 常用手段就是通过输出幂等方式保障,这种方式要求输出使用存储介质支持重写,对于不支持幂等的存储,比较常用的就是DWD层的kafka, 可能会产生重复的数据,那么在下游使用的时候可以使用row_number()语法进行去重,保证相同的key不会被多次计算;
  2. 离线与实时的一致性,需要保证使用数据源一致、加工业务逻辑一致
数据完整性监控

保证数据从源头到数据加工再到前端数据展示,不能因为加工逻辑权限,存储异常,前端展现异常等原因导致数据丢失。例如:

  1. 数据源层出现背压时,导致数据源头(mq,Kafka)消息积压,积压严重时导致资源耗尽,进而导致数据丢失;
  2. 数据处理层数据加工未按照需求进行加工,导致目标有效数据丢失;
  3. 数据存储层的存储容量写满时,导致新数据无法继续写入导致数据丢失;
  4. 数据加工正确性、数据加工及时性、数据快速恢复性构成数据完整性
数据加工正确性监控

目标源数据按照业务需求加工成目标有效数据,目标有效数据根据不同维度不同指标计算成需要展示的不同指标数据。例如:

  1. 数据源层原始数据包含不同联盟的点击数据,那么数据处理层过滤掉不需要的联盟点击数据,并将目标联盟的点击数据根据媒体和创意信息补齐当前点击所属的账号、计划、单元;
  2. 业务层根据媒体,账号、计划、单元不同维度计算出对应的点击总量;
数据快速恢复性

数据在流转路径中因为异常导致流转中断,数据停止在某一个环节中,当异常解决,系统恢复正常时,停止的数据(停止的数据)需要快速恢复流转,并且这种恢复是正确的,不应该存在重复的消费和加工或者遗漏。例如:

  1. 数据处理层因为消费程序性能问题导致消息积压,性能问题解决后数据挤压问题逐步得到缓解直到恢复正常水平;
  2. 数据处理层因为消费程序bug导致程序崩溃,重启后数据消费正常;

稳定性保障

  • 任务压测

提前压测应对流量高峰期,特别是大促场景下,提前做好资源保障、任务优化等措施。

  • 任务分级

制定保障等级,从任务影响面大小、数据使用方来划分,一般情况公司层面优先于部门层面,外部使用优先于内部使用,高优先级任务需要优先/及时响应、必要情况下做双链路保障机制。

  • 做好指标监控

指标监控,监控任务failover情况、checkpoint指标、GC情况、作业反压等,出现异常告警。

  • 高可用HA

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

  • 监控预警

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

  • 自动运维

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

回到问题本身

再回答问题本身,我们可以从下面三个方面回答:

  1. 事前

本问题是从数据质量角度产生的问题,可以从数据质量监控的角度,有必要的数据质量监控和对应的报警;

  1. 事中

在问题发生后,要有正确的SOP流程处理数据异常。例如,通过公告、默认值、开关等方法,降低数据质量带来的舆情影响;

  1. 事后

要进行数据修复。是否需要进行数据回溯,或者通过离线回补等方式进行修复。

当然这只是一个思路,你能结合工作中的具体场景,举例说明就更好啦。

如果这个文章对你有帮助,不要忘记 「在看」 「点赞」 「收藏」 三连啊喂!

2022年全网首发|大数据专家级技能模型与学习指南(胜天半子篇)

互联网最坏的时代可能真的来了

我在B站读大学,大数据专业

我们在学习Flink的时候,到底在学习什么?

193篇文章暴揍Flink,这个合集你需要关注一下

Flink生产环境TOP难题与优化,阿里巴巴藏经阁YYDS

Flink CDC我吃定了耶稣也留不住他!| Flink CDC线上问题小盘点

我们在学习Spark的时候,到底在学习什么?

在所有Spark模块中,我愿称SparkSQL为最强!

硬刚Hive | 4万字基础调优面试小总结

数据治理方法论和实践小百科全书

标签体系下的用户画像建设小指南

4万字长文 | ClickHouse基础&实践&调优全视角解析

【面试&个人成长】2021年过半,社招和校招的经验之谈

大数据方向另一个十年开启 |《硬刚系列》第一版完结

我写过的关于成长/面试/职场进阶的文章

当我们在学习Hive的时候在学习什么?「硬刚Hive续集」

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-11-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大数据技术与架构 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
实时数仓不保障时效还玩个毛?
懒癌患者福利,先说本文结论,通过以下两个指标就已经能监控和判定 90% 数据延迟、乱序问题了。
Spark学习技巧
2021/07/27
1.3K0
实时数仓不保障时效还玩个毛?
干货 | 实时数据架构与实践(用户画像篇)
业务中,随着各业务线业务的发展,逐渐对用户画像和实时数据这两部分的诉求越来越多。对用户画像方面,期望有更快、更准、更方便的人群筛选工具和方便的用户群体分析能力。对于实时数据方面,期望拥有可以实时响应的用户行为流,同时在算法特征、指标统计、业务外显等业务场景有愈来愈多的数据实时化的诉求。
小晨说数据
2022/03/09
2.2K0
干货 | 实时数据架构与实践(用户画像篇)
Flink 对线面试官(二):6k 字,8 个面试高频实战问题(没有实战过答不上来)
下面的答案都是博主收集小伙伴萌的答案 + 博主自己的理解进行的一个总结,博主认为是大家可以拿去细品的。
公众号:大数据羊说
2022/04/04
9240
Flink 对线面试官(二):6k 字,8 个面试高频实战问题(没有实战过答不上来)
快手实时数仓保障体系研发实践
摘要:本文整理自快手实时计算数据团队技术专家李天朔在 Flink Forward Asia 2021 实时数仓专场的演讲。主要内容包括:
从大数据到人工智能
2022/06/27
8310
快手实时数仓保障体系研发实践
50000字,数仓建设保姆级教程,离线和实时一网打尽(理论+实战) 下
本文上半部分之前已经发过了,传送门:50000字,数仓建设保姆级教程,离线和实时一网打尽(理论+实战) 上
五分钟学大数据
2022/04/07
2.8K0
50000字,数仓建设保姆级教程,离线和实时一网打尽(理论+实战) 下
实时数仓:实时数仓3.0的演进之路
传统意义上我们通常将数据处理分为离线数据处理和实时数据处理。对于实时处理场景,我们一般又可以分为两类,一类诸如监控报警类、大屏展示类场景要求秒级甚至毫秒级;另一类诸如大部分实时报表的需求通常没有非常高的时效性要求,一般分钟级别,比如10分钟甚至30分钟以内都可以接受。
Freedom123
2024/03/29
6780
实时数仓:实时数仓3.0的演进之路
《Flink 对线面试官》3w 字、6 大主题、30 图、36 个高频问题!(建议收藏)
兄弟们,在 18w 字《Flink SQL 成神之路》之后,我的另一篇《Flink 对线面试官》申请出战!
公众号:大数据羊说
2022/05/17
2K0
《Flink 对线面试官》3w 字、6 大主题、30 图、36 个高频问题!(建议收藏)
20000字详解大厂实时数仓建设(好文收藏)
目前各大公司的产品需求和内部决策对于数据实时性的要求越来越迫切,需要实时数仓的能力来赋能。传统离线数仓的数据时效性是 T+1,调度频率以天为单位,无法支撑实时场景的数据需求。即使能将调度频率设置成小时,也只能解决部分时效性要求不高的场景,对于实效性要求很高的场景还是无法优雅的支撑。因此实时使用数据的问题必须得到有效解决。
五分钟学大数据
2022/02/12
5.4K0
20000字详解大厂实时数仓建设(好文收藏)
数据资产治理-元数据采集那点事
数据资产治理(详情见:数据资产,赞之治理)的前提要有数据。它要求数据类型全、量大,并尽可能多地覆盖数据流转的各个环节。元数据采集就变得尤其重要,它是数据资产治理的核心底座。
用户1278550
2020/12/31
3K0
数据资产治理-元数据采集那点事
B站基于Hudi+Flink打造流式数据湖的落地实践
上图展示了当前B站实时数仓的一个简略架构,大致可以分为采集传输层、数据处理层,以及最终的AI和BI应用层。为保证稳定性,数据处理层是由以实时为主,以离线兜底的两条链路组成,即我们熟知的批流双链路。
ApacheHudi
2023/09/04
1.4K0
B站基于Hudi+Flink打造流式数据湖的落地实践
美团配送实时特征平台建设实践
导读:2019年5月,美团正式推出新品牌「美团配送」,升级配送开放平台。那你知道支撑美团配送大脑的实时特征平台是如何建设的吗?如何实现每分钟生产千万级的实时特征?如何在70w+QPS的场景下实现4个9响应耗时在50毫秒的需求?本文将为大家介绍配送实时特征平台的发展历程,关键技术和实践经验。
Houye
2021/01/27
1.5K0
美团配送实时特征平台建设实践
算法基石:实时数据质量如何保障?
搜索数据流程如下图所示,从内容生产到生成索引经历了复杂的数据处理流程,中间表多达千余张,实时数据消费即消失,难以追踪和复现。
IT大咖说
2020/02/21
1.5K0
算法基石:实时数据质量如何保障?
如何设计实时数据平台(设计篇)
导读:本文将会分上下两篇对一个重要且常见的大数据基础设施平台展开讨论,即“实时数据平台”。
宜信技术学院
2019/06/28
3.9K0
如何设计实时数据平台(设计篇)
Flink程序设计之道
软件架构的复杂性通常并不是由功能性需求来决定,而是取决于非功能性需求,例如高性能、高可用、易扩展、易运维、低成本等要求,功能性需求通常是易于实现的,但是为了满足非功能性需求需要去做不同的技术方案选型对比、架构设计等,比喻说为了实现高性能,要去做缓存、分库分表、预计算、异步等方案,这些方案会提高系统的复杂程度。对于Flink程序开发同样会面临这些问题,在设计、实现之初除了需要考虑如何满足功能性需求外,还需要考虑性能、容错等非功能需求。本文将结合自己的实际开发经验从以下几个方面来介绍做一个实时Flink程序设计需要关注的一些问题:
Flink实战剖析
2022/04/18
3550
应用实践|知乎用户画像与实时数据的架构与实践
用户画像与实时数据分析是互联网企业的数据核心。知乎数据赋能团队以 Apache Doris 为基础,基于云服务构建高响应、低成本、兼顾稳定性与灵活性的实时数据架构,同时支持实时业务分析、实时算法特征、用户画像三项核心业务流,显著提升对于时效性热点与潜力的感知力度与响应速度,大幅缩减运营、营销等业务场景中的人群定向成本,并对实时算法的准确率及业务核心指标带来明显增益。
从大数据到人工智能
2022/05/27
8220
应用实践|知乎用户画像与实时数据的架构与实践
实时数仓建设思考与方案记录
随着我司业务飞速增长,实时数仓的建设已经提上了日程。虽然还没有正式开始实施,但是汲取前人的经验,做好万全的准备总是必要的。本文简单松散地记录一下想法,不涉及维度建模方法论的事情(这个就老老实实去问Kimball他老人家吧)。
大数据真好玩
2021/05/28
1K0
实时数仓建设思考与方案记录
亿级大表毫秒关联,荔枝微课基于腾讯云数据仓库Doris的统一实时数仓建设实践
腾讯云数据仓库 Doris 助力荔枝微课构建了规范的、计算统一的实时数仓平台。目前腾讯云数据仓库 Doris 已经支撑了荔枝微课内部 90% 以上的业务场景,整体可达到毫秒级的查询响应,数据时效性完成 T+1 到分钟级的提升,开发效率更是实现了 50% 的增长,满足了各业务场景需求、实现降本提效,深得十方融海各数据部门高度认可。
腾讯QQ大数据
2023/07/27
7450
亿级大表毫秒关联,荔枝微课基于腾讯云数据仓库Doris的统一实时数仓建设实践
vivo 实时计算平台建设实践
vivo 实时计算平台是 vivo 实时团队基于 Apache Flink 计算引擎自研的覆盖实时流数据接入、开发、部署、运维和运营全流程的一站式数据建设与治理平台。
2020labs小助手
2023/01/04
1.1K0
数据湖技术在抖音近实时场景的实践
首先,数据湖可存储海量、低加工的原始数据。在数据湖中开发成本较低,可以支持灵活的构建,构建出来的数据的复用性也比较强。
从大数据到人工智能
2022/11/30
8210
数据湖技术在抖音近实时场景的实践
抖音集团基于 Apache Doris 的实时数据仓库实践
在直播、电商等业务场景中存在着大量实时数据,这些数据对业务发展至关重要。而在处理实时数据时,我们也遇到了诸多挑战,比如实时数据开发门槛高、运维成本高以及资源浪费等。
SelectDB技术团队
2024/06/26
4530
推荐阅读
相关推荐
实时数仓不保障时效还玩个毛?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档