CN112347105B - 一种基于资源树的通用数据服务平台 - Google Patents
一种基于资源树的通用数据服务平台 Download PDFInfo
- Publication number
- CN112347105B CN112347105B CN202011228435.3A CN202011228435A CN112347105B CN 112347105 B CN112347105 B CN 112347105B CN 202011228435 A CN202011228435 A CN 202011228435A CN 112347105 B CN112347105 B CN 112347105B
- Authority
- CN
- China
- Prior art keywords
- data
- database
- resource
- module
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
Abstract
本发明公开了一种基于资源树的通用数据服务平台,属于数据服务技术领域,包括数据采集模块、资源管理模块、数据存储模块、数据推送模块、配置模块。本发明采用资源树理念,将设备、部件等现实世界的实物按照功能、类别映射到平台的虚拟资源中,构建资源树,所有数据按照资源树结构和级联规则进行管理,有效提高了数据存储和处理的效率;通过提供多种应用层协议接口,适用于各型设备数据采集,并将采集到的不同类型数据按照内部定义的资源树形态和级联规则进行虚拟化描述,便于统一管理和存储,提高了平台的通用性和兼容性;将数据库划分为索引数据库和存储数据库,并建立映射关系,解决了使用关系数据堆积大量状态数据后需要分表分库的问题。
Description
技术领域
本发明涉及数据服务技术领域,具体涉及一种基于资源树的通用数据服务平台。
背景技术
基于物联网技术的数据服务平台以数据采集、存储、处理为核心功能,不仅能提供数据的汇集关联、统一存储,快速检索等基础服务,还能通过对数据进一步处理提供可视化监管,远程控制等深层服务,有效提高终端设备的运行效率。但是随着终端设备朝自动化、智能化方向发展,终端设备产生的数据逐渐表现出数据量大,存多读少,单点吞吐量高,数据多样性等特点,对数据服务平台提出了更高的要求。
现有的数据服务平台在数据采集方面针对特定项目需求,分别设计数据模型,通用性较差;在数据存储方面多采用传统的关系型数据库,直接由软件入库;在数据管理方面依靠关系型数据库直接对数据进行管理,管理成本随数据量增多而大幅增加。上述特点导致现有数据平台开发效率较低;并且忽略了设备、部件间关系等数据特征,无法形成一种可维护性高、可靠性高的标准化数据服务。而且一旦使用关系型数据库存储高密度数据(如设备连续状态数据等),很容易超出数据库的性能边界,以至于必须采用分表分库等方式来避免读写性能下降的缺点,大大增加了研发周期和维护成本。因此,提出一种基于资源树的通用数据服务平台。
发明内容
本发明所要解决的技术问题在于:如何解决现有数据服务平台通用性差、研发和维护成本高的问题,提供了一种基于资源树的通用数据服务平台。该平台采用资源树理念,将设备、部件等现实世界的实物按照功能、类别映射到平台的虚拟资源中,并且通过虚拟资源标准的REST接口管理资源数据以达到与物理设备交互的目的;为了支持多设备和多场景应用,基于资源树的通用数据服务平台支持多种应用层协议;以关系型数据库为索引数据库,用于资源树的关系描述;时序型数据库为存储数据库,直接存储海量数据,避免了存储数据库因为单表性能制约导致的性能下降问题,从架构上解决了使用关系数据堆积大量数据后需要分表分库的问题。
本发明是通过以下技术方案解决上述技术问题的,本发明包括数据采集模块、资源管理模块、数据存储模块、数据推送模块和配置模块;
所述数据采集模块提供多种应用层协议接口,能够对多种不同设备、部件的数据进行采集。
所述资源管理模块,将数据抽象成内部形态,具体包含ROOT、APP、DEV、REC、GRP、NOT六种资源类型,具体含义如下:
1)ROOT:平台节点,也是资源树的根节点,用于描述服务本身的特性;
2)APP:应用节点,用于描述接入平台的设备以及客户端等自身的属性;
3)DEV:设备节点,用于描述接入数据的对象,例如可以感知温湿度的传感器、可以上报自身状态的设备部件、可以定时触发照相的摄像头等多媒体设备等;
4)REC:记录节点,用于存储具体的数据,即某一时刻设备上报的数据;
5)GRP:分组节点,用于对于设备节点的分组操作,例如可以通过分组向多台相同的设备发送操作指令;
6)NOT:通知节点,用于数据的推送,正向用于设备数据实时监控,反向用于设备的远程控制。
级联规则包括:平台节点为根目录,必须且只有一个;平台节点下可连接多个应用节点;应用节点可连接多个应用节点或者设备节点;设备节点可连接多个设备节点、记录节点、通知节点;分组节点用于应用节点或设备节点分组。以上六类资源节点按照规则相互连接,形成内部资源树,实现对物理环境中对象的虚拟化描述。
资源管理模块内部集成数据访问功能,通过内部接口形式建立资源树与数据存储模块的连接。
所述数据存储模块包含数据库和数据库连接池,其中数据库分为索引数据库和存储数据库。索引数据库选择关系型数据库用于资源树的关系描述,一般不存储设备上报的详细数据,避免的数据库因为单表性能制约导致的性能下降问题;而存储数据库选择时序型数据库直接负责数据的存储,并在索引数据库中提前建立索引。数据库连接池对索引数据库和存储数据库进行统一的分配、管理与释放。
所述数据推送模块内部维护一个消息推送队列,在系统捕捉到资源的推送事件后将资源封装为推送报文,交由发送器根据用户设定的推送地址发送数据。该报文包含唯一信息编号,数据接收方确认收到报文后,需将信息编号返回给平台进行校验,超过5秒未收到返回值或校验失败,将自动回收该资源节点,节省系统资源。
所述配置模块包含终端设备配置,服务地址配置,数据入库管理配置、资源树结构配置等配置内容。
本发明相比现有技术具有以下优点:
1)、该通用数据服务平台采用资源树理念,将设备、部件等现实世界的实物按照功能、类别映射到平台的虚拟资源中,构建资源树,所有数据按照资源树结构和级联规则进行管理,有效提高了数据存储和处理的效率;
2)、通过提供HTTP、COAP和MQTT等多种应用层协议接口,适用于各型设备数据采集;将采集到的不同类型数据按照内部定义的资源树形态和级联规则进行虚拟化描述,便于统一管理和存储,大大提高该数据服务平台的通用性和兼容性;
3)、将数据库划分为索引数据库和存储数据库,并建立映射,索引数据库用于资源树的关系描述,存储数据库直接负责数据的存储,避免了数据库因为单表性能制约导致的性能下降问题,从架构上解决了使用关系数据堆积大量状态数据后需要分表分库的问题。
附图说明
图1是本发明实施例二中的流程示意图;
图2是本发明实施例二中的实施流程示意图;
图3是本发明实施例二中的数据库存储结构图。
图中:1、设备产生的原始数据;2、预处理后的数据;3、存入数据库的数据;4、设备控制指令请求;5、设备能够识别的控制指令;6、ROOT根节点;7、APP应用节点;8、DEV设备节点;9、REC数据记录节点;10、NOT通知节点;11、GRP分组节点;12、数据存储请求;13、索引数据库和存储数据库的对应关系;14、数据库连接池管理接口。
具体实施方式
下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
实施例一
本实施例提供一种技术方案:一种基于资源树的通用数据服务平台,包括数据采集模块、资源管理模块、数据存储模块、数据推送模块和配置模块;
所述数据采集模块提供多种应用层协议接口,能够对多种不同设备、部件的数据进行采集。
所述资源管理模块,将数据抽象成内部形态,具体包含ROOT、APP、DEV、REC、GRP、NOT六种资源类型,具体含义如下:
1)ROOT:平台节点,也是资源树的根节点,用于描述服务本身的特性;
2)APP:应用节点,用于描述接入平台的设备以及客户端等自身的属性;
3)DEV:设备节点,用于描述接入数据的对象,例如可以感知温湿度的传感器、可以上报自身状态的设备部件、可以定时触发照相的摄像头等多媒体设备等;
4)REC:记录节点,用于存储具体的数据,即某一时刻设备上报的数据;
5)GRP:分组节点,用于对于设备节点的分组操作,例如可以通过分组向多台相同的设备发送操作指令;
6)NOT:通知节点,用于数据的推送,正向用于设备数据实时监控,反向用于设备的远程控制。
级联规则包括:平台节点为根目录,必须且只有一个;平台节点下可连接多个应用节点;应用节点可连接多个应用节点或者设备节点;设备节点可连接多个设备节点、记录节点、通知节点;分组节点用于应用节点或设备节点分组。以上六类资源节点按照规则相互连接,形成内部资源树,实现对物理环境中对象的虚拟化描述。
资源管理模块内部集成数据访问功能,通过内部接口形式建立资源树与数据存储模块的连接。
所述数据存储模块包含数据库和数据库连接池,其中数据库分为索引数据库和存储数据库。索引数据库选择关系型数据库用于资源树的关系描述,一般不存储设备上报的详细数据,避免的数据库因为单表性能制约导致的性能下降问题;而存储数据库选择时序型数据库直接负责数据的存储,并在索引数据库中提前建立索引。数据库连接池对索引数据库和存储数据库进行统一的分配、管理与释放。
所述数据推送模块内部维护一个消息推送队列,在系统捕捉到资源的推送事件后将资源封装为推送报文,交由发送器根据用户设定的推送地址发送数据。该报文包含唯一信息编号,数据接收方确认收到报文后,需将信息编号返回给平台进行校验,超过5秒未收到返回值或校验失败,将自动回收该资源节点,节省系统资源。
所述配置模块包含终端设备配置,服务地址配置,数据入库管理配置、资源树结构配置等配置内容。
实施例二
如图1所示,一种基于资源树的通用数据服务平台,包括数据采集模块、数据推送模块、资源管理模块、数据存储模块和配置模块。
首先根据设备情况利用配置模块对数据服务平台进行配置,包括网络配置,资源树定义,选择数据转换格式。数据采集模块从设备采集设备产生的原始数据1,并对数据进行预处理,根据内部协议转换数据格式,通过应用层协议将预处理后的数据2发送到资源管理模块;资源管理模块根据已定义的资源树和级联规则,通过内部接口访问索引数据库,并根据索引数据库与存储数据库之间的映射规则,将待入库的数据3存入对应数据库。如需通过该数据服务平台对指定设备进行控制,只需从对应资源树中找到该设备资源位置,发送设备控制指令请求4到数据推送模块,由数据推送模块将控制指令请求4转换为设备能够识别的指令5,发送到指定设备。
基于资源树的通用数据服务平台使用前需要利用配置模块预先定义资源树,一个已定义的资源树如图2所示。所有资源挂载于ROOT根节点6,命名为DCSP;根节点下只连接一个APP应用节点7;APP应用节点7下连接两个APP应用节点和一个DEV设备节点8,由于APP应用节点7下的两个APP应用节点APP101和APP102功能一致,通过GRP分组节点11统一管理和控制;DEV设备节点8下连接两个DEV设备节点,同时DEV设备节点8本身会产生一些状态数据,通过REC数据记录节点9录入数据;在TestDev2设备节点下挂载一个NOT通知节点10,用于控制TestDev2设备,推送控制指令。
图3为数据库存储结构图,首先根据资源树资源等级和结构,建立索引数据库和存储数据库之间的映射关系。
具体做法为将采集到的数据分为状态数据和非状态数据,状态数据是指在定义数据接口时将该字段取值定义为有限的几种状态值,例如用0和1表示设备开关机状态,非状态数据则不做限制,例如设备温度、功率等都作为非状态数据。非状态数据通过存储数据库(时序型)进行存储,将存储数据库(时序型)的入口映射进索引数据库(关系型),通过索引数据库(关系型)快速检索入口。资源管理模块通过内部接口将数据存储请求12发送给数据存储模块,数据存储模块收到请求后根据数据存储请求12对应的数据接口字段判断该条数据存储是否为状态数据,若为状态数据,按照对应存储接口直接存储到索引数据库中,若不是状态数据,通过索引数据库找到存储数据库中的存储位置,追加存储数据。此外,数据存储模块通过一个统一的数据库连接池对数据库操作进行管理,数据库连接池通过数据库连接池管理接口14对数据库操作进行管理。
综上所述,上述实施例的基于资源树的通用数据服务平台,采用资源树理念,将设备、部件等现实世界的实物按照功能、类别映射到平台的虚拟资源中,构建资源树,所有数据按照资源树结构和级联规则进行管理,有效提高了数据存储和处理的效率;通过提供HTTP、COAP和MQTT等多种应用层协议接口,适用于各型设备数据采集,并将采集到的不同类型数据按照内部定义的资源树形态和级联规则进行虚拟化描述,便于统一管理和存储,大大提高该数据服务平台的通用性和兼容性;将数据库划分为索引数据库和存储数据库,并建立映射,索引数据库用于资源树的关系描述,存储数据库直接负责数据的存储,避免了数据库因为单表性能制约导致的性能下降问题,从架构上解决了使用关系数据堆积大量状态数据后需要分表分库的问题。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种基于资源树的通用数据服务平台,其特征在于:包括数据采集模块、资源管理模块、数据存储模块、数据推送模块、配置模块;
所述数据采集模块,用于提供多种应用层协议接口,对多种不同设备、部件的数据进行采集;
所述资源管理模块,用于将外部设备虚拟化为内部资源树并进行统一管理,同时通过内部接口连接所述数据存储模块中设置的数据库;
所述数据存储模块,用于以关系型数据库为索引数据库,时序型数据库为存储数据库,通过自身内部设置的数据库连接池统一对索引数据库和存储数据库进行管理;
所述数据推送模块,用于采用消息推送队列进行数据推送,并对数据推送过程进行资源优化;
所述配置模块,用于进行终端设备配置、服务地址配置、数据入库管理、资源树结构配置;
设备或部件分别与所述数据采集模块、所述数据推送模块通信连接,所述资源管理模块分别与所述数据采集模块、所述数据推送模块、所述数据存储模块通信连接。
2.根据权利要求1所述的一种基于资源树的通用数据服务平台,其特征在于:所述数据采集模块在接收设备上报原始数据后的工作过程具体如下:
S11:根据数据通信协议对原始数据进行可靠性检测,剔除错误数据,得到可靠数据;
S12:将可靠数据进行清洗,并转换为内部协议格式;
S13:再通过应用层协议,将内部格式的数据发送到资源管理模块。
3.根据权利要求2所述的一种基于资源树的通用数据服务平台,其特征在于:所述资源管理模块在接收到数据采集模块传来的数据后的工作过程具体如下:
S21:根据已定义的资源树结构和级联规则,确定该条数据所在资源位置,同时确定在数据库中存储位置;
S22:将该条数据增加头部标签,进行封装;
S23:通过内部接口将封装后的数据发送给数据存储模块。
4.根据权利要求3所述的一种基于资源树的通用数据服务平台,其特征在于:所述资源树结构包括ROOT、APP、DEV、REC、GRP、NOT六种资源类型,其中:
ROOT为平台节点,是资源树的根节点,用于描述服务本身的特性;
APP为应用节点,用于描述接入平台的设备以及客户端属性;
DEV为设备节点,用于描述接入数据的对象;
REC为记录节点,用于存储具体的数据;
GRP为分组节点,用于对于设备节点的分组操作;
NOT为通知节点,用于数据的推送,正向用于设备数据实时监控,反向用于设备的远程控制。
5.根据权利要求4所述的一种基于资源树的通用数据服务平台,其特征在于:所述级联规则包括五条,分别为:
一、平台节点为根目录,有且只有一个;
二、平台节点下可连接多个应用节点;
三、应用节点下可连接多个应用节点或者设备节点;
四、设备节点下可连接多个设备节点、记录节点、通知节点;
五、分组节点用于应用节点或设备节点分组。
6.根据权利要求5所述的一种基于资源树的通用数据服务平台,其特征在于:在所述步骤S22中,给数据增加头部标签即在数据结构中加入数据资源等级、数据唯一标识值、对应存储位置信息。
7.根据权利要求6所述的一种基于资源树的通用数据服务平台,其特征在于:所述数据存储模块包括索引数据库、存储数据库和数据库连接池;所述索引数据库为关系型数据库,用于资源树的关系描述;所述存储数据库为时序型数据库,用于直接负责数据的存储;所述数据库连接池用于对索引数据库、存储数据库进行统一的分配、管理与释放。
8.根据权利要求7所述的一种基于资源树的通用数据服务平台,其特征在于:根据资源树中资源等级与结构划分,将存储数据库和索引数据库进行,映射即将存储数据库的入口提前映射进索引数据库,建立索引。
9.根据权利要求8所述的一种基于资源树的通用数据服务平台,其特征在于:所述数据推送模块在捕捉到资源的推送事件后的工作过程具体如下:
S31:在资源树中新增一个NOT通知节点,用于数据推送;
S32:将资源封装为推送报文,根据用户设定的推送地址发送数据;
S33:数据接收方确认收到报文后,需将信息编号返回至服务平台进行校验,超过一定时间未收到返回值或校验失败,将自动回收该资源节点。
10.根据权利要求9所述的一种基于资源树的通用数据服务平台,其特征在于:在所述步骤S32中,所述推送报文包括数据本体内容、数据推送地址、数据唯一信息编号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011228435.3A CN112347105B (zh) | 2020-11-06 | 2020-11-06 | 一种基于资源树的通用数据服务平台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011228435.3A CN112347105B (zh) | 2020-11-06 | 2020-11-06 | 一种基于资源树的通用数据服务平台 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112347105A CN112347105A (zh) | 2021-02-09 |
CN112347105B true CN112347105B (zh) | 2023-01-31 |
Family
ID=74428906
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011228435.3A Active CN112347105B (zh) | 2020-11-06 | 2020-11-06 | 一种基于资源树的通用数据服务平台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112347105B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113032364B (zh) * | 2021-03-22 | 2022-12-16 | 中国电子科技集团公司第三十八研究所 | 基于资源树的数据服务平台可视化管理工具、方法、应用 |
CN113765746A (zh) * | 2021-08-17 | 2021-12-07 | 中国电子科技集团公司第三十八研究所 | 一种基于资源树的数据中心管控系统 |
CN114116716A (zh) * | 2021-11-19 | 2022-03-01 | 天翼数字生活科技有限公司 | 一种层次数据检索方法、装置和设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104506620A (zh) * | 2014-12-23 | 2015-04-08 | 西安电子科技大学 | 一种可扩展的自动化计算服务平台及其构建方法 |
CN109582722A (zh) * | 2018-11-30 | 2019-04-05 | 珠海市新德汇信息技术有限公司 | 公安资源数据服务系统 |
CN111638945B (zh) * | 2020-06-09 | 2023-04-28 | 中国电力工程顾问集团中南电力设计院有限公司 | 基于容器技术的分散控制系统 |
-
2020
- 2020-11-06 CN CN202011228435.3A patent/CN112347105B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112347105A (zh) | 2021-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112347105B (zh) | 一种基于资源树的通用数据服务平台 | |
CN105045820B (zh) | 一种处理海量级数据的视频图像信息的方法及数据库系统 | |
CN202058147U (zh) | 分布式实时数据库管理系统 | |
CN103220285A (zh) | 泛在业务环境下基于RESTful接口的接入系统 | |
CN103150324A (zh) | 一种基于链式处理的数据收集系统及其方法 | |
CN110147470B (zh) | 一种跨机房数据比对系统及方法 | |
WO2013008476A1 (ja) | 動的設備管理システム | |
CN111563018A (zh) | 一种人机物融合云计算平台的资源管理和监控方法 | |
CN114201540A (zh) | 工业多源数据采集及存储系统 | |
CN103678522A (zh) | 一种智能变电站计量系统数据采集和转换方法 | |
CN113328927B (zh) | 一种具有计算、存储和网络交换功能的工业物联网网关 | |
CN112039936B (zh) | 数据传输方法、第一数据处理设备及监控系统 | |
CN109672668B (zh) | 一种gda接口与opc ua服务的映射方法 | |
CN116743886A (zh) | 基于物联网的工业控制设备数据采集系统 | |
CN115658742A (zh) | 一种现场级主动标识载体的标识解析方法及系统 | |
CN115022402A (zh) | 一种基于一栈式集成技术的agent采集方法及系统 | |
CN112351079B (zh) | 一种基于数据盒的空间应用和数据一体化封装系统及方法 | |
CN115374101A (zh) | 轨道交通站段级数据管理系统 | |
CN114584593A (zh) | 一种基于集群状态感知的数据采集系统及方法 | |
CN112687267A (zh) | 一种物联网数据语义处理系统 | |
CN113342874A (zh) | 一种基于云计算的风电大数据分析系统和流程 | |
Yu et al. | Design of asynchronous non-block server for agricultural iot | |
CN108449343B (zh) | Ssh协议文本数据采集方法、采集器及计算机设备 | |
CN111143280B (zh) | 一种数据调度方法、系统、装置及存储介质 | |
Wu et al. | An IoT Middleware of Data Service |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |