2.7 KiB
2.7 KiB
Skill: tm_grid_coverage_m 栅格级覆盖指标月表计算指导 (严谨矩阵版)
1. 实现目标
计算 20m 栅格粒度的综合覆盖指标,整合 OTT 全网大盘与 MR 本网明细数据。
2. 计算拓扑 (Topology)
- 计算执行环境:HiveSQL。
- 基本架构:采用
MR 分支 (indoor_flag ∈ {0, 1})UNION ALLOTT 分支 (indoor_flag = -1)。
3. 维度缺省值规范
- 对于不具备小区级信息的 OTT 分支,
cellkey、pci统一填充-1。 - 对于 OTT 不具备的频段信息,
freq填充'all'。
4. 字段映射矩阵 (The Matrix)
| 目标字段 | 类型 | OTT 分支逻辑 (indoor_flag = -1) | MR 分支逻辑 (indoor_flag = 0/1) | 缺省处理 |
|---|---|---|---|---|
year_month |
VARCHAR | 原始字段 | 原始字段 | - |
data_type |
INTEGER | 原始值 (1:数准, 2:腾讯) | 固定值 -1 | - |
regionid |
BIGINT | 原始字段 | 原始字段 | - |
operator_name |
VARCHAR | 固定值 'telecom' (需先过滤 OTT 原始数据) | 固定值 'telecom' | - |
network_class |
VARCHAR | 原始字段 | 依据表源判定 ('4G' 或 '5G_SA') | - |
freq |
VARCHAR | 原始字段 | 原始字段 | 'all' |
indoor_flag |
SMALLINT | 固定值 -1 | 原始值 (0 或 1) | - |
rsrpcount |
BIGINT | SUM(rsrpcount) |
4G: SUM(rsrpcount)5G: SUM(ssrsrpcount) |
严禁混淆 4/5G 采样点字段 |
mr_cover_rate_105 |
DECIMAL | rsrpgoodcount_105 / rsrpcount |
栅格内采样点达标率 | |
mr_cover_rate_110 |
DECIMAL | rsrpgoodcount_110 / rsrpcount |
栅格内采样点达标率 | |
is_covered_105 |
SMALLINT | CASE WHEN (rsrpgoodcount_105 / rsrpcount) >= 0.9 THEN 1 ELSE 0 END |
栅格达标标记 (105口径) | |
is_covered_110 |
SMALLINT | CASE WHEN (rsrpgoodcount_110 / rsrpcount) >= 0.9 THEN 1 ELSE 0 END |
栅格达标标记 (110口径) | |
totalrsrp |
DECIMAL | SUM(totalrsrp) |
SUM(totalrsrp) |
- |
avgrsrp |
DECIMAL | SUM(totalrsrp) / SUM(rsrpcount) |
SUM(totalrsrp) / SUM(rsrpcount) |
- |
top1_cellkey |
VARCHAR | NULL | FIRST_VALUE(cellkey) OVER (PARTITION BY regionid ORDER BY rsrpcount DESC) |
- |
overlap_mrcount |
BIGINT | 0 | SUM(overlap_mrcount) |
- |
5. 关键计算原语 (Primitives)
- 聚合方式:必须基于原始累加值(total)和计数(count)进行聚合,严禁直接对均值字段执行
AVG()。 - 空值污染防护:非本源支持的指标(如 OTT 分支的网络质差项)必须硬编码为
NULL或0。
6. 特殊业务过滤
- 依据
openspec.md,忽略所有市场份额、驻留比、高价值、VIP 相关字段,脚本中直接置空。