CN114116906A - 数据同步方法、装置、电子装置和存储介质 - Google Patents
数据同步方法、装置、电子装置和存储介质 Download PDFInfo
- Publication number
- CN114116906A CN114116906A CN202111426869.9A CN202111426869A CN114116906A CN 114116906 A CN114116906 A CN 114116906A CN 202111426869 A CN202111426869 A CN 202111426869A CN 114116906 A CN114116906 A CN 114116906A
- Authority
- CN
- China
- Prior art keywords
- data
- time
- real
- control system
- historical
- 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.)
- Pending
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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- 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/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请涉及一种数据同步方法、装置、电子装置和存储介质,其中,该数据存储方法包括:基于预设时间周期获取历史诊断数据,所述历史诊断数据为数据库中存储的最新的控制***的运行状态信息;获取实时诊断数据,所述实时诊断数据为目标服务器获取的控制***的运行状态信息;判断所述历史诊断数据与实时诊断数据的时间间隔是否超过所述预设时间周期,若超过,则将所述实时诊断数据确定为同步数据,进行数据同步。通过本申请,解决了现有技术中不同控制软件中显示的时间信息以及***运行状况并不一致的技术问题,使得不同服务器的时间信息以及***运行状况一致,提高了控制***诊断的准确性。
Description
技术领域
本申请涉及工业控制领域,特别是涉及数据同步方法、装置、电子装置和存储介质。
背景技术
随着控制技术的不断发展,工业控制软件的应用也越来越广泛。工业控制软件作为工业自动化的重要手段,具有重要的应用价值。而诊断模块作为工业控制软件中的重要组成部分,承担着整个控制***的诊断功能,用于对控制***的运行状况进行监测。目前,诊断模块主要具有以下功能:通过仪控故障界面以及组态流程图,观察***的运行状态;通过当前值页面查看***的诊断状态;通过日志界面查看***的历史状态;通过诊断数据添加历史趋势的形式,回溯***运行状态。
当用户需要获取诊断数据时,由于控制***在运行过程中不需要对外展示时间,现有技术中都是通过不同的处理端,获取不同的控制设备和网络节点的实时数据以及仪控故障数据等诊断数据,进一步基于诊断数据提取时间信息以及***运行状况,并在工业控制软件的显示界面进行显示。但是,由于各个处理端获取的诊断数据的时间可能存在偏差,使得不同处理端获取的诊断数据可能并不一致,进而导致不同控制软件中显示的时间信息以及***运行状况并不一致。
针对相关技术中存在的不同控制软件中显示的时间信息以及***运行状况并不一致的技术问题,目前还没有提出有效的解决方案。
发明内容
在本实施例中提供了一种数据同步方法、装置、***、电子装置和存储介质,以解决相关技术中不同控制软件中显示的时间信息以及***运行状况并不一致的问题。
第一个方面,在本实施例中提供了一种数据同步方法,应用于控制***,包括:
基于预设时间周期获取历史诊断数据,所述历史诊断数据为数据库中存储的最新的控制***的运行状态信息;
获取实时诊断数据,所述实时诊断数据为目标服务器获取的控制***的运行状态信息;
判断所述历史诊断数据与实时诊断数据的时间间隔是否超过所述预设时间周期,若超过,则将所述实时诊断数据确定为同步数据,进行数据同步。
在其中的一些实施例中,所述获取实时诊断数据之后还包括:
若获取所述实时诊断数据失败,则将所述历史诊断数据作为所述同步数据,进行数据同步。
在其中的一些实施例中,所述将所述实时诊断数据确定为同步数据之后还包括:
对所述同步数据进行解析;
判断解析结果是否满足预设条件,若不满足,则判定控制***中存在故障,并输出故障提示信息,所述预设条件至少包括网络负荷条件、网络连通条件。
在其中的一些实施例中,所述获取实时诊断数据之后还包括:
若获取实时诊断数据失败,则判定控制***中存在故障,并输出故障提示信息。
在其中的一些实施例中,所述判定控制***中存在故障之后还包括:
获取历史故障数据,并基于所述历史故障数据获取故障的持续时间;
判断故障的持续时间是否超过预设时间;
若超过预设时间,则判定控制***处于严重故障状态,并输出严重故障提示信息。
在其中的一些实施例中,所述控制***至少包括控制设备、服务器以及客户机,所述获取实时诊断数据包括:
分别获取控制设备、服务器以及客户机的运行状态信息并进行汇总,得到所述实时诊断数据。
在其中的一些实施例中,所述判断所述历史诊断数据与实时诊断数据的时间间隔是否超过所述预设时间周期之后还包括:
若未超过,则将所述历史诊断数据作为同步数据,进行数据同步。
第二个方面,在本实施例中提供了一种数据同步装置,应用于控制***,包括:
第一获取模块,用于基于预设时间周期获取历史诊断数据,所述历史诊断数据为数据库中存储的最新的控制***的运行状态信息;
第二获取模块,用于获取实时诊断数据,所述实时诊断数据为目标服务器获取的控制***的运行状态信息;
判断模块,用于判断所述历史诊断数据与实时诊断数据的时间间隔是否超过所述预设时间周期,若超过,则将所述实时诊断数据确定为同步数据,进行数据同步。
第三个方面,在本实施例中提供了一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一个方面所述的数据同步方法。
第四个方面,在本实施例中提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一个方面所述的数据同步方法。
与相关技术相比,在本实施例中提供的数据同步方法、装置、电子装置和存储介质,基于预设时间周期获取历史诊断数据,所述历史诊断数据为数据库中存储的最新的控制***的运行状态信息;获取实时诊断数据,所述实时诊断数据为目标服务器获取的控制***的运行状态信息;判断所述历史诊断数据与实时诊断数据的时间间隔是否超过所述预设时间周期,若超过,则将所述实时诊断数据确定为同步数据,进行数据同步。通过对历史诊断数据与实时诊断数据的时间间隔进行判断,进一步将时间间隔超过一个时间周期的实时诊断数据确定为同步数据,以保证各服务器中的同步数据始终为控制***最新的运行状态信息,解决了现有技术中不同控制软件中显示的时间信息以及***运行状况并不一致的技术问题,使得不同服务器的时间信息以及***运行状况一致,提高了控制***诊断的准确性。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是本发明一实施例的数据同步方法的终端硬件结构框图;
图2是本发明一实施例的数据同步方法的流程示意图;
图3是本发明一实施例的数据同步***的结构示意图;
图4是本发明另一实施例的数据同步方法的流程示意图;
图5是本发明一实施例的数据同步装置的结构框图。
具体实施方式
为更清楚地理解本申请的目的、技术方案和优点,下面结合附图和实施例,对本申请进行了描述和说明。
除另作定义外,本申请所涉及的技术术语或者科学术语应具有本申请所属技术领域具备一般技能的人所理解的一般含义。在本申请中的“一”、“一个”、“一种”、“该”、“这些”等类似的词并不表示数量上的限制,它们可以是单数或者复数。在本申请中所涉及的术语“包括”、“包含”、“具有”及其任何变体,其目的是涵盖不排他的包含;例如,包含一系列步骤或模块(单元)的过程、方法和***、产品或设备并未限定于列出的步骤或模块(单元),而可包括未列出的步骤或模块(单元),或者可包括这些过程、方法、产品或设备固有的其他步骤或模块(单元)。在本申请中所涉及的“连接”、“相连”、“耦接”等类似的词语并不限定于物理的或机械连接,而可以包括电气连接,无论是直接连接还是间接连接。在本申请中所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。通常情况下,字符“/”表示前后关联的对象是一种“或”的关系。在本申请中所涉及的术语“第一”、“第二”、“第三”等,只是对相似对象进行区分,并不代表针对对象的特定排序。
在本实施例中提供的方法实施例可以在终端、计算机或者类似的运算装置中执行。比如在终端上运行,图1是本实施例的数据同步方法的终端的硬件结构框图。如图1所示,终端可以包括一个或多个(图1中仅示出一个)处理器102和用于存储数据的存储器104,其中,处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置。上述终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述终端的结构造成限制。例如,终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示出的不同配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如在本实施例中的数据同步方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络包括终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(NetworkInterface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
请参阅图2,图2是本发明一实施例的数据同步方法的流程示意图。在本实施例中,数据同步方法包括:
S202:基于预设时间周期获取历史诊断数据,历史诊断数据为数据库中存储的最新的控制***的运行状态信息。
示例性地,设置预设时间周期,基于该预设时间周期获取历史诊断数据,其中,历史诊断数据包括目标服务器以外的其他服务器的数据库中存储的、最接近当前时间的诊断数据,诊断数据包括整个控制***的运行状态信息。具体的,获取并缓存控制***中的服务器的所有诊断数据,基于时间先后顺序得到诊断数据队列,进一步将诊断数据队列中最新的诊断数据作为历史诊断数据。
S204:获取实时诊断数据,实时诊断数据为目标服务器获取的控制***的运行状态信息。
示例性地,获取当前时间的实时诊断数据,其中,实时诊断数据包括目标服务器获取的、控制***当前的运行状态信息。具体的,发送控制指令至目标服务器,控制目标服务器获取实时诊断数据并发送;接收目标服务器发送的实时诊断数据。
S206:判断历史诊断数据与实时诊断数据的时间间隔是否超过预设时间周期,若超过,则将实时诊断数据确定为同步数据,进行数据同步。
示例性地,分别基于历史诊断数据与实时诊断数据,获取对应的时间信息,基于时间信息确定历史诊断数据与实时诊断数据的时间间隔,进一步判断该时间间隔是否超过预设时间周期,若超过则将实时诊断数据作为同步数据,进行数据同步。可以理解的,若时间间隔超过预设时间周期,则表明历史诊断数据与实时诊断数据的获取时间不在同一个时间周期,此时需要将实时诊断数据作为同步数据,从而对控制***中的诊断数据进行同步。其中,实时诊断数据以及历史诊断数据中存在时间戳,即获取诊断数据的时间,基于该时间戳确定实时诊断数据以及历史诊断数据的时间信息。
在其中一个具体实施例中,目标服务器以外的其他服务器只与目标服务器进行数据通信,通过本实施例中的数据同步方法保证本机中的诊断数据与目标服务器的实时诊断数据一致。具体的,其他服务器向目标服务器发送数据同步请求,目标服务器接收并处理该数据同步请求,获取实时诊断数据并返回至其他服务器。
在另一个具体实施例中,获取历史诊断数据的时间标签以及实时诊断数据的时间标签,该时间标签以一个预设时间周期为单位,具体可以是1s;判断历史诊断数据的时间标签是否晚于实时诊断数据的时间标签,若晚于实时诊断数据的时间标签,则判定历史诊断数据无效,进一步将实时诊断数据作为同步数据。
可选的,设置数据的同步周期为1s,而控制***中的诊断数据发包周期可基于软件进行设置。当一个同步周期内处理多个诊断数据时会存在诊断数据之间的冲突,导致故障触发周期的时间缩短。为了保证故障触发周期符合数据同步周期,在每个周期内只处理一个诊断数据。例如,当同一个同步周期内存在两个诊断数据,即控制***的发包周期为500ms时,只接受在1-500ms之间的诊断数据,500-1000ms内的诊断数据丢弃,从而避免在同一时间周期内处理不同的实时诊断数据。
可选的,控制***中的控制设备、服务器、客户机以及其他设备均具有时间同步功能,通过不同设备的时间同步功能同步全***的时间信息,保证全***所有的设备时间处于同步状态。
本实施例基于预设时间周期获取历史诊断数据,历史诊断数据为数据库中存储的最新的控制***的运行状态信息;获取实时诊断数据,实时诊断数据为目标服务器获取的控制***的运行状态信息;判断历史诊断数据与实时诊断数据的时间间隔是否超过预设时间周期,若超过,则将实时诊断数据确定为同步数据,进行数据同步。通过对历史诊断数据与实时诊断数据的时间间隔进行判断,进一步将时间间隔超过一个时间周期的实时诊断数据确定为同步数据,以保证各服务器中的同步数据始终为控制***最新的运行状态信息,解决了现有技术中不同控制软件中显示的时间信息以及***运行状况并不一致的技术问题,使得不同服务器的时间信息以及***运行状况一致,提高了控制***诊断的准确性。
在另一个实施例中,获取实时诊断数据之后还包括:
若获取实时诊断数据失败,则将历史诊断数据作为同步数据,进行数据同步。
示例性地,执行获取实时诊断数据的操作之后,判断是否成功获取实时诊断数据。若未能获取实时诊断数据,则将历史诊断数据作为同步数据。可以理解的,由于不存在当前的实时诊断数据,则将与当前时间点最接近的历史诊断数据作为同步数据。
在其中一个具体实施例中,设置预设时间周期为1s,每隔1s执行一次数据同步操作。若没有获取到实时诊断数据,则将历史诊断数据的时间戳增加1s作为本周期的时间戳,此时该历史诊断数据即为同步数据,即将上一个预设十佳周期的历史诊断数据作为当前周期的同步数据。
本实施例若获取实时诊断数据失败,则将历史诊断数据作为同步数据,进行数据同步。在控制***出现意外状况而不能获取实时诊断数据时,将上一个预设时间周期的历史诊断数据作为同步数据,保证了数据同步的持续运行,提高了控制***的稳定性。
在另一个实施例中,将实时诊断数据确定为同步数据之后还包括:
步骤1:对同步数据进行解析;
步骤2:判断解析结果是否满足预设条件,若不满足,则判定控制***中存在故障,并输出故障提示信息,预设条件至少包括网络负荷条件、网络连通条件。
示例性地,获取同步数据后,根据数据解析协议对同步数据进行解析,进而根据预设条件对解析后的同步数据进行判断,若同步数据不满足预设条件,则判定控制***中存在故障,并向用户输出故障提示信息。其中,预设条件至少包括网络负荷条件以及网络连通条件。具体的,网络负荷条件用于判断控制***中是否存在超负荷运行的情形,网络连通条件用于判断控制***中是否存在断路的情形。可以理解的,预设条件还可以包括其他条件,例如访问***的设备是否具有相关权限,本实施例对此不作限制。
在其中一个具体实施例中,获取控制***中所有节点的数据,其中,节点包括控制设备以及二层节点,二层节点包括操作节点和服务器节点,基于二层节点可以运行控制***监控软件,对控制***进行监视并获取所有节点的数据;对所有节点的数据进行数据解析和处理,得到诊断数据;通过***运行负荷、网络通断状态等内容确定控制***是否存在故障;若没有接收到节点的数据,则判定控制***处于疑似故障状态。
可选的,设置同步数据的解析处理机制:每隔1s的时间周期,获取同步数据;若获取到同步数据,则对同步数据实时进行解析;若未能获取到同步数据,每隔1s中心获取同步数据。
本实施例对同步数据进行解析;判断解析结果是否满足预设条件,若不满足,则判定控制***中存在故障,并输出故障提示信息,预设条件至少包括网络负荷条件、网络连通条件。通过预设条件对同步数据进行判断,进一步识别控制***中是否存在故障,从而及时发现控制***中的安全隐患,提高了控制***的稳定性和安全性。
在另一个实施例中,获取实时诊断数据之后还包括:
若获取实时诊断数据失败,则判定控制***中存在故障,并输出故障提示信息。
示例性地,执行获取实时诊断数据的步骤后,若未能成功获取实时诊断数据,则表明控制***中存在故障,导致无法获取实时诊断数据,此时直接判定控制***中存在故障,并向用户输出故障提示信息。
具体的,根据是否接收到实时诊断数据的网络报文,确定控制网络的诊断状态:若能接收到控制***的实时网络报文,则判定控制***处于正常运行状态;若未能接收到控制***的实时网络报文,则判定控制***中存在故障。
本实施例若获取实时诊断数据失败,则判定控制***中存在故障,并输出故障提示信息。在未能接收到实时诊断数据时,直接判定控制***中存在故障,从而及时发现并处理控制***中的安全隐患,提高了控制***的安全性。
在另一个实施例中,判定控制***中存在故障之后还包括:
步骤1:获取历史故障数据,并基于历史故障数据获取故障的持续时间;
步骤2:判断故障的持续时间是否超过预设时间;
步骤3:若超过预设时间,则判定控制***处于严重故障状态,并输出严重故障提示信息。
示例性地,检测到控制***中存在故障后,获取历史故障数据。其中,历史故障数据为存在故障的历史时间周期中的诊断数据。基于该历史故障数据,确定包括当前时间周期的连续历史时间周期,进而确定持续时间。例如,当前时间周期之前包括10个历史时间周期,按照时间先后顺序分别为历史时间周期1-历史时间周期10、当前时间周期。若历史时间周期2-当前时间周期中存在故障,则持续时间为历史时间周期2-当前时间周期;若历史时间周期1-历史时间周期5、历史时间周期7-当前时间周期存在故障,而历史时间周期6不存在故障,则持续时间为历史时间周期7-当前时间周期。
示例性地,判断故障的持续时间是否超过预设时间;若故障的持续时间超过预设时间,则判定控制***处于严重故障状态,并向用户输出故障提示信息。其中,严重故障状态是指控制***中存在持续性故障,并且其安全隐患的严重程度高于一般性故障或暂时性故障,大多数情况下控制***无法自行解除严重故障状态,需要人为进行干预。
具体的,判断控制***的故障持续时间是否达到滤波时间,若达到滤波时间,则表明控制***已经实际触发故障,若该实际触发故障的状态存在对应的提醒模块,则向用户推送提醒信息。其中,滤波时间用于屏蔽短期或者间歇性故障,避免对控制***中故障的错误判断。
在其中一个具体实施例中,通过控制器和运行于二层节点的诊断数据收集程序获取数据,其中诊断数据收集程序部署于二层节点,用于获取监控软件所在的操作节点的运行状态并周期性发送该运行状态;通过诊断服务程序接收控制器以及诊断数据收集程序获取的数据并进行处理,得到实时诊断数据,其中,诊断服务程序部署于所有的二层节点,收集控制器以及二层节点的所有数据并进行汇总,得到实时诊断数据;通过相关程序对实时诊断数据进行解析,得到控制***的实时诊断状态;基于实时诊断状态,确定故障提示状态,若需要向用户进行故障提示,则通过诊断服务程序推送提示信息到提示模块,并通过提示模块对外展示提示信息。
本实施例获取历史故障数据,并基于历史故障数据获取故障的持续时间;判断故障的持续时间是否超过预设时间;若超过预设时间,则判定控制***处于严重故障状态,并输出严重故障提示信息。通过对故障的持续时间是否超过预设时间进行判断,以避免间歇性出现故障,或者出现故障后控制***及时对故障进行自动修复的情形下,向用户推送提示错误的提示信息,最终避免对故障的错误判断。
在另一个实施例中,控制***至少包括控制设备、服务器以及客户机,获取实时诊断数据包括:
分别获取控制设备、服务器以及客户机的运行状态信息并进行汇总,得到实时诊断数据。
示例性地,控制***中包括控制设备、服务器以及客户机,其中服务器对应于服务器节点,客户机对应于操作节点,二者共同组成了二层节点。通过获取控制网络中所有控制设备、服务器以及客户机的运行状态信息并进行汇总,最终得到控制网络的实时诊断数据。
请参阅图3,图3是本发明一实施例的数据同步***的结构示意图。具体的,控制***还包括控制网络以及操作网络,其中,控制网络用于在控制设备之间、以及控制设备与监控软件之间进行数据交互,操作网络用于监控软件之间进行数据传输,监控软件可以运行于客户机。
在其中一个具体实施例中,诊断服务程序运行于所有的二层节点即服务器与客户机中。当控制***中存在两台以上的服务器时,根据***需求以及服务器的运行状态部署主诊断服务器以及从诊断服务器,其中主诊断服务器可以作为本发明中的目标服务器。除了主诊断服务器以及从诊断服务器以外,其余二层节点的服务器均为普通诊断服务器。
在另一个具体实施例中,控制设备周期性的获取控制设备的运行状态信息,包括***诊断状态、工作状态、控制状态等,通过组播协议在控制网络中发送控制设备的运行状态信息。诊断数据收集程序用于获取当前节点的工作状态,包括网络状态、负荷状态等,通过组播协议在操作网络中发送当前节点的运行状态信息。
可选的,控制设备同时在两个控制网络中进行数据传输,数据传输的周期为500ms或者1s;诊断服务程序同时在两个操作网络中进行数据传输,数据传输的周期为1s。
在另一个具体实施例中,实时诊断数据的数据包的结构包括包头、包命令字、时间戳、包内容以及包尾。其中,包头用于标识二进制协议,以对实时诊断数据进行解析,包命令字用于区分不同的实时诊断数据,包内容用于存储实时诊断数据的内容。
本实施例分别获取控制设备、服务器以及客户机的运行状态信息并进行汇总,得到实时诊断数据,提高了实时诊断数据的全面性,进一步提高了数据同步的准确性。
在另一个实施例中,判断历史诊断数据与实时诊断数据的时间间隔是否超过预设时间周期之后还包括:
若未超过,则将历史诊断数据作为同步数据,进行数据同步。
示例性地,获取历史诊断数据与实时诊断数据的时间信息,基于时间信息确定历史诊断数据与实时诊断数据的时间间隔是否超过预设时间周期。若没有超过预设时间周期,则表明历史诊断数据与实时诊断数据的获取时间处于同一时间周期内,此时直接将历史诊断数据作为同步数据。
本实施例中若未超过,则将历史诊断数据作为同步数据,进行数据同步。通过将历史诊断数据作为同步数据,使得同一时间周期内只存在一项诊断数据,避免了不同诊断数据之间的冲突,提高了数据同步的准确性。
在另一个实施例中,获取实时诊断数据之后还包括:
基于时间顺序,将实时诊断数据保存至数据库。
示例性地,按照实时诊断数据获取的时间顺序,将实时诊断数据保存至数据库。具体的,通过时间序列化,将实时诊断数据按照时间先后顺序存储到数据库,以便于后续通过数据库查询实时诊断数据的历史状态。
可选的,数据库支持查询单条记录或者批量查询多条记录的功能,进一步保持控制***中不同设备的时间戳均保持一致。
在其中一个具体实施例中,获取所有数据同步期间的数据以及备份数据,其中,数据同步期间的数据包括逻辑计算数据以及同步数据,备份数据包括所有诊断数据以及故障数据,通过将上述数据序列化存储到数据库,以用于保证数据的一致性,以及方便查询所有历史诊断数据以及历史故障数据。
在另一个实施例中,数据同步方法还包括:
基于数据同步方法设置在线模式与离线模式,在线模式可以支持数据同步功能,离线模式不能支持数据同步功能。
请参阅图4,图4是本发明另一实施例的数据同步方法的流程示意图。具体的,在线模式支持完整的功能,可以对控制***中的数据进行同步,而离线模式仅支持核心功能,可以对诊断数据进行处理,但是不能对数据进行同步。在线模式与离线模式的区分方法为:判断控制***中是否存在主诊断服务程序。若控制***中存在主诊断服务程序,则控制***处于在线模式;若控制***中不存在主诊断服务程序,则控制***处于离线模式。其中,主诊断服务程序为主诊断服务器中运行的诊断服务程序。
本实施例基于数据同步方法设置在线模式与离线模式,在线模式可以支持数据同步功能,离线模式不能支持数据同步功能。通过设置在线模式与离线模式,使得控制***根据实际需求,选择在线模式进行数据同步,或者选择离线模式不进行数据同步,控制***无需一直处于数据同步状态,节约了控制***中的计算资源。
需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在本实施例中还提供了一种数据同步装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。以下所使用的术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管在以下实施例中所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图5是本实施例的数据同步装置的结构框图,如图5所示,该装置包括:
第一获取模块,用于基于预设时间周期获取历史诊断数据,历史诊断数据为数据库中存储的最新的控制***的运行状态信息;
第二获取模块,用于获取实时诊断数据,实时诊断数据为目标服务器获取的控制***的运行状态信息;
第二获取模块,还用于分别获取控制设备、服务器以及客户机的运行状态信息并进行汇总,得到实时诊断数据;
判断模块,用于判断历史诊断数据与实时诊断数据的时间间隔是否超过预设时间周期,若超过,则将实时诊断数据确定为同步数据,进行数据同步;
数据同步装置,还包括同步模块;
同步模块,用于若获取实时诊断数据失败,则将历史诊断数据作为同步数据,进行数据同步;
数据同步装置,还包括解析模块;
解析模块,用于对同步数据进行解析;
判断解析结果是否满足预设条件,若不满足,则判定控制***中存在故障,并输出故障提示信息,预设条件至少包括网络负荷条件、网络连通条件;
数据同步装置,还包括判定模块;
判定模块,用于若获取实时诊断数据失败,则判定控制***中存在故障,并输出故障提示信息;
数据同步装置,还包括持续故障模块;
持续故障模块,用于获取历史故障数据,并基于历史故障数据获取故障的持续时间;
判断故障的持续时间是否超过预设时间;
若超过预设时间,则判定控制***处于严重故障状态,并输出严重故障提示信息;
数据同步装置,还包括第二同步模块;
第二同步模块,用于若未超过,则将历史诊断数据作为同步数据,进行数据同步。
需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。
在本实施例中还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,基于预设时间周期获取历史诊断数据,历史诊断数据为数据库中存储的最新的控制***的运行状态信息;
S2,获取实时诊断数据,实时诊断数据为目标服务器获取的控制***的运行状态信息;
S3,判断历史诊断数据与实时诊断数据的时间间隔是否超过预设时间周期,若超过,则将实时诊断数据确定为同步数据,进行数据同步。
需要说明的是,在本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,在本实施例中不再赘述。
此外,结合上述实施例中提供的数据同步方法,在本实施例中还可以提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种数据同步方法。
应该明白的是,这里描述的具体实施例只是用来解释这个应用,而不是用来对它进行限定。根据本申请提供的实施例,本领域普通技术人员在不进行创造性劳动的情况下得到的所有其它实施例,均属本申请保护范围。
显然,附图只是本申请的一些例子或实施例,对本领域的普通技术人员来说,也可以根据这些附图将本申请适用于其他类似情况,但无需付出创造性劳动。另外,可以理解的是,尽管在此开发过程中所做的工作可能是复杂和漫长的,但是,对于本领域的普通技术人员来说,根据本申请披露的技术内容进行的某些设计、制造或生产等更改仅是常规的技术手段,不应被视为本申请公开的内容不足。
“实施例”一词在本申请中指的是结合实施例描述的具体特征、结构或特性可以包括在本申请的至少一个实施例中。该短语出现在说明书中的各个位置并不一定意味着相同的实施例,也不意味着与其它实施例相互排斥而具有独立性或可供选择。本领域的普通技术人员能够清楚或隐含地理解的是,本申请中描述的实施例在没有冲突的情况下,可以与其它实施例结合。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对专利保护范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种数据同步方法,应用于控制***,其特征在于,包括:
基于预设时间周期获取历史诊断数据,所述历史诊断数据为数据库中存储的最新的控制***的运行状态信息;
获取实时诊断数据,所述实时诊断数据为目标服务器获取的控制***的运行状态信息;
判断所述历史诊断数据与实时诊断数据的时间间隔是否超过所述预设时间周期,若超过,则将所述实时诊断数据确定为同步数据,进行数据同步。
2.根据权利要求1所述的数据同步方法,其特征在于,所述获取实时诊断数据之后还包括:
若获取所述实时诊断数据失败,则将所述历史诊断数据作为所述同步数据,进行数据同步。
3.根据权利要求1所述的数据同步方法,其特征在于,所述将所述实时诊断数据确定为同步数据之后还包括:
对所述同步数据进行解析;
判断解析结果是否满足预设条件,若不满足,则判定控制***中存在故障,并输出故障提示信息,所述预设条件至少包括网络负荷条件、网络连通条件。
4.根据权利要求1所述的数据同步方法,其特征在于,所述获取实时诊断数据之后还包括:
若获取实时诊断数据失败,则判定控制***中存在故障,并输出故障提示信息。
5.根据权利要求3或4所述的数据同步方法,其特征在于,所述判定控制***中存在故障之后还包括:
获取历史故障数据,并基于所述历史故障数据获取故障的持续时间;
判断故障的持续时间是否超过预设时间;
若超过预设时间,则判定控制***处于严重故障状态,并输出严重故障提示信息。
6.根据权利要求1所述的数据同步方法,其特征在于,所述控制***至少包括控制设备、服务器以及客户机,所述获取实时诊断数据包括:
分别获取控制设备、服务器以及客户机的运行状态信息并进行汇总,得到所述实时诊断数据。
7.根据权利要求1所述的数据同步方法,其特征在于,所述判断所述历史诊断数据与实时诊断数据的时间间隔是否超过所述预设时间周期之后还包括:
若未超过,则将所述历史诊断数据作为同步数据,进行数据同步。
8.一种数据同步装置,应用于控制***,其特征在于,包括:
第一获取模块,用于基于预设时间周期获取历史诊断数据,所述历史诊断数据为数据库中存储的最新的控制***的运行状态信息;
第二获取模块,用于获取实时诊断数据,所述实时诊断数据为目标服务器获取的控制***的运行状态信息;
判断模块,用于判断所述历史诊断数据与实时诊断数据的时间间隔是否超过所述预设时间周期,若超过,则将所述实时诊断数据确定为同步数据,进行数据同步。
9.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至7中任一项所述的数据同步方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的数据同步方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111426869.9A CN114116906A (zh) | 2021-11-28 | 2021-11-28 | 数据同步方法、装置、电子装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111426869.9A CN114116906A (zh) | 2021-11-28 | 2021-11-28 | 数据同步方法、装置、电子装置和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114116906A true CN114116906A (zh) | 2022-03-01 |
Family
ID=80370468
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111426869.9A Pending CN114116906A (zh) | 2021-11-28 | 2021-11-28 | 数据同步方法、装置、电子装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114116906A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114305702A (zh) * | 2022-03-07 | 2022-04-12 | 极限人工智能有限公司 | 一种检测手术机器人***的方法、装置、机器人及介质 |
-
2021
- 2021-11-28 CN CN202111426869.9A patent/CN114116906A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114305702A (zh) * | 2022-03-07 | 2022-04-12 | 极限人工智能有限公司 | 一种检测手术机器人***的方法、装置、机器人及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107547589B (zh) | 一种数据采集处理方法以及装置 | |
CN103200046B (zh) | 监控网元设备性能的方法及*** | |
CN103795580A (zh) | 一种数据监控方法、***及相关设备 | |
CN110908879A (zh) | 埋点数据的上报方法、装置、终端和存储介质 | |
WO2002103521A1 (en) | Real-time streaming media measurement system and method | |
CN109960634B (zh) | 一种应用程序监控方法、装置及*** | |
CN112506702B (zh) | 数据中心容灾方法、装置、设备及存储介质 | |
CN110493075B (zh) | 设备在线时长监测的方法、装置及*** | |
CN112422684B (zh) | 目标消息的处理方法及装置、存储介质、电子装置 | |
CN112202635B (zh) | 链路的监控方法、装置、存储介质以及电子装置 | |
CN106993043B (zh) | 基于代理的数据通信***和方法 | |
CN112486707B (zh) | 基于Redis的消息异步消费方法及装置 | |
CN114675983A (zh) | 业务数据处理方法、装置、存储介质以及电子设备 | |
CN105450479A (zh) | 一种监控模块的方法及装置 | |
CN114116906A (zh) | 数据同步方法、装置、电子装置和存储介质 | |
CN113765690A (zh) | 集群切换方法、***、装置、终端、服务器及存储介质 | |
CN103001822A (zh) | 网络异常的处理方法及装置 | |
CN113010379A (zh) | 电子设备监控*** | |
CN110224872B (zh) | 一种通信方法、装置及存储介质 | |
CN112417050A (zh) | 数据同步方法和装置、***、存储介质及电子装置 | |
CN110750425A (zh) | 数据库监控方法、装置、***和存储介质 | |
CN110597672A (zh) | 一种atca交换***的主备倒换的方法及装置 | |
CN115208905A (zh) | 设备信息同步方法、装置、***、电子装置和存储介质 | |
CN116260747A (zh) | 终端测试设备的监测方法、装置及电子设备 | |
CN112769889B (zh) | 服务数据的推送方法、装置、存储介质以及电子装置 |
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 |