报表统计_广告投放统计_需求介绍 | 学习笔记

简介: 快速学习报表统计_广告投放统计_需求介绍

开发者学堂课程【2020版大数据实战项目之 DMP 广告系统(第五阶段)报表统计_广告投放统计_需求介绍】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/680/detail/11819


报表统计_广告投放统计_需求介绍

 

一、按照地域统计广告投放的分布情况

1、对整个框架抽取完以后,下面继续按照框架编写代码。刚才所说框架抽取的方式是一个比较简单,而且在实际工作场景当中很多场景下也能用到的,并且比较容易理解,比较易用的一个抽取的方式,是一个基础的,简单的抽取方式。接下来要进行一个功能,这个功能要统计广告投放在地区的分布情况。

image.png

2、刚才是统计数据在地区上的分布情况,接下来是统计广告投放在地区的分布情况,刚才是直接简单的 count 一下,现在就不能这样做了。要统计到广告投放的情况,这是第一点;第二点,在地区的分布情况。所以这个统计分为两大部分,第一部分是广告投放的情况统计,第二部分按照地区维度来统计广告投放的分布情况。

3、目标和步骤

(1)目标是了解广告在不同省市,不同地区的分布情况是怎样的?以便于看一看在某些地区的运营策有一些问题,或者自身存在什么样的问题,数据集有什么问题,能不能进行一些改善?

(2)步骤大致分为两大步,第一步是需求说明,第二步是代码编写。先了解第一步需求说明,需求说明当中先过一遍在这个统计当中所用到的字段。

4、需要用到的字段

(1)第一个字段叫做 requestmode,他指的是数据请求的方式,一般情况下,到达这边的请求有可能是三种情况,第一种是竞价的请求,就是一个请求,这个请求到了,请求做一些事情。第二种是展示,请求做一些展示,把广告展示在什么地方。第三种是点击,假如说媒体上有一个广告位,广告被点击了,也要接收到一个数据的请求告诉我们广告被点击了,可能会有相应的计价。

(2)第二个字段叫做 processnode,就是流程节点,在处理一个请求的时候可能会有很多流程。第一步可能是记录一下这个请求,计算一下这个请求,有这样一个请求;第二步要确定他是否是一个有效的请求,就是这个请求有没有用?有效请求当中也有一部分是系统管理的请求,系统管理上的请求是不要的,只是想看和广告有关的请求。

(3)第三个字段叫做广告平台商 ID,如果这个 ID 大于十万,就是 AdEXchange;如果小于十万,就是 AdNetwork,其实就是这个请求从哪来的。

(4)第四个字段是 iseffective,就是是否可以正常计费,是否这个请求是正常的,这个服务是正常的。isbilling 是否进行收费,isbid 是否是 RTB,就是一个实时竞价。下面一个叫做 aborderid 是广告的 ID,广告的订单 ID。adcreativeid,creativeid 是创意 ID,这个创意是谁去设计的?如果小于二十万是 OSS 的;大于等于二十万是 DSP 的。

(5)winprice 是只有在竞价的时候才可能存在这种情况,winprice 是竞价成功的价格是多少。

(6)adpayment 是转换后的广告消费。

这是可能会用到的几个字段,这些字段要组成很多条件去评审、评价广告的投放效果。这些字段用到他其实就是为了评价、统计或者看到广告投放的情况,所用到的一些字段。最后还是要按照地域进行字段的统计。

5、需要统计的值

(1)需要统计的值其实指的是广告的投放情况需要统计的一些值。第一点,所有请求的数量,怎样获取到所有请求的数量呢?首先 requestmode 的是1,因为只有是1的情况下,代表所有的请求,所有类型 processnode 指的是广告流程、请求流程,只要大于一都算流程内的。所以统计所有的请求,就是requestmode 等于一,processnode 的大于等于一。要想统计有效的广告请求和广告请求数量该怎么做?有效的请求是 processnode 的大于等于二,也就是有效的请求在流程节点当中2和3都是有效的请求,要想统计这个数量的话,要让 processnode 大于等于二,其实统计的是请求。

(2)广告请求数量,首先他得是一个请求,接收到的事件有三种方式,是requestmode 代表的,一种方式是请求,是过来一个请求;还有一种是展示,还有一个是点击,所以 requestmode 1、2、3分别代表什么意思要理解。

(3)统计 AdExchange的有效记录数量,AdExchange 应该用 adplatformprovider 大于十万就是 AdExchange,小于十万就是其他的。有效的记录数量必须可以正常计价,必须还是收费的,并且还得是 RTB,它还得是一个正常的广告,必须有这样几个条件才能判断 AdExchange 的有效记录数量。

(4)来自 AdExchange 的广告的竞价成功记录数量,来自 AdExchange 就是 adplatformproviderid 大于十万,可以正常计价就是 iseffective 等于一,是收费的 isbuilling,竞价成功是 iswin 等于一。

(5)统计可以正常计费的广告展示记录数量,这也是评价广告投放情况的一个字段,广告展示是 requestmode 等于二,一是请求,二是展示,三是点击,广告展示就是 requestmode 等于二,可以计价 iseffective 等于一。还得可以正常计费的广告记录的数量,是点击记录的数量,requstmode 等于三,iseffective 可以正常计价。

