一种基于时空网格的数据过滤方法、终端设备及存储介质与流程

文档序号:29522164发布日期:2022-04-06 23:35阅读:357来源:国知局
一种基于时空网格的数据过滤方法、终端设备及存储介质与流程

1.本发明涉及大数据处理领域,尤其涉及一种基于时空网格的数据过滤方法、终端设备及存储介质。


背景技术:

2.随着大数据时代的到来,日益膨胀的采集数据使大数据逐渐迷失在信息的海洋之中。常常会有大量无效、冗余数据混杂在其中,其对硬件要求带来巨大压力,同时也大大影响数据挖掘的难度,导致挖掘出的信息价值有所降低。传统的技术主要有以下几种:
3.第一种是如申请号为cn201610974444.4的中国发明专利《一种海量时空数据清洗方法及装置》中采用的方法,其未考虑到后期的数据检索使用的方便性,且考虑不全面,只基于时间去判定数据合法性。
4.第二种是如申请号为cn201710016325.2的中国发明专利《一种基于多源位置感知的时空关系分析系统》中采用的方法,其未针对数据本身特性结合实际业务进行细节过滤,且其数据存储也只是简单的描述利用hdfs进行分布式存储,并不能体现后期检索使用能达到快速检索。
5.综上,传统方法具有以下不足:传统时空数据过滤只是做了简单的完整性以及业务规范检验过滤,或者只考虑了时间因素,仍然存在大量冗余数据,且未对数据进行规范化,不利于检索;需要大量算力去挖掘计算这些无用冗余数据,且对挖掘出的关联信息起到误导性作用,造成以量概质的现象。因此不能够满足需求。


技术实现要素:

6.为了解决上述问题,本发明提出了一种基于时空网格的数据过滤方法、终端设备及存储介质。
7.具体方案如下:
8.一种基于时空网格的数据过滤方法,包括以下步骤:
9.s1:采用基于规则的过滤器对数据进行过滤处理,剔除数据中不符合规则的异常数据;
10.s2:对过滤处理后的数据进行时空网格化处理为时空网格编码后,以哈希表结构进行存储;
11.s3:通过时空过滤器,对哈希表中不满足时空约束条件的数据进行过滤。
12.进一步的,不符合规则的异常数据包括:字段不完整的数据、存在于黑名单上的数据和不满足业务规则的数据。
13.进一步的,步骤s2中哈希表中关键字字段对应的内容为数据类型与时空网格编码的拼接。
14.进一步的,时空网格编码具体为:timeslot|longitudeslot|latitudeslot,其中:“|”表示分隔符,timeslot表示时间槽,longitudeslot表示经度槽,latitudeslot表示纬度
槽,计算公式分别为:
15.timeslot=(timestamp

timestamp%timeslotsize)/timeslotsize
16.longitudeslot=(longitude

longitude%longitudeslotsize)/longitudeslotsize
17.latitudeslot=(latitude

latitude%latitudeslotsize)/latitudeslotsize
18.longitude=int(longitude*100000)
19.latitude=int(latitude*100000)
20.其中,timestamp表示时间戳,timeslotsize表示时间戳单位,longitude表示经度值,latitude表示纬度值,longitudeslotsize表示经度槽单位,latitudeslotsize表示纬度槽单位,int(.)表示取整。
21.进一步的,步骤s3中采集日志基于通过时空过滤器进行过滤的具体过程包括以下步骤:
22.s301:根据接收到的采集日志a,提取其采集地点p和采集时间戳t;
23.s302:从redis中获取采集地点网格p对应的网格、以时间t对应时间槽为基准的前n个时间槽内的采集日志;
24.s303:判断采集日志a所在时间槽是否已存在采集日志,如果是,进入s304,否则,进入s305;
25.s304:判断采集日志a的时间是否比所在时间槽中已存在的采集日志的时间早,如果是,进入s306,否则,判定采集日志a为滞留日志,结束;
26.s305:将redis上该时间槽的采集日志更新为采集日志a,进入s307;
27.s306:将redis上该时间槽的采集日志更新为采集日志a,判定采集日志a为滞留日志;
28.s307:判断前n个时间槽是否存在采集日志a,如果是,判定采集日志a为滞留日志;否则,判定采集日志a为非滞留日志;
29.s308:对所有滞留日志进行过滤处理。
30.一种基于时空网格的数据过滤终端设备,包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本发明实施例上述的方法的步骤。
31.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例上述的方法的步骤。
32.本发明采用如上技术方案,并具有有益效果:
33.(1)提出基于时空网格的哈希表结构存储方式,存储空间节省n倍以上,便于快速检索,且能解决实时数据的逆序问题,有效提高关联挖掘对比速度;
34.(2)提出基于时空网格的时空过滤,有效减少冗余的采集日志,大大减少关联比对算力,且基于此挖掘出的关联更具有代表性。
附图说明
35.图1所示为本发明实施例一的整体流程图。
36.图2所示为该实施例中哈希表存储结构示意图。
37.图3所示为该实施例中时空过滤器过滤的流程图。
具体实施方式
38.为进一步说明各实施例,本发明提供有附图。这些附图为本发明揭露内容的一部分,其主要用以说明实施例,并可配合说明书的相关描述来解释实施例的运作原理。配合参考这些内容,本领域普通技术人员应能理解其他可能的实施方式以及本发明的优点。
39.现结合附图和具体实施方式对本发明进一步说明。
40.实施例一:
41.本发明实施例提供了一种基于时空网格的数据过滤方法,如图1所示,所述方法包括以下步骤:
42.s1:采用基于规则的过滤器对数据进行过滤处理,剔除数据中不符合规则的异常数据。
43.该实施例中不符合规则的异常数据包括:字段不完整的数据、存在于黑名单上的数据和不满足业务规则的数据,对应的规则过滤器的设定可以采用现有的常用方式。在其他实施例中本领域技术人员可以根据实际应用需求自行设定用于过滤的规则,在此不做限定。
44.该实施例中数据为redis中的采集日志,过滤处理的具体流程包括以下步骤:
45.s101:接收采集日志,判断该采集日志中各字段的内容是否完整,如果是,进入s102;否则,判定该采集日志为非完整日志,进入s104。
46.s102:判断该采集日志的唯一value是否不在黑名单上,如果是,进入s103;否则,判定该采集日志为黑名单日志,进入s104。
47.s103:判断该采集日志是否满足业务规范,如果是,判定该日志为正常日志,进入s104;否则,判定该采集日志为不规范日志,进入s104。
48.s104:将属于非正常日志的采集日志剔除。
49.s2:对过滤处理后的数据进行时空网格化处理为时空网格编码后,以哈希表结构进行存储。
50.通过哈希表的结构进行存储,可以在哈希表中将属于同一个关键字字段的数据存储在一起,方便快速检索以及时空关联和时空矛盾的处理。
51.该实施例中哈希表的关键字(key)字段对应的内容为数据类型(datatype)与时空网格编码的拼接,如图2所示,该实施例中设定的时空网格编码具体为:timeslot|longitudeslot|latitudeslot,其中:“|”表示分隔符,timeslot表示时间槽,longitudeslot表示经度槽,latitudeslot表示纬度槽,计算公式分别为:
52.timeslot=(timestamp

timestamp%timeslotsize)/timeslotsize
53.longitudeslot=(longitude

longitude%longitudeslotsize)/longitudeslotsize
54.latitudeslot=(latitude

latitude%latitudeslotsize)/latitudeslotsize
55.longitude=int(longitude*100000)
56.latitude=int(latitude*100000)
57.其中,timestamp表示时间戳,timeslotsize表示时间戳单位,longitude表示经度
值,latitude表示纬度值,longitudeslotsize表示经度槽单位,latitudeslotsize表示纬度槽单位,int(.)表示取整。
58.值(value)字段中的value1和value2为时空网格下具体的数据信息。
59.s3:通过时空过滤器,对哈希表中不满足时空约束条件的数据进行过滤。
60.如图3所示,该实施例中采集日志基于时空过滤器的过滤的具体过程包括以下步骤:
61.s301:根据接收到的采集日志a,提取其采集地点p和采集时间戳t;
62.s302:从redis中获取采集地点网格p对应的网格、以时间t对应时间槽为基准的前n个时间槽内的采集日志;
63.s303:判断采集日志a所在时间槽是否已存在采集日志,如果是,进入s304,否则,进入s305;
64.s304:判断采集日志a的时间是否比所在时间槽中已存在的采集日志的时间早,如果是,进入s306,否则,判定采集日志a为滞留日志,结束;
65.s305:将redis上该时间槽的采集日志更新为采集日志a,进入s307;
66.s306:将redis上该时间槽的采集日志更新为采集日志a,判定采集日志a为滞留日志;
67.s307:判断前n个时间槽是否存在采集日志a,如果是,判定采集日志a为滞留日志;否则,判定采集日志a为非滞留日志;
68.s308:对所有滞留日志进行过滤处理。
69.本发明实施例除了能过滤常见的异常数据外,还通过对数据进行时空网格化,对数据进行提炼,减少大量冗余基础采集日志存储,降低了存储成本,且保留了具有代表性价值的数据,为后续的时空关联挖掘工作打下良好基础。
70.实施例二:
71.本发明还提供一种基于时空网格的数据过滤终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本发明实施例一的上述方法实施例中的步骤。
72.进一步地,作为一个可执行方案,所述基于时空网格的数据过滤终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述基于时空网格的数据过滤终端设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,上述基于时空网格的数据过滤终端设备的组成结构仅仅是基于时空网格的数据过滤终端设备的示例,并不构成对基于时空网格的数据过滤终端设备的限定,可以包括比上述更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述基于时空网格的数据过滤终端设备还可以包括输入输出设备、网络接入设备、总线等,本发明实施例对此不做限定。
73.进一步地,作为一个可执行方案,所称处理器可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述基于时空网格的数据过滤终端设备的控制中
心,利用各种接口和线路连接整个基于时空网格的数据过滤终端设备的各个部分。
74.所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述基于时空网格的数据过滤终端设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据手机的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
75.本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例上述方法的步骤。
76.所述基于时空网格的数据过滤终端设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)以及软件分发介质等。
77.尽管结合优选实施方案具体展示和介绍了本发明,但所属领域的技术人员应该明白,在不脱离所附权利要求书所限定的本发明的精神和范围内,在形式上和细节上可以对本发明做出各种变化,均为本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1