下面根据DSP的系统构成还拆解讲解里面的各个模块,这一节将竞价系统,也就是竞价流程
0、负载均衡
增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。
1、ADX发起竞价请求
上面会携带User ID等用户信息和广告信息一大堆信息。
2、解析竞价请求,转为统一的数据格式和结构
DSP会收到来自很多ADX平台的竞价邀请,各家发送的信息不一,所以需要不同的ADX的竞价请求转化为内部统一,可识别的格式。
3、过滤竞价请求
a、根据是否在blacklist里面做筛选,可以将某些展示或流量的来源屏蔽掉,进入这个黑名单的往往都是表现不好的媒体或流量源,如花费高,转化低,那么就有理由怀疑流量质量有问题,可以选择性的过滤掉这部分的竞价请求。
b、基于历史数据判断,如某个ADX的成功率低,其实就价格高;ADX的流量质量不佳;网站历史的CTR低等而不参与竞价,有些甚至会基于用户的站内行为,对流量做更严格的筛选。
c、流量洪峰控制,对流量做控制,避免服务器过载,这个主要是节假日是流量暴增。
4、预处理
从解析的请求里面处理处一些特征,如广告位特征,广告主特征,方便后续的计算或筛选定位。
5、用户识别
去match table中查询对应的cookie,如果找不到,直接根据请求的特征信息去处理,而且后续需要做cookie mapping;
如果匹配得到,去用户中心查询用户的特征,再做处理。
6、匹配索引广告
用前面获取的用户特征,根据广告主在DSP上设置的时间,预算,用户类型,频次控制等投放策略做定向匹配,决定DSP内部广告主是否出价,如果符合要求就参与DSP内部竞价,如果不符合就放弃。
7、出价
出价多少主要是需要计算pCTV/pCVR,预估eCPM,RTB竞价里面基本上是按CPM的,虽然部分DSP支持CPC或CPA的方式出价, 但实际上是将CPC或CPA转化成CPM,本质还是CPM,如:
pCPC的预估出价 eCPM=1000*pCTR*CPC
CPC是广告主设定的,那么eCPM的准确与否就直接取决于DSP对CTR的预测是否准确的,预估的核心就转化为对CTR的预估了。
pCPA的预估出价 eCPM=1000*pCTR*pCVR*CPA
在这里除了CPA是固定的,pCRT 和pCVR都是需要预估的。
出价预估的的核心就转为需要计算pCTR和pCVR,这两个因素对收益影响最大,如果能够准确预估,那么将最高eCPM的胜出就是,就非常简单,但实际的情况是CTR的预估常常不准确,对于一个新的请求来说,缺少先验经验,也缺少数据,数据是离散,所以很难预估一个合理的CTR。竞价算法就各家不一,有的简单有的复杂,但都是为了尽可能的出的准确去获利。
8、DSP内部做竞价筛选,采用第一竞价,价高者的。
9、DSP发送出价响应。
整体的流程如下: