一种数据资源优化的方法、平台及系统与流程

文档序号:12494986阅读:258来源:国知局
一种数据资源优化的方法、平台及系统与流程

本发明涉及数据处理技术领域,特别是涉及一种数据资源优化的方法、平台及系统。



背景技术:

物联网是指在物理世界的客观实体中部署能够获取和处理物体自身或周围环境的状态信息的传感设备,从而实现广域或大范围的物与物、人与物之间信息交换的互连互通和互操作。

物联网将不同地域、不同领域、不同应用、不同行业的物理实体按其内在关系紧密地关联在一起,为物联网业务分配相应的资源,从而对这些数据进行有效存储、深入分析、智能处理,并根据这些数据对物体进行控制和管理。目前在物联网领域,远程监测和集中控制技术已趋于成熟。但在传统的建设过程中,要求一次性投入进行大量设备建设,还需要专人进行系统维护。受限于一次性投入成本,物联网服务供应商可能无法享受到先进技术对管理能力的提升。应用先进技术模块化物联网系统的功能和组件,接口化分析平台调用,可以增加系统运行的稳定性以及平台扩展的灵活性。

目前大部分资源调度管理方法或系统通常特定类型的资源进行管理,面对其它类型的资源则无能为力。在这些系统平台中,资源的属性往往是固定不变的,缺乏灵活性。



技术实现要素:

基于此,本发明针对上述问题,提供一种数据资源优化的方法、平台及系统,能够有效整合网络计算机资源,提高设备利用率的同时降低设施建设成本。

一种数据资源优化的方法,所述方法包括以下步骤:

从数据采集设备获取数据,对数据进行处理并存储,以作为可调用数据;

实时监听外部连接资源请求,对所述外部连接资源请求进行分析和归类;

基于线程池调度管理技术对所述可调用数据进行调配,以响应所述外部连接资源请求。

一种数据资源优化平台,所述平台包括数据服务模块、服务管理模块和服务应用模块,其中:

所述数据服务模块用于从数据采集设备获取数据,对数据进行处理并存储,以作为可调用数据;

所述服务管理模块用于实时监听外部连接资源请求,对所述外部连接资源请求进行分析和归类;

所述服务应用模块用于基于线程池调度管理技术对所述可调用数据进行调配,以响应所述外部连接资源请求。

一种数据资源优化的系统,所述系统包括上述的数据资源优化平台以及与所述数据资源优化平台连接的数据采集设备。

上述数据资源优化的方法、平台及系统,从数据采集设备获取数据,对数据进行处理并存储,以作为可调用数据,实时监听外部连接资源请求,对外部连接资源请求进行分析和归类,基于线程池调度管理技术对可调用数据进行调配,以响应外部连接资源请求。本发明的数据资源优化的方法是基于线程池调度管理技术对可调用数据进行调配,从而能够通过并行运行多个作业来解决多用户请求,提高数据资源优化平台的处理性能。同时该方法适用于任何类型的资源优化管理,增加了数据资源优化平台的稳定性和灵活性。

附图说明

图1为一实施例中数据资源优化的方法的流程图;

图2为一实施例中负载优化管理的流程图;

图3为一实施例中单线程、多线程、事件驱动模型对比示意图;

图4为一实施例中数据资源优化平台的结构示意图;

图5为一实施例中服务管理模块的结构示意图;

图6为一实施例中数据资源优化的系统具体应用示意图。

具体实施方式

在一个实施例中,一种数据资源优化的方法,如图1所示,包括以下步骤:

步骤S101:从数据采集设备获取数据,对数据进行处理并存储,以作为可调用数据。

其中,平台通过无线网络从数据采集设备获取数据,对数据进行检查和过滤,并利用元数据计算对数据进行一致性和标准化处理并存储,以作为可调用数据。

数据是物联网中最有价值的部分,来源于不同的数据采集设备,呈现出大规模、多源异构、多维标量和时空相关等特性。数据按传输大小可分为轻量级和多媒体数据,轻量级数据包括数值类型和字符型数据,多媒体数据一般指图像、音频、视频等。作为其中一种实现方式,本发明实施例以轻量级数据作为举例说明。

其中,作为一种可能的实现方式,本发明实施例中数据采集设备被布置为监控网络,对被监控区域进行数据采样。为了对数据进行统一调用,平台需要对来源于数据采集设备的海量数据信息进行解析和处理,对数据进行检查和过滤,保证数据的完整性和有效性。同时为了实现对数据的统一调用,利用元数据技术对异构数据进行一致性和标准化处理,进行存储,从而为后续数据的统一利用提供可能。其中,数据采集设备与平台之间的数据交互被定义为一种特定类型事件。

