CN116302589A - 快速存储机械设备大数据的方法及机械设备自动化系统 - Google Patents
快速存储机械设备大数据的方法及机械设备自动化系统 Download PDFInfo
- Publication number
- CN116302589A CN116302589A CN202211525863.1A CN202211525863A CN116302589A CN 116302589 A CN116302589 A CN 116302589A CN 202211525863 A CN202211525863 A CN 202211525863A CN 116302589 A CN116302589 A CN 116302589A
- Authority
- CN
- China
- Prior art keywords
- data
- message queue
- working
- working data
- strategy
- 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
- 238000000034 method Methods 0.000 title claims abstract description 91
- 238000003860 storage Methods 0.000 claims abstract description 60
- 238000004140 cleaning Methods 0.000 claims abstract description 26
- 230000002159 abnormal effect Effects 0.000 claims description 21
- 238000000605 extraction Methods 0.000 claims description 11
- 238000004891 communication Methods 0.000 claims description 10
- 238000004458 analytical method Methods 0.000 claims description 9
- 230000003111 delayed effect Effects 0.000 claims description 4
- 238000012216 screening Methods 0.000 claims description 4
- 238000001914 filtration Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 14
- 238000004364 calculation method Methods 0.000 abstract description 5
- 239000002699 waste material Substances 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 31
- 230000008569 process Effects 0.000 description 13
- 238000004590 computer program Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000001276 controlling effect Effects 0.000 description 3
- 238000013075 data extraction Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000011451 sequencing strategy Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/1734—Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs
-
- 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
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及自动化机械设备技术领域,具体涉及快速存储机械设备大数据的方法以及机械设备自动化系统,该方法包括:获取机械设备的工作数据并依次添加到消息队列中;根据工作数据数据量确定存储引擎采用顺序策略或线程策略;若采用顺序策略,则根据工作数据添加到消息队列的添加顺序,单线程地从消息队列中依次提取工作数据;若采用线程策略,则多线程地从消息队列中提取工作数据;对提取出来的工作数据进行数据清洗,将清洗得到的正常数据存储到数据库中。本申请在使用时,能够在低数据量时采用单线程,避免算力浪费;在数据量较大的数据高峰时采用多线程,保证数据处理速度,还可以对工作数据进行数据清洗,以保证存入数据库的是正常数据。
Description
技术领域
本申请涉及自动化机械设备技术领域,具体涉及快速存储机械设备大数据的方法。
背景技术
随着自动化码头的陆续投入使用,自动化控制系统逐渐成为港口工业的重要技术。自动化控制系统不仅保障了司机在远控室内安全、舒适地操控自动化设备,降低了工作强度,改善了工作环境,而且提高了港口生产作业效率,降低了运营成本。
自动化码头的基础是越来越多的智能机械设备应用到码头,大量数据在机械设备的运行中产生,而数据丢失、数据高峰、高并发、存储慢等问题也随之而来。因此,如何为自动化码头提供高可靠的数据存储技术,保障自动化码头的正常运营,同时保护数据资产价值成为一项必须且十分重要的基础技术。
发明内容
有鉴于此,本申请提供了一种快速存储机械设备大数据的方法,能够为自动化码头提供高可靠的数据存储技术。
第一方面,本申请提供的一种快速存储机械设备大数据的方法,包括:获取机械设备的工作数据;建立消息队列并将所述工作数据依次添加到所述消息队列中;根据所述工作数据的数据量,确定存储引擎采用顺序策略或线程策略;若采用所述顺序策略,则根据所述工作数据添加到所述消息队列的添加顺序,单线程地从所述消息队列中依次提取所述工作数据;若采用所述线程策略,则多线程地从所述消息队列中提取所述工作数据;以及对从所述消息队列中提取出来的所述工作数据进行数据清洗,将清洗得到的正常数据存储到数据库中。
本方面在使用时,能够根据数据量选择合适的线程数量来从消息队列中提取工作数据,从而实现对算力资源的有效把控。在低数据量时采用单线程,避免算力浪费;在数据量较大的数据高峰时采用多线程,保证数据处理速度。提取出工作数据后,再对工作数据进行数据清洗,以保证存入数据库的是正常数据。
结合第一方面,在一种可能的实现方式中,所述对从所述消息队列中提取出来的所述工作数据进行数据清洗包括:筛选所述工作数据得到异常数据;以及将所述异常数据存储到所述数据库中或异常日志中;其中,所述异常数据包括错误数据、未知数据、过期数据、重复数据、乱序数据以及冗余数据。
结合第一方面,在一种可能的实现方式中,所述筛选所述工作数据得到异常数据包括:对所述工作数据进行解析报文;若解析失败则判定所述工作数据为所述错误数据;若解析成功则判断所述工作数据是否属于预先设定的采集需求;若不属于所述采集需求则判定所述工作数据为所述未知数据;若属于所述采集需求,则判断从所述机械设备中采集所述工作数据的采集时刻是否处于预设时间范围内;若不处于所述预设时间范围内,则判定所述工作数据为所述过期数据;若处于所述预设时间范围内,且当前策略为所述顺序策略,则判断当前所述工作数据与上个所述工作数据之间是否符合添加顺序;若不符合所述添加顺序则判定为所述工作数据为所述乱序数据;若符合所述添加顺序则判断当前所述工作数据与上个所述工作数据是否相同;若相同则判定为冗余数据;以及若不相同则判定所述工作数据为所述正常数据。
结合第一方面,在一种可能的实现方式中,还包括:判断所述工作数据是否违反唯一性约束;若违反唯一性约束则判定所述工作数据为重复数据;若不违反唯一性约束则判断所述工作数据是否存在预设错误;以及若存在预设错误则判定所述工作数据为错误数据。
结合第一方面,在一种可能的实现方式中,还包括:根据输入信息,确定所述存储引擎采用Highest安全策略、Normal安全策略或Lowest安全策略。
结合第一方面,在一种可能的实现方式中,所述方法还包括:若采用所述线程策略,则统计线程数量;获取从所述消息队列中提取的所述工作数据的报文数;获取所述正常数据的数据量;以及获取所述异常数据的数据量。
结合第一方面,在一种可能的实现方式中,在从所述消息队列中依次提取所述工作数据的过程中,所述方法包括:若所述消息队列中的所述工作数据为非组播数据,则设定从所述消息队列中提取所述工作数据的数据量上限;根据所述数据量上限,从所述消息队列中提取所述工作数据;若所述消息队列中的所述工作数据为组播数据,则将所述组播数据拆分为非组播数据,并根据所述数据量上限提取所述工作数据。
结合第一方面,在一种可能的实现方式中,在从所述消息队列中依次提取所述工作数据的过程中,所述方法包括:设定从所述消息队列中提取所述工作数据的超时时限;若所述消息队列中没有数据,且提取所述工作数据的时间未超出所述超时时限,则等待所述工作数据添加到所述消息队列中;或者,若所述消息队列中没有数据,且提取所述工作数据的时间超出了所述取数超时时限,则停止从所述消息队列中提取所述工作数据。
结合第一方面,在一种可能的实现方式中,在从所述消息队列中依次提取所述工作数据的过程中,所述方法包括:判断所述消息队列和所述数据库是否在线以及是否宕机;所述消息队列和所述数据库首次宕机,则将已提取的所述工作数据进行数据清洗,保存从所述消息队列中提取所述工作数据的断点数据,并切换为所述线程策略;以及若所述消息队列和所述数据库在宕机后首次在线,则根据所述断点数据恢复执行从所述消息队列中提取所述工作数据,并且所述存储引擎切换为所述线程策略。
结合第一方面,在一种可能的实现方式中,还包括:控制所述存储引擎分别和所述消息队列及所述数据库,定时地相互进行断线重连;若所述存储引擎和所述消息队列断线,则控制所述存储引擎和所述消息队列立即进行断线重连;若所述存储引擎和所述数据库断线,则控制所述存储引擎和所述数据库立即进行断线重连;以及若断线重连成功,则所述存储引擎切换为所述线程策略。
结合第一方面,在一种可能的实现方式中,还包括:根据输入信息,确定所述存储引擎采用立即停止策略或延迟停止策略;若当前为所述立即停止策略,则停止运行工作数据的提取工作时,终止并销毁线程;或者若当前为所述延迟停止策略,则停止运行工作数据的提取工作时,将已提取的所述工作数据进行数据清洗;以及在数据清洗完成后终止并销毁线程。
第二方面,本申请提供一种机械设备自动化系统,包括:数据获取模块,配置为:获取机械设备的工作数据;消息队列建立模块,与所述数据获取模块通讯连接,所述消息队列建立模块配置为:建立消息队列并将所述工作数据依次添加到所述消息队列中;策略确定模块,与所述数据获取模块通讯连接,所述策略确定模块配置为:根据所述工作数据的数据量,确定存储引擎采用顺序策略或线程策略;数据存取模块,与所述消息队列建立模块和所述策略确定模块分别通讯连接,所述数据存取模块配置为:若采用所述顺序策略,则根据所述工作数据添加到所述消息队列的添加顺序,单线程地从所述消息队列中依次提取所述工作数据;若采用所述线程策略,则多线程地从所述消息队列中提取所述工作数据;以及数据清洗模块,与所述数据存取模块通讯连接,所述数据清洗模块配置为:对从所述消息队列中提取出来的所述工作数据进行数据清洗,将清洗得到的正常数据存储到数据库中。
第二方面是第一方面对应的装置,第二方面的技术效果在此不再赘述。
附图说明
图1所示为本申请一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。
图2所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。
图3所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。
图4所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。
图5所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。
图6所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。
图7所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。
图8所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。
图9所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。
图10所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。
图11所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。
图12所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。
图13表示工作数据的整个处理流程。
图14表示本申请以程序形式制成时的任务处理示意图。
图15所示为本申请一实施例提供的机械设备自动化系统的结构示意图。
图16所示为本申请一实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
示例性快速存储机械设备大数据的方法
图1所示为本申请一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。本申请提供一种快速存储机械设备大数据的方法,如图1所示,该方法包括:
步骤110、获取机械设备的工作数据。
本步骤中,工作数据是机械设备在工作过程中产生的各种数据,可以由机械设备的可编程逻辑控制器采集,然后本步骤再从机械设备的可编程逻辑控制器中获取这些工作数据。
步骤120、建立消息队列并将工作数据依次添加到消息队列中。
步骤130、根据工作数据的数据量,确定存储引擎采用顺序策略或线程策略。
本步骤中,数据量与顺序策略或线程策略的对应关系预先设定,例如设定数据量为0~x范围内的数据量采用顺序策略,数据量为x~y范围内的数据量采用线程策略。
步骤140、若采用顺序策略,则根据工作数据添加到消息队列的添加顺序,单线程地从消息队列中依次提取工作数据。
本步骤中,当数据量较小时,可以建立一个主线程和一个从线程,通过从线程从消息队列中提取工作数据,期间按照工作数据的添加顺序依次获取工作数据,由于本步骤采用了这种顺序策略,因此单次处理的数据量小,可以仅建立一个从线程,从而避免算力浪费。
步骤150、若采用线程策略,则多线程地从消息队列中提取工作数据。
本步骤中,当数据量过大时则可以采用线程策略,即建立一个主线程和多个从线程,由主线程管理多个从线程。预先设定数据量和从线程数量的对应关系,从而在本步骤中建立对应数量的从线程,以保证足够数量的从线程。多个从线程并行工作,以从消息队列中提取工作数据,从而保证数据处理速度,提高数据处理效率。
在步骤140或步骤150之后,执行步骤160、对从消息队列中提取出来的工作数据进行数据清洗,将清洗得到的正常数据存储到数据库中。
本步骤中,可以由从线程对提取出来的工作数据进行数据清理,能够避免异常数据存入数据库中。
本实施例在使用时,能够根据数据量选择合适的线程数量来从消息队列中提取工作数据,从而实现对算力资源的有效把控。在低数据量时采用单线程,避免算力浪费;在数据量较大的数据高峰时采用多线程,保证数据处理速度。提取出工作数据后,再对工作数据进行数据清洗,以保证存入数据库的是正常数据。
图2所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。在一实施例中,在数据清洗的过程中,如图2所示,步骤160包括:
步骤1601、筛选工作数据得到异常数据。
步骤1602、将异常数据存储到数据库中或异常日志中。
本步骤中,异常数据包括错误数据、未知数据、过期数据、重复数据、乱序数据以及冗余数据。本实施例在使用时,可以建立多个从线程,采用多个从线程对工作数据进行数据清洗,以提取出异常数据并保存到数据库中。后期可以随时从数据库或异常日志中调取异常数据以进行分析。
图3所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。在一实施例中,在数据清洗的过程中,如图3所示,步骤1601包括:
建立解析器并由从线程管理,然后执行步骤16011、通过解析器对工作数据进行解析报文。
若解析失败则判定工作数据为错误数据。若步骤16011解析成功则建立过滤器并执行步骤16012、通过过滤器判断工作数据是否属于预先设定的采集需求。
步骤16012中,采集需求具体是需要采集的机械设备和/或需要采集的机械设备上的几个测点。若判断当前工作数据是需要采集的机械设备对应的数据,则属于采集需求;和/或,若判断当前工作数据是需要采集的机械设备上的测点,则属于采集需求。
若步骤16012的执行结果为否,则判定工作数据为未知数据。若步骤16012的执行结果为是,则执行步骤16013、判断从机械设备中采集工作数据的采集时刻是否处于预设时间范围内。
步骤16013可以由过滤器执行,采集时刻指该工作数据是何时采集的,预设时间范围可以例如设定为1年内或2年内,若采集时刻不在预设时间范围内,则说明该工作数据较为久远,属于过期数据。
若步骤16013的判断结果为是,且当前策略为顺序策略,则执行步骤16014、判断当前工作数据与上个工作数据之间是否符合添加顺序。
步骤16014可以由过滤器执行,判断当前处理的工作数据是否排在上个处理的工作数据的添加顺序之后。若当前采用的是线程策略,则需要跳过步骤16014。
若步骤16014的判断结果为否则判定工作数据为乱序数据。
若步骤16014的判断结果为是,则执行步骤16015、判断当前工作数据与上个工作数据是否相同。
步骤16015可以由过滤器执行,若相同则判定为冗余数据,若不相同则判定工作数据为正常数据。
本实施例中,通过采用上述多个判断过程,可以有效地筛选出异常数据。
图4所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。在一实施例中,如图4所示,该快速存储机械设备大数据的方法还包括:
步骤1603、判断工作数据是否违反唯一性约束。
步骤1603中,若违反唯一性约束则判定工作数据为重复数据,若不违反唯一性约束则执行步骤1604、判断工作数据是否存在预设错误,若存在预设错误则判定工作数据为错误数据。
本实施例可以由过滤器执行,进一步对工作数据进行筛查,从而筛查出重复数据以及错误数据。具体的,可以采用唯一性约束的判断算法,以检索是否存在违反唯一性约束的工作数据,违反唯一性约束的工作数据则是指重复的工作数据。在步骤1604中,预先设置错误数据的判断标准,例如筛查工作数据是否存在格式错误、网络错误、编码错误等多种类型的错误,可以根据需要来特定地设定判断标准。
图5所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。在一实施例中,如图5所示,该快速存储机械设备大数据的方法还包括:
步骤200、根据输入信息,确定存储引擎采用Highest安全策略、Normal安全策略或Lowest安全策略。
本实施例可以在步骤110之前执行,由人为选定或者程序选定。三种安全策略可以在数据安全与存储速度之间进行平衡,能够应对杀进程、程序立即停止、数据库宕机或消息队列宕机这些特殊场景。在Highest安全模式时,执行本方法的引擎会优先保证数据安全,但降低步骤110~步骤160的运行速度,即向步骤110~步骤160分配较少的算力。在Normal安全模式时,引擎平衡了数据安全与运行速度,有可能会在杀进程与程序立即停止时丢失异常数据,但不会丢失正常数据。在Lowest安全模式下,存储速度优先而数据安全次之,即提高步骤160中将正常数据存入数据库的存储速度。Highest安全策略、Normal安全策略或Lowest安全策略是目前数据存储的现有技术,三者的工作原理在此不再赘述。
图6所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。在一实施例中,如图6所示,该快速存储机械设备大数据的方法还包括:
步骤210、若采用线程策略,则统计线程数量。
步骤220、获取从消息队列中提取的工作数据的报文数。
步骤230、获取正常数据的数据量。
步骤240、获取异常数据的数据量。
本实施例可以对上述多个数据进行统计,以得知当前的线程资源使用情况、数据报文数以及数据量,统计的数据可以供于资源算力调控。
图7所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。在一实施例中,在采用线程策略时,如图7所示,该快速存储机械设备大数据的方法还包括:
步骤250、获取从线程的活跃数量、空闲数量、创建数量、销毁数量。
步骤260、根据活跃数量、空闲数量以及工作数据的数据量,创建或销毁从线程。
本实施例中,可以实时获取各类从线程的数量,以根据当前的实际情况创建或销毁从线程,从而将从线程调控至与当前的线程情况和工作数据的数据量相匹配,以达到更佳的算力管控。
图8所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。在一实施例中,在顺序策略或线程策略下,在从消息队列中依次提取工作数据的过程中,如图8所示,该快速存储机械设备大数据的方法方法包括:
步骤310、筛选工作数据为非组播数据或组播数据。
步骤320、若消息队列中的工作数据为非组播数据,则设定从消息队列中提取工作数据的数据量上限。
步骤330、根据数据量上限,从消息队列中提取工作数据。
步骤340、若消息队列中的工作数据为组播数据,则将组播数据拆分为非组播数据,并根据数据量上限提取工作数据。
本实施例根据工作数据的类型决定是否拆分,当工作数据为非组播数据时,设定提取数据量上限,以避免单次提取的数据量过大而导致数据拥堵,甚至导致宕机。
图9所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。在一实施例中,在顺序策略或线程策略下,在从消息队列中依次提取工作数据的过程中,如图9所示,该快速存储机械设备大数据的方法方法包括:
步骤350、设定从消息队列中提取工作数据的超时时限。
步骤360、若消息队列中没有数据,且提取工作数据的时间未超出超时时限,则等待工作数据添加到消息队列中。
步骤370、若消息队列中没有数据,且提取工作数据的时间超出了取数超时时限,则停止从消息队列中提取工作数据。
本实施例中,设定了提取工作数据的超时时限,若消息队列没有数据且提取时间未超出超时时限,则说明当前的算力占用处于可接受范围,可以等待工作数据添加到消息队列中,待工作数据添加到消息队列中后再进行数据提取。若提取时间超出了超时时限,则对算力进行管控,此时停止提取工作数据的工作,即便后续工作数据添加到消息队列中也不进行数据提取,本方法对应的程序进入断线状态,这种情况需要断线重连策略才能恢复执行数据提取。
图10所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。在一实施例中,在顺序策略或线程策略下,在从消息队列中依次提取工作数据的过程中,如图10所示,该快速存储机械设备大数据的方法方法包括:
步骤410、判断消息队列和数据库是否在线以及是否宕机。
步骤420、若消息队列和数据库首次宕机,则将已提取的工作数据进行数据清洗,保存从消息队列中提取工作数据的断点数据,并切换为线程策略。
本步骤中,首次宕机后,从线程将当前已提取的工作数据进行数据清洗后进入休息状态,以避免资源浪费。
步骤430、若消息队列和数据库在宕机后首次在线,则根据断点数据恢复执行从消息队列中提取工作数据,并且存储引擎切换为线程策略。
本步骤中,在宕机后首次在线时,则从线程根据断点数据重新恢复执行工作数据的提取,并将当前的策略切换为线程策略。由于断线重连后可能会有大量数据和堆积数据需要处理,因此切换为多线程的线程策略,能够加快数据处理速度。
图11所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。在一实施例中,如图11所示,该快速存储机械设备大数据的方法还包括:
步骤440、控制存储引擎分别和消息队列及数据库,定时地相互进行断线重连。
判断存储引擎和消息队列是否断线,若是则执行步骤450、控制存储引擎和消息队列立即进行断线重连。
判断存储引擎和数据库是否断线,若是则执行步骤460、控制存储引擎和数据库立即进行断线重连。
步骤470、若断线重连成功,则存储引擎切换为线程策略。
本实施例中,在存储引擎分别和消息队列及数据库相互之间执行断线重连策略,定时地执行断线重连能够保障存储引擎分别和消息队列及数据库长期地自动保持连线。当存储引擎与两者之一断线时,能够立即进行断线重连,以保障数据连接。由于断线重连后可能会有大量数据和堆积数据需要处理,因此切换为多线程的线程策略,能够加快数据处理速度。
图12所示为本申请另一实施例提供的一种快速存储机械设备大数据的方法步骤示意图。在一实施例中,如图12所示,该快速存储机械设备大数据的方法还包括:
步骤510、根据输入信息,确定存储引擎采用立即停止策略或延迟停止策略。
步骤520、若当前为立即停止策略,则停止运行工作数据的提取工作时,终止并销毁线程。
步骤530、若当前为延迟停止策略,则停止运行工作数据的提取工作时,将已提取的工作数据进行数据清洗。
在步骤530之后执行步骤540、在数据清洗完成后终止并销毁线程。
本实施例在使用时,由人为选定或者程序选定立即停止策略或延迟停止策略。若采用立即停止策略,当人为关闭或程序关闭提取工作数据的进程时,会立即终止并销毁线程,以迅速结束本方法对应的程序,达到快速关闭程序的效果。若采用延迟停止策略,当人为关闭或程序关闭提取工作数据的进程时,会将已提取的工作数据进行数据清洗过后,再终止并销毁线程,以避免工作数据的丢失。
图13表示工作数据的整个处理流程。如图13所示,机械设备的可编程逻辑控制器从机械设备中采集工作数据,然后采集引擎获取工作数据并添加到消息队列里,然后存储引擎从消息队列里提取工作数据并存储到数据库中,数据库可以存储于存储介质中。
图14表示本申请以程序形式制成时的任务处理示意图。如图13所示,建立主线程以及由主线程管理的从线程池,从线程池包括一个或多个从线程。在主线程中程序启动运行后加载配置,使得存储引擎的控制器获取本次需要采集的机械设备、测点信息以及其他配置信息。控制器执行停止策略从而终止运行本程序,停止策略可以包括前述步骤510~步骤540的方法。
在主线程中建立断线重连处理器,控制器可以定时执行断线重连策略,以控制断线重连处理器定时地执行断线重连。当存储引擎与消息队列和数据库之间相互断线时,定时执行断线重连的断线重连处理器能够使得存储引擎与消息队列和数据库之间重新连线。同时,断线重连处理器还会定时执行线程策略,以使得在断线重连时自动地切换为线程策略。
在主线程中还建立有计数器,以统计从线程的活跃数量、空闲数量、创建数量、销毁数量,还会统计已处理报文数、存入数据库的正常数据量、未知数据量、过期数据量、错误数据量以及重复数据量,还会更新待处理消息数和正在处理消息数,以及对其他各种需要计数的数据进行计数统计。
在从线程池中建立队列数据迭代器,队列数据迭代器用于从消息队列中提取工作数据。当消息队列宕机时,短线重连处理器立即执行断线重连策略,以将队列数据迭代器和消息队列重新建立连接。队列数据迭代器在工作时,还会执行批量策略,批量策略可以包括前述的步骤310~步骤370的方法。队列数据迭代器提取出工作数据后发送给解析器进行解析,解析后过滤器进行数据清洗。存储器将清洗得到的正常数据存入数据库中,并执行异常数据策略以将异常数据存入异常日志处理器中。此外,过滤器还会清洗得出重复数据以及其他错误数据。
示例性机械设备自动化系统
本申请还提供一种机械设备自动化系统,如图15所示,该系统包括:数据获取模块1510、消息队列建立模块1511、策略确定模块1512、数据存取模块1513以及数据清洗模块1514。数据获取模块1510配置为:获取机械设备的工作数据。消息队列建立模块1511与数据获取模块1510通讯连接,消息队列建立模块1511配置为:建立消息队列并将工作数据依次添加到消息队列中。策略确定模块1512与数据获取模块1510通讯连接,策略确定模
块1512配置为:根据工作数据的数据量,确定存储引擎采用顺序策略或线5程策略。数据存取模块1513与消息队列建立模块1511和策略确定模块1512分别通讯连接,数据存取模块1513配置为:若采用顺序策略,则根据工作数据添加到消息队列的添加顺序,单线程地从消息队列中依次提取工作数据;若采用线程策略,则多线程地从消息队列中提取工作数据。数据清洗模
块1514与数据存取模块1513通讯连接,数据清洗模块1514配置为:对从0消息队列中提取出来的工作数据进行数据清洗,将清洗得到的正常数据存储
到数据库中。
示例性电子设备以及计算机可读存储介质
下面,参考图16来描述根据本申请实施例的电子设备。图16所示为本申请一实施例提供的电子设备的结构示意图。
5如图16所示,电子设备150包括一个或多个处理器1501和存储器1502。
处理器1501可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备150中的其他组件以执行期望的功能。
存储器1502可以包括一个或多个计算机程序产品,所述计算机程序产0品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/
或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一
个或多个计算机程序指令,处理器1501可以运行所述程序指令,以实现上5文所述的本申请的各个实施例的快速存储机械设备大数据的方法或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如快速存储机械设备大数据误差参数等各种内容。
在一个示例中,电子设备150还可以包括:输入装置1503和输出装置1504,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
该输入装置1503可以包括例如键盘、鼠标、摇杆和触控屏幕等等。
该输出装置1504可以向外部输出各种信息,包括确定出的运动数据等。该输出装置1504可以包括例如显示器、通信网络及其所连接的远程输出设备等等。
当然,为了简化,图16中仅示出了该电子设备150中与本申请有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备150还可以包括任何其他适当的组件。
除了上述方法和设备以外,本申请的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书中描述的根据本申请各种实施例的快速存储机械设备大数据的方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本申请实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本申请的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书根据本申请各种实施例的快速存储机械设备大数据的方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本申请的基本原理,但是,需要指出的是,在本申请中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本申请的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本申请为必须采用上述具体的细节来实现。
本申请中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
还需要指出的是,在本申请的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本申请的等效方案。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本申请。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本申请的范围。因此,本申请不意图被限制到在此示出的方面,而是按照与在此发明的原理和新颖的特征一致的最宽范围。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换等,均应包含在本申请的保护范围之内。
Claims (12)
1.一种快速存储机械设备大数据的方法,其特征在于,包括:
获取机械设备的工作数据;
建立消息队列并将所述工作数据依次添加到所述消息队列中;
根据所述工作数据的数据量,确定存储引擎采用顺序策略或线程策略;
若采用所述顺序策略,则根据所述工作数据添加到所述消息队列的添加顺序,单线程地从所述消息队列中依次提取所述工作数据;
若采用所述线程策略,则多线程地从所述消息队列中提取所述工作数据;以及
对从所述消息队列中提取出来的所述工作数据进行数据清洗,将清洗得到的正常数据存储到数据库中。
2.根据权利要求1所述的快速存储机械设备大数据的方法,其特征在于,
所述对从所述消息队列中提取出来的所述工作数据进行数据清洗包括:
筛选所述工作数据得到异常数据;以及
将所述异常数据存储到所述数据库中或异常日志中;
其中,所述异常数据包括错误数据、未知数据、过期数据、重复数据、乱序数据以及冗余数据。
3.根据权利要求2所述的快速存储机械设备大数据的方法,其特征在于,所述筛选所述工作数据得到异常数据包括:
对所述工作数据进行解析报文;
若解析失败则判定所述工作数据为错误数据;
若解析成功则判断所述工作数据是否属于预先设定的采集需求;
若不属于所述采集需求则判定所述工作数据为未知数据;
若属于所述采集需求,则判断从所述机械设备中采集所述工作数据的采集时刻是否处于预设时间范围内;
若不处于所述预设时间范围内,则判定所述工作数据为过期数据;
若处于所述预设时间范围内,且当前策略为所述顺序策略,则判断当前所述工作数据与上个所述工作数据之间是否符合添加顺序;
若不符合所述添加顺序则判定为所述工作数据为乱序数据;
若符合所述添加顺序则判断当前所述工作数据与上个工作数据是否相同;
若相同则判定为冗余数据;以及
若不相同则判定所述工作数据为正常数据。
4.根据权利要求1所述的快速存储机械设备大数据的方法,其特征在于,所述方法还包括:
判断所述工作数据是否违反唯一性约束;
若违反唯一性约束则判定所述工作数据为重复数据;
若不违反唯一性约束则判断所述工作数据是否存在预设错误;以及
若存在预设错误则判定所述工作数据为错误数据。
5.根据权利要求1所述的快速存储机械设备大数据的方法,其特征在于,所述方法还包括:
根据输入信息,确定所述存储引擎采用Highest安全策略、Normal安全策略或Lowest安全策略。
6.根据权利要求2所述的快速存储机械设备大数据的方法,其特征在于,所述方法还包括:
若采用所述线程策略,则统计线程数量;
获取从所述消息队列中提取的所述工作数据的报文数;
获取所述正常数据的数据量;以及
获取所述异常数据的数据量。
7.根据权利要求1所述的快速存储机械设备大数据的方法,其特征在于,在从所述消息队列中依次提取所述工作数据的过程中,所述方法还包括:
若所述消息队列中的所述工作数据为非组播数据,则设定从所述消息队列中提取所述工作数据的数据量上限;
根据所述数据量上限,从所述消息队列中提取所述工作数据;
若所述消息队列中的所述工作数据为组播数据,则将所述组播数据拆分为非组播数据,并根据所述数据量上限提取所述工作数据。
8.根据权利要求1所述的快速存储机械设备大数据的方法,其特征在于,在从所述消息队列中依次提取所述工作数据的过程中,所述方法还包括:
设定从所述消息队列中提取所述工作数据的超时时限;
若所述消息队列中没有数据,且提取所述工作数据的时间未超出所述超时时限,则等待所述工作数据添加到所述消息队列中;或者
若所述消息队列中没有数据,且提取所述工作数据的时间超出了所述取数超时时限,则停止从所述消息队列中提取所述工作数据。
9.根据权利要求1所述的快速存储机械设备大数据的方法,其特征在于,在从所述消息队列中依次提取所述工作数据的过程中,所述方法还包括:
判断所述消息队列和所述数据库是否在线以及是否宕机;
所述消息队列和所述数据库首次宕机,则将已提取的所述工作数据进行数据清洗,保存从所述消息队列中提取所述工作数据的断点数据,并切换为所述线程策略;以及
若所述消息队列和所述数据库在宕机后首次在线,则根据所述断点数据恢复执行从所述消息队列中提取所述工作数据,并且所述存储引擎切换为所述线程策略。
10.根据权利要求1所述的快速存储机械设备大数据的方法,其特征在于,所述方法还包括:
控制所述存储引擎分别和所述消息队列及所述数据库,定时地相互进行断线重连;
若所述存储引擎和所述消息队列断线,则控制所述存储引擎和所述消息队列立即进行断线重连;
若所述存储引擎和所述数据库断线,则控制所述存储引擎和所述数据库立即进行断线重连;以及
若断线重连成功,则所述存储引擎切换为所述线程策略。
11.根据权利要求1所述的快速存储机械设备大数据的方法,其特征在于,所述方法还包括:
根据输入信息,确定所述存储引擎采用立即停止策略或延迟停止策略;
若当前为所述立即停止策略,则停止运行工作数据的提取工作时,终止并销毁线程;或者
若当前为所述延迟停止策略,则停止运行工作数据的提取工作时,将已提取的所述工作数据进行数据清洗;以及
在数据清洗完成后终止并销毁线程。
12.一种机械设备自动化系统,其特征在于,包括:
数据获取模块,配置为:获取机械设备的工作数据;
消息队列建立模块,与所述数据获取模块通讯连接,所述消息队列建立模块配置为:建立消息队列并将所述工作数据依次添加到所述消息队列中;
策略确定模块,与所述数据获取模块通讯连接,所述策略确定模块配置为:根据所述工作数据的数据量,确定存储引擎采用顺序策略或线程策略;
数据存取模块,与所述消息队列建立模块和所述策略确定模块分别通讯连接,所述数据存取模块配置为:若采用所述顺序策略,则根据所述工作数据添加到所述消息队列的添加顺序,单线程地从所述消息队列中依次提取所述工作数据;若采用所述线程策略,则多线程地从所述消息队列中提取所述工作数据;以及
数据清洗模块,与所述数据存取模块通讯连接,所述数据清洗模块配置为:对从所述消息队列中提取出来的所述工作数据进行数据清洗,将清洗得到的正常数据存储到数据库中。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211525863.1A CN116302589A (zh) | 2022-11-30 | 2022-11-30 | 快速存储机械设备大数据的方法及机械设备自动化系统 |
PCT/CN2023/089122 WO2024113644A1 (zh) | 2022-11-30 | 2023-04-19 | 存储数据的方法、自动化系统及机械设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211525863.1A CN116302589A (zh) | 2022-11-30 | 2022-11-30 | 快速存储机械设备大数据的方法及机械设备自动化系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116302589A true CN116302589A (zh) | 2023-06-23 |
Family
ID=86811931
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211525863.1A Pending CN116302589A (zh) | 2022-11-30 | 2022-11-30 | 快速存储机械设备大数据的方法及机械设备自动化系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN116302589A (zh) |
WO (1) | WO2024113644A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112395097A (zh) * | 2019-08-14 | 2021-02-23 | 北京京东尚科信息技术有限公司 | 一种消息处理方法、装置、设备和存储介质 |
CN113010297A (zh) * | 2021-04-23 | 2021-06-22 | 北京秒针人工智能科技有限公司 | 基于消息队列的数据库写入调度器、写入方法和存储介质 |
CN113342564B (zh) * | 2021-06-25 | 2023-12-12 | 阿波罗智联(北京)科技有限公司 | 日志审计方法、装置、电子设备和介质 |
CN113961632A (zh) * | 2021-10-21 | 2022-01-21 | 京东方科技集团股份有限公司 | 消息数据处理方法、装置及电子设备 |
CN115102672B (zh) * | 2022-06-15 | 2024-04-05 | 珠海格力电器股份有限公司 | 数据处理方法、系统、计算机设备和存储介质 |
-
2022
- 2022-11-30 CN CN202211525863.1A patent/CN116302589A/zh active Pending
-
2023
- 2023-04-19 WO PCT/CN2023/089122 patent/WO2024113644A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024113644A1 (zh) | 2024-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110515820B (zh) | 一种服务器故障维护方法、装置、服务器及存储介质 | |
US8954971B2 (en) | Data collecting method, data collecting apparatus and network management device | |
EP2940596A1 (en) | Data acquisition method and device | |
CN113590337B (zh) | 一种云环境下自动调整云主机配置的方法及装置 | |
CN104410671A (zh) | 一种快照抓取方法和数据监控工具 | |
CN109634803A (zh) | 一种上报设备异常的方法和装置 | |
JP3285547B2 (ja) | 通信システムにおけるメッセージの過負荷処理方法 | |
CN1055557C (zh) | 多处理机控制系统中控制单位程序信息过载的方法 | |
CN111241059A (zh) | 一种基于数据库的数据库优化方法及装置 | |
CN114493203A (zh) | 一种安全编排及自动化响应的方法和装置 | |
CN110389840B (zh) | 负载消耗预警方法、装置、计算机设备和存储介质 | |
CN116302589A (zh) | 快速存储机械设备大数据的方法及机械设备自动化系统 | |
CN111431752B (zh) | 一种基于自适应流量控制的安全探测方法 | |
CN110569238B (zh) | 一种基于大数据的数据治理方法、系统、存储介质和服务端 | |
CN110928663A (zh) | 一种跨平台多线程监控方法及装置 | |
CN108924002B (zh) | 一种性能数据文件的解析方法、装置、设备及存储介质 | |
CN116166338A (zh) | 数据库的故障排除方法、装置、设备及存储介质 | |
CN112579257B (zh) | 一种虚拟中央处理器核心的调度方法、装置及相关设备 | |
CN112433764A (zh) | 一种数据采集方法、装置、设备及计算机可读存储介质 | |
JP5821471B2 (ja) | 情報処理装置、プロセス監視方法、プロセス監視プログラム、記録媒体 | |
CN114244685A (zh) | 一种云服务中心访问异常处置系统 | |
CN111898899A (zh) | 自动触发工作流的流程管控方法、装置、系统和存储介质 | |
CN113760632B (zh) | 线程池性能监控方法、装置、设备和存储介质 | |
CN102238022A (zh) | 一种网络管理系统及数据采集方法 | |
CN114895978B (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 |