畅思大讲堂第一课:广告平台的数据的那些事儿

      移动广告平台在移动广告行业发展进程上起着重要的促进作用,作为广告主、开发者和用户间的纽带,市场要求移动广告平台必须拥有更领先的技术、更优质的资源、更创新的服务模式。如何让广告主获得最好的流量,如何让开发者获得最高的变现,如何让用户看到不会拒绝的内容,是移动广告平台时刻在思考的问题。

      作为业内覆盖流量最多的移动广告平台,来听听畅思广告技术专家的解答,移动广告平台是怎样有条不紊又高效合理的整合整个市场流量走向的。

畅思广告数据中心
       在现今DT时代,数据中心作为企业数据的集散地,既要保证数据的准确性、及时性、可靠性,也需要对数据的价值进行深度发掘,从而推动整个公司业务的发展。

      不同的领域对数据中心的职责有不同的划分,本文主要介绍畅思广告数据平台的搭建以及改进,希望与大家共同学习交流。

      本文只是一篇概述性的文档,后面的一系列文章会分模块对数据平台的各个部分进行详细深入的介绍。
      畅思数据平台每天接收到的数据量有3TB,每天有近万个数据分析及挖掘任务运行,同时支持广告平台、媒体分析平台、数据追踪等多条业务线;对外则提供了每天billion级别访问量的用户标签及CTR服务接口。畅思的集群目前不到100台,可靠性现在可以达到5个9(99.999%),并且支持数据及指标自动监测回溯。

      首先看下畅思数据中心的整体部署及分层图


 
图一 畅思数据中心部署图

 
图二 畅思数据中心分层示意图

      数据中心一般有四个主要组成部分。基础支撑、BI系统、数据分析挖掘、数据展示。下面分部分进行介绍

      1. 基础支撑
       数据中心,为高效的完成数据的收集、存储、分析、展示,稳定高效的基础支撑非常重要。

       目前市面上可用的产品比较多,商业化的有Oracle,IBM InfoSphere,InfoBright,阿里云,AWS等存储,开源的有Hadoop,Cassandra,Hbase等存储。

       如图2所示,畅思数据中心主要基于Hadoop生态圈,以及其他开源软件进行搭建。

       数据中心通过分析挖掘,会产生大量的挖掘结果,不同的用户层次有不同的挖掘结果,广告、媒体等粗粒度的用户还好,对于单个用户的挖掘结果,数量级非常大,如何保证这类用户的挖掘结果能被及时有效的访问到,是大部分数据中心必须解决的问题之一。畅思选用自建的KVCluster集群进行挖掘内容的存储以及对外服务;畅思的kv集群主要基于Zookeeper进行集中式资源管理及分区调度,目前可自动加入到集群中的NoSql类型有Hbase、Redis、Ssdb以及Tair,通过集中化管理的方法可以统一调配这些kv分组,在保证满足业务需求的同时,大大降低Kv的部署及运维成本。

      2. BI系统
      BI系统,主要提供数据收集、处理、入库、访问接口的大型服务。目前业内比较流行的BI系统不管是商用的还是开源的有很多;考虑到广告平台本身的业务逻辑以及成本问题,畅思是基于Hadoop自己构建的BI系统,分数据收集、ETL、存储入库、调度四个部分。

       2.1 数据收集
       畅思的数据源包括三大类:第一方数据(广告主、媒体回传的用户行为数据),第二方数据(广告平台展示、点击、激活等数据),第三方数据(其他平台合作数据)。

       第一方数据,可以通过SDK采集、广告主回调等方式进行数据的收集;第二方数据可直接通过内网进行互传;第三方数据一般采用API、第三方存储(AWS S3, 阿里云存储)、RSYNC等方式进行批量传输的方式进行同步。

      畅思目前的解决方案入图三所示

 