平台将经处理后的可调用数据按照事先定义的数据格式放到接受队伍中,以等待被调用。

步骤S102:实时监听外部连接资源请求,对外部连接资源请求进行分析和归类。

平台通过为每个终端的连接资源请求分配唯一的任务标识号,采用监听端口的方式处理外部连接资源请求。

S103:基于线程池调度管理技术对所述可调用数据进行调配,以响应外部连接资源请求。

作为其中一种可能的实现方式,本发明实施例基于时间驱动模型设计线程池调度技术,这种模型在事件循环中采用回调来触发事件的相关动作,其中,本发明实施例的基于事件驱动的模型与单线程(同步)和多线程编程的对比如图3所示。

从图3可知,在单线程处理过程中,每个任务将会按顺序依次执行。当一个任务在处理I/O操作时,其它的任务都必须等待该I/O操作的完成,这将减慢整体的进度。在多线程处理中,当一个线程发生I/O阻塞时,其它的线程并不会受其影响,但同时多个任务同时进行,多个线程间就不可避免会共享数据,容易引发各种问题。事件驱动模型在一个线程中交错地处理多个任务。当执行I/O或一些较为费时的处理时,就会在事件循环中注册一个回调(callback),使得它可以在完成这一费时的处理之后再被执行。回调的作用在于当完成这个事件触发之后应当如何进行处理。事件循环则会循环地检测事件的到来并将其正确的分派到对应的回调中去。

事件驱动模型具有像多线程程序那样的并发性、又不失单线程中那样简单的逻辑。因此它非常适合处理以下场景:

1)有大量的任务,因此在一个时刻至少有一个任务要运行;

2)任务执行大量的I/O操作;

3)任务之间相互独立,以至于任务内部的交互很少。

本发明实施例的物联网数据资源优化平台也具备上述特点,因此,本发明实施例采用基于事件驱动模型设计线程池调度技术。

由于可能需要同时发送大量终端指令,所以在具体实现过程中,本发明实施例通过启动多个线程采用压缩方式进行并行发送,将发送队列中的数据发送给终端。

作为一种具体的实现,本发明为各种连接抽象定义为Protocol类,Protocol类通过提供connectionMade(),dataReceived(),connectionClosed()等方法无阻塞的处理常见的应用层协,如HTTP,telnet,DNS等。它为不同的事件(资源连接请求)提供了一个通用的接口,以便在网络协议栈的任何地方对事件(资源连接请求)作出响应。

其中,采用线程调度管理技术并发执行多个作业任务,包括启动、停止和增加线程池中的临界线成熟,避免某些情况死锁。比如,定义一个事件循环体,并将事件对应的业务逻辑定义为相应的事件处理函数。事件循环体是线程池调度模块的核心,用于检测各种网络请求和定时事件,等待事件的发生,并通过回调函数链(callback chain)将接收/发送缓冲区中的事件正确分配到对应的事件处理函数。回调函数链中包含一系列的回调函数对(callback pair),每一对回调函数对对应于一类业务逻辑处理应用函数,分别为一个处理成功的回调(succallback)和一个处理错误的回调(errcallback)。初始状态下,回调函数链为空,当我们为一类业务处理注册应用函数时,便向其中成对添加回调函数对。当事件循环体开始执行后,通过轮询检测到事件发生后,调用callThread,借助线程池来完成耗时阻塞的业务工作。如果执行中出错,通过errcallback抛出异常或告警信息,如果成功执行会通过succallback返回结果。

其中,在另一个实施例中,平台在处理数据和数据调度过程中,还进一步进行负载优化管理。请进一步参阅图2,图2是本发明实施例的方法中负载优化管理的流程示意图,如图所示,负载优化管理包括以下步骤:

S201:根据当前时间之前的预定个时间段内的历史负载数据进行负载预测,以得到当前时间之后预定时间段的负载预测值。

当数据资源利用率较高时,本发明实施例的数据资源优化的方法进一步对系统进行负载优化管理。作为其中一种可能的实现方案,通过使用线性回归模型的负载预测算法,进行负载预测,以基于负载预测来调配系统数据资源。

根据当前时间之前的预定个时间段内的历史负载数据,具体可以是当前时间最近的预定个时间段的历史负载数据,进行负载预测,从而得到当前时间的下一个时间段的负载预测值。

S202:根据负载预测值,对当前时间之后预定个时间段内的线程和业务执行参数进行统计分类,生成负载调度结果。

