CN110708352B - 物联网设备的数据备份的方法及物联网设备 - Google Patents
物联网设备的数据备份的方法及物联网设备 Download PDFInfo
- Publication number
- CN110708352B CN110708352B CN201910821105.6A CN201910821105A CN110708352B CN 110708352 B CN110708352 B CN 110708352B CN 201910821105 A CN201910821105 A CN 201910821105A CN 110708352 B CN110708352 B CN 110708352B
- Authority
- CN
- China
- Prior art keywords
- data
- internet
- things
- full
- interface
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
- G06F11/1451—Management of the data involved in backup or backup restore by selection of backup contents
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例涉及一种物联网设备的数据备份方法及物联网设备,物联网设备中配置有用于向云端服务器上传数据的基于HTTP协议的第一接口和基于MQTT协议的第二接口、云端服务器的地址信息,方法包括:物联网设备采用第一接口将所述物联网设备内的全量数据上传所述地址信息对应的云端服务器,以使云端服务器按照设备信息存储全量数据;监控该物联网设备内全量数据是否发生改动;若发生改动,则采用第二接口将增量数据上传所述云端服务器,以使云端服务器按照设备信息、时间戳的顺序存储所述增量数据。本发明的方法可提高物联网设备的数据库备份、迁移和灾备的能力。
Description
技术领域
本发明实施例涉及数据管理领域,具体涉及一种物联网设备的数据备份方法及物联网设备。
背景技术
随着物联网行业的发展,各种不同类型的物联网设备具备互联互通、连接云端的能力。在一些特定使用场景中,有些物联网设备会承担数据库管理功能,它们需要备份数据、恢复数据、转移数据。现在常见方案都是单独基于HTTP或MQTT协议备份数据,硬件资源开销大,数据完整性差,可支持并发量小,不利于大量物联网设备同时接入云端存储数据。
现有技术的物联网设备的数据管理主要是以下几种:
第一种是通过HTTP协议,物联网设备可以通过HTTP请求将物联网数据上传到云端。如果发送全量数据:间隔时间较小的话,会使用很大带宽,同时会影响物联网设备本身的性能;间隔时间较大的话,如果设备损坏,间隔期间的数据库改动容易丢失,难以恢复。如果发送增量数据:会消耗物联网设备较多运算资源,并且存在并发量较小,实时性较差等缺点。
特别地,HTTP协议的首部(header)比较大,而且每次发送数据都要发送一个数据包来连接/断开TCP,因此发送的数据越多,数据总通信量也就越大。另外,部分HTTP协议的版本不支持长连接,且通过HTTP协议频繁建立连接会消耗网络和计算资源。
另一种是通过MQTT协议,通过物理网设备和云端建立的MQTT连接上传数据库数据。这种方法下云端存储的数据是全部的增量数据,基于增量叠加得到的数据与设备上的数据库比较,会存在中间遗漏数据的问题,不能保障很高的数据完整性。
由于MQTT协议不支持点对点通信,信息安全有一定影响。mqtt协议包最大传输数据长度有限制,不便于传输大量数据。
为此,如何实现物联网设备中数据的备份管理成为当前需要解决的技术问题。
发明内容
为了解决现有技术存在的问题,本发明的至少一个实施例提供了一种物联网设备的数据备份方法及物联网设备。
第一方面,本发明实施例提出一种物联网设备的数据备份方法,物联网设备中配置有用于向云端服务器上传数据的基于HTTP协议的第一接口和基于MQTT协议的第二接口、云端服务器的地址信息,所述方法包括:
物联网设备根据用户备份该物联网设备内全量数据的备份策略,采用第一接口将所述物联网设备内的全量数据上传所述地址信息对应的云端服务器,以使云端服务器按照设备信息存储所述全量数据;
监控该物联网设备内全量数据是否发生改动;
若发生改动,则采用第二接口将增量数据上传所述云端服务器,以使云端服务器按照设备信息、时间戳的顺序存储所述增量数据;
其中,上传的全量数据包括:所述物联网设备的设备信息和物联网设备的数据库中的所有子数据;
上传的增量数据包括:全量数据中发生改动的所有子数据、每一子数据改动的时间戳和所述设备信息。
在一些实施例中,所述方法还包括:
所述物联网设备向所述云端服务器发送数据库恢复请求,所述数据库恢复请求包括:所述设备信息;
所述物联网设备通过所述第一接口接收所述云端服务器发送的备份数据,所述备份数据包括:所述云端服务器中存储的最新时间点的全量数据和该全量数据对应的所有增量数据;
所述物联网设备解析所述备份数据中全量格式的数据,获得全量数据,依据解析的全量数据恢复所述物联网设备中的基础数据库;以及,解析所述备份数据中的增量格式的数据,依据解析的增量数据对所述基础数据库进行数据恢复。
在一些实施例中,所述设备信息包括:所述物联网设备的序列号SN。
在一些实施例中,所述备份策略包括:备份全量数据的时间信息或备份全量数据的周期信息。
第二方面,本发明还提供一种物联网设备的数据备份方法,云端服务器对物联网设备开放有基于HTTP协议上传数据的第一接口和基于MQTT协议上传数据的第二接口;
所述云端服务器通过所述第一接口接收物联网设备基于HTTP协议上传的全量数据;
所述云端服务器根据所述全量数据中的设备信息对所述全量数据进行存储;
所述云端服务器通过所述第二接口接收所述物联网设备基于MQTT协议上传的增量数据;
所述云端服务器根据所述增量数据中的设备信息、所述增量数据中每一子数据的时间戳顺序对所述增量数据中的所有子数据进行存储;
其中,全量数据包括:所述物联网设备的设备信息和物联网设备的数据库中的所有子数据;
增量数据包括:全量数据中发生改动的所有子数据、每一子数据改动的时间戳和所述设备信息。
在一些实施例中,所述方法还包括:
所述云端服务器接收所述物联网设备发送的数据库恢复请求;
根据所述数据库恢复请求中的设备信息,查找与设备信息对应的最新时间点的全量数据和增量数据;
将查找到的全量数据和增量数据存储成一个下载文件,将下载文件的存储地址发送所述物联网设备,以使所述物联网设备根据所述存储地址采用HTTP协议下载所述下载文件;或者,将所述下载文件通过第一接口发送所述物联网设备,以使物联网设备依据所述下载文件恢复数据。
第三方面,本发明还提供一种物联网设备,包括:存储器、处理器以及接口,所述接口包括:配置的用于向云端服务器上传数据的基于HTTP协议的第一接口和基于MQTT协议的第二接口;所述存储器中存储有云端服务器的地址信息,以及处理器运行的计算机程序;
所述计算机程序被所述处理器执行时,具体包括:
根据用户备份该物联网设备内全量数据的备份策略,采用第一接口将所述物联网设备内的全量数据上传所述地址信息对应的云端服务器,以使云端服务器按照设备信息存储所述全量数据;
监控该物联网设备内全量数据是否发生改动;
若发生改动,则采用第二接口将增量数据上传所述云端服务器,以使云端服务器按照设备信息、时间戳的顺序存储所述增量数据;
其中,上传的全量数据包括:所述物联网设备的设备信息和物联网设备的数据库中的所有子数据;
上传的增量数据包括:全量数据中发生改动的所有子数据、每一子数据改动的时间戳和所述设备信息。
在一些实施例中,所述处理器执行所述存储器中存储的计算机程序,还包括:
向所述云端服务器发送数据库恢复请求,所述数据库恢复请求包括:所述设备信息;
通过所述第一接口接收所述云端服务器发送的备份数据,所述备份数据包括:所述云端服务器中存储的最新时间点的全量数据和该全量数据对应的所有增量数据;
解析所述备份数据中全量格式的数据,获得全量数据,依据解析的全量数据恢复所述物联网设备中的基础数据库;以及,解析所述备份数据中的增量格式的数据,依据解析的增量数据对所述基础数据库进行数据恢复。
第四方面,本发明还提供一种物联网服务器,包括:存储器、处理器以及接口,所述接口包括:对物联网设备开放有基于HTTP协议上传数据的第一接口和基于MQTT协议上传数据的第二接口;所述存储器中存储有处理器运行的计算机程序;
所述计算机程序被所述处理器执行时,具体包括:
通过所述第一接口接收物联网设备基于HTTP协议上传的全量数据;
根据所述全量数据中的设备信息对所述全量数据进行存储;
通过所述第二接口接收所述物联网设备基于MQTT协议上传的增量数据;
根据所述增量数据中的设备信息、所述增量数据中每一子数据的时间戳顺序对所述增量数据中的所有子数据进行存储;
其中,全量数据包括:所述物联网设备的设备信息和物联网设备的数据库中的所有子数据;
增量数据包括:全量数据中发生改动的所有子数据、每一子数据改动的时间戳和所述设备信息。
在一些实施例中,所述处理器执行所述存储器中存储的计算机程序,还包括:
接收所述物联网设备发送的数据库恢复请求;
根据所述数据库恢复请求中的设备信息,查找与设备信息对应的最新时间点的全量数据和增量数据;
将查找到的全量数据和增量数据存储成一个下载文件,将下载文件的存储地址发送所述物联网设备,以使所述物联网设备根据所述存储地址采用HTTP协议下载所述下载文件;或者,将所述下载文件通过第一接口发送所述物联网设备,以使物联网设备依据所述下载文件恢复数据。
可见,本发明实施例的至少一个实施例中,通过在物联网设备中配置基于HTTP协议的第一接口和基于MQTT协议的第二接口,可提高物联网设备的数据库备份、迁移和灾备的能力。
相对比于现有技术中的基于单个协议的数据备份,例如现有技术的上传请求全部以HTTP协议执行来说,HTTP协议较重,频繁在物联网设备上运行资源消耗较大,且数据不完整,本发明实施例的方案可以保证数据的完整性,且降低了物联网设备上运行资源的消耗。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1A为本发明实施例提供的一种物联网设备的数据备份方法的流程图;
图1B为本发明实施例提供的另一种物联网设备的数据备份方法的流程图;
图2为本发明实施例提供的另一种物联网设备的数据备份方法的流程图;
图3为本发明实施例提供的物联网设备中数据恢复的示意图;
图4A和图4B为本发明实施例提供的另一种物联网设备的数据备份方法的流程图;
图5为本发明实施例提供的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
当前,HTTP 协议支持点对点通信,消息传递更安全。HTTP 协议包最大传输数据量较大,能够单次连接发送大量数据。
MQTT协议具有非常小的通信开销(最小的消息大小为 2 字节),协议交换最小化,小型传输以降低网络流量。同时MQTT协议有三种消息发布服务方式 --“至多一次”“至少一次”“只有一次”,让消息能按需到达目的地,适应在不稳定工作的网络传输需求。
本发明实施例中将物联网设备的数据库备份操作分为全量数据上传和增量数据上传两个部分,通过不同协议实现全量和增量数据的备份功能,由此,可以较好的提高物联网设备的备份、迁移或容灾的能力。
如图1A所示,本实施例提供一种物联网设备的数据备份方法的流程图,本实施例方法的执行主体为物联网设备,其中,物联网设备中配置有用于向云端服务器上传数据的基于HTTP协议的第一接口和基于MQTT协议的第二接口、云端服务器的地址信息,图1A所示的方法可包括下述的步骤:
101、物联网设备根据用户备份该物联网设备内全量数据的备份策略,采用第一接口将所述物联网设备内的全量数据上传所述地址信息对应的云端服务器,以使云端服务器按照设备信息存储所述全量数据;
102、物联网设备监控该物联网设备内数据库中全量数据是否发生改动;
103、若发生改动,则采用第二接口将增量数据上传所述云端服务器,以使云端服务器按照设备信息、时间戳的顺序存储所述增量数据。
若全量数据未发生改动,则继续监控。
在本实施例中,增量数据的上传是持续的,只有数据库中的数据有改动或变动,则执行增量数据上传的步骤。
其中,上传的全量数据包括:所述物联网设备的设备信息和物联网设备的数据库中的所有子数据;
上传的增量数据包括:全量数据中发生改动的所有子数据、每一子数据改动的时间戳和所述设备信息。
在本实施例中,设备信息可包括:所述物联网设备的序列号SN即资源ID。
所述备份策略可包括:备份全量数据的时间信息或备份全量数据的周期信息,例如,一天上传一次全量数据,或者两个小时上传一次全量数据等。
在本实施例中,对于全量数据的上传周期内,全量数据上传之后,采用第二接口进行增量数据的上传,只要数据有改动或变动即采用第二接口进行改动数据的上传,在云端则依据全量数据及对应全量数据的增量数据进行分别存储。
在本实施例中,物联网设备的第一接口和第二接口时在配置物联网设备的固件版本时配置的。且第一接口和第二接口对应的通道是两个并行的通道,上传数据相互不干扰,且云端服务器通过各自对应的接口接收数据。特别说明的是,针对单个物联网设备,全量数据上传和增量数据上传并不是并发实现的。
本实施例中间隔一段时间全量上传的操作,保证了间隔时间下物联网设备上传数据的完整性。
相对比于现有技术中的基于单个协议的数据备份,例如现有技术的上传请求全部以HTTP协议执行来说,HTTP协议较重,频繁在物联网设备上运行资源消耗较大,且数据不完整,本发明实施例的方案可以保证数据的完整性,且降低了物联网设备上运行资源的消耗。
进一步地,若物联网设备的场景发生变化,需要对数据库进行恢复,或者物联网设备损坏,在物联网设备重新烧录之后,或者用新的物联网设备重新烧录相同的设备信息之后,需要对数据库进行恢复,此时,基于上述图1A所示的方法,还包括下述的图1B中的步骤104至步骤106。
结合图2和图3所示,从云端下载数据并回复数据库的方案如下述步骤的描述:
104、物联网设备采用第一接口向所述云端服务器发送数据库恢复请求,所述数据库恢复请求包括:所述设备信息。
在具体实现过程中,物联网设备在设备损坏并重新烧录恢复后发送数据库恢复请求,或者物联网设备会因为场景变化需要重新加载原设备的数据时发送数据库恢复请求。
在可能的实现过程中,还可以是物联网设备断电重启之后,主动触发的数据库恢复请求。
还可能存在的情况是,云端向物联网设备发送恢复数据库的指令,此时,物联网设备依据恢复数据库的指令执行上述步骤104。
105、物联网设备通过所述第一接口接收所述云端服务器发送的备份数据,所述备份数据包括:所述云端服务器中存储的最新时间点的全量数据和该全量数据对应的所有增量数据;
106、物联网设备解析所述备份数据中全量格式的数据,获得全量数据,依据解析的全量数据恢复所述物联网设备中的基础数据库;以及,解析所述备份数据中的增量格式的数据,依据解析的增量数据对所述基础数据库进行数据恢复。
本实施例中,通过在物联网设备中配置基于HTTP协议的第一接口和基于MQTT协议的第二接口,可提高物联网设备的数据库备份、迁移和灾备的能力。
本实施例中将物联网设备数据库备份上传操作分为全量数据上传和增量数据的动作上传两个部分,通过不同协议来实现全量和增量备份功能;相对比现有技术的HTTP协议上传全量数据来说,本实施例中物联网设备的硬件资源消耗降低了。
此外,云端服务器针对不同物联网设备的数据库指定唯一的资源ID,通过分配管理资源ID来实现数据库迁移、灾备恢复功能。例如资源ID选取设备SN,在云端服务器存储数据时按照设备SN来存储,如果原设备损坏,新设备烧录相同SN之后,可以下载恢复原设备SN对应的数据,实现灾备。
如图4A所示,本实施例提供一种物联网设备的数据备份方法的流程图,本实施例方法的执行主体为云端服务器,其中,云端服务器对物联网设备开放有基于HTTP协议上传数据的第一接口和基于MQTT协议上传数据的第二接口;其中,图4A所示的方法可包括下述的步骤:
401、云端服务器通过所述第一接口接收物联网设备基于HTTP协议上传的全量数据;
402、云端服务器根据所述全量数据中的设备信息对所述全量数据进行存储;
403、云端服务器通过所述第二接口接收所述物联网设备基于MQTT协议上传的增量数据。
在实际应用中,云端服务器的第一接口和第二接口默认是对物联网设备均开放的,并不需要单独通知物联网设备。
404、云端服务器根据所述增量数据中的设备信息、所述增量数据中每一子数据的时间戳顺序对所述增量数据中的所有子数据进行存储。
其中,全量数据包括:所述物联网设备的设备信息和物联网设备的数据库中的所有子数据;
增量数据包括:全量数据中发生改动的所有子数据、每一子数据改动的时间戳和所述设备信息。
在本实施例中,云端服务器开放HTTP协议对应的全量数据上传的第一接口,物联网设备会通过第一接口定期上传数据库实现全量数据的备份;云端服务器根据上传的全量数据的资源ID进行存储。
特别地,物联网设备在上传全量数据之后,会将后续数据库变动通过MQTT协议对应的增量数据上传的第二接口持续发送到云端服务器;云端服务器接收到增量数据之后,增量数据是改动记录,例如增删操作,增量数据带有子数据改变的时间戳,将按时间戳执行顺序存储。
在一种可能的实现方式中,上述方法还可包括下述的图4B中的步骤405至步骤407:
405、云端服务器接收所述物联网设备发送的数据库恢复请求;
406、根据所述数据库恢复请求中的设备信息,查找与设备信息对应的最新时间点的全量数据和增量数据;
407、将查找到的全量数据和增量数据存储成一个下载文件,将下载文件的存储地址(即下载路径)发送所述物联网设备,以使所述物联网设备根据所述存储地址采用HTTP协议下载所述下载文件;以使物联网设备依据所述下载文件恢复数据。
在其他实施例中,云端服务器可直接将所述下载文件通过第一接口发送所述物联网设备。
可理解的是,当物联网设备触发同步/恢复云端服务器中备份的物联网设备的数据库时,云端服务器会将匹配资源ID的最新的一份全量数据和后续所有的增量数据通过HTTP协议对应的第一接口发送到物联网设备;物联网设备接收到下发的数据之后,会基于全量格式的数据解析并恢复基础数据库,再将增量格式的数据解析,并调整基础数据库恢复最后的数据库,还原得到云端服务器存储的最新的数据库数据。
全量数据用于恢复数据库,包含物联网设备最新一次全量上传时的全部数据;在最新一次全量数据上传之后的新增数据,通过增量数据按顺序执行恢复,如图3所示。
上述个实施例的数据备份方法,保证了数据库备份操作容易实施,降低了物联网设备的硬件资源消耗,保障了尽可能最新的数据存储备份。相对现有技术中仅仅通过增量数据备份的方案,本实施例的方法提高了数据完整性。现有中仅仅增量数据的备份会将大量动作数据逐个上传,网络抖动、设备故障、云端服务器阻塞都会影响增量数据存入云端服务器。
本实施例的方法在物理网设备数据库备份,数据库迁移,数据库灾备恢复等场景下,能发挥很大的作用。
根据本发明实施例的另一方面,本发明实施例还提供一种物联网设备,其包括:存储器、处理器以及接口(如图5中的网络接口),所述接口包括:配置的用于向云端服务器上传数据的基于HTTP协议的第一接口和基于MQTT协议的第二接口;所述存储器中存储有云端服务器的地址信息,以及处理器运行的计算机程序;
所述计算机程序被所述处理器执行时,具体包括:
接收用户备份该物联网设备内全量数据的备份策略,根据所述备份策略,采用第一接口将所述物联网设备内的全量数据上传所述地址信息对应的云端服务器,以使云端服务器按照设备信息存储所述全量数据;
监控该物联网设备内全量数据是否发生改动;
若发生改动,则采用第二接口将增量数据上传所述云端服务器,以使云端服务器按照设备信息、时间戳的顺序存储所述增量数据;
其中,上传的全量数据包括:所述物联网设备的设备信息和物联网设备的数据库中的所有子数据;
上传的增量数据包括:全量数据中发生改动的所有子数据、每一子数据改动的时间戳和所述设备信息。
在另一可能的实现方式中,所述处理器执行所述存储器中存储的计算机程序,还包括:
向所述云端服务器发送数据库恢复请求,所述数据库恢复请求包括:所述设备信息;
通过所述第一接口接收所述云端服务器发送的备份数据,所述备份数据包括:所述云端服务器中存储的最新时间点的全量数据和该全量数据对应的所有增量数据;
解析所述备份数据中全量格式的数据,获得全量数据,依据解析的全量数据恢复所述物联网设备中的基础数据库;以及,解析所述备份数据中的增量格式的数据,依据解析的增量数据对所述基础数据库进行数据恢复。
本实施例中将物联网设备数据库备份上传操作分为全量数据上传和增量数据的动作上传两个部分,通过不同协议来实现全量和增量备份功能;相对比现有技术的HTTP协议上传全量数据来说,本实施例中物联网设备的硬件资源消耗降低了。
另外,图5是本发明实施例提供的物联网设备的结构示意图。上述图1A至图4B所描述的方法可由电子设备来实现。
图5所示的电子设备可包括:至少一个处理器61、至少一个存储器62、至少一个网络接口64和其他的用户接口63。电子设备中的各个组件通过总线***65耦合在一起。可理解,总线***65用于实现这些组件之间的连接通信。总线***65除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图5中将各种总线都标为总线***65。
其中,用户接口63可以包括显示器、键盘或者点击设备(例如,鼠标,轨迹球(trackball) 或者触感板等。
可以理解,本实施例中的存储器62可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-OnlyMemory,ROM)、可编程只读存储器 (ProgrammableROM,PROM)、可擦除可编程只读存储器(ErasablePROM,EPROM)、电可擦除可编程只读存储器(ElectricallyEPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(RandomAccessMemory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(StaticRAM,SRAM)、动态随机存取存储器 (DynamicRAM,DRAM)、同步动态随机存取存储器(SynchronousDRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(DoubleDataRateSDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(SynchlinkDRAM,SLDRAM)和直接内存总线随机存取存储器(DirectRambusRAM,DRRAM)。本文描述的存储器62旨在包括但不限于这些和任意其它适合类型的存储器。
在一些实施方式中,存储器62存储了如下的元素,可执行单元或者数据结构,或者他们的子集,或者他们的扩展集:操作***621和应用程序622。
其中,操作***621,包含各种***程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序622,包含各种应用程序,例如媒体播放器(MediaPlayer)、浏览器(Browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序622中。
在本发明实施例中,处理器61通过调用存储器62存储的程序或指令,具体的,可以是应用程序622中存储的程序或指令,处理器61用于执行第一方面所提供的方法步骤,例如包括以下步骤:
物联网设备接收用户备份该物联网设备内全量数据的备份策略,根据所述备份策略,采用第一接口将所述物联网设备内的全量数据上传所述地址信息对应的云端服务器,以使云端服务器按照设备信息存储所述全量数据;
监控该物联网设备内全量数据是否发生改动;
若发生改动,则采用第二接口将增量数据上传所述云端服务器,以使云端服务器按照设备信息、时间戳的顺序存储所述增量数据;
其中,上传的全量数据包括:所述物联网设备的设备信息和物联网设备的数据库中的所有子数据;
上传的增量数据包括:全量数据中发生改动的所有子数据、每一子数据改动的时间戳和所述设备信息。
上述本发明实施例揭示的方法可以应用于处理器61中,或者由处理器61实现。处理器61可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器61中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器61可以是通用处理器、数字信号处理器(DigitalSignalProcessor,DSP)、专用集成电路(ApplicationSpecific IntegratedCircuit,ASIC)、现成可编程门阵列(FieldProgrammableGateArray, FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件单元组合执行完成。软件单元可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程 存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器62,处理器61读取存储器62中的信息,结合其硬件完成上述方法的步骤。
此外,根据本发明实施例的另一方面,本发明实施例还提供一种物联网服务器,其包括:存储器、处理器以及接口,所述接口包括:对每一物联网设备开放有基于HTTP协议上传数据的第一接口和基于MQTT协议上传数据的第二接口;所述存储器中存储有处理器运行的计算机程序;
所述计算机程序被所述处理器执行时,具体包括:
通过所述第一接口接收物联网设备基于HTTP协议上传的全量数据;
根据所述全量数据中的设备信息对所述全量数据进行存储;
通过所述第二接口接收所述物联网设备基于MQTT协议上传的增量数据;
根据所述增量数据中的设备信息、所述增量数据中每一子数据的时间戳顺序对所述增量数据中的所有子数据进行存储;
其中,全量数据包括:所述物联网设备的设备信息和物联网设备的数据库中的所有子数据;
增量数据包括:全量数据中发生改动的所有子数据、每一子数据改动的时间戳和所述设备信息。
在另一可能的实现方式中,所述处理器执行所述存储器中存储的计算机程序,还包括:
接收所述物联网设备发送的数据库恢复请求;
根据所述数据库恢复请求中的设备信息,查找与设备信息对应的最新时间点的全量数据和增量数据;
将查找到的全量数据和增量数据存储成一个下载文件,将下载文件的存储地址发送所述物联网设备,以使所述物联网设备根据所述存储地址采用HTTP协议下载所述下载文件;或者,将所述下载文件通过第一接口发送所述物联网设备,以使物联网设备依据所述下载文件恢复数据。
本实施例中将物联网设备数据库备份上传操作分为全量数据上传和增量数据的动作上传两个部分,通过不同协议来实现全量和增量备份功能;相对比现有技术的HTTP协议上传全量数据来说,本实施例中物联网设备的硬件资源消耗降低了。
可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPDevice,DSPD)、可编程逻辑设备(PLD)、现场可编程门阵列(FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。
对于软件实现,可通过执行本文所述功能的单元来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,方法实施例的步骤之间除非存在明确的先后顺序,否则执行顺序可任意调整。所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者 网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。
虽然结合附图描述了本发明的实施方式,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (10)
1.一种物联网设备的数据备份方法,其特征在于,物联网设备中配置有用于向云端服务器上传数据的基于HTTP协议的第一接口和基于MQTT协议的第二接口、云端服务器的地址信息,所述方法包括:
物联网设备根据用户备份该物联网设备内全量数据的备份策略,采用第一接口将所述物联网设备内的全量数据上传所述地址信息对应的云端服务器,以使云端服务器按照设备信息存储所述全量数据;
监控该物联网设备内全量数据是否发生改动;
若发生改动,则采用第二接口将增量数据上传所述云端服务器,以使云端服务器按照设备信息、时间戳的顺序存储所述增量数据;
其中,上传的全量数据包括:所述物联网设备的设备信息和物联网设备的数据库中的所有子数据;
上传的增量数据包括:全量数据中发生改动的所有子数据、每一子数据改动的时间戳和所述设备信息。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述物联网设备通过所述第一接口向所述云端服务器发送数据库恢复请求,所述数据库恢复请求包括:所述设备信息;
所述物联网设备通过所述第一接口接收所述云端服务器发送的备份数据,所述备份数据包括:所述云端服务器中存储的最新时间点的全量数据和该全量数据对应的所有增量数据;
所述物联网设备解析所述备份数据中全量格式的数据,获得全量数据,依据解析的全量数据恢复所述物联网设备中的基础数据库;以及,解析所述备份数据中的增量格式的数据,依据解析的增量数据对所述基础数据库进行数据恢复。
3.根据权利要求1所述的方法,其特征在于,
所述设备信息包括:所述物联网设备的序列号SN。
4.根据权利要求1所述的方法,其特征在于,
所述备份策略包括:备份全量数据的时间信息或备份全量数据的周期信息。
5.一种物联网设备的数据备份方法,其特征在于,云端服务器对物联网设备开放有基于HTTP协议上传数据的第一接口和基于MQTT协议上传数据的第二接口;所述方法包括:
所述云端服务器通过所述第一接口接收物联网设备基于HTTP协议上传的全量数据;
所述云端服务器根据所述全量数据中的设备信息对所述全量数据进行存储;
所述云端服务器通过所述第二接口接收所述物联网设备基于MQTT协议上传的增量数据;
所述云端服务器根据所述增量数据中的设备信息、所述增量数据中每一子数据的时间戳顺序对所述增量数据中的所有子数据进行存储;
其中,全量数据包括:所述物联网设备的设备信息和物联网设备的数据库中的所有子数据;
增量数据包括:全量数据中发生改动的所有子数据、每一子数据改动的时间戳和所述设备信息。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
所述云端服务器基于第一接口接收所述物联网设备发送的数据库恢复请求;
根据所述数据库恢复请求中的设备信息,查找与设备信息对应的最新时间点的全量数据和增量数据;
将查找到的全量数据和增量数据存储成一个下载文件,将下载文件的存储地址发送所述物联网设备,以使所述物联网设备根据所述存储地址采用HTTP协议下载所述下载文件;或者,将所述下载文件通过第一接口发送所述物联网设备,以使物联网设备依据所述下载文件恢复数据。
7.一种物联网设备,其特征在于,包括:存储器、处理器以及接口,所述接口包括:配置的用于向云端服务器上传数据的基于HTTP协议的第一接口和基于MQTT协议的第二接口;所述存储器中存储有云端服务器的地址信息,以及处理器运行的计算机程序;
所述计算机程序被所述处理器执行时,具体包括:
根据用户备份该物联网设备内全量数据的备份策略,采用第一接口将所述物联网设备内的全量数据上传所述地址信息对应的云端服务器,以使云端服务器按照设备信息存储所述全量数据;
监控该物联网设备内全量数据是否发生改动;
若发生改动,则采用第二接口将增量数据上传所述云端服务器,以使云端服务器按照设备信息、时间戳的顺序存储所述增量数据;
其中,上传的全量数据包括:所述物联网设备的设备信息和物联网设备的数据库中的所有子数据;
上传的增量数据包括:全量数据中发生改动的所有子数据、每一子数据改动的时间戳和所述设备信息。
8.根据权利要求7所述的物联网设备,其特征在于,所述处理器执行所述存储器中存储的计算机程序,还包括:
向所述云端服务器发送数据库恢复请求,所述数据库恢复请求包括:所述设备信息;
通过所述第一接口接收所述云端服务器发送的备份数据,所述备份数据包括:所述云端服务器中存储的最新时间点的全量数据和该全量数据对应的所有增量数据;
解析所述备份数据中全量格式的数据,获得全量数据,依据解析的全量数据恢复所述物联网设备中的基础数据库;以及,解析所述备份数据中的增量格式的数据,依据解析的增量数据对所述基础数据库进行数据恢复。
9.一种物联网服务器,其特征在于,包括:存储器、处理器以及接口,所述接口包括:对物联网设备开放有基于HTTP协议上传数据的第一接口和基于MQTT协议上传数据的第二接口;所述存储器中存储有处理器运行的计算机程序;
所述计算机程序被所述处理器执行时,具体包括:
通过所述第一接口接收物联网设备基于HTTP协议上传的全量数据;
根据所述全量数据中的设备信息对所述全量数据进行存储;
通过所述第二接口接收所述物联网设备基于MQTT协议上传的增量数据;
根据所述增量数据中的设备信息、所述增量数据中每一子数据的时间戳顺序对所述增量数据中的所有子数据进行存储;
其中,全量数据包括:所述物联网设备的设备信息和物联网设备的数据库中的所有子数据;
增量数据包括:全量数据中发生改动的所有子数据、每一子数据改动的时间戳和所述设备信息。
10.根据权利要求9所述的物联网服务器,其特征在于,所述处理器执行所述存储器中存储的计算机程序,还包括:
接收所述物联网设备发送的数据库恢复请求;
根据所述数据库恢复请求中的设备信息,查找与设备信息对应的最新时间点的全量数据和增量数据;
将查找到的全量数据和增量数据存储成一个下载文件,将下载文件的存储地址发送所述物联网设备,以使所述物联网设备根据所述存储地址采用HTTP协议下载所述下载文件;或者,将所述下载文件通过第一接口发送所述物联网设备,以使物联网设备依据所述下载文件恢复数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910821105.6A CN110708352B (zh) | 2019-09-02 | 2019-09-02 | 物联网设备的数据备份的方法及物联网设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910821105.6A CN110708352B (zh) | 2019-09-02 | 2019-09-02 | 物联网设备的数据备份的方法及物联网设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110708352A CN110708352A (zh) | 2020-01-17 |
CN110708352B true CN110708352B (zh) | 2022-01-28 |
Family
ID=69194111
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910821105.6A Active CN110708352B (zh) | 2019-09-02 | 2019-09-02 | 物联网设备的数据备份的方法及物联网设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110708352B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111787221B (zh) * | 2020-06-30 | 2021-10-19 | 北京百度网讯科技有限公司 | 图像采集方法、装置、***、设备和计算机存储介质 |
CN113052543B (zh) * | 2021-05-31 | 2022-05-03 | 广州宸祺出行科技有限公司 | 一种区域订单和司机热力的统计储存方法、装置及应用 |
CN114553958B (zh) * | 2022-01-04 | 2024-07-05 | 深圳绿米联创科技有限公司 | 数据迁移处理方法、装置、电子设备及存储介质 |
CN114500673A (zh) * | 2022-02-15 | 2022-05-13 | 江苏提米智能科技有限公司 | 一种基于时序数据传输的编码方法和解码方法、装置、电子设备及存储介质 |
WO2024000214A1 (zh) * | 2022-06-29 | 2024-01-04 | 华为技术有限公司 | 车辆中的通信方法及相关装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103179210A (zh) * | 2013-03-26 | 2013-06-26 | 太原罗克佳华工业有限公司 | 一种基于Web Service的物联网云端接入方法和*** |
CN109861978A (zh) * | 2018-12-28 | 2019-06-07 | 浙江工业大学 | 一种基于MQTT协议的物联网SaaS平台 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11032219B2 (en) * | 2015-12-22 | 2021-06-08 | Intel Corporation | Network aware application dependent adaptive protocol selection for IoT communications |
-
2019
- 2019-09-02 CN CN201910821105.6A patent/CN110708352B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103179210A (zh) * | 2013-03-26 | 2013-06-26 | 太原罗克佳华工业有限公司 | 一种基于Web Service的物联网云端接入方法和*** |
CN109861978A (zh) * | 2018-12-28 | 2019-06-07 | 浙江工业大学 | 一种基于MQTT协议的物联网SaaS平台 |
Non-Patent Citations (3)
Title |
---|
"Improving performance of Internet of Things by using local IOT controller unit";Sushma Satpute,Bharat Sing Deora;《2015 International Conference on Green Computing and Internet of Things(ICGCIoT)》;20160114;全文 * |
"物联网大数据存储与管理技术研究";郝行军;《中国博士学位论文全文数据库 信息科技辑》;20170930;全文 * |
MQTT协议在物联网中的应用研究;龚永罡等;《电脑与电信》;20171110(第11期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110708352A (zh) | 2020-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110708352B (zh) | 物联网设备的数据备份的方法及物联网设备 | |
US10439916B2 (en) | Client-side fault tolerance in a publish-subscribe system | |
EP3304310B1 (en) | System and method for automatic cloud-based full-data backup and restore on mobile devices | |
US12013764B2 (en) | Past-state backup generator and interface for database systems | |
US11860741B2 (en) | Continuous data protection | |
US11042503B1 (en) | Continuous data protection and restoration | |
US9547726B2 (en) | Virtual file-sharing network | |
AU2008268539B2 (en) | Server-assisted and peer-to-peer synchronization | |
US10069942B2 (en) | Method and apparatus for changing configurations | |
CN102349062A (zh) | 用于跨设备和web服务使浏览器缓存同步的编程模型 | |
JP5184078B2 (ja) | ファイル管理システム | |
US10997000B1 (en) | Event publishing system for heterogeneous events | |
JP2013543179A (ja) | アイテム単位でのリカバリー | |
CN113157658B (zh) | 客户端日志收集分发方法、装置及计算机设备 | |
CN111193789A (zh) | 订阅信息推送方法、装置、计算机设备和可读存储介质 | |
CN110958293A (zh) | 基于云服务器的文件传输方法、***、服务器及存储介质 | |
US10599672B2 (en) | Cursor-based state-collapse scheme for shared databases | |
JP4902559B2 (ja) | ネットワーク分散共有システム、ネットワーク分散共有方法、およびネットワーク分散共有プログラム | |
CN110288309B (zh) | 数据交互方法、装置、***、计算机设备以及存储介质 | |
CN113297008A (zh) | 数据处理方法以及*** | |
JP4890412B2 (ja) | ネットワーク分散共有システム、ネットワーク分散共有方法、およびネットワーク分散共有プログラム | |
US11755503B2 (en) | Persisting directory onto remote storage nodes and smart downloader/uploader based on speed of peers | |
CN116467118A (zh) | 一种对象存储增量备份方法、***、设备及介质 | |
CN115567372A (zh) | 一种数据备份方法、装置、存储介质及电子设备 | |
JP2011210109A (ja) | 大規模分散処理システムにおける同期処理方法及びシステム及びプライマリサーバ及びプログラム |
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 |