从电子警察系统获取结构化/半结构化数据,包括车牌号、抓拍时间、设备地理位置(经纬度)等核心字段。
清洗异常数据(如时间格式错误、经纬度缺失或超出合理范围的车牌号)。
时间同步:所有抓拍设备统一采用互联网时间(NTP协议),确保时间戳一致性,避免时区误差。
通过PGIS系统获取电子警察设备的经纬度信息,并建立独立的地理位置表。
对道路实际距离进行补充:结合高德/百度地图API,将电子警察之间的直线距离转换为实际道路距离(例如通过路径规划API)。
使用Hadoop HDFS存储原始数据,按日期和设备分区(如/data/2023/09/30/device_id)。
关系型数据(如设备地理位置表)存储在Oracle分区表中,支持高效查询。
优化:使用Combiner在Map端预聚合同一车牌的数据,减少网络传输。
对同一车牌的多条抓拍记录,按时间排序后,两两计算时间差(Δt)和距离差(Δd)。
距离计算:使用Haversine公式计算经纬度之间的直线距离。
阈值判断:若Δt≤5分钟` 且Δd>10公里`,标记为疑似套牌。
结合道路限速(120km/h)和实际路网拓扑(如高速公路、拥堵路段),排除合理超距情况。
引入机器学习模型(如随机森林),训练历史数据中的误判样本,动态优化阈值规则。
使用HBase存储高频查询字段(车牌号、时间),加速Map阶段的Shuffle过程。
在Oracle中为设备地理位置表建立空间索引(如R-Tree),支持快速距离查询。
采用Spark替代原生Map-Reduce,利用内存计算加速迭代过程。
使用GeoTools库优化地理空间计算,降低CPU负载。
将最终结果存储至Elasticsearch,支持实时布控和可视化(如地图热力图)。
定期统计误判率,分析原因(如设备时钟偏差、特殊车辆权限)。
采用A/B测试,对比新旧规则的效果,逐步优化时空阈值或引入动态规则(如节假日调整阈值)。