定期对线程和业务执行参数进行统计,统计参数包括但不限于是数据量大小、数据到达频率、队列长度、业务线程数和业务执行时间长度等,对统计后的数据,采用决策树分类、贝叶斯分类算法、神经网分类算法、SVM分类算法和KNN算法等分类器,根据负载预测值进行分类,从而得到负载调度结果。

S203:结合负载调度结果,基于线程池调度管理技术对可调用数据进行调配。

根据负载调度结果来指导平台对数据资源进行计算分析,从而实现更合理的进行数据调配,有效整合网络化的数据资源,提高设备利用率、降低建设成本。

上述本发明实施例提供的数据资源优化的方法,从数据采集设备获取数据,对数据进行处理并存储,以作为可调用数据,实时监听外部连接资源请求,对外部连接资源请求进行分析和归类,基于线程池调度管理技术对可调用数据进行调配,以响应外部连接资源请求。本发明的数据资源优化的方法是基于线程池调度管理技术对可调用数据进行调配,从而能够通过并行运行多个作业来解决多用户请求,提高数据资源优化平台的处理性能。同时该方法适用于任何类型的资源优化管理,增加了数据资源优化平台的稳定性和灵活性。

另外,在对资源使用情况进行监测统计的基础上,引入机器学习算法对统计数据进行负载预测,从而更智能地进行负载均衡管理。

请参阅图4,图4是本发明实施例提供的一种数据资源优化的平台,本实施例的平台用于执行上述实施例中的数据资源优化的方法,如图所示,本实施例的数据资源优化的平台100包括数据服务模块11、服务管理模块12和服务应用模块13,其中:

数据服务模块11用于从数据采集设备获取数据,对数据进行处理并存储,以作为可调用数据。

其中,数据服务模块11通过无线网络从数据采集设备获取数据,对数据进行检查和过滤,并利用原数据计算对数据进行一致性和标准化处理并存储,以作为可调用数据。

数据是物联网中最有价值的部分,来源于不同的数据采集设备,呈现出大规模、多源异构、多维标量和时空相关等特性。数据按传输大小可分为轻量级和多媒体数据,轻量级数据包括数值类型和字符型数据,多媒体数据一般指图像、音频、视频等。作为其中一种实现方式,本发明实施例以轻量级数据作为举例说明。

其中,作为一种可能的实现方式,本发明实施例中数据采集设备被布置为监控网络,对被监控区域进行数据采样。为了对数据进行统一调用,数据服务平台11需要对来源于数据采集设备的海量数据信息进行解析和处理,对数据进行检查和过滤,保证数据的完整性和有效性。同时为了实现对数据的统一调用,利用元数据技术对异构数据进行一致性和标准化处理,进行存储,从而为后续数据的统一利用提供可能。其中,数据采集设备与平台之间的数据交互被定义为一种特定类型事件。

数据服务模块11将经处理后的可调用数据按照事先定义的数据格式放到接受队伍中,以等待被调用。

服务管理模块12用于实时监听外部连接资源请求,对外部连接资源请求进行分析和归类。

服务管理模块12通过为每个终端的连接资源请求分配唯一的任务标识号,采用监听端口的方式处理外部连接资源请求。

服务应用模块13用于基于线程池调度管理技术对可调用数据进行调配,以响应外部连接资源请求。

作为其中一种可能的实现方式,本发明实施例服务应用模块13基于事件驱动模型设计线程池调度技术,这种模型在事件循环中采用回调来触发事件的相关动作。

事件驱动模型具有像多线程程序那样的并发性、又不失单线程中那样简单的逻辑。因此它非常适合处理以下场景:

1)有大量的任务,因此在一个时刻至少有一个任务要运行;

2)任务执行大量的I/O操作;

3)任务之间相互独立,以至于任务内部的交互很少。

本发明实施例的物联网数据资源优化平台也具备上述特点,因此,本发明实施例采用基于事件驱动模型设计线程池调度技术。

由于可能需要同时发送大量终端指令,所以在具体实现过程中,本发明实施例通过启动多个线程采用压缩方式进行并行发送,将发送队列中的数据发送给终端。

作为一种具体的实现,本发明为各种连接抽象定义为Protocol类,Protocol类通过提供connectionMade(),dataReceived(),connectionClosed()等方法无阻塞的处理常见的应用层协,如HTTP,telnet,DNS等。它为不同的事件(资源连接请求)提供了一个通用的接口,以便在网络协议栈的任何地方对事件(资源连接请求)作出响应。

