设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 手机 数据 公司
当前位置: 首页 > 服务器 > 安全 > 正文

微博广告分层实验平台(Faraday)架构实践(2)

发布时间:2021-01-18 16:32 所属栏目:53 来源:网络整理
导读:实验的策略配置信息通过策略分发机制来应用到线上生产环境. 为了最大程度地减少实验平台对生产环境的侵入性,这里采用了策略全局统一分发的方式来完成.生产环境只用在流量接入层请求实验平台,确定实验策略参数的取值

实验的策略配置信息通过策略分发机制来应用到线上生产环境. 为了最大程度地减少实验平台对生产环境的侵入性,这里采用了策略全局统一分发的方式来完成.生产环境只用在流量接入层请求实验平台,确定实验策略参数的取值,然后将确定的策略参数信息作为广告请求体的一部分,携带在广告请求参数中,一同下发给上游的各个服务器,每个服务器模块根据自己的需求情况进行获取对应的策略参数信息,进行广告精准投放计算.

实验环境供生产环境请求调用的模块称为法拉第实验 CORE.具体地,在广告请求的接入层 Router,由 Router 去请求法拉第 CORE.对于线上环境来说,策略实验的细节是透明的.换句话说,线上生产环境实际上是不关心当前是否正在进行着实验,以及正在进行着哪些实验;线上生产环境只关心从实验策略控制中心获取到所有托管于实验平台的策略参数的决策值.

法拉第实验 CORE 包括两种实现形式.一种是原生动态库.so 形式,这种嵌入到宿主服务内部,可以节约 I/O 通信消耗;另一种是 HTTP API 形式,这种提供了跨语言方式的支持.

 CORE

在法拉第实验 CORE 内部,需要对本次请求标识信息和全局的实时实验配置信息,依次对每个托管于实验平台的策略参数进行决策.对于正在进行实验的策略参数,根据实验层中每层选用的实验分流类型和分流配比,确定实验的命中情况,从而确定策略参数取值;对于当前没有进行实验的策略参数,则取其默认策略参数值. 最终,全部的参数都确定其取值,形成 k-v 对,连同当前流量的实验命中信息情况,反馈给生产环境 router 模块.

实验数据实时流和离线批处理

请求的实验信息会以 tag 的形式记录在生产环境的请求日志中,形如: layer1_layer2layer3…_layerN. 请求日志会落地到广告数据总线系统,再由广告实时流系统进行消费、数据清洗、实验效果指标计算等工作.由于广告系统是多业务指标系统,包括售卖率,ECPM,CTR,ACPE,负反馈率、财务消耗计算等.广告实时流系统还需要日志的关联工作,比如关联广告互动日志,广告负反馈日志.实时流的计算的结果,会落地到 druid 系统,方便实验效果数据的快速检索和二度加工.实验效果实时指标数据计算延迟控制在一定的范围内(5 分钟).

数据

由于实时日志可能会存在日志延迟、重复、丢失等情况,实时流系统的计算指标的准确性会难以保证.因此,对于非实时的指标数据,会启动离线批处理计算进行实验指标的校正,特别是对于非当天的历史实验指标数据,离线批处理会进行重新计算,形成最终准确的实验指标数据体系.

实验效果 dashboard 展示

实验效果 dashboard 展示采用了量化分析的方式,精确衡量实验间的效果对比情况.

实验间的对比,提供两种对比维度:一个是横向对比,这个进行同一个实验层中所有对比实验和基准实验间的各个指标的对比,以发现同时间区间各个实验的策略的对生产环境的影响;一个是纵向对比,是指定的对比实验和基准实验在时间纵向维度的效果对比,以发现该对比实验是否具体持续的效果提升 / 下降效果.实验效果跟踪横向对比图表和纵向对比图表展示效果如下:

dashboard

有时,为了更加详尽地洞察实验效果指标的更多细节,需要对实验指标按某一个维度进行分解,达到更小观测粒度.比如,微博用户在不同的设备平台(PC,安卓平台,IOS 平台)不一样的操作习惯和兴趣习惯,可以分平台粒度查看该对比实验在各个设备平台的实验指标变化情况;微博不同场景信息(关系信息流,兴趣信息流,热门搜索流等)的属性存在天然差别,部分策略在分场景流去分析时可能回更有意义;另外,也提供了分广告竞价类型的实验效果跟踪分析.

技术之外

最后需要提的是,实验平台在效果跟踪决策方面是有一定的局限性的.实验平台可以进行实验效果的快速跟踪,但是却很难进行实验效果好坏的决策.比如:如果对比实验效果指标值全部提高或下降了,可以简单认为对比实验的策略调整起正向作用或者反向作用;如果对比实验的实验效果指标值部分提高了,部分下降了,就不太好认定了.还有,实验效果的短期效应和长期效应也可能是不一致,这将大大增加了实验效果好坏的决策难度.

因此,实验平台是可以快速提升广告业务策略迭代效率的工具,但是要想进行实验好坏评定的决策,还需要很长的路要走.

为了弥补这个不足,可以成立一个实验平台评审委员会.通过非技术手段进行线下决策,包括实验的效果好坏评定,是否进行实验的发布,对生产环境的长期效应等一些列的决策.

作者介绍

李铁牛,目前就职于新浪微博广告平台部,粉丝通广告平台技术负责人.2011 年毕业于中国科学院大学,2012 年加入新浪微博,参与并主导了粉丝通,品牌速递,应用家,超级粉丝通等多个核心广告产品迭代开发和投放平台的架构设计工作,完成粉丝通广告架构由产品线型向平台型架构的转型,主导开发了 Faraday 分层实验平台. 目前,本人从事关于高并发、高性能、高可用的广告平台架构设计,以及广告投放策略研究和团队管理等工作.

文章来自微信公众号:细说云计算

(编辑:ASP站长网)

网友评论
推荐文章
    热点阅读