Kafka集群在马蜂窝大数据平台的优化是怎样的
创始人
2024-12-22 23:01:09
0次

  Kafka是当下热门的消息队列中间件,它可以实时地处理海量数据,具备高吞吐、低延时等特性及可靠的消息异步传递机制,可以很好地解决不同系统间数据的交流和传递问题。

  Kafka在马蜂窝也有非常广泛的应用,为很多核心的业务提供支撑。下面将围绕Kafka在马蜂窝大数据平台的应用实践,介绍相关业务场景、在Kafka应用的不同阶段我们遇到了哪些问题以及如何解决、之后还有哪些计划等。

应用场景

  从Kafka在大数据平台的应用场景来看,主要分为以下三类:

  第一类是将Kafka作为数据库,提供大数据平台对实时数据的存储服务。从来源和用途两个维度来说,可以将实时数据分为业务端DB数据、监控类型日志、基于埋点的客户端日志(H5、WEB、APP、小程序)和服务端日志。

  第二类是为数据分析提供数据源,各埋点日志会作为数据源,支持并对接公司离线数据、实时数据仓库及分析系统,包括多维查询、实时DruidOLAP、日志明细等。

  第三类是为业务方提供数据订阅。除了在大数据平台内部的应用之外,我们还使用Kafka为推荐搜索、大交通、酒店、内容中心等核心业务提供数据订阅服务,如用户实时特征计算、用户实时画像训练及实时推荐、反作弊、业务监控报警等。

四个阶段

  早期大数据平台之所以引入Kafka作为业务日志的收集处理系统,主要是考虑到它高吞吐低延迟、多重订阅、数据回溯等特点,可以更好地满足大数据场景的需求。但随着业务量的迅速增加,以及在业务使用和系统维护中遇到的问题,例如注册机制、监控机制等的不完善,导致出现问题无法快速定位,以及一些线上实时任务发生故障后没有快速恢复导致消息积压等,使Kafka集群的稳定性和可用性得受到挑战,经历了几次严重的故障。

  解决以上问题对我们来说迫切而棘手。针对大数据平台在使用Kafka上存在的一些痛点,我们从集群使用到应用层扩展做了一系列的实践,整体来说包括四个阶段:

  第一阶段:版本升级。围绕平台数据生产和消费方面存在的一些瓶颈和问题,我们针对目前的Kafka版本进行技术选型,最终确定使用1.1.1版本。

  第二阶段:资源隔离。为了支持业务的快速发展,我们完善了多集群建设以及集群内Topic间的资源隔离。

  第三阶段:权限控制和监控告警。

  首先在安全方面,早期的Kafka集群处于裸跑状态。由于多产品线共用Kafka,很容易由于误读其他业务的Topic导致数据安全问题。因此我们基于SASL/SCRAM+ACL增加了鉴权的功能。

  在监控告警方面,Kafka目前已然成为实时计算中输入数据源的标配,那么其中Lag积压情况、吞吐情况就成为实时任务是否健康的重要指标。因此,大数据平台构建了统一的Kafka监控告警平台并命名「雷达」,多维度监控Kafka集群及使用方情况。

  第四阶段:应用扩展。早期Kafka在对公司各业务线开放的过程中,由于缺乏统一的使用规范,导致了一些业务方的不正确使用。为解决该痛点,我们构建了实时订阅平台,通过应用服务的形式赋能给业务方,实现数据生产和消费申请、平台的用户授权、使用方监控告警等众多环节流程化自动化,打造从需求方使用到资源全方位管控的整体闭环。

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...