基于时空域的数据流处理方法与流程
未命名
09-29
阅读:86
评论:0
1.本发明涉及信息技术领域,具体地,涉及一种基于时空域的数据流处理方法。
背景技术:
2.数字孪生对高性能数据分析和处理提出了更高的要求,针对各类智慧应用,需要实时处理分析海量数据。作为数据处理技术的一种,流数据分析引擎所需面临的海量处理压力尤为明显。通过增强数据本地化,实现将计算下沉到靠近数据源的边缘节点,是提示数据处理效率的重要手段之一。
3.流数据本身携带时间属性,因为数据是按时间顺序产生,每个数据对应一个空间为主。对于大量传感器产生实时数据流,如何进行有效处理,是数字孪生应用待解决的问题。传统流处理引擎,设定数据生产方何消费方,但数据消费方以计算节点位置作为主要的部署考量,因此在具有复杂网络环境的数字孪生应用环境下,会引发部署后的数据处理效率问题。
4.专利文献cn101001379a(申请号:cn200610000542.4)公开了一种对视频数据进行处理的方法,包括:如果数据流中存在数据丢失,则判断是否在软件处理层完成丢失数据预测估计及补偿,否则对视频数据进行播放;如果确定在软件处理层完成丢失数据的预测估计及补偿,则判断系统的实时性要求,否则进入解码器处理层;如果系统对实时性要求高,则对丢失数据进行基于时域的预测估计及补偿,如果系统对实时性要求不高,则对丢失数据进行基于空域的预测估计和基于时域的补偿,对视频数据进行播放;进入解码器处理层,解码器对接收到的存在数据丢失的视频编码数据流进行基于空域的预测估计和基于时域的补偿;解码器对接收到的视频编码数据流进行解码,并发送给播放装置进行播放。但是该专利没有采用统一的时空域管理,无法实现数据与计算尽可能在相同或相近的时空域中进行处理,导致数据处理效率低。
技术实现要素:
5.针对现有技术中的缺陷,本发明的目的是提供一种基于时空域的数据流处理方法。
6.根据本发明提供的基于时空域的数据流处理方法,通过建立全局的时空域管理与信息分发机制,将数据和计算过程以及计算资源均与时空域属性进行关联,通过基于时空域的调度优化和任务编排,实现高效的时空数据流处理计算能力,具体包括:
7.步骤1:构建时空流处理框架的整体架构;
8.步骤2:进行时空域定义;
9.步骤3:部署时空域服务;
10.步骤4:进行时空域管理;
11.步骤5:进行时空域计算任务调度。
12.优选地,所述时空流处理框架的整体架构包括时空域管理和流计算管理;
13.所述时空域管理是对数据源、数据存储和计算设备进行时空数据的关联与管理,包括对每个数据源、存储空间和计算节点打上时空标签;
14.所述流计算管理是将传统流处理的分阶段任务在基于时空域的数据计算管理体系中定位最佳运行位置,通过分析计算任务所关联的数据源、存储设备来确定其运行的目标计算节点。
15.优选地,所述时空域定义包括:
16.以时间+空间的数据向量的方式进行时空域的表达;
17.时间区间:通过[start,end]形式来表达,start和end均为浮点数,代表具体的时间信息,如果end为0,则代表无穷;
[0018]
空间区间:通过8组空间坐标表达一个空间立方体,每个坐标点均为x、y、z的3维空间坐标;或节省存储空间,用2组空间坐标,即对角点或者一个空间点坐标,结合3个维度的长度;
[0019]
整个空间区域以不同粒度的立方体所表达,对于不规则区域,由多个立方体进行近似表达。
[0020]
优选地,所述时空域服务为全局服务,通过树形结构部署,来覆盖不同网段所部署的数据和计算资源。
[0021]
优选地,所述时空域管理负责维护全局的时空信息,包括系统所覆盖的时间空间领域和在时间空间领域上注册的传感器数据源、数据存储、计算过程和计算资源;
[0022]
对所覆盖时间空间领域的管理包括时空区域的增加、修改和删除;
[0023]
增加时空域:通过增加空间区间或扩展时间区间来实现;
[0024]
修改时空域:修改时间区间,或增加、删除空间区间;
[0025]
删除时空域:对时空域中的部分时间区域进行缩减或删除,对空间区域进行删除,或将较大的空间区域替换为较小的空间区域,实现空间区域的缩减。
[0026]
优选地,对于数据源,时空域管理包括:
[0027]
注册时空域:数据源为传感器数据,在其上线时,由用户手工关联时空域,并向其所在网段内的时空域管理服务器注册;或向其所在网段内的时空域管理服务器发起请求,由时空域服务器为其指定时空域;
[0028]
修改时空域:由用户手工修改,并向其所在网段内的时空域管理服务器发起更新;或由其所在网段内的时空域管理服务器下发更新消息;
[0029]
注销时空域:由用户手工注销,并向其所在网段内的时空域管理服务器发起注销;或由其所在网段内的时空域管理服务器下发注销消息。
[0030]
优选地,对于数据存储,时空域管理包括:
[0031]
注册时空域:在其上线时,由用户手工关联时空域,并向其所在网段内的时空域管理服务器注册;或向其所在网段内的时空域管理服务器发起请求,由时空域服务器为其指定时空域;
[0032]
修改时空域:由用户手工修改,并向其所在网段内的时空域管理服务器发起更新;也可由其所在网段内的时空域管理服务器下发更新消息;
[0033]
注销时空域:由用户手工注销,并向其所在网段内的时空域管理服务器发起注销;或由其所在网段内的时空域管理服务器下发注销消息。
[0034]
优选地,对于计算任务,时空域管理包括:
[0035]
注册时空域:在其启动时,向其所在网段内的时空域管理服务器发起请求,由时空域服务器根据其所在计算设备和关联的数据源或数据存储所在的时空域为其指定时空域;
[0036]
修改时空域:仅当其所在计算设备和关联的数据源或数据存储所在的时空域变化时进行修改,由其所在网段内的时空域管理服务器下发更新消息;
[0037]
注销时空域:当任务结束,向其所在网段内的时空域管理服务器发起注销。
[0038]
优选地,对于计算设备,时空域管理包括:
[0039]
注册时空域:在其上线时,由用户手工关联时空域,并向其所在网段内的时空域管理服务器注册;或向其所在网段内的时空域管理服务器发起请求,由时空域服务器根据与其相邻的数据源的时空域为其指定时空域;
[0040]
修改时空域:由用户手工修改,并向其所在网段内的时空域管理服务器发起更新;或由其所在网段内的时空域管理服务器下发更新消息;
[0041]
注销时空域:由用户手工注销,并向其所在网段内的时空域管理服务器发起注销;或由其所在网段内的时空域管理服务器下发注销消息。
[0042]
优选地,所述时空域计算任务调度包括:将任务分派至与数据最为接近的位置,具体为:检测计算任务c所关联的数据源和数据存储,并获得相关的时空域std;在std所覆盖时空中搜索计算设备,获得计算设备d;如果d有足够资源运行计算任务,则将c调度至d;如果d没有足够资源,则通过时空域管理服务器寻找与d空间相邻的计算设备;在相邻计算设备上启动c;
[0043]
计算任务以虚拟机或容器镜像的方式在计算设备上安装启动,处理过程为:将镜像预先在多个计算节点上设置;建立通用的镜像仓库,计算设备从与时空域接近的镜像仓库调取镜像;将镜像传输本身作为任务调度的考量因素,如果传输镜像所造成的延迟超过数据本地化带来的效率提升,则需选择折中的计算任务运行位置。
[0044]
与现有技术相比,本发明具有如下的有益效果:
[0045]
(1)本发明将数据和计算均导入时空域,通过统一的时空域管理,实现数据与计算尽可能在相同或相近的时空域中进行处理,提升数据本地化,进而提升数据处理效率;
[0046]
(2)本发明对数据源和各级数据存储进行时空信息的关联,用于增强计算的数据本地化;对计算和存储设备进行时空信息的关联,用于增强计算的数据本地化;通过应用全局时空域信息,即时间、空间信息来管理数据和计算能力,相比传统流数据处理平台,增加了时空域管理,对数据和计算均打上时空标签,以进行基于时空匹配高效的计算任务调度。
附图说明
[0047]
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
[0048]
图1基于时空域的流处理平台架构;
[0049]
图2时空域管理;
[0050]
图3流处理任务调度。
具体实施方式
[0051]
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
[0052]
实施例:
[0053]
本发明将流数据处理抽象为:数据源、数据中间存储、与之结合的若干结构化数据处理模块和非结构化数据处理模块,以及最终的关系型数据库或非关系型数据库,所有数据处理模块和数据中间存储,均在时空域中注册和部署,从而具有本地化属性。所有的数据处理模块均为流引擎/流水线中的一节,所有数据均带有时空域的标签,尽可能存放在在相同或相近的时空域中的存储系统,并在相同或相近时空域的计算系统中完成计算处理。
[0054]
本发明包括3部分内容:
[0055]
1.时空域属性管理,包括数据源、数据存储介质和运算过程的时空域信息匹配;
[0056]
2.时空域计算应用调度:以数据为驱动的计算应用调度;
[0057]
3.时空敏感的流处理计算框架整体架构。
[0058]
本发明的实现方式是通过建立全局的时空域管理与信息分发机制,将数据和计算过程以及计算资源均与时空域属性进行关联。在此基础上,通过基于时空域的调度优化和任务编排,实现高效的时空数据流处理计算能力。这里分为5个步骤介绍本发明的实施方式:
[0059]
1.时空流处理框架的整体架构;
[0060]
2.时空域定义;
[0061]
3.时空域服务;
[0062]
4.时空域管理;
[0063]
5.时空域计算任务调度。
[0064]
时空流处理框架的整体架构:
[0065]
附图1给出了时空流处理框架的整体架构,其核心组件为时空域管理和流计算管理。时空域管理包括对数据源、数据存储和计算设备进行时空数据的关联与管理,即对每个数据源、存储空间和计算节点打上时空标签。流计算管理主要是将传统流处理的分阶段任务在基于时空域的数据-计算管理体系中定位最佳运行位置,通过分析计算任务所关联的数据源、存储设备来确定其运行的目标计算节点。
[0066]
关于时空域管理和对数据、计算的时空关联,在后面几段详述。
[0067]
时空域定义:
[0068]
时空域的表达方式为时间+空间的数据向量,具体包括:
[0069]
时间区间:通过[start,end]形式来表达,start和end均为浮点数,代表具体的时间信息,如果end为0,则代表无穷;
[0070]
空间区间:通过8组空间坐标表达一个空间立方体,每个坐标点均为x,y,z的3维空间坐标,为节省存储空间,也可以用2组空间坐标(即对角点,或者一个空间点坐标,结合3个维度的长度)。
[0071]
整个空间区域以不同粒度的立方体所表达。对于不规则区域,由若干个立方体进
行近似表达。
[0072]
时空域服务:
[0073]
如前所述,时空域服务为全局服务,因此时空域服务器可通过树形结构部署,来覆盖不同网段所部署的数据、计算资源,如附图2所示。
[0074]
时空域管理:
[0075]
时空域管理是负责维护全局的时空信息,包括系统所覆盖的时间空间领域和在时间空间领域上注册的传感器数据源、数据存储、计算过程和计算资源。
[0076]
首先对所覆盖时间空间领域的管理包括时空区域的增加、修改和删除:
[0077]
增加时空域:通过增加空间区间或扩展时间区间来实现;
[0078]
修改时空域:修改时间区间,或增加、删除空间区间;
[0079]
删除时空域:是对时空域中的部分时间区域进行缩减或删除,对空间区域进行删除,或将大的空间区域替换为小的空间区域,实现空间区域的缩减。
[0080]
对于数据、计算任务和计算设备的时空域管理包括时空信息的注册、修改和注销,具体操作如下:
[0081]
数据源
[0082]
注册时空域:数据源一般为传感器数据,在其上线时,可用两种方式注册:1.手工关联时空域,并向其所在网段内的时空域管理服务器注册;2.向其所在网段内的时空域管理服务器发起请求,由时空域服务器为其指定时空域;
[0083]
修改时空域:与注册类似,可以由用户手工修改,并向其所在网段内的时空域管理服务器发起更新;也可由其所在网段内的时空域管理服务器下发更新消息;
[0084]
注销时空域:可以由用户手工注销,并向其所在网段内的时空域管理服务器发起注销;也可由其所在网段内的时空域管理服务器下发注销消息。
[0085]
数据存储:
[0086]
注册时空域:在其上线时,可用两种方式注册:1.手工关联时空域,并向其所在网段内的时空域管理服务器注册;2.向其所在网段内的时空域管理服务器发起请求,由时空域服务器为其指定时空域;
[0087]
修改时空域:与注册类似,可以由用户手工修改,并向其所在网段内的时空域管理服务器发起更新;也可由其所在网段内的时空域管理服务器下发更新消息;
[0088]
注销时空域:可以由用户手工注销,并向其所在网段内的时空域管理服务器发起注销;也可由其所在网段内的时空域管理服务器下发注销消息。
[0089]
计算任务:
[0090]
注册时空域:在其启动时,向其所在网段内的时空域管理服务器发起请求,由时空域服务器根据其所在计算设备和关联的数据源或数据存储所在的时空域为其指定时空域;
[0091]
修改时空域:仅当其所在计算设备和关联的数据源或数据存储所在的时空域变化时进行修改,由其所在网段内的时空域管理服务器下发更新消息;
[0092]
注销时空域:当任务结束,向其所在网段内的时空域管理服务器发起注销。
[0093]
计算设备:
[0094]
注册时空域:在其上线时,可用两种方式注册:1.手工关联时空域,并向其所在网段内的时空域管理服务器注册;2.向其所在网段内的时空域管理服务器发起请求,由时空
域服务器根据与其相邻的数据源的时空域为其指定时空域;
[0095]
修改时空域:与注册类似,可以由用户手工修改,并向其所在网段内的时空域管理服务器发起更新;也可由其所在网段内的时空域管理服务器下发更新消息;
[0096]
注销时空域:可以由用户手工注销,并向其所在网段内的时空域管理服务器发起注销;也可由其所在网段内的时空域管理服务器下发注销消息。
[0097]
时空域计算任务调度:
[0098]
计算任务基于时空域的调度,将任务分派至与数据最为接近的位置(见附图3),调度分为如下步骤:
[0099]
1.检测计算任务c所关联的数据源活数据存储,并获得相关的时空域std;
[0100]
2.在std所覆盖时空中搜索计算设备,获得计算设备d;
[0101]
3.如果d有足够资源运行计算任务,则将c调度至d;
[0102]
4.如果d没有足够资源,则寻找与d空间相邻的计算设备(通过时空域管理服务器获得);
[0103]
5.在相邻计算设备上启动c。
[0104]
计算任务通常以虚拟机或容器镜像的方式在计算设备上安装启动,由于镜像本身可能比较大,容器造成网络延迟,因此需要以如下3中方式处理:
[0105]
1.将镜像预先在多个可能的计算节点上设置;
[0106]
2.建立通用的镜像仓库,其本身可看作是一类特殊存储,具备时空域特性,计算设备从与时空域接近的镜像仓库调取镜像;
[0107]
将镜像传输本身作为任务调度的考量因素,如果传输镜像所造成的延迟超过数据本地化带来的效率提升,则需选择折衷的计算任务运行位置。
[0108]
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。
[0109]
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本技术的实施例和实施例中的特征可以任意相互组合。
技术特征:
1.一种基于时空域的数据流处理方法,其特征在于,通过建立全局的时空域管理与信息分发机制,将数据和计算过程以及计算资源均与时空域属性进行关联,通过基于时空域的调度优化和任务编排,实现高效的时空数据流处理计算能力,具体包括:步骤1:构建时空流处理框架的整体架构;步骤2:进行时空域定义;步骤3:部署时空域服务;步骤4:进行时空域管理;步骤5:进行时空域计算任务调度。2.根据权利要求1所述的基于时空域的数据流处理方法,其特征在于,所述时空流处理框架的整体架构包括时空域管理和流计算管理;所述时空域管理是对数据源、数据存储和计算设备进行时空数据的关联与管理,包括对每个数据源、存储空间和计算节点打上时空标签;所述流计算管理是将传统流处理的分阶段任务在基于时空域的数据计算管理体系中定位最佳运行位置,通过分析计算任务所关联的数据源、存储设备来确定其运行的目标计算节点。3.根据权利要求1所述的基于时空域的数据流处理方法,其特征在于,所述时空域定义包括:以时间+空间的数据向量的方式进行时空域的表达;时间区间:通过[start,end]形式来表达,start和end均为浮点数,代表具体的时间信息,如果end为0,则代表无穷;空间区间:通过8组空间坐标表达一个空间立方体,每个坐标点均为x、y、z的3维空间坐标;或节省存储空间,用2组空间坐标,即对角点或者一个空间点坐标,结合3个维度的长度;整个空间区域以不同粒度的立方体所表达,对于不规则区域,由多个立方体进行近似表达。4.根据权利要求1所述的基于时空域的数据流处理方法,其特征在于,所述时空域服务为全局服务,通过树形结构部署,来覆盖不同网段所部署的数据和计算资源。5.根据权利要求1所述的基于时空域的数据流处理方法,其特征在于,所述时空域管理负责维护全局的时空信息,包括系统所覆盖的时间空间领域和在时间空间领域上注册的传感器数据源、数据存储、计算过程和计算资源;对所覆盖时间空间领域的管理包括时空区域的增加、修改和删除;增加时空域:通过增加空间区间或扩展时间区间来实现;修改时空域:修改时间区间,或增加、删除空间区间;删除时空域:对时空域中的部分时间区域进行缩减或删除,对空间区域进行删除,或将较大的空间区域替换为较小的空间区域,实现空间区域的缩减。6.根据权利要求2所述的基于时空域的数据流处理方法,其特征在于,对于数据源,时空域管理包括:注册时空域:数据源为传感器数据,在其上线时,由用户手工关联时空域,并向其所在网段内的时空域管理服务器注册;或向其所在网段内的时空域管理服务器发起请求,由时空域服务器为其指定时空域;
修改时空域:由用户手工修改,并向其所在网段内的时空域管理服务器发起更新;或由其所在网段内的时空域管理服务器下发更新消息;注销时空域:由用户手工注销,并向其所在网段内的时空域管理服务器发起注销;或由其所在网段内的时空域管理服务器下发注销消息。7.根据权利要求2所述的基于时空域的数据流处理方法,其特征在于,对于数据存储,时空域管理包括:注册时空域:在其上线时,由用户手工关联时空域,并向其所在网段内的时空域管理服务器注册;或向其所在网段内的时空域管理服务器发起请求,由时空域服务器为其指定时空域;修改时空域:由用户手工修改,并向其所在网段内的时空域管理服务器发起更新;也可由其所在网段内的时空域管理服务器下发更新消息;注销时空域:由用户手工注销,并向其所在网段内的时空域管理服务器发起注销;或由其所在网段内的时空域管理服务器下发注销消息。8.根据权利要求2所述的基于时空域的数据流处理方法,其特征在于,对于计算任务,时空域管理包括:注册时空域:在其启动时,向其所在网段内的时空域管理服务器发起请求,由时空域服务器根据其所在计算设备和关联的数据源或数据存储所在的时空域为其指定时空域;修改时空域:仅当其所在计算设备和关联的数据源或数据存储所在的时空域变化时进行修改,由其所在网段内的时空域管理服务器下发更新消息;注销时空域:当任务结束,向其所在网段内的时空域管理服务器发起注销。9.根据权利要求2所述的基于时空域的数据流处理方法,其特征在于,对于计算设备,时空域管理包括:注册时空域:在其上线时,由用户手工关联时空域,并向其所在网段内的时空域管理服务器注册;或向其所在网段内的时空域管理服务器发起请求,由时空域服务器根据与其相邻的数据源的时空域为其指定时空域;修改时空域:由用户手工修改,并向其所在网段内的时空域管理服务器发起更新;或由其所在网段内的时空域管理服务器下发更新消息;注销时空域:由用户手工注销,并向其所在网段内的时空域管理服务器发起注销;或由其所在网段内的时空域管理服务器下发注销消息。10.根据权利要求1所述的基于时空域的数据流处理方法,其特征在于,所述时空域计算任务调度包括:将任务分派至与数据最为接近的位置,具体为:检测计算任务c所关联的数据源和数据存储,并获得相关的时空域std;在std所覆盖时空中搜索计算设备,获得计算设备d;如果d有足够资源运行计算任务,则将c调度至d;如果d没有足够资源,则通过时空域管理服务器寻找与d空间相邻的计算设备;在相邻计算设备上启动c;计算任务以虚拟机或容器镜像的方式在计算设备上安装启动,处理过程为:将镜像预先在多个计算节点上设置;建立通用的镜像仓库,计算设备从与时空域接近的镜像仓库调取镜像;将镜像传输本身作为任务调度的考量因素,如果传输镜像所造成的延迟超过数据本地化带来的效率提升,则需选择折中的计算任务运行位置。
技术总结
本发明提供了一种基于时空域的数据流处理方法,通过建立全局的时空域管理与信息分发机制,将数据和计算过程以及计算资源均与时空域属性进行关联,通过基于时空域的调度优化和任务编排,实现高效的时空数据流处理计算能力,具体包括:步骤1:构建时空流处理框架的整体架构;步骤2:进行时空域定义;步骤3:部署时空域服务;步骤4:进行时空域管理;步骤5:进行时空域计算任务调度。本发明将数据和计算均导入时空域,通过统一的时空域管理,实现数据与计算尽可能在相同或相近的时空域中进行处理,提升数据本地化,进而提升数据处理效率。进而提升数据处理效率。进而提升数据处理效率。
技术研发人员:赵继胜
受保护的技术使用者:上海孚典智能科技有限公司
技术研发日:2023.04.28
技术公布日:2023/9/23
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
航空商城 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/