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

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

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

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

原问题是:

早晨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 删除。

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
《数据中台隐性故障的排查逻辑与工程化避坑策略》
数据中台建设领域中,最棘手的故障往往藏在“数据流转的暗线”中—它们不源于代码语法错误,而是源于数据同步延迟、计算逻辑冲突或存储引擎特性的隐性矛盾。这些故障可能导致数据报表失真、业务决策偏差,且排查时需穿透“采集-计算-存储-服务”全链路,难度远超常规开发问题。本文基于[数据处理框架]、[分布式存储系统]及[离线+实时混合计算环境],复盘三个真实的数据中台隐性故障案例,拆解从现象定位到根源解决的完整路径,提炼可复用的工程化避坑指南。
程序员阿伟
2025/08/28
1370
《数据中台隐性故障的排查逻辑与工程化避坑策略》
实时数仓和离线数仓还分不清楚?看完就懂了
实时数仓?离线数仓?是不是经常听到这两个词,却总有点分不清它们到底有啥不一样?别担心,这几乎是每个数据新手都会遇到的困惑。简单来说,它们最核心的区别就在于“快慢”和“怎么处理数据”。 这篇文章就用最直白的语言,带你快速搞懂两者的定义、特点、常用技术和应用场景,三分钟让你心里明明白白!
帆软BI
2025/08/18
2350
数据管理四部曲:元数据管理、数据整合、数据治理、数据质量管控
业务部门要的报表对不上口径,技术团队查个数据血缘要花三天,新来的同事猜不出业务含义……
帆软BI
2025/09/03
2640
Hadoop与实时计算集成:Lambda架构实践经验
去年双十一大促前夕,我们团队面临一个典型困境:用户行为分析系统依赖Hadoop批处理链路,但运营部门要求实时生成用户画像用于动态营销。当MapReduce作业还在处理凌晨2点的数据时,业务方已经焦急地追问“为什么3点的促销效果无法追踪”。这让我深刻意识到:离线计算的“完整但滞后”与实时计算的“快速但片面”之间,存在无法调和的矛盾。
Jimaks
2025/09/19
1541
Hadoop与实时计算集成:Lambda架构实践经验
数据资产与治理:浅谈数据血缘的作用与价值
在数据资产管理与数据治理领域,数据之间的血缘关系是一个绕不开的话题,数据血缘的完备程度也是评价一个企业数据中台成熟度的重要度量之一。到底什么是数据血缘,它对于数据工作者和数据使用者有哪些举足轻重的作用呢?
数据干饭人
2022/12/05
1.5K0
数据资产与治理:浅谈数据血缘的作用与价值
Flink 对线面试官(二):6k 字,8 个面试高频实战问题(没有实战过答不上来)
下面的答案都是博主收集小伙伴萌的答案 + 博主自己的理解进行的一个总结,博主认为是大家可以拿去细品的。
公众号:大数据羊说
2022/04/04
9780
Flink 对线面试官(二):6k 字,8 个面试高频实战问题(没有实战过答不上来)
实时数仓不保障时效还玩个毛?
懒癌患者福利,先说本文结论,通过以下两个指标就已经能监控和判定 90% 数据延迟、乱序问题了。
Spark学习技巧
2021/07/27
1.3K0
实时数仓不保障时效还玩个毛?
干货 | 实时数据架构与实践(用户画像篇)
业务中,随着各业务线业务的发展,逐渐对用户画像和实时数据这两部分的诉求越来越多。对用户画像方面,期望有更快、更准、更方便的人群筛选工具和方便的用户群体分析能力。对于实时数据方面,期望拥有可以实时响应的用户行为流,同时在算法特征、指标统计、业务外显等业务场景有愈来愈多的数据实时化的诉求。
小晨说数据
2022/03/09
2.3K0
干货 | 实时数据架构与实践(用户画像篇)
50000字,数仓建设保姆级教程,离线和实时一网打尽(理论+实战) 下
本文上半部分之前已经发过了,传送门:50000字,数仓建设保姆级教程,离线和实时一网打尽(理论+实战) 上
五分钟学大数据
2022/04/07
3K0
50000字,数仓建设保姆级教程,离线和实时一网打尽(理论+实战) 下
《Flink 对线面试官》3w 字、6 大主题、30 图、36 个高频问题!(建议收藏)
兄弟们,在 18w 字《Flink SQL 成神之路》之后,我的另一篇《Flink 对线面试官》申请出战!
公众号:大数据羊说
2022/05/17
2.2K0
《Flink 对线面试官》3w 字、6 大主题、30 图、36 个高频问题!(建议收藏)
数据资产治理-元数据采集那点事
数据资产治理(详情见:数据资产,赞之治理)的前提要有数据。它要求数据类型全、量大,并尽可能多地覆盖数据流转的各个环节。元数据采集就变得尤其重要,它是数据资产治理的核心底座。
用户1278550
2020/12/31
3K0
数据资产治理-元数据采集那点事
20000字详解大厂实时数仓建设(好文收藏)
目前各大公司的产品需求和内部决策对于数据实时性的要求越来越迫切,需要实时数仓的能力来赋能。传统离线数仓的数据时效性是 T+1,调度频率以天为单位,无法支撑实时场景的数据需求。即使能将调度频率设置成小时,也只能解决部分时效性要求不高的场景,对于实效性要求很高的场景还是无法优雅的支撑。因此实时使用数据的问题必须得到有效解决。
五分钟学大数据
2022/02/12
5.5K0
20000字详解大厂实时数仓建设(好文收藏)
实时数仓:实时数仓3.0的演进之路
传统意义上我们通常将数据处理分为离线数据处理和实时数据处理。对于实时处理场景,我们一般又可以分为两类,一类诸如监控报警类、大屏展示类场景要求秒级甚至毫秒级;另一类诸如大部分实时报表的需求通常没有非常高的时效性要求,一般分钟级别,比如10分钟甚至30分钟以内都可以接受。
Freedom123
2024/03/29
8240
实时数仓:实时数仓3.0的演进之路
快手实时数仓保障体系研发实践
摘要:本文整理自快手实时计算数据团队技术专家李天朔在 Flink Forward Asia 2021 实时数仓专场的演讲。主要内容包括:
从大数据到人工智能
2022/06/27
8620
快手实时数仓保障体系研发实践
算法基石:实时数据质量如何保障?
搜索数据流程如下图所示,从内容生产到生成索引经历了复杂的数据处理流程,中间表多达千余张,实时数据消费即消失,难以追踪和复现。
IT大咖说
2020/02/21
1.5K0
算法基石:实时数据质量如何保障?
日均百亿级日志处理:微博基于Flink的实时计算平台建设
黄鹏,微博广告实时数据开发工程师,负责法拉第实验平台数据开发、实时数据关联平台、实时算法特征数据计算、实时数据仓库、实时数据清洗组件开发工作。
Spark学习技巧
2019/11/15
1.8K0
Flink程序设计之道
软件架构的复杂性通常并不是由功能性需求来决定,而是取决于非功能性需求,例如高性能、高可用、易扩展、易运维、低成本等要求,功能性需求通常是易于实现的,但是为了满足非功能性需求需要去做不同的技术方案选型对比、架构设计等,比喻说为了实现高性能,要去做缓存、分库分表、预计算、异步等方案,这些方案会提高系统的复杂程度。对于Flink程序开发同样会面临这些问题,在设计、实现之初除了需要考虑如何满足功能性需求外,还需要考虑性能、容错等非功能需求。本文将结合自己的实际开发经验从以下几个方面来介绍做一个实时Flink程序设计需要关注的一些问题:
Flink实战剖析
2022/04/18
3740
美团配送实时特征平台建设实践
导读:2019年5月,美团正式推出新品牌「美团配送」,升级配送开放平台。那你知道支撑美团配送大脑的实时特征平台是如何建设的吗?如何实现每分钟生产千万级的实时特征?如何在70w+QPS的场景下实现4个9响应耗时在50毫秒的需求?本文将为大家介绍配送实时特征平台的发展历程,关键技术和实践经验。
Houye
2021/01/27
1.5K0
美团配送实时特征平台建设实践
应用实践|知乎用户画像与实时数据的架构与实践
用户画像与实时数据分析是互联网企业的数据核心。知乎数据赋能团队以 Apache Doris 为基础,基于云服务构建高响应、低成本、兼顾稳定性与灵活性的实时数据架构,同时支持实时业务分析、实时算法特征、用户画像三项核心业务流,显著提升对于时效性热点与潜力的感知力度与响应速度,大幅缩减运营、营销等业务场景中的人群定向成本,并对实时算法的准确率及业务核心指标带来明显增益。
从大数据到人工智能
2022/05/27
8750
应用实践|知乎用户画像与实时数据的架构与实践
实时数仓建设思考与方案记录
随着我司业务飞速增长,实时数仓的建设已经提上了日程。虽然还没有正式开始实施,但是汲取前人的经验,做好万全的准备总是必要的。本文简单松散地记录一下想法,不涉及维度建模方法论的事情(这个就老老实实去问Kimball他老人家吧)。
大数据真好玩
2021/05/28
1.1K0
实时数仓建设思考与方案记录
推荐阅读
相关推荐
《数据中台隐性故障的排查逻辑与工程化避坑策略》
更多 >
领券
一站式MCP教程库,解锁AI应用新玩法
涵盖代码开发、场景应用、自动测试全流程,助你从零构建专属AI助手
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档