论文部分内容阅读
随着互联网用户规模的增加,互联网广告行业也在迅速发展。近几年出现的广告实时竞价的模式与传统广告投放模式有很大区别。RTB广告(实时竞价广告)使广告投放的重心转移到受众身上,通过对用户数据的搜集和用户属性的挖掘,来实现广告投放效果的最大化。RTB广告近几年在美国发展迅速,并于2012年由谷歌公司引入中国。DSP是RTB广告投放系统中的买方平台。DSP为广告商提供管理广告的功能,同时DSP搜集互联网受众的信息,从大量受众数据中分析出受众的兴趣、购物倾向等属性,再根据这些属性进行针对性的广告投放,以提升广告效果。根据受众属性和兴趣投放广告,是DSP业务的核心竞争力。其中用于存放受众数据的存储系统必须有良好的可伸缩性,传统关系数据库在可伸缩性方面很难满足DSP的要求,所以设计合理的并且拥有良好的可伸缩性的大数据存储方案显得尤为重要。DSP系统中使用键值存储策略来存放受众数据。DSP系统中的受众数据在广告投放过程中将不断的增多,因此受众数据的存储系统必须拥有良好的可扩展性,同时还要有良好的查询性能。本文研究了目前存在的一些常见的键值数据库,设计了适合本DSP系统的键值存储方案。键值存储的关键问题是数据划分、数据备份和负载均衡。本文使用改进的一致性哈希算法解决数据划分问题。引入虚拟节点的概念,数据主键与物理存储节点的映射过程分为两个步骤,第一步将数据主键通过一致性哈希算法映射到虚拟节点,第二步以虚拟节点为单位完成其与物理数据节点的映射。传统的一致性哈希算法难以实现动态负载均衡,本文的负载均衡算法是以虚拟节点为单位进行的,使动态负载均衡的实现成为可能。DSP系统的主要用户是广告商和广告代理商。广告商上传广告到DSP系统,为广告定制投放定向和投放计划,DSP系统根据广告投放计划为用户投放广告。DSP为广告商提供了地域定向、语言定向和设备定向等七种定向,并综合多种因素对广告请求进行出价。DSP系统的前端界面使用了三级菜单,将系统功能充分展示在用户面前,为用户提供友好的使用界面。在架构上尽量减少网页的深度,使开发逻辑清晰。DSP使用多个广告竞价服务器处理竞价请求,利用web服务器将高频率的竞价请求分散到各个竞价服务器,来达到应用级别的负载均衡。