埋点-App层丢失率
一、建表语句
create table dws_bhv_habo_measure_lostrate_mb_di(
version_flag bigint comment '版本标签 2:web丢失 3ios直播丢失 4安卓直播丢失',
query_version string comment '查询版本号',
is_video int comment '直播标签 1直播 0非直播',
sumcount bigint comment '总数',
actual_count bigint comment '实际上报数',
lost_rate string comment '丢失率')
partitioned by ( dt int comment '分区')
二、模型代码
set hive.exec.dynamic.partition.mode = nonstrict;
insert overwrite table taeget_tab partition(dt) select
version_flag,
query_version,
is_video,
sum(should) as sumcount,
sum(actual) as actual_count,
1 - sum(actual) * 1.00 / sum(should) as lost_rate,
dt
from(
select
dt,
did,
biz_type,
biz_name,
query_version,
version_flag,
is_video,
(max(req_idx) - min(req_idx) + 1) as should, --应该
count(distinct req_idx) as actual --实际
from(
--对各个客户端条件打标签
select
dt
,did
,req_idx
,is_video
,biz_type
,biz_name
--统一Web和App的字段
,IF(label_map['label_loss_02']='1'
,sdk_version,app_version) query_version
,case
when label_map['label_loss_03']='1' then 3 --ios直播丢失率条件
when label_map['label_loss_04']='1' then 4 --android直播丢失率条件
when label_map['label_loss_02']='1' then 2 --web丢失率条件
else -1
end as version_flag
from(
select
dt,
event_time,
video_time,
did,
gif,
sdk_version,
app_version,
biz_type,
biz_name,
client_type,
is_video,
label_map,
req_idx
from
base_table
where
dt = ${dt}
and client_type not in(-1,8, 9)
and biz_type = 7
)base_tab
) label_tab
group by
dt,
biz_type,
biz_name,
query_version,
did,
version_flag,
is_video
) out_tab
group by
dt,
version_flag,
query_version,
is_video
埋点-App层丢失率的更多相关文章
- [RK3288][Android6.0] 调试笔记 --- 录音音量从HAL到APP层会变小问题【转】
本文转载自:http://blog.csdn.net/kris_fei/article/details/72783843?locationNum=9&fps=1 Platform: Rockc ...
- Android 从上层到底层-----app层
CPU:RK3288 系统:Android 5.1 功能:上层 app 控制 led 亮灭 开发板:Firefly RK3288 MainActivity.java package com.aaron ...
- rtc 关机闹钟1 app层
private static void enableAlertPowerOn(Context context, final Alarm alarm, final long atTimeInMillis ...
- Android Native Binder,在Native层与App交互数据
Binder底层是基于C实现的,因此可以作为Native进程与App层交互数据的渠道.其应用场景为:Native Service.Hal驱动设置.应用层JNI服务等. Android 4.4引入SEA ...
- 如何实现 javascript “同步”调用 app 代码
在 App 混合开发中,app 层向 js 层提供接口有两种方式,一种是同步接口,一种一异步接口(不清楚什么是同步的请看这里的讨论).为了保证 web 流畅,大部分时候,我们应该使用异步接口,但是某些 ...
- Android学习系列(37)--App调试内存泄露之Context篇(下)
接着<Android学习系列(36)--App调试内存泄露之Context篇(上)>继续分析. 5. AsyncTask对象 我N年前去盛大面过一次试,当时面试官极力推荐我使用AsyncT ...
- [Android Memory] App调试内存泄露之Context篇(下)
转载地址:http://www.cnblogs.com/qianxudetianxia/p/3655475.html 5. AsyncTask对象 我N年前去盛大面过一次试,当时面试官极力推荐我使用A ...
- [编译] 6、开源两个简单且有用的安卓APP命令行开发工具和nRF51822命令行开发工具
星期四, 27. 九月 2018 12:00上午 - BEAUTIFULZZZZ 一.前言 前几天给大家介绍了如何手动搭建安卓APP命令行开发环境和nRF51822命令行开发环境,中秋这几天我把上面篇 ...
- 【微信小程序项目实践总结】30分钟从陌生到熟悉 web app 、native app、hybrid app比较 30分钟ES6从陌生到熟悉 【原创】浅谈内存泄露 HTML5 五子棋 - JS/Canvas 游戏 meta 详解,html5 meta 标签日常设置 C#中回滚TransactionScope的使用方法和原理
[微信小程序项目实践总结]30分钟从陌生到熟悉 前言 我们之前对小程序做了基本学习: 1. 微信小程序开发07-列表页面怎么做 2. 微信小程序开发06-一个业务页面的完成 3. 微信小程序开发05- ...
- Android性能优化-App启动优化
原文地址:https://developer.android.com/topic/performance/launch-time.html#common 通常用户期望app响应和加载速度越快越好.一个 ...
随机推荐
- Redis探秘Sentinel(哨兵模式)
概述 Redis的高可用机制有持久化.复制.哨兵和集群.其主要的作用和解决的问题分别是: 持久化:持久化是最简单的高可用方法(有时甚至不被归为高可用的手段),主要作用是数据备份,即将数据存储在硬盘,保 ...
- Win10虚拟机安装Docker解决Docker Engine Stopped问题记录
跟着网上的帖子开启WSL2安装DockerDesktop, 但是无法启动Docker,一直[Docker Engine stopped] 继续跟着网上的帖子解决问题,检查电脑各种配置都搞一通后还是无法 ...
- Flutter shared_preferrence报错
Flutter shared_preferrence报错 在main函数中runApp之前添加**WidgetsFlutterBinding.ensureInitialized();确保初始化成功 v ...
- GraphQL Part III: 依赖注入
在 SOLID 设计原则中,D 表示依赖反转原则 高层组件不应该依赖于底层组件,双方应该基于抽象 抽象不应该依赖于实现,实现应该依赖于抽象 使用 new 操作符来创建对象实例会导致不同组件之间的紧耦合 ...
- Ubuntu sudo nopasswd方法
1 运行 visudo 2 假设用户名为yourname, 则在最后一行添加: # User privilege specificationroot ALL=(ALL:ALL) ALL# Member ...
- 《Kubernetes故障篇:calico/node is not ready: BIRD is not ready》
文章目录一.背景信息二.解决方法总结:整理不易,如果对你有帮助,可否点赞关注一下? 一.背景信息k8s集群部署后发现calico的pod未通过健康检查,如下所示: 通过命令kubectl descri ...
- SprinfBoot报警告WARNING: An illegal reflective access operation has occurred
警告如图所示,该警告是因为jdk版本太高(我用的是10.0,据说9.0的也会这样),具体的原理还没有研究,它不影响项目的正常运行,但是看着很糟心有木有~~~~ 解决方案是把项目jdk降低到1.8及以下 ...
- TheScope, Visibility and Lifetime of Variables
C language-- TheScope, Visibility and Lifetime of Variables 全局变量 普通全局变量 //file1 #include<stdio.h& ...
- Qt/C++控件设计器/属性栏/组态/可导入导出/中文属性/串口网络/拖曳开发
一.功能特点 自动加载插件文件中的所有控件生成列表,默认自带的控件超过120个. 拖曳到画布自动生成对应的控件,所见即所得. 右侧中文属性栏,改变对应的属性立即应用到对应选中控件,直观简洁,非常适合小 ...
- C# SynchronizationContext线程上下文简单说明
SynchronizationContext线程上下文说明SynchronizationContext在通讯中充当传输者的角色,实现功能就是一个线程和另外一个线程的通讯 那么Synchronizati ...