(6)来自 AdExchange 的并且由 DSP 处理的竞价成功价格,这个比较复杂。首先来自 AdExchange 就是 adplatformproviderid 大于十万,然后必须可以正常计价 iseffective 等于一 ,并且是收费的 isbilling 等于1,是 RTB,是实时竞价,所以 isbid 等于一,是一个正常的广告 aborderide 的大于两万,DSP 大于二十万,它是竞价成功的。前面都是点击记录的数量,这个时候统计的是价格,所以要按照整个的这种选择方式,按照整个的统计方式,最终求得的值是 winprice。同理,来自 AdExchange 的并且由 DSP 处理的广告消费的价格,刚才是竞价成功价格,现在是广告消费价格,可以使用 adpayment 进行最终的计算,前面的条件一样。

(7)还要进行一个统计,要看到广告请求的占比,要看到广告请求数量和有效请求广告请求数量之间的占比。还要统计付费广告的占比,就是付费广告点击数量在所有广告点击数量中的占比。

6、现在要统计广告投放情况在地区的分布情况,所以得到两个信息,第一个是要统计的广告投放情况;第二个是在地区上的投放情况。广告投放情况说明什么?第一个,所有请求数量是广告投放的情况,有效广告请求数量也是广告投放情况的一部分,也是可以反映广告投放情况的一个指标。其实这些东西都是对应的指标。

AdExchange 有效记录数量都是广告投放的情况,包括平均价格和价格之类的,都是反映广告投放情况的一些重要指标。

7、第二点,在地区上的投放情况。现在只有一条数据,怎样统计这条数据所有的请求数量呢?所有指的是这个地区的所有请求数量,比如说北京的所有请求数量,上海的有效广告请求数量。最终的结果集应该是什么样的?如图所示

image.png

首先,是按照 region、city 进行统计的,region city有多少个 req_cnt,req_cnt 就是广告请求数量,valid_req_cnt 代表这个地区下有多少有效的广告请求数量,这些都是要统计的,这些每一个指标对应的是一个列,这个列是在地区下的一些指标的数量,这就是整体上的需求分析。需求处理过了就可以进行代码编写了。

相关文章
|
移动开发 缓存 监控
面试官:本机号码一键登录,是怎么实现的?
面试官:本机号码一键登录,是怎么实现的?
2410 0
面试官:本机号码一键登录,是怎么实现的?
|
11月前
|
监控 测试技术 开发工具
移动端性能测试工具
移动端性能测试工具
772 2
|
机器学习/深度学习 自然语言处理 前端开发
前端大模型入门:Transformer.js 和 Xenova-引领浏览器端的机器学习变革
除了调用API接口使用Transformer技术,你是否想过在浏览器中运行大模型?Xenova团队推出的Transformer.js,基于JavaScript,让开发者能在浏览器中本地加载和执行预训练模型,无需依赖服务器。该库利用WebAssembly和WebGPU技术,大幅提升性能,尤其适合隐私保护、离线应用和低延迟交互场景。无论是NLP任务还是实时文本生成,Transformer.js都提供了强大支持,成为构建浏览器AI应用的核心工具。
2112 1
|
前端开发 UED 容器
登录页视觉升级:CSS动画背景,让登录变得酷炫!
登录页视觉升级:CSS动画背景,让登录变得酷炫!
|
人工智能 搜索推荐 机器人
AppFlow无代码轻松搭建模型Agent
使用钉钉,现在每个人都能轻松创建自己的AI助手。通过结合各种插件,如天气、机票查询和地图,你可以定制个性化的工作助手。利用AppFlow,即使没有编程经验也能搭建AI Agent。步骤包括:1) 在钉钉开放平台创建应用,获取凭证;2) 在钉钉卡片平台创建AI卡片实例;3) 在AppFlow配置连接流,添加所需插件;4) 创建钉钉机器人,设置HTTP消息接收并关联AppFlow的Webhook。完成这些步骤后,你就可以在钉钉群中与你的AI助手互动了。
52161 13
|
移动开发 前端开发 JavaScript
鸿蒙-webview的使用和JS交互(附源码)
日常我们在开发项目时,为了项目快速的开发和迭代,难免会用到H5页面。使用鸿蒙进行项目开发时,也一样免不了要加载H5页面,在移动开发中打开H5页面需要使用WebView组件。同时,为了和H5页面进行数据交换,有时候还需要借助JSBridge来实现客户端与H5之间的通讯。 那么鸿蒙之中用到的技术是什么呢?WebView 在此之前,先看一个报错 ​ App Launch: The Huawei Lite Simulator supports only Lite projects.
850 0
鸿蒙-webview的使用和JS交互(附源码)
|
存储 UED
Winform下拉列表的魔力:解锁字典数据展示的多种炫酷方式,让用户体验再升级!
【8月更文挑战第3天】在Winform开发中,下拉列表(ComboBox)常用于让用户从预设列表中选择。展示字典数据时,可根据需求选择方法:直接显示键、键值组合显示或保持键值关联。直接显示键适合键即信息的情况;键值组合显示则通过拼接实现;若需保持键值关联,则可利用`KeyValuePair`作为数据源,结合`DisplayMember`和`ValueMember`属性实现。具体实现见示例代码。
354 0
|
网络协议 安全 Linux
如何使用Android手机通过JuiceSSH远程访问本地Linux服务器
如何使用Android手机通过JuiceSSH远程访问本地Linux服务器
|
负载均衡 Java Spring
深入理解Ribbon负载均衡
深入理解Ribbon负载均衡
632 0
|
Windows
pywinauto windows桌面应用自动化
桌面应用程序自动化
46745 20