201 lines
8.8 KiB
Markdown
201 lines
8.8 KiB
Markdown
|
||
# 业务背景与数据角色
|
||
|
||
- **主数据源 (Main Data)**:`OTT_GRID` 是本项目数据分析的核心主干,定义了基础的栅格化分析框架。
|
||
- **补充数据源 (Metric Supplement)**:`4G/5G MR` 覆盖数据用于对业务指标模型进行深度补充(如:小区级覆盖、PCI 干扰等指标)。
|
||
- **建模原则**:分析时通常以 OTT 的栅格体系为基准,将 MR 的指标作为扩展属性进行关联补齐。
|
||
|
||
# 文档适用范围与分层约定
|
||
|
||
- **定位说明**:本文档**仅针对 ODS 层**(三份原始 CSV 源数据)的业务语义进行统一说明。
|
||
- **字段命名差异**:本文档中的字段名均指代 **ODS 原始字段**。在 `dmk` 模式下的模型表(如 `tm_xxx` 事实表、`td_xxx` 维表)中,字段名可能已根据《SQL 编码规范》进行了重命名或规范化(如 `provincecode` 可能映射为 `province_id` 等)。
|
||
- **逻辑一致性**:尽管字段名可能改变,但本文档定义的计算逻辑、聚合规则和粒度模型在各层级中保持一致。
|
||
|
||
# 基础的概念
|
||
|
||
## 时间/账期概念:
|
||
|
||
* 暂时不需要关注, ott 数据就是月度数据,4/5G覆盖数据则会有分区的字段(不在现有表元数据中体现)
|
||
|
||
## 维度概念:
|
||
|
||
### 数据源维度:
|
||
|
||
* data_type: 1:数准 2:腾讯
|
||
|
||
### 行政区维度
|
||
|
||
省: provincecode 对应的中文名称字段: province_name
|
||
市: citycode 对应的中文名称字段: city_name
|
||
区县: districtcode 对应的中文名称字段: district_name
|
||
|
||
### 网络维度
|
||
|
||
网络: network_class 4G/LTE,5G_SA/NR/5G
|
||
频段: freq
|
||
频点: earfcn
|
||
PCI: pci (不要关注其字段类型)
|
||
运营商: operator_name 枚举值 :mobile(移动),telecom(电信),unicom(联通),guangdian(广电)
|
||
|
||
### 栅格维度
|
||
|
||
栅格: regionid(无论是OTT还是45G覆盖数据中)
|
||
|
||
|
||
### 小区维度
|
||
|
||
小区: cellkey (可以作为小区的唯一标识,也可以作为小区的唯一主键,不要关注其内容格式,无论是eci 还是其他,都一定是小区的唯一标识)
|
||
|
||
## 属性/标签概念:
|
||
|
||
> NOTE:
|
||
|
||
- **凡是本节字段列表中没有说明的字段,都是不要关注的字段。忽略即可。比如:经纬度的偏移量(xx_offset_xx), data_source, 小区经纬度(cell_lon/lat)等 **
|
||
-- 4/5G 对齐说明: ss 是5G前缀。比如ssrsrpcount 就与4G的 rsrpcount 对应
|
||
|
||
### 字段列表
|
||
- device_id_list 这是一个设备列表(**此处代表的是用户列表**),意味列表中的每个元素就是代表了一个全网唯一的设备(用户),不需要关注其内容,格式,加密等
|
||
|
||
- indoor_flag : 室内外标识。 0:室外,1:室内
|
||
|
||
|
||
栅格中心经纬度: center_lon/grid_lon center_lat/grid_lat (这个经纬度代表了一个栅格唯一的位置表示,就是代表了栅格点)。***暂时忽略 xx_offset_xx 偏移字段。***
|
||
|
||
## 指标概念:
|
||
|
||
> NOTE:
|
||
* 对于其他指标如: 越区覆盖,重叠覆盖,过覆盖,mod30/mod3干扰等概念,不需要深入了解。
|
||
|
||
|
||
### RSRP
|
||
|
||
|
||
* 概念: 代表了信号的强弱, 一般是以dBm为单位,数值越大,信号越好。一般, -110dBm以上表示信号较好, -110dBm以下表示信号较差。
|
||
|
||
* 一般凡是字段名称中带有rsrp的指标或者覆盖相关的字段指标,都是与rsrp强相关的指标。例如:
|
||
- totalrsrp
|
||
- avgrsrp
|
||
- rsrpcount
|
||
|
||
|
||
### SINR
|
||
|
||
* 概念: SINR(Signal to Interference plus Noise Ratio),即信号与干扰加噪声的比值,反映了接收信号质量的指标,越大越好。一般 -3 以上代表信号干扰低。
|
||
|
||
* **有无ul都是一个概念**
|
||
* 一般凡是字段名称中带有SINR的指标或者干扰相关的字段指标,都是与SINR强相关的指标。例如:
|
||
- totalulsinr
|
||
- avg_sinr
|
||
|
||
### RSRQ
|
||
|
||
* 概念: RSRQ(Reference Signal Received Quality),即参考信号接收质量,反映了信号质量的指标,越大越好。一般-10/13.5 以上表示信号质量较好,否则表示信号质量较差。
|
||
|
||
* 一般凡是字段名称中带有rsrq的指标,都是与rsrq强相关的指标。例如:
|
||
- totalrsrq
|
||
- avgrsrq
|
||
- rsrqcount
|
||
|
||
|
||
|
||
## 计算概念:
|
||
|
||
### 计数 count/cnt/num(s)
|
||
|
||
* 主要就是进行计数,字段名称中带有 count 或 cnt 或 num(s) 的指标都是。例如:
|
||
- rsrqcount
|
||
- overlap_mrcount
|
||
- rsrpcount (**特别说明:** rsrp的采样点数,一般就是代表各种指标概念的mr基础总数,一般做分母用,用于计算不同的平均值或率值)
|
||
- ssrsrpcount 与 rsrpcount对应,分别代码5G与4G的 mr 基础总数
|
||
|
||
### 总量 sum/total/sum(s)
|
||
|
||
* 主要就是进行求和,字段名称中带有 sum 或 total 或 sum(s) 的指标都是。例如:
|
||
- totalsssinr
|
||
- totalrsrp
|
||
|
||
### 平均数 avg/mean/avg(s/_)
|
||
|
||
* 主要就是进行平均值,字段名称中带有 avg 或 mean 或 avg(s) 的指标都是。一般都是通过: 总量/计数 得到的。例如:
|
||
- overlap_avgrsrp = overlap_totalrsrp/overlap_mrcount
|
||
- avgrsrq = totalrsrq/rsrpcount
|
||
|
||
|
||
---
|
||
|
||
# 业务概念说明:
|
||
|
||
- weak 代表的是弱
|
||
- cover 代表的是覆盖
|
||
- 如果中文说明中有覆盖字眼,就说明是与rsrp相关或是由rsrp相关指标计算而来
|
||
- **不需要关注电平等级**
|
||
- **优良差的标准是由业务需求规范中决定的,与需求强相关,无法直接确定**
|
||
|
||
---
|
||
|
||
# 字段类型说明
|
||
|
||
## 三种基础ODS数据中,同一字段,类型不一致,是事实,无法改变。同语义概念的字段,是事实,无法改变。
|
||
|
||
---
|
||
|
||
# 数据粒度与汇总说明
|
||
|
||
## OTT 数据粒度 (OTT_GRID)
|
||
|
||
- **复合细粒度定义**:`OTT_GRID` 的一行记录是由以下维度的组合唯一确定的:
|
||
- **[行政区划]** `province/city/district` + **[时间]** `year_month` + **[数据来源]** `data_type` + **[运营商]** `operator_name` + **[网络类型]** `network_class` + **[频点/频段]** `earfcn`/`freq` + **[栅格ID]** `regionid`。
|
||
- **独立性原则**:不同的 `data_type`(如:1:数准,2:腾讯)代表独立的数据来源,它们之间没有必然联系,在数据中表现为完全独立的行。
|
||
- **栅格级汇总逻辑**:
|
||
- **必须聚合计算**:由于原始数据存在频点、运营商等细分维度,计算栅格级(regionid)平均指标时,必须先进行求和聚合。
|
||
- **正确公式**:`平均 RSRP = sum(totalrsrp) / sum(rsrpcount)`。
|
||
- **禁忌**:严禁直接对 `avgrsrp` 字段执行 `AVG()` 操作,因为不同行之间的采样点数(权重)是不一致的。
|
||
|
||
## MR 数据粒度 (4G/5G MR_GRID_SCELL)
|
||
|
||
- **复合细粒度定义**:`4G/5G MR` 的一行记录是由以下维度的组合唯一确定的:
|
||
- **[行政区划]** `province/city/district` + **[小区]** `cellkey` + **[PCI]** `pci` + **[频段]** `freq` + **[栅格ID]** `regionid`。
|
||
- **并行数据说明**:在同一个小区、同一个栅格内,由于 PCI 或频段的不同,会存在多条并行的记录。
|
||
- **汇总聚合逻辑**:
|
||
- **必须聚合计算**:在进行栅格级(regionid)汇总分析时,必须跨越小区、PCI、频段以及需要忽略的字段(如 `data_source`、`plmn`)进行求和聚合。
|
||
- **正确公式**:
|
||
- **4G**: `平均 RSRP = sum(totalrsrp) / sum(rsrpcount)`。
|
||
- **5G**: `平均 RSRP = sum(totalrsrp) / sum(ssrsrpcount)`。
|
||
- **禁忌**:严禁直接对 `avgrsrp` 或 `avg_rsrp` 字段执行 `AVG()` 操作。
|
||
- **网络类型区分**:4G/5G MR 的网络类型由原始表名 or 数据来源区分,不包含 `network_class` 字段。
|
||
|
||
# 跨表关联与对齐规范
|
||
|
||
在进行多表联合查询或跨 ODS 层数据对比时,必须遵循以下对齐准则:
|
||
|
||
## 1. 关联主键 (Join Keys)
|
||
|
||
- **行政区划级关联**:必须包含 `provincecode`, `citycode`, `districtcode` (或对应的名称字段) 作为基础过滤或关联条件。
|
||
- **栅格级关联**:以 `regionid` 作为核心关联键。
|
||
|
||
## 2. 运营商维度对齐
|
||
|
||
- **MR 数据 (4G/5G)**:数据仅代表**本运营商(电信/telecom)**。不进行运营商区分,不使用 `plmn` 字段。
|
||
- **OTT 数据**:包含全量运营商(移动/电信/联通/广电)。
|
||
- **对齐要求**:若将 OTT 与 MR 在栅格级别进行对比(如:计算偏离度),**必须**在 OTT 侧显式过滤 `operator_name = 'telecom'`。
|
||
|
||
## 3. 指标语义映射清单
|
||
|
||
| 语义概念 | MR (4G/5G) 字段 | OTT 字段 |
|
||
| :--- | :--- | :--- |
|
||
| **栅格经度** | `grid_lon` | `center_lon` |
|
||
| **栅格纬度** | `grid_lat` | `center_lat` |
|
||
| **基础采样点数** | `rsrpcount` / `ssrsrpcount` | `rsrpcount` |
|
||
| **平均 SINR** | `avg_sinr` | `avgsinr` |
|
||
| **总 RSRP** | `totalrsrp` | `totalrsrp` |
|
||
|
||
## 4. 跨表禁忌
|
||
|
||
- **严禁对比电平等级**:忽略所有 `levelX_mrcount` 字段,跨表时严禁关联或对比此类分布指标。
|
||
- **降维处理**:由于 OTT 存在频点(earfcn)粒度而 MR 不存在,在 `regionid` 级别关联时,OTT 必须先按栅格进行 `SUM` 聚合降维。
|
||
|
||
|
||
|
||
|
||
|