电力计量读数快照
电力与能源域的核心是一张计量读数快照:一行一个计量点在一个时点的表计读数。用量不是直接采集的,而是由相邻两次读数相减派生(区间用量 = 末读数 − 初读数),并叠加峰、平、谷时段标记用于分时计费。读数本身是半可加度量:跨时间不能直接相加,跨计量点可以相加。
基本信息
| 快照粒度 | 计量点 × 时点读数 |
|---|---|
| 派生方式 | 区间用量 = 末读数 − 初读数 |
| 时段标记 | 峰 / 平 / 谷,用于分时电价 |
| 度量性质 | 半可加:跨时间不可直接求和 |
| 换表处理 | 换表与清零事件单独记录并分段 |
| 常见粒度 | 表计 × 小时或日 |
典型使用场景
- 分时用电:按峰平谷统计用电量,核算分时电价成本
- 用能监控:识别异常增长的计量点,排查漏电或计量故障
- 线损分析:供电量与售电量差值分析,定位损耗环节
- 负荷预测:基于历史读数序列预测峰值负荷
- 能耗考核:按车间、产线分摊用能,支撑节能考核
区间用量派生与异常检查
区间用量派生与异常检查
SELECT meter_id, dt, reading,
reading - lag(reading) OVER (PARTITION BY meter_id ORDER BY dt) AS usage_kwh -- 相邻读数相减得区间用量
FROM fact_meter_reading; -- 快照表按计量点 + 时点唯一
SELECT meter_id, dt, usage_kwh
FROM (SELECT meter_id, dt, reading - lag(reading) OVER (PARTITION BY meter_id ORDER BY dt) AS usage_kwh
FROM fact_meter_reading) t
WHERE usage_kwh < 0; -- 负值通常意味着换表、清零或抄表错位,需要单独排查读数表的读法
| 字段 | 含义 | 注意点 |
|---|---|---|
| reading | 表计累计读数 | 单调递增,换表时才重置 |
| usage_kwh | 区间用量 | 派生列,跨时间不可求和 |
| tariff_period | 峰平谷标记 | 按当地时段规则维护 |
| read_type | 抄表方式 | 自动采集与人工抄表精度不同 |
换表或清零会破坏差值计算:换表事件要单独记录并做分段处理,否则换表当天的用量会变成负值或巨大值,直接污染月度统计。
读数快照跨时点求和没有意义:把一年 12 次快照读数相加得到的是一个无业务的数字,正确做法是先做差分得到区间用量,再对用量求和时间维度的汇总。