数据处理方法和服务器集群与流程

文档序号:20768390发布日期:2020-05-15 19:18阅读:311来源:国知局
数据处理方法和服务器集群与流程
本申请涉及大数据处理
技术领域
,具体而言,涉及一种数据处理方法和服务器集群。
背景技术
:在大数据处理技术背景下,当需要通过活动轨迹情况分析出一些时空特征时,如何能够在短时间内得到符合特征的分析结果是一个难题。以警方的活动轨迹分析为例,当前警方在进行活动轨迹分析业务时,面对一个区县的数据量时就已经存在数据处理压力,而若是数据量再增大,例如面临市级、省级的数据量时,难以在短时间内(例如一天内、一个晚上等)得出分析结果,处理效率低。为了提升处理速度,目前的一种做法是基于当前通用的大数据平台实现存储和计算。但目前的做法只是借用了分布式系统的框架,是仅通过增加计算节点的方式提升处理能力。而在实际应用中,使用轨迹数据参与计算时,数据量大且处理逻辑有一定复杂性。因此,虽然在初期通过传统的分布式系统能够改善前述的效率问题,但是等到系统使用一段时间后,数据量快速增长,传统分布式系统的弊端将显现,数据处理效率较低。技术实现要素:本申请实施例的目的在于提供一种数据处理方法和服务器集群,用以改善现有技术中对于大量的轨迹数据难以快速处理的问题。第一方面,本申请实施例提供一种数据处理方法,应用于区域分析系统中的第一节点,所述方法包括:获取多个轨迹数据中每个轨迹数据对应的时空特征;根据所述时空特征中的空间信息,对所述多个轨迹数据中的每个轨迹数据进行分类,得到所述多个轨迹数据中的每个轨迹数据对应的分片索引数据;对所述多个轨迹数据中的每个轨迹数据的时空特征进行编码,得到时空特征编码;根据所述分片索引数据以及所述时空特征编码,为所述多个轨迹数据生成至少一个索引文件,同一个所述索引文件内的所有时空特征编码对应同一个分片索引数据;将所述至少一个索引文件分配给所述区域分析系统中的至少一个第二节点,以供每个所述第二节点对所述索引文件进行存储。在上述方法中,由于生成的索引文件是按照分片索引数据生成的,且索引文件中包括多个时空特征编码,将索引文件发送给第二节点,可以实现对于时空特征的索引压缩以及数据的本地化。通过数据压缩和分片索引的方式可以降低原始轨迹数据的大小,能够加快数据导入至内存的速度,从而有利于提升整个系统的数据分析效率。由于经过了数据压缩和分片索引的分发存储,因此相较于现有技术,即使数据量大幅增加,也不会对系统造成过大负担,能够对大量的轨迹数据进行快速存储。在可选的实施方式中,所述时空特征还包括时间信息,所述对所述多个轨迹数据中的每个轨迹数据进行分类,得到所述多个轨迹数据中的每个轨迹数据对应的分片索引数据,包括:对于所述多个轨迹数据中的每个轨迹数据,根据所述时空特征中的空间信息确定区域标签,以及根据所述时空特征中的时间信息确定时间标签;基于所述区域标签和所述时间标签,生成所述多个轨迹数据中的每个轨迹数据对应的分片索引数据。通过上述实现方式,采用轨迹数据的空间信息、时间信息分别构建索引所需的标签,从而得到分片索引数据,有利于更为快速地加载数据。在可选的实施方式中,所述时空特征还包括时间信息、活动次数,所述对所述多个轨迹数据中的每个轨迹数据的时空特征进行编码,得到时空特征编码,包括:根据所述空间信息、所述时间信息以及所述活动次数,对所述多个轨迹数据中的每个轨迹数据的时空特征进行编码,得到预设字节的时空特征编码。通过上述实现方式,能够对大量的轨迹数据进行数据压缩,降低数据存储量,有利于数据的快速导入与读取。在可选的实施方式中,所述方法还包括:向所述至少一个第二节点发送区域分析任务,以供所述至少一个第二节点中的每个第二节点根据所述区域分析任务确定目标分片索引数据,并读取所述目标分片索引数据对应的索引文件,并对读取到的所述目标分片索引数据对应的索引文件内存储的各个时空特征编码进行解析,以得到区域分析结果;接收所述至少一个第二节点中的任意节点发送的区域分析结果;对接收到的区域分析结果进行汇总并存储。通过上述实现方式,利用了区域分析业务的独立性,按区域进行数据的分布式存储,并将数据本地化,且采用数据压缩、分片索引的分发方式加快了数据读取速度,结合区域时空特征的分布式任务处理模式,提升了整体系统对于各个区域的分析计算速度。相较于传统方案中在数据增加的情况下一味增加计算节点的处理方式,可以有效降低设备成本,且能够降低系统内部的通信次数,提升带宽利用率,提升数据处理效率。第二方面,本申请实施例提供一种数据处理方法,应用于区域分析系统中的多个第二节点中的任一节点,所述方法包括:接收所述区域分析系统中的第一节点发送的至少一个索引文件,每个所述索引文件包括至少一个时空特征编码,同一所述索引文件内的所有时空特征编码对应同一个分片索引数据;其中,所述分片索引数据是所述第一节点根据每个轨迹数据的时空特征中的空间信息进行分类确定的,所述时空特征编码是所述第一节点根据每个轨迹数据的时空特征进行编码得到的;根据每个索引文件对应的分片索引数据,对所述第一节点发送的每个索引文件进行存储。在上述方法中,任一第二节点可以对第一节点发送的每个索引文件进行存储,实现整个系统中的数据的分布式存储与数据本地化。由于各个索引文件是根据分片索引数据生成的,且索引文件中存储的是时空特征编码,相较于直接存储原始轨迹数据的方式,实现了数据压缩且可以基于索引实现数据的快速导入,有利于提升对于大量轨迹数据的执行效率。在可选的实施方式中,所述方法还包括:对同一分片索引数据对应的多个所述索引文件进行排序。通过上述实现方式,有利于对有序的存储内容进行快速查找,从而提升执行效率。在可选的实施方式中,所述方法还包括:响应所述第一节点的区域分析请求,根据所述区域分析请求确定目标分片索引数据;加载并读取所述目标分片索引数据对应的索引文件;对读取到的所述目标分片索引数据对应的索引文件内已存储的各个时空特征编码进行解析,得到区域分析结果;将所述区域分析结果发送给所述第一节点,以供所述第一节点根据所述区域分析结果进行汇总处理。通过上述实现方式,由于在存储阶段已经利用了业务独立性实现了数据本地化,且底层存储的是压缩得到的编码,在接收到第一节点的任务时,基于确定出的分片索引数据和相应的索引文件就可以进行数据的快速导入,从而快速对各个编码进行解析,提升数据分析效率。相较于传统方案中在数据增加的情况下一味增加计算节点的处理方式,可以降低系统内部通信次数。在可选的实施方式中,所述对读取到的所述目标分片索引数据对应的索引文件内已存储的各个时空特征编码进行解析,得到区域分析结果,包括:对于读取到的索引文件中已存储的每个时空特征编码,提取指定字节的编码内容以进行解析,得到所述区域分析结果。通过上述实现方式可以在无需对各条编码进行完整读取的情况下提取有效特征,提升数据处理效率。在可选的实施方式中,所述根据所述区域分析请求确定目标分片索引数据,包括:根据所述区域分析请求确定空间标签和时间标签;基于所述空间标签和时间标签确定所述目标分片索引数据。通过上述实现方式,可以基于构建分片索引数据时所用的标签快速确定出分析对象所属的目录,从而快速加载数据。第三方面,本申请实施例提供一种服务器集群,包括多个服务器,所述多个服务器中的任一服务器用于执行前述第一方面或第二方面所述的方法。第四方面,本申请实施例提供一种数据处理装置,应用于区域分析系统中的第一节点,所述装置包括:数据获取模块,用于获取多个轨迹数据中每个轨迹数据对应的时空特征;分类模块,用于根据所述时空特征中的空间信息,对所述多个轨迹数据中的每个轨迹数据进行分类,得到所述多个轨迹数据中的每个轨迹数据对应的分片索引数据;编码模块,用于对所述多个轨迹数据中的每个轨迹数据的时空特征进行编码,得到时空特征编码;生成模块,用于根据所述分片索引数据以及所述时空特征编码,为所述多个轨迹数据生成至少一个索引文件,同一个所述索引文件内的所有时空特征编码对应同一个分片索引数据;分配模块,用于将所述至少一个索引文件分配给所述区域分析系统中的至少一个第二节点,以供每个所述第二节点对所述索引文件进行存储。第五方面,本申请实施例提供一种数据处理装置,应用于区域分析系统中的多个第二节点中的任一节点,所述装置包括:文件接收模块,用于接收所述区域分析系统中的第一节点发送的至少一个索引文件,每个所述索引文件包括至少一个时空特征编码,同一所述索引文件内的所有时空特征编码对应同一个分片索引数据;其中,所述分片索引数据是所述第一节点根据每个轨迹数据的时空特征中的空间信息进行分类确定的,所述时空特征编码是所述第一节点根据每个轨迹数据的时空特征进行编码得到的;存储模块,用于根据每个索引文件对应的分片索引数据,对所述第一节点发送的每个索引文件进行存储。附图说明为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1为本申请实施例提供的一种服务器集群的示意图。图2为本申请实施例提供的一种电子设备的结构框图。图3为本申请实施例提供的一种数据处理方法的流程图。图4为本申请实施例提供的一种时空特征编码的数据结构示意图。图5为本申请实施例提供的另一种数据处理方法的流程图。图6为本申请实施例提供的一种数据处理装置的功能模块框图。图7为本申请实施例提供的另一种数据处理装置的功能模块框图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。发明人经过研究发现,现有技术中在借用通用的大数据平台框架时,例如采用hadoop架构实现分布式存储、spark引擎进行计算时,仅仅是利用了分布式系统的框架,在数据量增加的情况下仅是通过简单的增加计算节点的方式提升处理能力,但是这样的处理方式不仅设备成本高,还容易在系统运行一段时间后因计算节点过多而耗费过多的通信传输资源。有鉴于此,发明人提出以下实施例,在借助分布式系统的计算能力的基础上,对业务进行分析,基于业务内容实现对于数据的存储优化和计算方式的改进,从而针对特定的区域分析业务进行优化处理,减少数据加载阶段所需的时间,提升数据处理效率,以此能够快速识别出或计算出具有一些时空特征的区域。请参阅图1,图1为本申请实施例提供的一种服务器集群的示意图,该服务器集群包括多个服务器,该多个服务器中的每个服务器可作为区域分析系统中的节点,用于执行本申请实施例提供的数据处理方法。该服务器集群可用于实现基于区域的大数据分析。如图1所示,在该服务器集群中作为第一节点101的服务器可以与作为第二节点102的服务器进行数据交互。第一节点101可以获取大量的轨迹数据,并在对大量的轨迹数据进行预处理后得到每条轨迹数据的时空特征。第一节点101在得到各批次的轨迹数据的时空特征后对时空特征进行处理,并将处理后的数据分发给至少一个第二节点102。在数据量大的情况下,可以实现数据的分布式存储。当各个第二节点102中存储有能够参与分析计算的数据时,第一节点101可以向各个第二节点102下发区域分析任务,从而使得各个第二节点102针对已存储的数据进行分析计算,从而得到各自的区域分析结果,并将各自的区域分析结果返回给第一节点101。第一节点101可对各个第二节点102的区域分析结果进行汇总并存储,以备后续调用、查阅,将最终的区域分析结果汇聚到一台设备上可以提供较为高效的查询服务。需要说明的是,在最初获取到各条轨迹数据的时空特征时,单条轨迹数据难以反映区域特征,在进行区域分析时是需要对大量数据进行处理的。请参阅图2,图2为本申请实施例提供的一种电子设备200的结构框图,该电子设备200可以是图1所示的服务器集群中的任一服务器,可以用于执行本申请实施例提供的数据处理方法。如图2所示,该电子设备200包括存储器201、处理器202、通信单元203。存储器201、处理器202、通信单元203之间通过通讯总线直接或间接连接,以实现数据交互。存储器201是一种存储介质,可以是高速ram存储器,也可以是非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。存储器201可用于存储本申请实施例提供的数据处理方法对应的计算机程序。处理器202具有运算处理能力,可以是中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等通用处理器;还可以是专用处理器或者其他可编程逻辑器件搭建的处理器。处理器202可以实现本申请实施例提供的方法、步骤及逻辑框图。当存储器201上存储的计算机程序被处理器202运行时,可以实现本申请实施例提供的数据处理方法。通信单元203可以包括通信总线、通信芯片等通信所需的介质。电子设备200可以通过通信单元203实现与外部设备的有线或无线通信连接,从而实现数据交互。可以理解的是,图2所示的结构仅作为示意,具体应用时,电子设备200还可以有更多的组件,或具有与图2所示所不同的配置方式。例如,该电子设备200还可以包括显示单元,可以为用户提供交互界面,或展示本申请实施例提供的方法中的一些轨迹数据和区域分析结果。请参阅图3,图3为本申请实施例提供的一种数据处理方法的流程图,该方法可应用于区域分析系统中的第一节点。如图3所示,该方法包括步骤s31-s35。s31:第一节点获取多个轨迹数据中每个轨迹数据对应的时空特征。其中,轨迹数据是指与用户的出行、活动区域有关的数据,能够反映在一定时间内在某个活动区内有关的活动轨迹数据,例如,轨迹数据能够用于反映有多少用户何时处于何地。在对轨迹数据进行预处理(例如特征提取)后可以得到轨迹数据的时空特征。这些轨迹数据的时空特征涉及三方面:时间、空间、频次。s32:第一节点根据时空特征中的空间信息,对多个轨迹数据中的每个轨迹数据进行分类,得到多个轨迹数据中的每个轨迹数据对应的分片索引数据。s33:第一节点对多个轨迹数据中的每个轨迹数据的时空特征进行编码,得到时空特征编码。s34:第一节点根据分片索引数据以及时空特征编码,为多个轨迹数据生成至少一个索引文件,同一个索引文件内的所有时空特征编码对应同一个分片索引数据。s35:第一节点将至少一个索引文件分配给区域分析系统中的至少一个第二节点,以供每个第二节点对索引文件进行存储。关于s31,针对每条轨迹数据在时空特征计算过程中会用到的特征进行拆解,可以得知每条轨迹数据的时空特征包括三类基础特征:区域本身的特征、时间特征、空间特征。对于区域本身的特征,通过轨迹数据的空间信息反映,可以通过区域标签进行分类,不同的区域特征可以用不同的区域标签进行标识,在对一些区域进行分析后,区域标签可以被更新,其中,公共场所和住宅小区的区域特征是不同的,一些重点场所、敏感场所区域和普通的可随意进出的区域特征是不同的。对于时间特征,通过轨迹数据的时间信息反映,可以用时间标签进行区分,白天和夜晚的特征不同,普通的工作日和节假日的特征不同。对于空间特征,通过轨迹数据的空间信息反映,与前述区域本身的特征所不同的是,反映空间特征的空间信息更为详细。例如,对应同一小区的地下车库和小区门口,虽然区域本身的特征指示的是同一个小区,但反映的空间特征(地下车库、小区门口)不同,同一小区的各个门口(东、西、南、北门)的空间特征也不同。基于上述特征拆分思路,可以将每条轨迹数据分解为四部分:区域下的轨迹实体信息、区域描述信息、时间描述信息、空间描述信息。区域描述信息和空间描述信息均属于空间信息。如下表1所示的是对一组车牌卡口轨迹数据进行特征拆分后得到的内容,表1中的各个车牌即为区域下的轨迹实体信息。表1车牌区域描述信息时间描述信息空间描述信息c1a小区2019-12-0316:20:13地下停车场1层c2a小区2019-12-0316:21:16地下停车场2层c3b小区2019-12-0416:18:13东门入口c4b小区2019-12-0416:10:13南门入口c3b小区2019-12-0416:35:05北门出口针对各条轨迹数据的时空特征,可以构建数据索引内容。例如,针对区域本身的特征和时间特征,可以分别得到各条轨迹数据所属的区域标签和时间标签,从而得到两级索引。构建的索引可以成为对各条轨迹数据进行分类的依据。再例如,针对空间特征和时间特征,可以分别得到各条轨迹数据所属的区域标签和时间标签,从而得到两级索引。在s32中是以区域标签作为一级索引,根据各条轨迹数据的时空特征中的空间信息,对多个轨迹数据中的每个轨迹数据进行分类,得到多个轨迹数据中的每个轨迹数据对应的分片索引数据。以表1的几条数据为例,针对表1中各条数据进行分片后可以得到如下表2所示的分片索引数据。表2通过表2可以得知,在对表1的各条数据进行分类后,依据各条轨迹数据的空间信息确定了区域标签:“a小区”和“b小区”,依据各条轨迹数据的时空特征中的时间信息确定了时间标签:“2019-12-03”、“2019-12-04”。在将生成的区域标签和时间标签进行组合后得到两级索引目录,作为分片索引数据。以此原理,可以针对s31中多个轨迹数据中的每个轨迹数据,基于时间信息、空间信息,为每条轨迹数据确定区域标签、时间标签,从而生成对应的分片索引数据,将具有相同的分片索引数据的数据视为同类数据,实现数据分类。通过轨迹数据的空间信息、时间信息分别构建索引的标签,从而得到分片索引数据,有利于更为快速地加载数据,例如能够快速地获取指定小区的数据、能够快速地获取指定时间段的数据、能够快速获得指定地下停车场的车辆轨迹等。在其他实施例中,分片时可以有更多级的目录、具有更多的标签,表2的两级索引目录也可以交换位置。对于上述s33,在对多个轨迹数据中的每个轨迹数据的时空特征进行编码时,可以根据时空特征中的空间信息、时间信息进行编码,若轨迹数据经过预处理后所反映的时空特征中还包括活动次数,则在s33中进行编码时,可以根据空间信息、时间信息以及活动次数,对s31中的每条轨迹数据的时空特征进行编码,从而得到时空特征编码,从而能够对大量的轨迹数据进行数据压缩,降低数据存储量,有利于数据的快速导入与读取。由于各条数据在空间信息上的复杂性,在进行编码时可以对每条轨迹数据的具体空间信息进行固定字节的编码。在分别对空间信息、时间信息、活动次数进行编码后,可以得到空间编码、时间编码、活动频率编码。将编码得到的空间编码、时间编码、活动频率编码进行组合后,可以得到预设字节的时空特征编码。本领域技术人员可以对编码时的字节长度进行设置,例如可以分别设置空间编码的字节长度、时间编码的字节长度、活动频率编码的字节长度。在一个实例中,在给定的一个具体的空间区域下,对自定义的一个时间段内经过的实体(例如车牌)数量进行统计,得到一条轨迹数据的时空特征表现为:2019年12月3日下午4点20分经过a小区的地下停车场1层的车辆有5个。则可以将给定的空间区域映射为空间编码,例如将地下停车场1层转换为3个字节的数字编码,将具体的时间信息“下午4点20分”、活动次数(实体经过数量)“5”分别转换成2个字节的时间编码、活动频率编码,可以得到如图4所示的编码结果,作为一条时空特征编码。时空特征编码可以二进制形式进行存储。对于图4所示的编码结果,在存储时可以将空间编码作为键值,将时间编码、活动频率编码作为键值下的内容值。基于此原理,也可以对分片索引数据中的标签进行编码,作为时空特征编码中的一部分。当通过上述s32进行分类,并通过s33完成编码后,执行s34。在s34中,将通过s33生成的时空特征编码存储到各条轨迹数据对应的分片索引数据下,将同一分片索引数据下的多个时空特征编码进行打包,以此为s31中的多个轨迹数据生成至少一个索引文件。其中,索引文件的数量与分片索引数据的个数有关。通过s31-s34可以为批量的轨迹数据进行快速分类与压缩,有利于后续存储与调用。当通过s34生成索引文件后,通过s35将生成的至少一个索引文件分配给区域分析系统中的一个或多个第二节点,以使接收到索引文件的第二节点对索引文件进行存储。在上述s31-s35的方法中,由于生成的索引文件是按照分片索引数据生成的,且索引文件中包括多个时空特征编码,将索引文件发送给第二节点,可以实现对于时空特征的索引压缩以及数据的本地化,通过数据压缩和分片索引的方式可以降低原始轨迹数据的大小,能够加快数据导入至内存的速度,从而有利于提升整个系统的数据分析效率。由于经过了数据压缩和分片索引的分发存储,因此相较于现有技术,即使数据量大幅增加,也不会对系统造成过大负担,可以保障分析计算能力。为了便于实现负载均衡,可以通过哈希取模法将生成的至少一个索引文件分配给多个第二节点,将索引文件按照空间信息进行分配,从而实现索引数据的分布式存储。若存在10个第二节点,可以按照空间信息(例如分片索引数据中的空间标签)将生成的一批索引文件尽量均衡的分配给该10个第二节点。可选地,除了上述s31-s35中关于数据的分布式存储过程,本申请实施例提供的数据处理方法还可以包括数据的分布式计算过程,该分布式计算过程中由第一节点执行的步骤可包括s36-s38。s36-s38可用于对给定的区域范围,计算抽象的三类特征(区域本身、时间、空间),在计算时对于每种特征可以通过读取这三类特征,并进行组合、过滤以实现数据分析。通过该分布式计算过程可以将不同区域的任务分配给不同的第二节点,然后对各个第二节点的结果进行汇总。s36:第一节点向至少一个第二节点发送区域分析任务,以供至少一个第二节点中的每个第二节点根据区域分析任务确定目标分片索引数据,并读取目标分片索引数据对应的索引文件,并对读取到的目标分片索引数据对应的索引文件内存储的各个时空特征编码进行解析,以得到区域分析结果。由于在s36之前,各个第二节点已经接收并存储了索引文件,因此在s36中,第一节点向第二节点发送区域分析任务时,第二节点可以根据区域分析任务解析计算逻辑,确定计算什么区域下的特征,从而加载相应的空间标签,同理,第二节点还可以根据区域分析任务解析计算逻辑以确定计算的时间约束,从而加载相应的时间标签,以此可以确定目标分片索引数据,并加载该目标分片索引数据下的索引文件,使得第二节点能够对目标分片索引数据下的索引文件内存储的各个时空特征编码进行解析,从而得到第二节点关于此次区域分析任务的区域分析结果。当任一第二节点得到区域分析结果后,可以将区域分析结果返回给第一节点。s37:第一节点接收至少一个第二节点中的任意节点发送的区域分析结果。s38:第一节点对接收到的区域分析结果进行汇总并存储。当需要针对区域中的所有轨迹数据,通过在区域内活动的轨迹情况计算针对某个区域下的时空特征时,例如需要从m市的所有住宅区中确定出在半个月内呈现“昼伏夜出”特征的住宅区有哪些、从n区的所有区域中确定出在一周内呈现轨迹密集特征的区域有哪些等针对区域的区域分析任务时,各个第二节点可以分别针对相应节点上已存储的索引文件进行分析,并向第一节点返回各自的区域分析结果,第一节点对各个第二节点的区域分析结果进行汇总后得知m市、n区中符合分析条件的区域有哪些,并进行存储,以便用户可以尽快调用汇总后得到的结果。在一个应用场景下,上述方法可以快速识别出m市的涉赌小区,这类小区的特征可以是:晚上的轨迹密度大,表现为夜间(时间特征)出入频繁(活动次数)的小区(空间特征)。在另一个应用场景下,上述方法可用于快速识别出q县的滞留区域,这类区域的特征可以是:在给定的时间范围内(时间特征),只在特定区域内(空间特征)有大量(活动次数)的轨迹数据记录。在上述实现方式中,是基于区域分析业务的独立性,按区域进行数据的分布式存储,并将数据本地化,且采用数据压缩、分片索引的分发方式加快数据读取速度,以区域时空特征的分布式任务处理模式,提升整体系统对于各个区域的分析计算速度。相较于传统方案中在数据增加的情况下一味增加计算节点的处理方式,可以有效降低设备成本,且由于无需再依赖那么多系统内的通信次数,可以提升带宽利用率。基于同一发明构思,请参阅图5,本申请实施例还提供了另一种数据处理方法,图5所示的方法可应用于区域分析系统中的多个第二节点中的任一节点。请参阅图5,该方法包括步骤s51-s52。s51:接收区域分析系统中的第一节点发送的至少一个索引文件。其中,每个索引文件包括至少一个时空特征编码,同一索引文件内的所有时空特征编码对应同一个分片索引数据;其中,分片索引数据是第一节点根据每个轨迹数据的时空特征中的空间信息进行分类确定的,时空特征编码是第一节点根据每个轨迹数据的时空特征进行编码得到的。关于分片索引数据、时空特征编码、索引文件的内容请参考前述图3所示的方法中的相关描述,在此不再赘述。s52:根据每个索引文件对应的分片索引数据,对第一节点发送的每个索引文件进行存储。其中,对于区域分析系统中的多个第二节点中的任一节点,可能接收到来自第一节点的一个或多个索引文件,任一第二节点对于接收到的每个索引文件进行存储,对应同一个分片索引数据的各个索引文件可以存放在同一目录下,以便于数据的快速查找。在上述s51-s52的方法中,可以对第一节点发送的每个索引文件进行存储,实现整个系统中的数据的分布式存储。由于各个索引文件是根据分片索引数据生成的,且索引文件中存储的是时空特征编码,相较于直接存储原始轨迹数据的方式,实现了数据压缩且可以基于索引实现数据的快速导入,有利于提升执行效率。可选地,第二节点还可以对同一分片索引数据对应的多个索引文件进行排序。作为一种实现方式,此时可以根据各个索引文件的名称进行排序。每个索引文件中的各个时空特征编码可以是有序存储的。作为另一种实现方式,可以根据各个索引文件内的编码进行排序。例如,可以为各个索引文件中的所有时空特征编码进行重新排序,即,将各个索引文件的所有时空特征编码提取出来进行排序后,重新生成有序的新的索引文件。通过对同一分片索引数据下的各个索引文件进行排序,实质上对文件内的各个编码进行排序,以此有利于基于二分法等数据查找算法快速对数据进行搜索,从而提升搜索效率。在一个实例中,对于同一分片索引数据下的20个索引文件,20个索引文件中共记录了10000个时空特征编码,在接收到排序指令进行排序操作后,可以将该10000个编码存储到新的10个索引文件中,10个索引文件是有序排列的,且该10个新的索引文件中每个索引文件的编码数量可以相同,每个新的索引文件内的编码也可以是有序的。以此能够降低同一分片索引数据下的索引文件数量,避免因文件过多而影响搜索效率。可选地,对应前述方法中s36-38的分布式计算过程,由任一第二节点执行的数据处理方法还可以包括:s53-s56。s53:响应第一节点的区域分析请求,根据区域分析请求确定目标分片索引数据。s54:加载并读取目标分片索引数据对应的索引文件;s55:对读取到的目标分片索引数据对应的索引文件内已存储的各个时空特征编码进行解析,得到区域分析结果;s56:将区域分析结果发送给第一节点,以供第一节点根据区域分析结果进行汇总处理。其中,s53中的区域分析请求可以是s36中由第一节点发送的区域分析任务。第二节点可以根据区域分析请求解析计算逻辑,确定需要获取符合什么特征的数据,从而加载相应的空间标签和时间标签,以此可以基于确定出的时间标签、空间标签确定目标分片索引数据。例如可以通过加载m市这一大区域标签下的小区域标签“a小区”、时间标签“2019-12-04”,可以得到目标分片索引数据。通过加载并读取该目标分片索引数据下的索引文件,使得第二节点能够对目标分片索引数据下的索引文件内存储的各个时空特征编码进行解析,从而得到第二节点关于此次区域分析请求的区域分析结果。当任一第二节点得到区域分析结果后,可以将区域分析结果同步传输给第一节点,以便第一节点对各个第二节点的区域分析结果进行汇总。通过上述实现方式,由于在存储阶段已经利用了区域分析任务的业务独立性,实现了数据本地化,且底层存储的是压缩得到的编码,在接收到第一节点的任务时,基于确定出的分片索引数据和相应的索引文件就可以进行数据的快速导入,从而快速对各个编码进行解析,提升数据分析效率。相较于传统方案中在数据增加的情况下一味增加计算节点的处理方式,可以降低系统内部通信次数,提升带宽利用率,且可以有效降低设备成本。作为一种实现方式,上述s55可以包括:对于读取到的索引文件中已存储的每个时空特征编码,提取指定字节的编码内容以进行解析,得到区域分析结果。其中,对于具有预设字节的时空特征编码,可以通过提取该预设字节的时空特征编码中指定位置、指定字节的编码内容,以得到该时空特征编码所反应的时空特征。在一个实例中,对于具有15个字节的一组时空特征编码,可以从每个编码的15个字节中的第3个字节起,连续提取5个字节的编码内容并进行解析,从而得到时空特征编码所反映的时间特征、活动频率特征等。在另一个实例中,对于具有7个字节的一组时空特征编码,可以分别读取该时空特征编码的第1-3、4-5、6-7个字节的编码内容,并对提取的相应字节的内容进行解析,从而得到时空特征编码所反映的空间特征、时间特征、活动频率特征等。将对指定字节的编码内容进行解析后,可以将符合区域分析请求中的特征限制的编码内容或者该编码内容对应的详细信息作为区域分析结果发送给第一节点。其中,若第一节点接收到的区域分析结果是未被还原为详细信息的编码内容,则第一节点还可以对接收到的编码内容进行还原。通过上述实现方式,由于可以直接对指定字节的编码内容进行数据解析,能够在无需对各条编码进行完整读取的情况下提取有效特征,能够提升数据处理效率。在一个实例中,通过上述图3和图5的实现方式,区域分析系统可以按照预设的时间间隔对批量的轨迹数据进行处理,例如可以每天处理一批数据:白天收集数据,晚上进行分析、存储与汇总,以便能够在下一天得到可以供给用户调用的处理结果。在面临区县级、市级甚至省级的所有人的轨迹数据量的情况下,上述方案可以实现高效数据分析。基于同一发明构思,请参阅图6,本申请实施例提供一种数据处理装置600,图6所示的装置可应用于区域分析系统中的第一节点,该装置包括:数据获取模块601、分类模块602、编码模块603、生成模块604、分配模块605。该装置可用于执行前述由第一节点实现的数据处理方法。数据获取模块601,用于获取多个轨迹数据中每个轨迹数据对应的时空特征。分类模块602,用于根据时空特征中的空间信息,对多个轨迹数据中的每个轨迹数据进行分类,得到多个轨迹数据中的每个轨迹数据对应的分片索引数据。编码模块603,用于对多个轨迹数据中的每个轨迹数据的时空特征进行编码,得到时空特征编码。生成模块604,用于根据分片索引数据以及时空特征编码,为多个轨迹数据生成至少一个索引文件,同一个索引文件内的所有时空特征编码对应同一个分片索引数据。分配模块605,用于将至少一个索引文件分配给区域分析系统中的至少一个第二节点,以供每个第二节点对索引文件进行存储。可选地,该分类模块602还可用于对于所述多个轨迹数据中的每个轨迹数据,根据所述时空特征中的空间信息确定区域标签,以及根据所述时空特征中的时间信息确定时间标签;基于所述区域标签和所述时间标签,生成所述多个轨迹数据中的每个轨迹数据对应的分片索引数据。可选地,该编码模块603还可用于根据所述空间信息、所述时间信息以及所述活动次数,对所述多个轨迹数据中的每个轨迹数据的时空特征进行编码,得到预设字节的时空特征编码。可选地,该装置还可包括区域分析模块,用于向所述至少一个第二节点发送区域分析任务,以供所述至少一个第二节点中的每个第二节点根据所述区域分析任务确定目标分片索引数据,并读取所述目标分片索引数据对应的索引文件,并对读取到的所述目标分片索引数据对应的索引文件内存储的各个时空特征编码进行解析,以得到区域分析结果;接收所述至少一个第二节点中的任意节点发送的区域分析结果;对接收到的区域分析结果进行汇总并存储。基于同一发明构思,请参阅图7,本申请实施例还提供另一种数据处理装置700,图7所示的装置可应用于区域分析系统中的多个第二节点中的任一节点,该装置包括:文件接收模块701、存储模块702。该装置可用于执行前述由任一第二节点实现的数据处理方法。文件接收模块701,用于接收区域分析系统中的第一节点发送的至少一个索引文件,每个索引文件包括至少一个时空特征编码,同一索引文件内的所有时空特征编码对应同一个分片索引数据;其中,分片索引数据是第一节点根据每个轨迹数据的时空特征中的空间信息进行分类确定的,时空特征编码是第一节点根据每个轨迹数据的时空特征进行编码得到的;存储模块702,用于根据每个索引文件对应的分片索引数据,对第一节点发送的每个索引文件进行存储。可选地,该存储模块702还可用于对同一分片索引数据对应的多个所述索引文件进行排序。可选地,该装置还可包括响应模块,用于响应所述第一节点的区域分析请求,根据所述区域分析请求确定目标分片索引数据;加载并读取所述目标分片索引数据对应的索引文件;对读取到的所述目标分片索引数据对应的索引文件内已存储的各个时空特征编码进行解析,得到区域分析结果;将所述区域分析结果发送给所述第一节点,以供所述第一节点根据所述区域分析结果进行汇总处理。可选地,该响应模块还可用于对于读取到的索引文件中已存储的每个时空特征编码,提取指定字节的编码内容以进行解析,得到所述区域分析结果。可选地,该响应模块还可用于根据所述区域分析请求确定空间标签和时间标签;基于所述空间标签和时间标签确定所述目标分片索引数据。关于本申请实施例提供的数据处理装置的其他细节,请参考前述数据处理方法中的相关描述,在此不再赘述。除了上述实施例以外,本申请实施例还提供了一种存储介质,该存储介质上存储有计算机程序,计算机程序被执行时可以实现前述的数据处理方法。存储介质可包括:u盘、移动硬盘、存储器、磁盘等各种可以存储程序代码的介质。例如,该存储介质可以是第一节点的存储器或第二节点的存储器。在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。另一点,所讨论的相互之间的连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。以上仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1