1 / 7
文档名称:

GeoHash算法在关系型数据库处理地理数据栅格化问题时的应用.docx

格式:docx   大小:72KB   页数:7页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

GeoHash算法在关系型数据库处理地理数据栅格化问题时的应用.docx

上传人:科技星球 2021/9/2 文件大小:72 KB

下载得到文件列表

GeoHash算法在关系型数据库处理地理数据栅格化问题时的应用.docx

文档介绍

文档介绍:GeoHash算法在关系型数据库处理地理数据栅格化问题时的应用
 
   
 
 
 
 
 
 
 
     
 
 
 
 
 
摘 要
通信行业数据分析时经常需要将带有经纬度的海量地理化数据点与固定大小的栅格区域进行关联,即根据数据点的经纬度、与固定栅格的经纬度范围进行匹配,实现地理化信息数据点的栅格化,进行信号强度、信号质量的栅格化分析,从而实现对指定区域的无线信号环境进行评估。使用关系型数据库、通过对数据点的经纬度与栅格边框比较、能够完成经纬度数据点与栅格的匹配关联,但效率较低。geohash算法在解决这类问题时能大幅提高经纬度点与栅格的匹配效率。
关键词:geohash;关系型数据库;通信;栅格化
一、引言
通信行业进行无线信号评估时,由于采样点数据量庞大、往往需要将含有经纬度的数据点、与固定大小的经纬度栅格进行匹配,实现海量地理化数据点的栅格化,进而对一个栅格内的数据点进行数据分析,实现对某地理化栅格的无线信号评估。在进行经纬度数据点、与划分的经纬度栅格进行匹配时,如采用关系型数据库,最直观的匹配方案是,第一步,根据数据点的经度,与每个栅格定义的经度范围上下限,找出符合范围的所有栅格集合A;第二步,根据数据点的纬度、在栅格集合A中,找出符合纬度范围的唯一栅格。因每个数据点的匹配需要检索所有栅格的四个范围(经度上限、经度下限、纬度上限、纬度下限),实际生产中,当面对百万数量级别数据点、与十万数量级的数据栅格匹配的问题时,因计算繁杂、仅仅匹配工作就消耗大量时间,严重影响栅格评估分析的时效性。通过探索比较,发现将geohash算法应用于此类地理化数据匹配问题,能显著提高检索效率、加快匹配效率,在本实验环境中、匹配效率提升在100倍以上。
二、Geohash算法及应用
Geohash算法
GeoHash本质上是空间索引的一种方式,其基本原理是将地球理解为一个二维平面,将平面递归分解成更小的子块,每个子块在一定经纬度范围内拥有相同的编码。以GeoHash方式建立空间索引,可以提高对空间poi数据进行经纬度检索的效率。本例中,我们将数据点、栅格中心点的坐标,均求出满足要求的geohash,通过geohash设置索引完成数据点、数据栅格中心点的快速匹配,并将栅格中心点更新到数据点记录中,完成数据点与栅格的关联工作。
Geohash算法实践
测试环境
硬件使用联想 昭阳 K43c-80 笔记本电脑一台(CPU 英特尔 Core i5-8250U @ 四核,内存三星 DDR4 2400MH-8 GB,硬盘为西数 WDC WD5000LPLX-24ZNTT0 500 GB )。
软件环境,操作系统为Windows 10(Windows 10 专业版 64位Version 1607 / DirectX 12),(Server version: -log MySQL Community Server GPL)。
数据库表结构,共两张原始表,表1为数据点表,名称t_user,每条记录为一个经纬度数据点,包含该数据点的经度、纬度、数据点唯一id;表2为栅格表,名称t_grid,每条记录