发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种数据同步的方法、一种数据同步的装置和相应的一种数据同步的系统。
为了解决上述问题,本发明实施例公开了一种数据同步的方法,应用于视联网,所述视联网包括协转服务器,监控调度平台,以及,监控设备,所述方法包括:
监控调度平台获取协转服务器的视联网地址信息;
监控调度平台依据所述协转服务器的视联网地址信息,向所述协转服务器发送监控设备资源请求;
协转服务器读取监控设备资源数据,并对所述监控设备资源数据作分包处理;
协转服务器将分包后的监控设备资源数据发送至监控调度平台;
监控调度平台对所述分包后的监控设备资源数据进行验证;
若验证通过,监控调度平台存储所述分包后的监控设备资源数据。
可选地,所述监控调度平台获取所述协转服务器的视联网地址信息的步骤包括:
监控调度平台发送名片互换请求至协转服务器;
接收所述协转服务器返回的名片互换响应,以完成通信握手,所述名片互换响应中包括所述协转服务器的视联网地址信息。
可选地,所述协转服务器对所述监控设备资源数据作分包处理的步骤包括:
协转服务器对读取到的监控设备资源数据进行压缩;
将压缩后的监控设备资源数据分包为多个压缩包,每个压缩包附带有相应的有效长度。
可选地,所述分包后的监控设备资源数据包括多个压缩包及压缩包总数,所述协转服务器将分包后的监控设备资源数据发送至监控调度平台的步骤包括:
协转服务器将多个压缩包及压缩包总数发送至监控调度平台。
可选地,所述监控调度平台对所述分包后的监控设备资源数据进行验证的步骤包括:
当接收到任一压缩包时,监控调度平台验证所述压缩包的长度与附带的有效长度是否相同;
当全部压缩包的长度与各自附带的有效长度均相同时,监控调度平台验证接收到的全部压缩包的数量与压缩包总数是否相等。
可选地,所述若验证通过,监控调度平台存储所述分包后的监控设备资源数据的步骤包括:
若接收到的全部压缩包的数量与压缩包总数相等,则监控调度平台对各个压缩包进行解析,获得监控设备资源解析数据;
存储所述监控设备资源解析数据。
可选地,还包括:
若任一压缩包的长度与附带的有效长度不相同,或者,接收到的全部压缩包的数量与压缩包总数不相等,则返回执行向所述协转服务器发送监控设备资源请求的步骤。
为了解决上述问题,本发明实施例公开了一种数据同步的方法,应用于视联网,所述视联网包括协转服务器,监控调度平台,以及,监控设备,所述方法包括:
监控调度平台获取协转服务器的视联网地址信息;
依据所述协转服务器的视联网地址信息,向所述协转服务器发送监控设备资源请求;
接收所述协转服务器针对所述监控设备资源请求返回的监控设备资源数据;
对所述监控设备资源数据进行验证;
若验证通过,则存储所述监控设备资源数据。
可选地,所述监控调度平台获取协转服务器的视联网地址信息的步骤包括:
监控调度平台发送名片互换请求至协转服务器;
接收所述协转服务器发送的名片互换响应,以完成通信握手,所述名片互换响应中包括所述协转服务器的视联网地址信息。
可选地,所述监控设备资源数据包括多个压缩包及压缩包总数,每个压缩包附带有相应的有效长度,所述对所述监控设备资源数据进行验证的步骤包括:
当接收到任一压缩包时,验证所述压缩包的长度与附带的有效长度是否相同;
当全部压缩包的长度与各自附带的有效长度均相同时,验证接收到的全部压缩包的数量与压缩包总数是否相等。
可选地,所述若验证通过,则存储所述监控设备资源数据的步骤包括:
若接收到的全部压缩包的数量与压缩包总数相等,则对各个压缩包进行解析,获得监控设备资源解析数据;
存储所述监控设备资源解析数据。
可选地,还包括:
若任一压缩包的长度与附带的有效长度不相同,或者,接收到的全部压缩包的数量与压缩包总数不相等,则返回执行向所述协转服务器发送监控设备资源请求的步骤。
为了解决上述问题,本发明实施例公开了一种数据同步的装置,应用于视联网,所述视联网包括协转服务器,监控调度平台,以及,监控设备,所述装置包括:
获取模块,用于获取协转服务器的视联网地址信息;
发送模块,用于依据所述协转服务器的视联网地址信息,向所述协转服务器发送监控设备资源请求;
接收模块,用于接收所述协转服务器针对所述监控设备资源请求返回的监控设备资源数据;
验证模块,用于对所述监控设备资源数据进行验证;
存储模块,用于若验证通过,则存储所述监控设备资源数据。
可选地,所述获取模块包括:
发送子模块,用于发送名片互换请求至协转服务器;
接收子模块,用于接收所述协转服务器发送的名片互换响应,以完成通信握手,所述名片互换响应中包括所述协转服务器的视联网地址信息。
可选地,所述监控设备资源数据包括多个压缩包及压缩包总数,每个压缩包附带有相应的有效长度,所述验证模块包括:
长度验证子模块,用于当接收到任一压缩包时,验证所述压缩包的长度与附带的有效长度是否相同;
数量验证子模块,用于当全部压缩包的长度与各自附带的有效长度均相同时,验证接收到的全部压缩包的数量与压缩包总数是否相等。
可选地,所述存储模块包括:
解析子模块,用于若接收到的全部压缩包的数量与压缩包总数相等,则对各个压缩包进行解析,获得监控设备资源解析数据;
存储子模块,用于存储所述监控设备资源解析数据。
可选地,还包括:
返回模块,用于若任一压缩包的长度与附带的有效长度不相同,或者,接收到的全部压缩包的数量与压缩包总数不相等,则返回调用所述发送模块。
为了解决上述问题,本发明实施例公开了一种数据同步的系统,应用于视联网,所述系统包括协转服务器,监控调度平台,以及,监控设备;
所述监控调度平台包括:
获取模块,用于获取协转服务器的视联网地址信息;
第一发送模块,用于依据所述协转服务器的视联网地址信息,向所述协转服务器发送监控设备资源请求;
所述协转服务器包括:
处理模块,用于读取监控设备资源数据,并对所述监控设备资源数据作分包处理;
第二发送模块,用于将分包后的监控设备资源数据发送至监控调度平台;
所述监控调度平台还包括:
验证模块,用于对所述分包后的监控设备资源数据进行验证;
存储模块,用于若验证通过,监控调度平台存储所述分包后的监控设备资源数据。
可选地,所述获取模块包括:
名片互换请求发送子模块,用于发送名片互换请求至协转服务器;
名片互换响应接收子模块,用于接收所述协转服务器返回的名片互换响应,以完成通信握手,所述名片互换响应中包括所述协转服务器的视联网地址信息。
可选地,所述处理模块包括:
数据压缩子模块,用于对读取到的监控设备资源数据进行压缩;
数据分包子模块,用于将压缩后的监控设备资源数据分包为多个压缩包,每个压缩包附带有相应的有效长度。
可选地,所述分包后的监控设备资源数据包括多个压缩包及压缩包总数,所述第二发送模块包括:
数据发送子模块,用于将多个压缩包及压缩包总数发送至监控调度平台。
可选地,所述验证模块包括:
长度验证子模块,用于当接收到任一压缩包时,验证所述压缩包的长度与附带的有效长度是否相同;
数量验证子模块,用于当全部压缩包的长度与各自附带的有效长度均相同时,验证接收到的全部压缩包的数量与压缩包总数是否相等。
可选地,所述存储模块包括:
数据解析子模块,用于若接收到的全部压缩包的数量与压缩包总数相等,则对各个压缩包进行解析,获得监控设备资源解析数据;
数据存储子模块,用于存储所述监控设备资源解析数据。
可选地,所述监控调度平台还包括:
返回模块,用于若任一压缩包的长度与附带的有效长度不相同,或者,接收到的全部压缩包的数量与压缩包总数不相等,则返回调用所述第一发送模块。
与背景技术相比,本发明实施例包括以下优点:
本发明实施例,通过建立监控调度平台与协转服务器之间的通信,然后请求协转服务器将接入自身的监控设备资源数据发送给至监控调度平台,从而实现二者之间的数据同步,解决了现有技术中只能依靠人工手动修改监控调度平台的配置信息,工作量大且容易出现错录的问题,减少了同步过程中的人为干预,加快了数据同步的效率。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本发明的一种数据同步的方法实施例一的步骤流程图,具体可以包括如下步骤:
步骤101,监控调度平台获取协转服务器的视联网地址信息;
需要说明的是,本方法可以应用于视联网中。视联网是网络发展的重要里程碑,是一个能够实现实时高清视频传输,将众多互联网应用推向高清视频化,高清面对面的网络系统。
视联网采用实时高清视频交换技术,可以在一个网络平台上将所需的服务,如高清视频会议、视频监控、智能化监控分析、应急指挥、数字广播电视、延时电视、网络教学、现场直播、VOD点播、电视邮件、个性录制(PVR)、内网(自办)频道、智能化视频播控、信息发布等数十种视频、语音、图片、文字、通讯、数据等服务全部整合在一个系统平台,通过电视或电脑实现高清品质视频播放。
为使本领域技术人员更好地理解本发明实施例,以下首先对视联网作一介绍。
视联网是一种集中控制的网络结构,该网络可以是树型网、星型网、环状网等等类型,但在此基础上网络中需要有集中控制节点来控制整个网络。
如图2所示,是本发明的一种视联网的组网示意图。由图2可知,视联网分为接入网和城域网两部分。
接入网部分的设备主要可以分为3类:节点服务器,接入交换机,终端(包括各种机顶盒、编码板、存储器等)。节点服务器与接入交换机相连,接入交换机可以与多个终端相连,并可以连接以太网。
其中,节点服务器是接入网中起集中控制功能的节点,可控制接入交换机和终端。节点服务器可直接与接入交换机相连,也可以直接与终端相连。
如图3所示,是本发明的一种节点服务器的硬件结构示意图。节点服务器主要包括网络接口模块301、交换引擎模块302、CPU模块303、磁盘阵列模块304;
其中,网络接口模块301,CPU模块303、磁盘阵列模块304进来的包均进入交换引擎模块302;交换引擎模块302对进来的包进行查地址表305的操作,从而获得包的导向信息;并根据包的导向信息把该包存入对应的包缓存器306的队列;如果包缓存器306的队列接近满,则丢弃;交换引擎模302轮询所有包缓存器队列,如果满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零。磁盘阵列模块304主要实现对硬盘的控制,包括对硬盘的初始化、读写等操作;CPU模块303主要负责与接入交换机、终端(图中未示出)之间的协议处理,对地址表305(包括下行协议包地址表、上行协议包地址表、数据包地址表)的配置,以及,对磁盘阵列模块304的配置。
如图4所示,是本发明的一种接入交换机的硬件结构示意图。接入交换机主要包括网络接口模块(下行网络接口模块401、上行网络接口模块402)、交换引擎模块403和CPU模块404;
其中,下行网络接口模块401进来的包(上行数据)进入包检测模块405;包检测模块405检测包的目地地址(DA)、源地址(SA)、数据包类型及包长度是否符合要求,如果符合,则分配相应的流标识符(stream-id),并进入交换引擎模块403,否则丢弃;上行网络接口模块402进来的包(下行数据)进入交换引擎模块403;CPU模块404进来的数据包进入交换引擎模块403;交换引擎模块403对进来的包进行查地址表406的操作,从而获得包的导向信息;如果进入交换引擎模块403的包是下行网络接口往上行网络接口去的,则结合流标识符(stream-id)把该包存入对应的包缓存器407的队列;如果该包缓存器407的队列接近满,则丢弃;如果进入交换引擎模块403的包不是下行网络接口往上行网络接口去的,则根据包的导向信息,把该数据包存入对应的包缓存器407的队列;如果该包缓存器407的队列接近满,则丢弃。
交换引擎模块403轮询所有包缓存器队列,在本发明实施例中分两种情形:
如果该队列是下行网络接口往上行网络接口去的,则满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零;3)获得码率控制模块产生的令牌;
如果该队列不是下行网络接口往上行网络接口去的,则满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零。
码率控制模块408是由CPU模块404来配置的,在可编程的间隔内对所有下行网络接口往上行网络接口去的包缓存器队列产生令牌,用以控制上行转发的码率。
CPU模块404主要负责与节点服务器之间的协议处理,对地址表406的配置,以及,对码率控制模块408的配置。
接入网部分的设备还包括以太网协转网关。如图5所示,是本发明的一种以太网协转网关的硬件结构示意图。以太网协转网关主要包括网络接口模块(下行网络接口模块501、上行网络接口模块502)、交换引擎模块503、CPU模块504、包检测模块505、码率控制模块508、地址表506、包缓存器507和MAC添加模块509、MAC删除模块510。
其中,下行网络接口模块501进来的数据包进入包检测模块505;包检测模块505检测数据包的以太网MAC DA、以太网MAC SA、以太网length or frame type、视联网目地地址DA、视联网源地址SA、视联网数据包类型及包长度是否符合要求,如果符合则分配相应的流标识符(stream-id);然后,由MAC删除模块510减去MAC DA、MAC SA、length or frame type(2byte),并进入相应的接收缓存,否则丢弃;
下行网络接口模块501检测该端口的发送缓存,如果有包则根据包的视联网目地地址DA获知对应的终端的以太网MAC DA,添加终端的以太网MAC DA、以太网协转网关的MACSA、以太网length or frame type,并发送。
以太网协转网关中其他模块的功能与接入交换机类似。
接入网部分的终端主要包括网络接口模块、业务处理模块和CPU模块;例如,机顶盒主要包括网络接口模块、视音频编解码引擎模块、CPU模块;编码板主要包括网络接口模块、视音频编码引擎模块、CPU模块;存储器主要包括网络接口模块、CPU模块和磁盘阵列模块。
类似的,城域网部分的设备也可以分为3类:城域服务器,节点交换机,节点服务器。城域服务器与节点交换机相连,节点交换机可以与多个节点服务器相连。节点交换机主要包括网络接口模块、交换引擎模块和CPU模块;城域服务器主要包括网络接口模块、交换引擎模块和CPU模块构成。
其中,节点服务器即为接入网部分的节点服务器,即节点服务器既属于接入网部分,又属于城域网部分。
城域服务器是城域网中起集中控制功能的节点,可控制节点交换机和节点服务器。城域服务器可直接连接节点交换机,也可直接连接节点服务器。
由此可见,整个视联网络是一种分层集中控制的网络结构,而节点服务器和城域服务器下控制的网络可以是树型、星型、环状等各种结构。
形象地称,接入网部分可以组成统一视频平台(虚线圈中部分),多个统一视频平台可以组成视联网;每个统一视频平台可以通过城域以及广域视联网互联互通。
在本发明实施例中,视联网中可以包括协转服务器,监控调度平台,以及,监控设备。当然,该视联网中还可以包括视联网显示终端等设备。
其中,监控设备可以是监控摄像头等终端设备。当监控摄像头被安装在不同的地方时,能够对相应区域进行视频图像的采集,从而实现对该区域的监控。
本实施例中的协转服务器可以用来接入监控设备资源。例如,可以接入不同的监控摄像头,并将不同的监控摄像头所采集的视频数据发送至视联网显示终端。
视联网显示终端可以为机顶盒(SetTopBox,STB),是一个连接电视机与外部信号源的设备,它可以将压缩的数字信号转成电视内容,并在电视机上显示出来。当然,视联网显示终端也可以是集成于显示设备中的一种设备,从而能够直接将接收到的视频数据显示在其显示界面中,本实施例对视联网显示终端的具体类型不作限定。
监控调度平台可以是一个前端的web系统,针对的是前端用户,用户可以在该平台上查看监控和录像,并实现对全部监控设备的统一管理和调度。
在本发明实施例中,为了实现对全部监控设备的统一管理和调度,当接入协转服务器的监控设备增加或者修改了监控设备的信息时,需要对监控调度平台的配置信息作相应的修改,即对监控调度平台与协转服务器作数据同步。
在本发明实施例中,当监控调度平台需要与协转服务器进行数据同步时,可以首先获取协转服务器的视联网地址信息。
在具体实现中,监控调度平台可以通过向协转服务器发送名片互换请求,来交换二者之间的视联网地址。
步骤102,监控调度平台依据所述协转服务器的视联网地址信息,向所述协转服务器发送监控设备资源请求;
当监控调度平台获取到协转服务器的视联网地址后,可以发送监控设备资源请求,以请求在二者之间进行监控设备资源的数据同步。
步骤103,协转服务器读取监控设备资源数据,并对所述监控设备资源数据作分包处理;
在本发明实施例中,协转服务器在接收到数据同步的请求后,可以读取已经接入本协转服务器的监控设备资源数据并分包。
在具体实现中,协转服务器在读取监控设备资源数据后,可以首先将读取到的数据进行压缩处理,然后将压缩后的数据进一步分包为多个压缩包。例如,可以将压缩后的数据按指定包大小进行分包,使每个压缩包的数据的大小为1024字节。当然,本领域技术人员可以根据实际需要确定具体的分包大小,本实施例对此不作限定。
需要说明的是,协转服务器在对监控设备资源数据进行分包时,可以为每个压缩包分配一个包序号,并记录该压缩包的有效长度等信息,并在分包时将上述信息一并写入该压缩包内。
步骤104,协转服务器将分包后的监控设备资源数据发送至监控调度平台;
在将监控设备资源数据分包为多个压缩包后,协转服务器便可以将每个压缩包发送至监控调度平台。
在本发明实施例中,协转服务器在对监控设备资源进行分包处理时,可以统计分包后总的压缩包的总个数,并在向监控调度平台发送压缩包时,将总的压缩包的总个数一并告知监控调度平台。
步骤105,监控调度平台对所述分包后的监控设备资源数据进行验证;
在本发明实施例中,监控调度平台对监控设备资源数据所作的验证可以是指对分包后的压缩包作的验证。
在本发明实施例中,由于监控调度平台接收到的监控设备资源数据是以压缩包的形式存在的,因此,对压缩包进行验证时,需要首先对每个压缩包进行解压缩。
在具体实现中,监控调度平台可以验证接收到的压缩包的长度与写入该压缩包内的有效长度是否相同。如果有任一压缩包的长度与其有效长度不同,则可以认为压缩包在传输过程中出现了错误,监控调度平台可以再次向协转服务器发送监控设备资源请求,请求协转服务器重新发送监控设备资源数据。
当监控调度平台接收到的每个压缩包的长度与其有效长度均相同时,还可以继续验证所接收到的全部压缩包的数量是否与协转服务器在先告知的压缩包的总个数相等。
如果相等,则可以认为验证通过,则可以执行步骤106,对接收到的数据进行存储。
如果不相等,则可以认为数据传输过程中出现了丢失,此时,监控调度平台也可以再次向协转服务器发送监控设备资源请求,请求协转服务器重新发送监控设备资源数据。
当然,本领域技术人员根据实际需要还可以采用其他验证方式,本实施例对此不作限定。
步骤106,若验证通过,监控调度平台存储所述分包后的监控设备资源数据。
在本发明实施例中,当监控调度平台对接收到的监控设备资源数据验证通过后,可以将上述数据存储在自身的数据库中。
需要说明的是,协转服务器发送给监控调度平台的监控设备资源数据可以是具有一定格式的数据,因此,监控调度平台在对数据进行存储前,还可以对接收到的监控设备资源数据进行解析,并存储解析后的数据。
在本发明实施例中,通过建立监控调度平台与协转服务器之间的通信,然后请求协转服务器将接入自身的监控设备资源数据发送给至监控调度平台,从而实现二者之间的数据同步,解决了现有技术中只能依靠人工手动修改监控调度平台的配置信息,工作量大且容易出现错录的问题,减少了同步过程中的人为干预,加快了数据同步的效率。
参照图6,示出了本发明的一种数据同步的方法实施例二的步骤流程图,所述方法可以应用于视联网中,所述视联网中可以包括协转服务器,监控调度平台,以及,监控设备,所述方法具体可以包括如下步骤:
步骤601,监控调度平台发送名片互换请求至协转服务器;
在本发明实施例中,监控调度平台可以通过名片互换请求建立与协转服务器之间的通信。
名片互换请求是一个握手的动作,用可以用于交换通信双方的视联网地址,例如,视联网MAC地址。从而使通信双方可以通过视联网MAC地址直接进行数据的传输。
在本发明实施例中,监控调度平台向协转服务器发送名片互换请求可以是基于视联网8F85协议进行的。
8F85协议是视联网的一种私有协议,采用该协议发送的名片互换请求中可以携带操作码、信令,以及,请求方的视联网MAC地址。协转服务器在接收到上述请求后,可以根据8F85协议中操作码和信令的不同,去处理不同的业务。
在具体实现中,监控调度平台发送至协转服务器的名片互换请求中携带的操作码为8001,信令为1009。只有当协转服务器接收到的8F85协议中的操作码为8001、信令为1009时,才会向请求方返回名片互换信息,即协转服务器自身的视联网MAC地址。
步骤602,监控调度平台接收所述协转服务器返回的名片互换响应,以完成通信握手,所述名片互换响应中包括所述协转服务器的视联网地址信息;
在本发明实施例中,协转服务器在接收到监控调度平台的名片互换请求后,可以向监控调度平台发送名片互换响应,并存储名片互换请求中携带的监控调度平台的视联网MAC地址,用于之后传输数据时使用。
在具体实现中,名片互换响应可以是基于视联网8F85协议进行传输的,并且,该协议中的操作码为8001,信令为100A。其中,信令100A与信令1009是对应的,只有收到1009信令请求后,才会响应100A。
需要说明的是,名片互换响应中除了协转被请求方即协转服务器的视联网MAC地址外,还可以包括服务器的名称、互换名片是否成功等信息。
步骤603,监控调度平台依据所述协转服务器的视联网地址信息,向所述协转服务器发送监控设备资源请求;
在本发明实施例中,监控调度平台在接收到协转服务器返回的名片互换响应后,可以向协转服务器发送监控设备资源请求。
监控设备资源请求同样可以是采用8F85协议来进行传输的,在发送请求时,需要将8F85协议中8001操作码下的信令替换为1101。
步骤604,协转服务器读取监控设备资源数据,并对读取到的监控设备资源数据进行压缩;
在本发明实施例中,当协转服务器在接收到8F85协议,可以判断该协议中的操作码是否为8001,信令是否为1101来确认是否向请求方发送监控设备资源数据。
若是,协转服务器可以读取接入自身的监控设备资源数据,并将读取到的数据转换为json格式(JavaScript Object Notation,JS对象标记,是一种轻量级的数据交换格式),然后进行压缩处理。
在具体实现中,协转服务器可以使用gzip算法对json格式的数据进行压缩。
当然,本领域技术人员还可以根据实际需要,将读取到的数据转换为其他格式的数据,或采用其他算法进行压缩,本实施例对此不作限定。
步骤605,协转服务器将压缩后的监控设备资源数据分包为多个压缩包,每个压缩包附带有相应的有效长度;
在本发明实施例中,协转服务器可以按照指定的包的大小,将读取到的监控设备资源数据分包为多个压缩包。
例如,可以设定每个压缩包的数据大小为1024字节。正常情况下,每个压缩包的有效长度都是1024字节,只有最后一个压缩包,会根据总数据长度和已发数据长度,计算出有效长度。
步骤606,协转服务器将多个压缩包及压缩包总数发送至监控调度平台;
在本发明实施例中,协转服务器可以采用8F95协议来将监控设备资源数据发送至监控调度平台。
与8F85协议类似,8F95协议也是一种视联网的私有协议,采用该协议时,一次可以传输更多的数据。
在具体实现中,当协转服务器接收到监控调度平台操作码为8001,信令为1101的8F85协议后,可以以8F95协议进行响应,在响应时,信令为1102。通过信令1102可以进行资源数据的同步。
在本发明实施例中,响应监控调度平台的监控资源请求所携带的内容可以包括压缩包的包序号、压缩包总数、当前压缩包内数据的有效长度、压缩前总数据的有效长度、压缩后总数据的有效长度、数据格式等等。
步骤607,当接收到任一压缩包时,监控调度平台验证所述压缩包的长度与附带的有效长度是否相同;
由于协转服务器响应的监控设备资源数据是经过压缩的,因此,监控调度平台在接收到各个压缩包后,需要首先进行解压缩,才能正确获取到各个压缩包的内容。
在本发明实施例中,在对接收到的压缩包进行解压缩后,监控调度平台可以首先验证解压缩后的数据的长度是否与该压缩包中记录的有效长度相同,若相同,则可以认为该压缩包的传输过程中没有出现数据丢失。
若任一压缩包的长度与附带的有效长度不相同,则认为传输过程中出现了数据丢失,需要重新进行数据传输。此时,可以返回执行向所述协转服务器发送监控设备资源请求的步骤,请求协转服务器将全部数据重新发送。
步骤608,当全部压缩包的长度与各自附带的有效长度均相同时,监控调度平台验证接收到的全部压缩包的数量与压缩包总数是否相等;
在本发明实施例中,当全部压缩包的长度与附带的有效长度均相同时,监控调度平台还可以进一步验证接收到的压缩包的数量是否与协转服务器在先告知的压缩包总数相等。
如果相等,则可以认为验证通过,则可以执行步骤609,对接收到的数据进行解析。
如果不相等,则可以认为数据传输过程中出现了丢失,此时,监控调度平台也可以再次向协转服务器发送监控设备资源请求,请求协转服务器重新发送监控设备资源数据。
步骤609,若接收到的全部压缩包的数量与压缩包总数相等,则监控调度平台对各个压缩包进行解析,获得监控设备资源解析数据;
在本发明实施例中,若每个压缩包的长度与附带的有效长度均相同,且监控调度平台接收到的全部压缩包的数量与压缩包总数相等,则可以认为监控调度平台对监控设备资源数据的验证通过,可以对每个解压缩后的数据包包中附带的json格式的数据进行解析,得到监控设备资源解析数据。
步骤610,存储所述监控设备资源解析数据。
在解析完成后,监控调度平台可以将解析后得到的数据存储到平台使用的数据库中,从而完成与协转服务器之间的数据同步。
在本发明实施例中,监控调度平台可以通过名片互换请求建立与协转服务器之间的通信,然后请求协转服务器将接入自身的监控设备资源数据自动发送给至监控调度平台,解决了现有技术中只能依靠人工手动修改监控调度平台的配置信息,工作量大且容易出现错录的问题,减少了同步过程中的人为干预,加快了数据同步的效率。
其次,监控调度平台可以通过对接收到的数据的长度和数量进行验证,当验证通过后,才将接收到数据存储至数据库中,从而实现二者之间的数据同步,通过增加验证步骤,保证了监控设备资源数据的完整性,
参照图7,示出了本发明的一种数据同步的方法实施例三的步骤流程图,所述方法可以应用于视联网中,所述视联网中可以包括协转服务器,监控调度平台,以及,监控设备,所述方法具体可以包括如下步骤:
步骤701,监控调度平台获取协转服务器的视联网地址信息;
步骤702,依据所述协转服务器的视联网地址信息,向所述协转服务器发送监控设备资源请求;
步骤703,接收所述协转服务器针对所述监控设备资源请求返回的监控设备资源数据;
步骤704,对所述监控设备资源数据进行验证;
步骤705,若验证通过,则存储所述监控设备资源数据。
需要说明的是,本实施例是基于监控调度平台侧的实施例,相关内容可以参阅实施例一与实施例二中的描述,本实施例对此不再赘述。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图8,示出了本发明的一种数据同步的装置实施例的结构框图,所述装置可以应用于视联网,所述视联网可以包括协转服务器,监控调度平台,以及,监控设备,所述装置具体可以包括如下模块:
获取模块801,用于获取协转服务器的视联网地址信息;
发送模块802,用于依据所述协转服务器的视联网地址信息,向所述协转服务器发送监控设备资源请求;
接收模块803,用于接收所述协转服务器针对所述监控设备资源请求返回的监控设备资源数据;
验证模块804,用于对所述监控设备资源数据进行验证;
存储模块805,用于若验证通过,则存储所述监控设备资源数据。
在本发明实施例中,所述获取模块801具体可以包括如下子模块:
发送子模块,用于发送名片互换请求至协转服务器;
接收子模块,用于接收所述协转服务器发送的名片互换响应,以完成通信握手,所述名片互换响应中可以包括所述协转服务器的视联网地址信息。
在本发明实施例中,所述监控设备资源数据可以包括多个压缩包及压缩包总数,每个压缩包附带有相应的有效长度,所述验证模块804具体可以包括如下子模块:
长度验证子模块,用于当接收到任一压缩包时,验证所述压缩包的长度与附带的有效长度是否相同;
数量验证子模块,用于当全部压缩包的长度与各自附带的有效长度均相同时,验证接收到的全部压缩包的数量与压缩包总数是否相等。
在本发明实施例中,所述存储模块805具体可以包括如下子模块:
解析子模块,用于若接收到的全部压缩包的数量与压缩包总数相等,则对各个压缩包进行解析,获得监控设备资源解析数据;
存储子模块,用于存储所述监控设备资源解析数据。
在本发明实施例中,所述装置还可以包括如下模块:
返回模块,用于若任一压缩包的长度与附带的有效长度不相同,或者,接收到的全部压缩包的数量与压缩包总数不相等,则返回调用所述发送模块802。
参照图9,示出了本发明的一种数据同步的系统实施例的结构框图,所述系统可以应用于视联网,所述系统可以包括协转服务器910,监控调度平台920,以及,监控设备930。
所述监控调度平台920具体可以包括如下模块:
获取模块921,用于获取协转服务器的视联网地址信息;
第一发送模块922,用于依据所述协转服务器的视联网地址信息,向所述协转服务器发送监控设备资源请求;
所述协转服务器910具体可以包括如下模块:
处理模块911,用于读取监控设备资源数据,并对所述监控设备资源数据作分包处理;
第二发送模块912,用于将分包后的监控设备资源数据发送至监控调度平台;
所述监控调度平台还可以包括如下模块:
验证模块923,用于对所述分包后的监控设备资源数据进行验证;
存储模块924,用于若验证通过,监控调度平台存储所述分包后的监控设备资源数据。
在本发明实施例中,所述获取模块921具体可以包括如下子模块:
名片互换请求发送子模块,用于发送名片互换请求至协转服务器;
名片互换响应接收子模块,用于接收所述协转服务器返回的名片互换响应,以完成通信握手,所述名片互换响应中可以包括所述协转服务器的视联网地址信息。
在本发明实施例中,所述处理模块911具体可以包括如下子模块:
数据压缩子模块,用于对读取到的监控设备资源数据进行压缩;
数据分包子模块,用于将压缩后的监控设备资源数据分包为多个压缩包,每个压缩包附带有相应的有效长度。
在本发明实施例中,所述分包后的监控设备资源数据可以包括多个压缩包及压缩包总数,所述第二发送模块912具体可以包括如下子模块:
数据发送子模块,用于将多个压缩包及压缩包总数发送至监控调度平台。
在本发明实施例中,所述验证模块923具体可以包括如下子模块:
长度验证子模块,用于当接收到任一压缩包时,验证所述压缩包的长度与附带的有效长度是否相同;
数量验证子模块,用于当全部压缩包的长度与各自附带的有效长度均相同时,验证接收到的全部压缩包的数量与压缩包总数是否相等。
在本发明实施例中,所述存储模块924具体可以包括如下子模块:
数据解析子模块,用于若接收到的全部压缩包的数量与压缩包总数相等,则对各个压缩包进行解析,获得监控设备资源解析数据;
数据存储子模块,用于存储所述监控设备资源解析数据。
在本发明实施例中,所述监控调度平台920还可以包括如下模块:
返回模块,用于若任一压缩包的长度与附带的有效长度不相同,或者,接收到的全部压缩包的数量与压缩包总数不相等,则返回调用所述第一发送模块922。
对于装置和系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种数据同步的方法、一种数据同步的装置和一种数据同步的系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。