分析大数据时代下, AdMaster 运维架构的的发展阶段, 遇到的功能/性能/扩展性等方面的问题, 以及我们的解决方案, 其中包括对于开源软件的使用以及自主研究的探究, 对于高可用/可扩展的架构追求, 分享我们的的经验教训, 以及我们对于这些经验教训的积累成果。
刘喆(Zhe Liu),目前任现任架构师,主要负责数据处理的全流程技术支持, 高性能和高可用的分布式架构设计, DSL 语言抽象, Hadoop/HBase/Storm/Spark等大数据平台优化。2010年硕士毕业后, 刘喆在百度就职, 负责当时全球规模最大的 hadoop 平台的运维开发工作. 2011年底加入人民搜索, 代理运维总监。近7 年的大学生活和近 5 年的工作经历中, 刘喆一直在追求简单直接,关注于数据挖掘/大数据/DSL/系统架构, 对分布式计算/分布式架构和程序语言情有独钟, 曾多次被51CTO/spark 峰会/into100峰会等邀请为嘉宾分享Hadoop/spark/开源软件等相关经验。
Lambda架构从何而来?他是由Storm的作者Nathan Marz提出,针对个实时大数据处理的一个框架。Marz在Twitter工作期间开发了著名的实时大数据处理框架Storm,Lambda架构是其根据 多年进行分布式大数据系统的经验总结提炼而成。当记者问及最初选择Lambda架构的原由时,刘喆这样回答:“其实不是我们选了Lambda,而是我们用 了这个架构之后,发现这个东西叫Lambda。”
在Lambda架构基础上做开发
Lambda架构因为具备高容错、低延时和可扩展等优势,被很多数据公司选用。刘喆在采访中说道,想要实时又快又准的任意在大数据集上进行查询计算 等操作,可利用Lambda架构分解的三层架构来应对,这三层架构分别是Batch Layer,Speed Layer和Serving Layer。AdMaster并没有改变Lambda架构这三层主体,只是在数据接入层方面做一些增强,保证数据的完整性,针对这部分AdMaster开 发自己的系统。数据处理方面,如用户的数据是不可变就可做实时覆盖,如用户的业务不能接受,数据可变,那就不能做实时覆盖。
Lambda架构运用于广告、社交等业务
当问及Lambda架构都能支持哪些业务时,刘喆老师表示,对于广告线可集中管理、执行、监控和追踪网络广告活动,提供监测数据,用户可以方便快速地获取广告的曝光、点击、频次、iGRP、广告覆盖人群等信息。社交方面,可品牌舆情和负面信息预警实时掌握。
Lambda架构的缺点及后期运维难点
刘喆表示,Lambda架构最大缺点就是把一份代码写了两次,如果下一次升级用户业务,或者升级用户算法时,就涉及到两个算法的修改。在批量处理和 实时处理方面,修改是完全不一样的。社区针对这个问题提出两套方案Apahce beam和kappa,但尚未成熟,现在AdMaster还是以Lambda架构为主。针对这一缺点,AdMaster后期运维时从算法、架构、数据方 面,增加算法和模块重用,这样可以保障只需把架构相关部分重写,算法和数据保持原貌,对于计算过的方面直接用,可以最大限度的减少重复。
在采访最后,刘喆老师说道:“暂时看来,Lambda架构可以满足AdMaster自身业务线需求,基本上会继续沿用,直到某一天,社区真的出现了终极融合方案,可能会考虑”。
浏览7433次
浏览5253次
浏览4216次
浏览7657次
浏览9599次
浏览1401次
2025-01-08 昆明
2025-06-20 深圳
2025-04-19 南京
2025-08-15 上海
打开微信扫一扫,分享到朋友圈