[发明专利]一种基于海量位置轨迹数据时空分析方法有效
申请号: | 202110263944.8 | 申请日: | 2021-03-10 |
公开(公告)号: | CN112685428B | 公开(公告)日: | 2021-07-06 |
发明(设计)人: | 刘宇;束长波;卢兴杨;李明;臧本龙;顾磊;廖许德 | 申请(专利权)人: | 南京烽火星空通信发展有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/29 |
代理公司: | 南京经纬专利商标代理有限公司 32200 | 代理人: | 陆志斌 |
地址: | 210019 江苏省南京市建*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 海量 位置 轨迹 数据 时空 分析 方法 | ||
1.一种基于海量位置轨迹数据时空分析方法,其特征在于,所述方法包括:
步骤一、将空间位置索引信息以ORC文件格式保存在HDFS中;
步骤二、利用Google的S2几何库将对空间位置索引信息Spatial Object转为设定的一种内存格式;
步骤三、基于OGC Open-Gis标准实现空间函数Spatial UDF;
步骤四、通过Spark SQL来描述时空分析的操作,利用空间位置索引和过滤下推提取轨迹信息,利用空间函数和spark算子进行查询分析计算;
所述步骤四中还包括基于Spark的rule的扩展提供内置时空函数的注册以及地理位置索引条件的下推,具体方法为:
步骤一:扩展spark中的Rule[LogicalPlan], 定义MyUDFTransformRule;
步骤二:编写递归函数traverse,遍历逻辑执行计划树,提取ST_WITHIN函数参数,转换为CellID的IN条件,使用AND拼接到谓词条件上;
步骤三:在apply 中调用traverse,传入LogicalPlan对象进行处理,返回转换之后的LogicalPlan。
2.如权利要求1所述的一种基于海量位置轨迹数据时空分析方法,其特征在于,步骤一中,所述空间位置索引指:设定空间数据schema为(longitude,latitude,fact),将指定空间区域的明细数据读取出来;
所述利用Google的S2几何库将对空间位置索引信息Spatial Object转为设定的一种内存格式具体为:将经纬度转为S2的Cell编码值并且空间上相邻的区域的编码值前缀相同。
3.如权利要求1所述的一种基于海量位置轨迹数据时空分析方法,其特征在于,所述步骤三中,引入空间过滤函数ST_WITHIN,基于S2表示的空间区域S2Polygon对象,将磁盘中的数据顺序读取出来后,在内存中使用空间过滤函数进行边界过滤,该函数支持Code Gen,减少了copy到spark计算层的数据量。
4.如权利要求1所述的一种基于海量位置轨迹数据时空分析方法,其特征在于,所述步骤二中还包括基于catalyst提供S2空间类型的扩展,具体方法为:
步骤一:扩展spark中的UserDefinedType,定义FS2PolygonUDT;
步骤二:编写序列化和反序列化,实现经纬度集合和多边形互转,定义FS2Polygon。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京烽火星空通信发展有限公司,未经南京烽火星空通信发展有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110263944.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:天线阵列控制方法和装置
- 下一篇:一种音频信号处理方法、装置及存储介质