GEO地图数据分布处理

2023-11-10 05:52
文章标签 处理 地图 数据分布 geo

本文主要是介绍GEO地图数据分布处理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

需求

已知访问用户经纬度数据,根据经纬度统计每个省的访问总数

地区经纬度分布表

CREATE TABLE `area_geo` (`id` int(11) NOT NULL,`name` varchar(250) NOT NULL COMMENT '地区名',`ext_name` varchar(255) NOT NULL COMMENT '地区扩展名',`geo` geometry NOT NULL COMMENT '地区核心经纬度',`polygon` geometry NOT NULL COMMENT '地区经纬度范围',PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

地区经纬度初始化数据

见文档顶端附件资源

定时任务&存储过程统计

基于地图数据统计的性能问题,考虑通过MySQL定时任务单独将地图数据进行统计结果保存,然后通过DBT脚本关联输出到数据仓库,创建访问数据存储表、存储过程、和定时任务

--开启定时器(或者通过MySQL配置永久性开启)
set global event_scheduler=1;
--查看开启情况,是否为ON
show variables like '%event_sche%';--存储过程创建
DROP PROCEDURE IF EXISTS `area_geo_visit_data_pro`;
delimiter ==
CREATE PROCEDURE `area_geo_visit_data_pro`()
BEGINDELETE FROM area_geo_visit_data;INSERT into area_geo_visit_data(event_time,module,label,cnt)SELECTCURDATE() as event_time,'VISIT_MAP' as module,c.name as label,SUM(b.cnt) as cntFROM(SELECTa.location_longitude,a.location_latitude,COUNT(1) as cntFROMmatomo.matomo_log_visit agroup bya.location_longitude,a.location_latitude)b ,matomo.area_geo cWHEREst_intersects(ST_GeomFromWKB(c.polygon),(st_geometryfromtext(concat('POINT(', CAST(b.location_longitude AS char) , ' ', CAST(b.location_latitude AS char) , ')'),0)))GROUP BYc.name ;
END
==
delimiter ;--定时任务创建(统计频率可以根据需要设置,目前是与dbt脚本执行频率保持一致)
CREATE EVENT IF NOT EXISTS area_geo_visit_data_event 
ON SCHEDULE EVERY 24 HOUR 
ON COMPLETION PRESERVE
DO
CALL area_geo_visit_data_pro();

效果

在这里插入图片描述

这篇关于GEO地图数据分布处理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/380752

相关文章

Spring Boot @RestControllerAdvice全局异常处理最佳实践

《SpringBoot@RestControllerAdvice全局异常处理最佳实践》本文详解SpringBoot中通过@RestControllerAdvice实现全局异常处理,强调代码复用、统... 目录前言一、为什么要使用全局异常处理?二、核心注解解析1. @RestControllerAdvice2

springboot项目中整合高德地图的实践

《springboot项目中整合高德地图的实践》:本文主要介绍springboot项目中整合高德地图的实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一:高德开放平台的使用二:创建数据库(我是用的是mysql)三:Springboot所需的依赖(根据你的需求再

电脑提示xlstat4.dll丢失怎么修复? xlstat4.dll文件丢失处理办法

《电脑提示xlstat4.dll丢失怎么修复?xlstat4.dll文件丢失处理办法》长时间使用电脑,大家多少都会遇到类似dll文件丢失的情况,不过,解决这一问题其实并不复杂,下面我们就来看看xls... 在Windows操作系统中,xlstat4.dll是一个重要的动态链接库文件,通常用于支持各种应用程序

SQL Server数据库死锁处理超详细攻略

《SQLServer数据库死锁处理超详细攻略》SQLServer作为主流数据库管理系统,在高并发场景下可能面临死锁问题,影响系统性能和稳定性,这篇文章主要给大家介绍了关于SQLServer数据库死... 目录一、引言二、查询 Sqlserver 中造成死锁的 SPID三、用内置函数查询执行信息1. sp_w

Java对异常的认识与异常的处理小结

《Java对异常的认识与异常的处理小结》Java程序在运行时可能出现的错误或非正常情况称为异常,下面给大家介绍Java对异常的认识与异常的处理,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参... 目录一、认识异常与异常类型。二、异常的处理三、总结 一、认识异常与异常类型。(1)简单定义-什么是

Golang 日志处理和正则处理的操作方法

《Golang日志处理和正则处理的操作方法》:本文主要介绍Golang日志处理和正则处理的操作方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录1、logx日志处理1.1、logx简介1.2、日志初始化与配置1.3、常用方法1.4、配合defer

springboot加载不到nacos配置中心的配置问题处理

《springboot加载不到nacos配置中心的配置问题处理》:本文主要介绍springboot加载不到nacos配置中心的配置问题处理,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录springboot加载不到nacos配置中心的配置两种可能Spring Boot 版本Nacos

python web 开发之Flask中间件与请求处理钩子的最佳实践

《pythonweb开发之Flask中间件与请求处理钩子的最佳实践》Flask作为轻量级Web框架,提供了灵活的请求处理机制,中间件和请求钩子允许开发者在请求处理的不同阶段插入自定义逻辑,实现诸如... 目录Flask中间件与请求处理钩子完全指南1. 引言2. 请求处理生命周期概述3. 请求钩子详解3.1

Python处理大量Excel文件的十个技巧分享

《Python处理大量Excel文件的十个技巧分享》每天被大量Excel文件折磨的你看过来!这是一份Python程序员整理的实用技巧,不说废话,直接上干货,文章通过代码示例讲解的非常详细,需要的朋友可... 目录一、批量读取多个Excel文件二、选择性读取工作表和列三、自动调整格式和样式四、智能数据清洗五、

SpringBoot如何对密码等敏感信息进行脱敏处理

《SpringBoot如何对密码等敏感信息进行脱敏处理》这篇文章主要为大家详细介绍了SpringBoot对密码等敏感信息进行脱敏处理的几个常用方法,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录​1. 配置文件敏感信息脱敏​​2. 日志脱敏​​3. API响应脱敏​​4. 其他注意事项​​总结