图三 日志收集示意图

        第一方和第二方数据。离线分析,采用批量传输和获取的方式进行数据收集;实时分析,则使用APIlume进行数据的收集。第三方数据,一般通过第三方可靠性存储作为媒介来获取,而对于第三方需要实时获取信息的,则采用API的方式进行通信。

       2.2 日志ETL
       针对第一方、第二方数据。提供配置控制功能,ETL对于不同类型的数据根据配置文件使用不同的解析、转换、加载的逻辑;注意,需要考虑ETL数据解析各个阶段以及后续处理各个阶段之间的时间同步,目前chance直接在同步标识存入到kv中,以进行同步。可替换为使用消息队列进行同步,不同的逻辑使用不同的队列,在解耦处理逻辑的同时,保证数据处理的有序性。

       2.3 数据存储入库
       畅思选用Hadoop生态圈作为存储以及计算的基本工具,并基于原生的Hadoop进行了定制化开发,满足广告业务在稳定性、扩展性以及安全性方面的需求。

      在使用层次上,用HDFS分用户存储原始数据,对ETL之后产生的格式化数据,按照事先定义好的分区加载到Hive表中。

      2.4 BI系统任务调度
      数据仓库数据录入完毕之后,业务方就可以访问库中的数据,计算分析各类指标;为保证服务的可靠性以及数据的安全性,畅思基于数据仓库构建了可视化的调度系统。

      主要的流程如图四所示:

 图四 BI系统调度平台

      3. 数据分析与挖掘

      3.1 数据分析
      目前畅思的数据分析服务包括三个部分:广告平台的运营分析、媒体运营分析以及数据管理调度平台。

      广告平台运营分析。分权限分角色,对广告平台上各个项目在不同环境下在各个流量端的展示、点击、激活、平台支出,平台收入等进行统计分析;

      游戏运营平台。主要对媒体应用的新增、活跃,付费,留存,TAD,流失,回流等运营指标进行分析,上述指标可以分渠道、分活动、分项目进行深层次分析,以评估各个广告推广活动带来用户的质量;

      数据管理平台。为了提高运营、商务等的工作效率,畅思数据中心提供数据管理功能。用户可以分权限在该平台上提交数据到数据仓库或者不同的数据存储,用户可以根据这些数据分析产生结果,并可以将这些数据或者数据结果开放给其他用户使用;用户也可以根据数据中心分配的权限,从数据仓库中分析产生结果。

     3.2 数据挖掘
     基于三方数据深挖数据价值。

     包括五个部分:反作弊,用户标签,媒体/用户质量评估,CTR预测,Lookalike。

     3.2.1 反作弊
     广告行业,流量端作弊十分常见,如何过滤掉这部分假量,对于广告主以及平台来讲至关重要。畅思作为业内第一家使用并推广反作弊的企业,在反作弊方面有许多成熟的积累。目前畅思反作弊包括规则策略以及模型两部分。规则策略主要是对固定的作弊模式进行直接查杀,目前畅思反作弊系统的规则策略大概有30大项,可以有效过滤一大批“小白”作弊用户;反作弊模型则是根据已发现作弊用户的行为,提取作弊用户的特征,用机器学习的方法尽早发现作弊用户,减少平台以及广告主的损失。

     规则策略流程如图五所示,模型策略如图六所示。

 
图五 反作弊规则流程图
 
图六 反作弊模型流程图

       反作弊模型与规则策略相辅相成,可以通过反作弊模型发现新的作弊模式,然后结合行为序列发掘,归结为固定的规则,可进一步丰富规则策略;而规则策略,对于已查杀的用户,分析其被杀掉之前的行为,可有效丰富反作弊需要的样本,进一步提高反作弊模型的泛化能力。

       3.2.2 用户标签
       对用户进行精准化投放的基础。用户的标签分为静态标签和动态标签,静态标签主要指用户的性别,年龄,地域等信息,动态标签主要是用户的兴趣标签。

       目前畅思数据中心有效的标签量在几千个,并且提供了可定制化功能开放给广告主使用,广告主可以根据自己的需求,定义自己的标签,用定制的标签来指导投放。
       定制化标签可以基于关键词,也可以基于已有标签进行逻辑计算获得,畅思支持的逻辑运算有与,或,非,加,减等。

       3.2.3 媒体/用户质量评估
       有了用户标签、用户在广告平台中的行为信息、用户在媒体应用上的行为信息,畅思数据平台对媒体流量以及用户进行了分级。
      媒体质量,分类别、分效果计算出各个媒体的基础得分,对质量不同的媒体,指导广告投放平台进行区别投放。

      用户质量,采用聚类的方法对用户进行人群划分,对各个群体进行广告效果、活跃度等多方面的评估,得到各类人群的评分。

       3.2.4 CTR预测
       基于用户的画像信息,媒体流量信息,广告项目信息等多种特征,进行点击率预测。目前采用的特征有600+,使用的基础模型是LR,采用LR的主要原因是移动广告平台用户受媒体或者渠道切入流量的限制,信息过于稀疏,对于特征的提取,进行了较多的人工介入,后续我们也会尝试在LR中加入特征选择的步骤,提高训练及调优效率。

       3.2.5 Lookalike
       相似用户发现,主要根据广告主或者投放项目反馈回来的用户信息,进行同类用户的精准投放。Lookalike发现的方法有两大类:有监督训练获取以及无监督训练获取。有监督获取采用分类的方法进行用户发现,该类方法的优点的准确度高,缺点是得到的用户覆盖面不够,并且负样本不太容易收集;无监督获取主要采用聚类的方法对用户进行分群,然后根据群体的信息,从用户库中获取类似的用户,该类方法的优点是得到的用户覆盖面较广,并且得到的用户在行为上符合某类分布,对异常用户不敏感,缺点是需要的训练样本比较多,对于比较大的投放项目比较合适。目前,畅思主要以无监督的方法为基础,对同一个项目下的用户进行人群切分,然后去积累的用户系统中获取相似的用户。

       4. 数据可视化
       数据可视化作为数据分析结果以及数据挖掘结果呈现的重要媒介,在数据平台产品化方面起着非常重要的作用。目前畅思数据可视化主要包括三个平台:广告运营指标可视化,媒体运营可视化,数据管理可视化。各平台的介绍可以看数据分析部分的内容。

       广告运营指标可视化,主要提供各类指标,指标同比/环比对比等分析功能,如图七所示:


图七 畅思平台数据运营中心

       媒体运营可视化,主要是展示媒体运营中所使用的指标以及详细分析情况,如图:


 图八 畅思游戏运营平台示例

     数据管理可视化,主要提供用户获取数据、上传数据、分析数据的可视化接口,提高广告主或者运营的分析效率。