ctc_poc2026/target_table_skills/tm_building_coverage_m.md

2.4 KiB
Raw Blame History

Skill: tm_building_coverage_m 楼宇覆盖指标月表计算指导 (严谨矩阵版)

1. 实现目标

计算楼宇实体的综合覆盖质量与业务分类标签。

2. 计算拓扑 (Topology)

  • 计算执行环境HiveSQL
  • 基本架构:采用基于 indoor_flag 的三重口径聚合。
  • 数据流向 (二级聚合)
    1. 输入 Atm_grid_coverage_m * (基础事实表)。
    2. 输入 Btd_building_grid_m * (同步自 PG 的冗余桥接表)。
    3. 注意:本表不直接读取 ODS以确保栅格与楼宇指标的一致性。

3. 字段映射矩阵 (The Matrix)

目标字段 类型 OTT 分支逻辑 (indoor_flag = -1) MR 分支逻辑 (indoor_flag = 0/1) 缺省处理
building_id BIGINT 来自桥接表 来自桥接表 -
data_type INTEGER 原始值 (1/2) 固定值 -1 -
indoor_flag SMALLINT 固定值 -1 原始值 (0 或 1) -
user_cnt BIGINT approx_count_distinct(device_id_list) 0 必须执行去重
avgrsrp DECIMAL SUM(totalrsrp) / SUM(rsrpcount) SUM(totalrsrp) / SUM(rsrpcount) -
building_type VARCHAR 根据 specs\build_type_specs.md 判定 NULL 映射至标准 Key
mr_grid_count BIGINT COUNT(DISTINCT regionid) 楼宇内有采样栅格总数
covered_grid_count_105 BIGINT SUM(is_covered_105) 楼宇内达标栅格总数 (-105)
covered_grid_count_110 BIGINT SUM(is_covered_110) 楼宇内达标栅格总数 (-110)
grid_cover_rate_105 DECIMAL covered_grid_count_105 / mr_grid_count 楼宇级栅格达标率 (-105)
grid_cover_rate_110 DECIMAL covered_grid_count_110 / mr_grid_count 楼宇级栅格达标率 (-110)
top1_cellkey VARCHAR 关联 td_building_cell_m 获取 关联 td_building_cell_m 获取 -

4. 关键计算原语 (Primitives)

  • 等值关联ON a.regionid = b.regionid AND a.indoor_flag = b.indoor_flag AND a.data_type = b.data_type
  • 楼宇分类逻辑:智能体需实现全套 CASE WHEN 判别逻辑。
  • 指标聚合严格基于原始累加值total进行 SUM 聚合。

5. 存储与优化规范

  • 将计算结果同步入库 PG tm_building_coverage_m
  • 忽略市场份额、高价值、VIP 字段。