其中,采用线程调度管理技术并发执行多个作业任务,包括启动、停止和增加线程池中的临界线成熟,避免某些情况死锁。比如,定义一个事件循环体,并将事件对应的业务逻辑定义为相应的事件处理函数。事件循环体是线程池调度模块的核心,用于检测各种网络请求和定时事件,等待事件的发生,并通过回调函数链(callback chain)将接收/发送缓冲区中的事件正确分配到对应的事件处理函数。回调函数链中包含一系列的回调函数对(callback pair),每一对回调函数对对应于一类业务逻辑处理应用函数,分别为一个处理成功的回调(succallback)和一个处理错误的回调(errcallback)。初始状态下,回调函数链为空,当我们为一类业务处理注册应用函数时,便向其中成对添加回调函数对。当事件循环体开始执行后,通过轮询检测到事件发生后,调用callThread,借助线程池来完成耗时阻塞的业务工作。如果执行中出错,通过errcallback抛出异常或告警信息,如果成功执行会通过succallback返回结果。

请进一步参阅图5,在另一个实施例中,服务管理模块13还进一步包括预测单元131、统计分类单元132和调配单元133,其中:

预测单元131用于根据当前时间之前的预定个时间段内的历史负载数据进行负载预测,以得到当前时间之后预定时间段的负载预测值。

当数据资源利用率较高时,服务管理模块13进一步对系统进行负载优化管理。作为其中一种可能的实现方案,服务管理模块13通过使用线性回归模型的负载预测算法,进行负载预测,以基于负载预测来调配系统数据资源。

预测单元131根据当前时间之前的预定个时间段内的历史负载数据,具体可以是当前时间最近的预定个时间段的历史负载数据,进行负载预测,从而得到当前时间的下一个时间段的负载预测值。

统计分类单元132用于根据负载预测值,对当前时间之后预定个时间段内的线程和业务执行参数进行统计分类,生成负载调度结果。

统计分类单元132定期对线程和业务执行参数进行统计,统计参数包括但不限于是数据量大小、数据到达频率、队列长度、业务线程数和业务执行时间长度等,对统计后的数据,采用决策树分类、贝叶斯分类算法、神经网分类算法、SVM分类算法和KNN算法等分类器,根据负载预测值进行分类,从而得到负载调度结果。

调配单元133用于结合负载调度结果,基于线程池调度管理技术对可调用数据进行调配。

调配单元133根据负载调度结果来指导平台对数据资源进行计算分析,从而实现更合理的进行数据调配,有效整合网络化的数据资源,提高设备利用率、降低建设成本。

在以上本发明实施例提供的数据资源优化的方法、平台的基础上,本发明实施例进一步提供一种数据资源优化的系统,请进一步参阅图6,图6是本发明实施例的数据资源优化的系统的具体应用示意图,如图所示,本实施例的数据资源优化的系统包括上述实施例所述的数据资源优化的平台,以及分别于所述平台连接的数据采集设备以及用户终端。

其中,作为一种可能的实现方式,本发明实施例中的数据采集设备布置为监控网络,对被监控区域的信息数据进行采样。

作为一种可能的实现方式,数据采集设备和用户终端通过无线网络与数据资源优化平台连接。

平台基于上述的系统,即面向服务的应用体系结构(Software Oriented Architecture,SOA),根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用,因此服务可以运行在同一计算节点或不同网络位置的不同计算节点,服务之间通过简单且精确定义的接口进行通信。

具体实现时,平台中,数据服务模块,通过布置传感器网络,对指定区域进行感知采样,将传感网络上传的事件数据归入缓冲并进行分析;服务管理模块,通过资源监控定期对外部连接资源参数进行统计和负载预测分析,根据分析结果对智能网关下达指令,并将归类后的连接请求转移到相应的服务中心;服务应用模块,根据外部连接请求管理对应的应用服务状态和响应数据请求。

上述本发明实施例所提供的数据资源优化的方法、平台及系统的详细说明,可以理解,本发明从数据采集设备获取数据,对数据进行处理并存储,以作为可调用数据,实时监听外部连接资源请求,对外部连接资源请求进行分析和归类,基于线程池调度管理技术对可调用数据进行调配,以响应外部连接资源请求。通过基于线程池调度管理技术对可调用数据进行调配,从而能够通过并行运行多个作业来解决多用户请求,提高数据资源优化平台的处理性能。同时该方法适用于任何类型的资源优化管理,增加了数据资源优化平台的稳定性和灵活性。

另外,在对资源使用情况进行监测统计的基础上,引入机器学习算法对统计数据进行负载预测,从而更智能地进行负载均衡管理。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1