当前位置: 首页 > 科技观察

AdMaster刘哲:AdMaster的Lambda架构实践

时间:2023-03-12 22:22:48 科技观察

【.com原稿】2016年11月25-26日,WOT2016大数据峰会在北京JW万豪酒店举行。50多位大数据领域一线专家、数据技术先驱齐聚现场,分享大数据领域的最新实践和热点问题,同时就大数据等前沿技术话题进行深入交流和探讨数据智能、大数据业务、区块链、实时计算、系统架构、NoSQL行业应用。在WOT2016大数据技术峰会系统架构分会场,AdMaster高级架构师刘哲发表了演讲。他演讲的主题是AdMaster的Lambda架构实践。会后,记者对他进行了实地采访。【答主介绍】刘哲·AdMaster高级架构师刘哲(ZheLiu),现任架构师,主要负责数据处理、高性能高可用分布式架构设计、DSL的全流程技术支持语言抽象,Hadoop/HBase/Storm/Spark等大数据平台优化。2010年硕士毕业后,刘哲进入百度工作,负责当时全球最大的Hadoop平台的运维开发。2011年底加入人民搜索,任运维代理总监。在近7年的大学生活和近5年的工作经历中,刘哲一直追求简单直接,专注于数据挖掘/大数据/DSL/系统架构,对分布式计算/分布式架构和编程有着独特的热情钟语,多次受邀/sparksummit/into100summit,与嘉宾分享Hadoop/spark/开源软件等相关经验。Lambda架构从何而来?他是由Storm的作者NathanMarz提出的,作为实时大数据处理的框架。Marz在Twitter工作期间开发了著名的实时大数据处理框架Storm,Lambda架构是基于他多年的分布式大数据系统经验提炼出来的。当记者问起当初选择Lambda架构的原因时,刘哲回答说:“其实我们并没有选择Lambda,但是我们用了这个架构之后,发现这个东西就叫Lambda。”在Lambda架构的基础上开发Lambda架构由于其高容错、低延迟、可扩展性等优点,被众多数据公司所选择。刘哲在采访中表示,如果要对大数据集进行实时、快速、准确的查询和计算操作,可以使用Lambda架构分解出来的三层架构来处理。三层架构分别是BatchLayer、SpeedLayer和ServingLayer。AdMaster并没有改变Lambda架构的三层主体,只是在数据访问层做了一些增强以保证数据的完整性,并针对这部分AdMaster开发了自己的系统。在数据处理方面,如果用户的数据是不可变的,就可以做到实时覆盖。如果用户的业务不能接受,数据是可变的,那么就做不到实时覆盖。Lambda架构用于广告、社交和其他业务。当被问及Lambda架构可以支持哪些业务时,刘哲先生表示,对于广告线,可以集中管理、执行、监控和跟踪在线广告活动,并提供监控数据。用户可以方便、快捷地及时获取曝光、点击、频次、iGRP、广告覆盖人数等信息。在社交方面,可以实时掌握品牌舆情和负面信息预警。Lambda架构的缺点和后期运维难刘哲说,Lambda架构最大的缺点就是一个代码要写两遍。如果下次升级用户业务或者用户算法,会涉及到两个算法的修改。.批处理与实时处理的修改有很大不同。针对这个问题,社区提出了Apahcebeam和kappa两种解决方案,但都还不成熟。AdMaster目前还是基于Lambda架构。针对这一短板,AdMaster在后期运维中从算法、架构、数据等方面增加了算法和模块的复用,确保只需要重写架构相关的部分,而算法和数据保持原样,计算出来的方面可以直接使用。重复可以被最小化。刘哲先生在接受***采访时表示:“目前看来,Lambda架构能够满足AdMaster自身业务线的需求,基本上会一直沿用到某一天,社区真的有***集成方案,可以考虑“。【原创稿件,合作网站转载请注明原作者和出处为.com】