[发明专利]一种基于PID的海洋时空大数据并行KNN查询处理方法有效

专利信息
申请号: 202110354512.8 申请日: 2021-04-01
公开(公告)号: CN113010525B 公开(公告)日: 2023-08-01
发明(设计)人: 乔百友;马玲;郝元卿;胡兵;孙永佼;吴刚;韩东红 申请(专利权)人: 东北大学
主分类号: G06F16/22 分类号: G06F16/22;G06F16/215;G06F16/2455;G06F16/27;G06F18/2413;G06F18/213;G06N3/0464;G06N3/049
代理公司: 沈阳东大知识产权代理有限公司 21109 代理人: 李珉
地址: 110819 辽宁*** 国省代码: 辽宁;21
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 pid 海洋 时空 数据 并行 knn 查询 处理 方法
【权利要求书】:

1.一种基于PID的海洋时空大数据并行KNN查询处理方法,其特征在于:包括以下步骤:

步骤1:海洋大数据预处理;对获取到的海洋数据进行清洗,包括数据去重、异常处理和缺失值的填充处理;

步骤2:数据划分和网格索引构建;采用网格划分方法实现对预处理完海洋大数据的分区,将整个数据空间划分成相等大小的网格,采用行排序方法对网格进行编码,按照数据的空间位置将其投影到对应网格中,并创建索引,形成索引数据集;

步骤3:基于PID的KNN查询处理;对划分后的数据分区上,执行基于PID的KNN查询处理,在每个数据分区上生成局部的KNN查询结果,然后将所有局部KNN查询结果合并,并进行排序,最终返回前K个查询结果作为最终的KNN查询处理结果;具体包括:首先读取用户给定的查询点信息,并创建RDD查询集合,然后在划分后的索引数据集上执行基于PID的KNN查询算法,得到每个数据分区上的局部KNN查询结果集,将每个数据分区上的局部KNN查询结果进行合并排序,形成候选查询结果集合,并选出前K个查询结果作为最终的KNN查询结果,将其保存到HDFS文件系统中;

步骤3-1:初始KNN查询处理;根据KNN查询要求,进行初次KNN查询处理;首先根据基于网格的数据划分方法,将查询点q按照其位置计算出其所在的网格单元,并设定查询半径r的初值,以q点为圆心,r为半径所形成的圆形区域内进行KNN查询;

首先在查询点q和查询半径r所形成的圆形区域内确定候选查询分区集,然后对于每个候选查询分区中的数据点,计算其到查询点q的距离,如果在候选查询分区集中找到离q点最近的K个数据点,则查询结束,返回结果并保存到HDFS中;否则,执行步骤3-2,采用基于PID的查询半径计算方法来计算查询半径的增长步长,并形成新的查询半径;

所述确定候选查询分区集的具体方法为:根据查询点q和查询半径r来确定一个网格单元所代表的数据分区是否为被查询对象:在KNN查询过程中,需要首先确定半径r所形成的圆形局域内,需要被查询的数据分区,即候选查询分区;然后再计算查询点q到查询分区中每个数据点之间的距离,从而确定距离最近的K个点;具体确定方法为:对于任一网格单元C所代表分区,用mindist(C,q)表示查询点q到网格单元C的最小距离,用maxdist(C,q)表示查询点q到网格单元C的最大距离;若满足条件mindist(C,q)rmaxdist(C,q),则说明网格单元C所代表数据分区在查询q的查询范围内,将其放入候选查询分区集,并在这些候选分区上并执行KNN查询处理;否则网格单元C不在查询点q的查询范围内,该网格单元所代表分区不能进入候选查询分区集;

步骤3-2:采用基于PID的查询半径计算方法计算查询半径的增长步长,并形成新的查询半径;

步骤3-2-1:输入一个查询半径的目标值给PID系统,PID系统根据PID计算公式计算出查询半径r的预测值u(t);然后得到目标值和预测值的差值e(t),然后再次回到PID系统中,重新计算u(t)和e(t),迭代进行这个计算过程,直到PID系统稳定到输出的预测值和输入的目标值没有误差为止,或者运行结果达到了PID系统预先设定好的一个误差范围;PID计算公式为:

其中,e(t)是PID系统输出的预测值和输入的目标值的差,t为时间,Kp指的是P参数的数值,Ki指的是I参数的数值,Kd指的是D参数的数值;

将PID系统中的微分部分用差分来代替,则得到如下PID计算公式:

其中,u(k)为预测的查询半径,k为采样序号,Ti是积分常数,Td是微分常数,T为采样周期,e(j)为累积误差,e(k)为查询结果设定值与实际值之差;查询结果设定值为KNN查询的目标查询结果数K,实际值则是通过查询半径u(k)进行实际KNN查找得到的查询结果数;

为了使与PID模拟系统中参数保持一致,对上述公式进行修改,得到下面公式:

步骤3-2-2:设定PID系统参数,得到新的查询半径;

通过实际KNN查询实验测试来设定PID系统的P、I、D三个参数,进而根据给定的K值计算出新的查询半径;

步骤3-3:使用新的查询半径继续进行KNN查询;使用PID系统计算出新的查询半径后,按照新的查询半径在各个数据分区上并行执行新的KNN查询,合并各个分区上的局部KNN查询结果,并计算出全局的KNN查询结果数,如果满足查询结束条件,则结束查询并将查询结果保存到HDFS中,否则跳转到步骤3-2继续执行。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东北大学,未经东北大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202110354512.8/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top