一、引言
随着互联网业务的快速发展,实验平台在产品优化、功能迭代等方面发挥着越来越重要的作用。本文将开启一个新的系列:互联网实验平台设计,结合过往工作中实验平台涉及的一些原理、实践和经验,希望对从业同学有所帮助。
二、Google重叠实验框架概述
Google在2010年发表的论文《Overlapping Experiment Infrastructure more better faster Experimentation》中,提出了经典的流量管理框架,包括对实验流量、实验参数的管理。本文将重点介绍Google重叠实验框架的原理和实践。
三、Google重叠实验框架的四大优势
Google重叠实验框架通过在水平正交的实验层上创建实验,提升了实验的容量。通过Hash算法保证流量充分打散,避免了不同实验之间的影响。
通过参数管理支持更安全的实验(参数使用的互斥、推全等);通过流量提供的定向能力可以实现更好的流量圈选;通过不同实验类型的设置实现实验之间流量的互斥、正交。
实验框架和工程框架解耦合,提供了一种运行时的配置注入,实验配置可以通过layer、domain、parameter等不同粒度获取,降低了实验的开发成本,并提供了对不同工程框架的兼容。
支持快速的实验分析和结论,确保实验结论的科学性、可信性。
四、Google重叠实验框架的实现要点
Hash算法的选择需要兼顾性能和正交性,常用算法有murmur3、cityhash、md5等。Hash使用的seed尽量减少相关性。实际使用中,只有一次Hash分流的框架建议使用千分桶或者万分桶,支持多次Hash的框架建议直接使用百分桶。
建议优先分配最久未使用的分桶,最大程度减少前序实验的延滞效应对新实验的影响。实验层支持定期shuffle,将流量重新打散。
实验框架通过Hash路径管理,Hash次数越多提供的流量控制越精细,但分流效率和流量框架的管理和理解复杂度也越高。需要慎重权衡。Google重叠框架提供了a-d四种选项,通常的实验需求Figure C基本可以满足。
实验框架对业务框架的映射并提供稳定性,域名称、层名称、参数名称呼应业务框架。工程框架在请求实验框架获取实验配置时便于理解和集成。
实验框架提供参数的生命周期管理,从参数创建到实验中配置使用参数,到参数的推全(包括实验框架配置推全、工程框架代码推全)。参数值的管理,通过参数值的管理可以提供快捷、安全的配置并通过默认值实现推全控制。
更好的支持多参数实验(MVT multi-variate test)。
五、总结
Google重叠实验框架以其独特的优势,为互联网实验平台设计提供了新的思路。通过本文的介绍,我们了解了Google重叠实验框架的原理和实践,希望对从业同学在实际工作中有所启发。
版权免责声明: 本站内容部分来源于网络,请自行鉴定真假。如有侵权,违法,恶意广告,虚假欺骗行为等以上问题联系我们删除。
本文地址:https://www.81396.com/article/466.html