CN115510020A - 一种数据归档方法、电子设备及可读存储介质 - Google Patents

一种数据归档方法、电子设备及可读存储介质 Download PDF

Info

Publication number
CN115510020A
CN115510020A CN202110701029.2A CN202110701029A CN115510020A CN 115510020 A CN115510020 A CN 115510020A CN 202110701029 A CN202110701029 A CN 202110701029A CN 115510020 A CN115510020 A CN 115510020A
Authority
CN
China
Prior art keywords
data
time
thread
data object
monitoring subsystem
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
Application number
CN202110701029.2A
Other languages
English (en)
Inventor
祝永晶
骆俊贤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BYD Co Ltd
Original Assignee
BYD Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by BYD Co Ltd filed Critical BYD Co Ltd
Priority to CN202110701029.2A priority Critical patent/CN115510020A/zh
Priority to PCT/CN2022/095984 priority patent/WO2022267837A1/zh
Priority to BR112023021933A priority patent/BR112023021933A2/pt
Publication of CN115510020A publication Critical patent/CN115510020A/zh
Priority to US18/478,664 priority patent/US20240037006A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/219Managing data history or versioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • G06F11/3075Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved in order to maintain consistency among the monitored data, e.g. ensuring that the monitored data belong to the same timeframe, to the same system or component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开提供了一种数据归档方法、电子设备及可读存储介质,该方法包括:获取至少一个监控子***所采集的监控数据;按照预设规则将所述监控数据存储为与所述监控子***对应的多个数据对象;控制所述监控子***所对应的第一线程,按照预设顺序将所述数据对象读取至对应的数据队列中;在所述第一线程每次将数据对象读取至所述数据队列的情况下,控制所述监控子***所对应的第二线程,将所述数据队列中的数据对象写入数据库。

Description

一种数据归档方法、电子设备及可读存储介质
技术领域
本公开实施例涉及数据库技术领域,更具体地,涉及一种数据归档方法、一种电子设备及一种计算机可读存储介质。
背景技术
在地铁、城轨等公共交通领域中,综合监控***中的监控点位大多在几万、几十万的数量级别,并且,所存储的数据往往涉及运营安全、故障追溯等,保障数据存储的安全是非常重要的。
发明人发现,现有技术中综合监控***大都采用如Oracle,MySql,MSSQL等关系型数据库进行数据存储,这些数据库本身根据参数选型,数据存储效率也不相同。综合监控***的数据是根据每一个具体公共交通线路单独离线制作,监控点位的数量因线路不同而有所区别。而且,每条线路的数据库服务器配置、数据库选型参数也有不同,因此,这就导致监控数据的制作效率与数据库的存储效率可能会不匹配。
发明内容
本公开实施例的一个目的是提供一种在线数据归档的新的技术方案。
根据本公开的第一方面,提供了一种数据归档方法,包括:
获取至少一个监控子***所采集的监控数据;
按照预设规则将所述监控数据存储为与所述监控子***对应的多个数据对象;
控制所述监控子***所对应的第一线程,按照预设顺序将所述数据对象读取至对应的数据队列中;
在所述第一线程每次将数据对象读取至所述数据队列的情况下,控制所述监控子***所对应的第二线程,将所述数据队列中的数据对象写入数据库。
根据本公开的第二方面,还提供了一种电子设备,包括存储器和处理器,所述存储器用于存储计算机程序;所述处理器用于执行所述计算机程序,以实现根据本公开第一方面所述的方法。
根据本公开的第三方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序在被处理器执行时实现根据本公开的第一方面所述的方法。
通过本公开的实施例,对于每个监控子***,分别将采集的检测数据存储为对应的数据对象,控制第一线程将对应监控子***的数据对象读取至数据队列中,再控制第二线程将数据队列中的数据对象写入数据库中,可以并发提高至少一个监控子***所对应的数据对象的读写速率。而且,通过设置数据队列,可以根据第二线程写入数据库的速率,来同步控制第一线程读取数据对象的速率,使得第二线程的写入速率与第一线程的读取速率同步。此外,还可以防止数据队列中未处理的数据对象堆积过多,导致数据丢失的问题发生。
通过以下参照附图对本公开的示例性实施例的详细描述,本公开实施例的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本公开的实施例,并且连同其说明一起用于解释本公开实施例的原理。
图1是可用于实现本公开的实施例的电子设备的硬件配置的示意性框图;
图2是根据一个实施例的电子设备的方框原理图;
图3是根据一个实施例的数据归档方法的流程示意图;
图4是根据一个实施例的数据库归档服务模块对数据对象的处理示意图。
图5是根据本公开实施例的数据归档方法的一个例子的流程示意图;
图6是根据本公开实施例的数据归档方法的一个例子的流程示意图;
图7是根据另一个实施例的电子设备的硬件结构示意图。
具体实施方式
现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
<硬件配置>
图1是可用于实现本公开实施例的电子设备的结构示意图。
该电子设备1000可以是智能手机、便携式电脑、台式计算机、平板电脑、服务器等,在此不做限定。
该电子设备1000可以包括但不限于处理器1100、存储器1200、接口装置1300、通信装置1400、显示装置1500、输入装置1600、扬声器1700、麦克风1800等等。其中,处理器1100可以是中央处理器CPU、图形处理器GPU、微处理器MCU等,用于执行计算机程序,该计算机程序可以采用比如x86、Arm、RISC、MIPS、SSE等架构的指令集编写。存储器1200例如包括ROM(只读存储器)、RAM(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置1300例如包括USB接口、串行接口、并行接口等。通信装置1400例如能够利用光纤或电缆进行有线通信,或者进行无线通信,具体地可以包括WiFi通信、蓝牙通信、2G/3G/4G/5G通信等。显示装置1500例如是液晶显示屏、触摸显示屏等。输入装置1600例如可以包括触摸屏、键盘、体感输入等。扬声器1700用于输出音频信号。麦克风1800用于采集音频信号。
应用于本公开实施例中,电子设备1000的存储器1200用于存储计算机程序,该计算机程序用于控制所述处理器1100进行操作以实现根据本公开实施例的方法。技术人员可以根据本公开所公开方案设计该计算机程序。该计算机程序如何控制处理器进行操作,这是本领域公知,故在此不再详细描述。该电子设备1000可以安装有智能操作***(例如Windows、Linux、安卓、IOS等***)和应用软件。
本领域技术人员应当理解,尽管在图1中示出了电子设备1000的多个装置,但是,本公开实施例的电子设备1000可以仅涉及其中的部分装置,例如,只涉及处理器1100和存储器1200等。
下面,参照附图描述根据本发明的各个实施例和例子。
<方法实施例>
图2是根据一个实施例的电子设备的方框原理图。如图2所示,该电子设备2000可以包括数据获取模块2100,主服务模块2200,数据库归档服务模块2300和人机界面模块2400。
数据获取模块2100用于获取外部的监控子***所采集的监控数据,并将监控数据传送至主服务模块2200。主服务模块2200根据时间先后顺序,将监控数据缓存为数据文件,并按照时间先后顺序存储在本地磁盘中。数据库归档服务模块2300将每个监控子***所对应的数据文件,拆分为多个数据对象,并按照时间先后顺序,控制每个监控子***所对应的第一线程,将对应的数据对象读取至对应的数据队列中,再控制每个监控子***所对应的第二线程,将对应的数据队列中的数据对象写入数据库中。
数据库归档服务模块2300还可以计算每个监控子***对应的存储负荷率,分别确定每个监控子***对应的存储负荷率是否符合报警条件,并在任意监控子***对应的存储负荷率符合报警条件的情况下,向主服务模块2200反馈报警信息。主服务模块2200将报警信息上报给人机界面模块2400,由人机界面模块2400对报警信息进行展示,以供用户查看,并根据报警信息对数据归档过程进行人工干预。
图3是根据一个实施例的数据归档方法的流程示意图,该实施例可以由电子设备实施。例如,该电子设备可以是如图1所示的电子设备1000。
如图3所示,本实施例的数据归档方法可以包括如下所示的步骤S3100~S3400:
步骤S3100,获取至少一个监控子***所采集的监控数据。
在本实施例中,在地铁、城轨、云巴等公共交通领域,监控子***可以是乘客服务监控***、车站设备监控***、行车指挥监控***、火灾报警监控***、或电力供应监控***等,每个监控子***可以由至少一个对应的监控设备所构成,而每个监控设备下具有至少一个监控点位。
监控子***所采集的监控数据,可以包括对应监控设备下的监控点位的点值信息以及采集时间。
步骤S3200,按照预设规则将监控数据存储为与监控子***对应的多个数据对象。
在本公开的一个实施例中,按照预设规则将监控数据存储为与监控子***对应的多个数据对象可以包括如下所示的步骤S3210~S3220:
步骤S3210,按照预设的第一时间间隔,将监控数据存储为与监控子***对应的数据文件。
本实施例中的第一时间间隔,可以是预先根据应用场景或具体需求所设定的。例如,该第一时间间隔可以是10分钟。那么,可以是将每10分钟所获取的其中一个监控子***所采集的监控数据,存储为与该监控子***所对应的数据文件。也就是说,每个数据文件所对应的时间长度与第一时间间隔相等。而且,数据文件的大小可以是由第一时间间隔所确定的。
在本实施例中,将监控数据存储为与监控子***对应的数据文件,可以是将监控数据存储为数据库文件,例如是*.db文件。
进一步地,可以是预先提供配置界面,该配置界面中包括用于输入第一时间间隔的第一输入框,用户可以通过该第一输入框来设置第一时间间隔。
进一步地,通过步骤S3100所获取的监控数据可以是缓存在电子设备的内存中,将监控数据存储为数据文件,可以是将数据文件存储在电子设备的磁盘中。在电子设备为分布式计算机集群的情况下,可以是将数据文件存储在分布式计算机集群中执行步骤S3210的计算机的磁盘中。
在步骤S3100所获取的监控数据为多个监控子***所采集的情况下,可以是针对每个监控子***所采集的监控数据,分别按照第一时间间隔,存储为与每个监控子***对应的数据文件。
在本公开的一个实施例中,该配置界面中包括用于输入缓存窗口的第二输入框,用户可以通过该第二输入框来设置缓存窗口。该缓存窗口可以是表示磁盘中缓存数据文件的总数,即最大的数据缓存量。
该缓存窗口可以是以时间为单位定义的。例如,该缓存窗口可以是7天,那么,磁盘中可以缓存有最近7天所缓存的数据文件。
本实施例中的缓存窗口不需要根据具体的公共交通线路或数据制作而进行额外调整,只需要设置一个通用值即可。通过设置缓存窗口可以减弱数据归档对人工的依赖。
步骤S3220,按照预设的第二时间间隔,将数据文件拆分为多个数据对象。
本实施例中的第二时间间隔,可以是预先根据应用场景或具体需求所设定的,也可以是根据数据库的实际存储能力所设定的。该第二时间间隔可以是小于第一时间间隔。例如,该第二时间间隔可以是1分钟。那么,可以是将每个时间长度为10分钟的数据文件,拆分为10个时间长度为1分钟的数据对象。
进一步地,得到的每个数据对象至少可以具有对应的开始时间,还可以具有对应的结束时间。
在本实施例中,通过将每个监控子***所对应的数据文件进行拆分,可以得到每个监控子***所对应的数据对象。
步骤S3300,控制监控子***所对应的第一线程,按照预设顺序将数据对象读取至对应的数据队列中。
在本实施例中,可以是预先设置与每个监控子***所对应的第一线程和数据队列。对于每个监控子***,控制对应的第一线程,按照预设顺序将对应的数据对象读取至对应的数据队列中。
本实施例中的预设顺序,具体可以是时间先后顺序。具体的,任一个监控子***的第一线程,可以是将该监控子***所对应的数据对象中未被读取过、开始时间最早的一个,读取至该监控子***所对应的数据队列中。
步骤S3400,在第一线程每次将数据对象读取至数据队列的情况下,控制监控子***所对应的第二线程,将数据队列中的数据对象写入数据库。
在本实施例中,可以是预先设置与每个监控子***所对应的第二线程。对于每个监控子***,可以控制第二线程,将数据队列中的数据对象写入数据库。
具体的,第二线程可以是按照数据队列中数据对象的读取顺序,将数据对象写入数据库。
在一个例子中,在数据库归档服务模块中,第一线程将数据对象读取至数据队列中的方式和第二线程将数据队列中的数据对象写入数据库中的方式,例如可以是如图4所示。
在本公开的一个实施例中,对于每个监控子***,对应的数据队列中可以包括至多一个数据对象。那么,可以是在第二线程将数据队列中的数据对象写入完成的情况下,控制第一线程将下一个数据对象读取至数据队列中。
也就是说,在第二线程将第一线程本次读取至数据队列中的数据对象写入完成,即全部写入数据库的情况下,第一线程开始下次读取步骤,将下一个数据对象读取至数据队列中。
通过本公开的实施例,对于每个监控子***,分别将采集的检测数据存储为对应的数据对象,控制第一线程将对应监控子***的数据对象读取至数据队列中,再控制第二线程将数据队列中的数据对象写入数据库中,可以并发提高至少一个监控子***所对应的数据对象的读写速率。而且,通过设置数据队列,可以根据第二线程写入数据库的速率,来同步控制第一线程读取数据对象的速率,使得第二线程的写入速率与第一线程的读取速率同步。此外,还可以防止数据队列中未处理的数据对象堆积过多,导致数据丢失的问题发生。
在本公开的一个实施例中,该方法还可以包括如下所示的步骤S3500~S3700:
步骤S3500,获取第一线程本次读取数据对象的过程中,监控子***对应的存储负荷率。
其中,存储负荷率为衡量该监控子***的数据对象的读取速率和写入速率是否平衡的参数。读取速率为第一线程将数据对象读取至数据队列的速率,写入速率为第二线程将数据对象写入数据库的速率。
在本公开的一个实施例中,获取第一线程本次读取数据对象的过程中,监控子***对应的存储负荷率可以包括如下所示的步骤S3510~S3530:
步骤S3510,获取第一线程本次读取的数据对象的第一起始时间、及第一线程上次读取的数据对象的第二起始时间。
其中,起始时间为对应数据对象的开始采集时间,该起始时间包括第一起始时间和第二起始时间。即,第一起始时间为第一线程本次读取的数据对象的开始采集时间,第二起始时间为第一线程上次读取的数据对象的开始采集时间。
在本实施例中,在得到数据对象的情况下,还可以得到数据对象的起始时间。
步骤S3520,获取第一线程本次开始执行读取数据对象的操作的第一***时间、第一线程上次开始执行读取数据对象的操作的第二***时间。
在本实施例中,***时间可以是电子设备的本地时间,也可以是互联网时间。其中,第一***时间可以是第一线程本次开始执行读取数据对象的操作的***时间,第二***时间可以是第一线程上次开始执行读取数据对象的操作的***时间。
步骤S3530,根据第一起始时间、第二起始时间、第一***时间和第二***时间,确定该存储负荷率。
在本公开的一个实施例中,根据第一起始时间、第二起始时间、第一***时间和第二***时间,确定该存储负荷率可以包括如下所示的步骤S3531~S3533:
步骤S3531,确定第一起始时间和第二起始时间之间的时间差,作为第一时间差。
例如,第一起始时间可以表示为T_data_cur,第二起始时间可以表示为T_data_pre,那么,第一时间差T1可以是通过如下公式一得到。
T1=T_data_cur-T_data_pre(公式一)
步骤S3532,确定第一***时间和第二***时间之间的时间差,作为第二时间差。
例如,第一起始时间可以表示为T_oper_cur,第二起始时间可以表示为T_oper_pre,那么,第二时间差T2可以是通过如下公式二得到。
T2=T_oper_cur-T_oper_pre(公式二)
步骤S3533,确定第二时间差与第一时间差之间的比值,作为存储负荷率。
存储负荷率P可以是通过如下公式三得到。
P=T2/T1(公式三)
在本公开的一个实施例中,可以是在第一线程每次读取数据对象的过程中,均获取监控子***对应的存储负荷率。
步骤S3600,确定该监控子***对应的存储负荷率是否符合预设的报警条件。
在本公开的一个实施例中,确定该监控子***对应的存储负荷率是否符合预设的报警条件可以包括如下所示的步骤S3610~S3630:
步骤S3610,确定第一线程本次读取数据对象的过程中,监控子***对应的存储负荷率是否超过预设的阈值。
其中,该预设的阈值可以是预先根据应用场景或具体需求所设定的。例如该阈值可以是1。
在存储负荷率未超过阈值的情况下,表明第一线程本次读取数据对象的过程中,数据队列中的数据对象写入数据库的效率,可以满足该数据对象读取至数据队列中的效率。
在存储负荷率超过阈值的情况下,表明第一线程本次读取数据对象的过程中,数据队列中的数据对象写入数据库的效率,无法满足将该数据对象读取至数据队列中的效率,该数据队列会产生数据堆积的现象。
步骤S3620,在存储负荷率超过阈值的情况下,确定监控子***对应的存储负荷率超过该阈值的连续次数是否超过预设的次数阈值。
在第一线程上次读取数据对象的过程中,监控子***对应的存储负荷率超过该阈值,且对应于第一线程上次读取数据对象过程中所对应的连续次数为n的情况下,如果第一线程本次读取数据对象的过程中,监控子***对应的存储负荷率超过该阈值,那么,第一线程本次读取数据对象过程中所对应的连续次数为n+1;如果第一线程本次读取数据对象的过程中,监控子***对应的存储负荷率未超过该阈值,那么,第一线程本次读取数据对象过程中所对应的连续次数为0。
本实施例中的次数阈值可以是预先根据应用场景或具体需求所设定的,例如,该次数阈值可以是3。
步骤S3630,在该连续次数超过次数阈值的情况下,确定数据库符合报警条件。
由于第一线程在一次读取数据对象的过程中,监控子***对应的存储负荷率超过该阈值,仅能说明数据库存储负荷的暂态,有可能是读取至数据队列中的数据对象较为密集,可能下次减缓将数据对象读取至数据队列中的速率,监控子***对应的存储负荷率超过该阈值又能够小于或等于该阈值。因此,监控子***在一次读取过程中对应的存储负荷率超过该阈值,并不能说明数据库的吞吐量失衡。
本实施例根据监控子***对应的存储负荷率超过该阈值的连续次数大于次数阈值,来判定数据库符合报警条件,可以避免出现误报警的问题。
步骤S3700,在该监控子模块符合报警条件的情况下,发出警报。
在本公开的一个实施例中,在该数据库符合报警条件的情况下,发出警报的方式可以是:生成报警信息,并通过界面展示该报警信息。
在本公开的一个实施例中,报警信息的内容可以包括:最后一次确定的该监控子***的存储负荷率;和/或,最后一次读取的该监控子***的数据对象中,存储量占前N位的监控点位的名称、及这些监控点位在该监控子***中的存储比例。
该报警信息中所包含的内容,可以指导数据制作人员及时调整分配数据,有针对性的修改具体监控点位的配置,对整条公共交通线路的监控部署有积极现实意义。而且,对于实际公共交通线路的在线运营也有重要意义。具体的,如果出现了监控数据采集异常频繁,或者数据库存储性能下降等异常,该报警信息也可以提示运营人员,便于及时发现运行时的存储问题。
在本公开的实施例中,通过计算每个监控子***的数据库存储负荷率,为数据采集、数据缓存和数据库存储之间增加了自动反馈机制,可以减少人为经验的依赖,使得数据归档更加便利。而且在归档过程中不会暂停归档服务,可以避免监控数据的丢失。
在本公开的一个实施例中,在该数据库符合报警条件的情况下,发出警报可以包括如下所示的步骤S3710~S3720:
步骤S3710,在数据库符合报警条件的条件下,根据连续次数确定报警等级。
在本公开的一个实施例中,可以是预先根据应用场景或具体需求,设定多个次数范围及与每个次数范围所对应的报警等级。例如,多个次数范围可以包括大于等于3且小于5,大于等于5且小于等于10,大于10。与次数范围大于等于3且小于5所对应的报警等级,可以是低等级,与次数范围大于等于5且小于等于10所对应的报警等级,可以是中等级,与次数范围大于10所对应的报警等级,可以是高等级。
在本实施例中,根据连续次数确定报警等级,可以是确定该连续次数所属次数范围所对应的报警等级。
例如,在该连续次数为4的情况下,该连续次数属于大于等于3且小于5的次数范围,对应的报警等级为低等级。
再例如,在该连续次数为8的情况下,该连续次数属于大于等于5且小于等于10的次数范围,对应的报警等级为中等级。
步骤S3720,根据报警等级发出相应的警报。
在本公开的一个实施例中,根据报警等级发出相应的警报的方式,可以是通过与报警等级相对应的颜色展示报警信息。
与每个报警等级所对应的颜色可以是预先根据应用场景或具体需求所设定的。例如,与低等级对应的颜色可以是黄色,与中等级对应的颜色可以是橙色,与高等级对应的颜色可以是红色。
具体的,可以是以与报警等级相对应的颜色展示报警信息的文字内容,或者,也可以是以与报警等级相对应的颜色高亮展示该报警信息的信息框。
在本公开的另一个实施例中,根据报警等级发出相应的警报的方式,还可以是将报警等级添加至报警信息中进行展示。
<例子1>
图5为根据本公开实施例的数据归档方法的一个例子的流程示意图。
如图5所示,该方法可以包括如下所示的步骤S5001~S5006:
步骤S5001,获取至少一个监控子***所采集的监控数据。。
步骤S5002,按照预设的第一时间间隔,将监控数据存储为与每个监控子***对应的数据文件。
步骤S5003,按照预设的第二时间间隔,将每个数据文件拆分为多个数据对象。
步骤S5004,控制监控子***所对应的第一线程,将第i个数据对象读取至对应的数据队列中。
其中,i为正整数。
步骤S5005,在第一线程将第i个数据对象读取至数据队列的情况下,控制监控子***所对应的第二线程,将数据队列中的第i个数据对象写入数据库。
步骤S5006,在第二线程将第i个数据对象写入完成的情况下,将i加一。
在执行完步骤S5006的情况下,继续执行步骤S5004。
<例子2>
在上述例子1的基础上,本实施例以对目标监控子***采集的监控数据进行归档为例,对本公开的数据归档方法进行说明。
该数据归档方法还可以包括如图6所示的步骤S6001~S6009:
步骤S6001,控制第一线程第i次将数据对象读取至数据队列中。其中,i为正整数。
步骤S6002,判断i是否大于1,如是,则执行步骤S6003;如否,则执行步骤S6009。
步骤S6003,获取第一线程第i次所读取的数据对象的第一起始时间、及第一线程第i-1次读取的数据对象的第二起始时间。
步骤S6004,获取第一线程第i执行读取数据对象的操作的第一***时间、第一线程第i-1次执行读取数据对象的操作的第二***时间。
步骤S6005,根据第一起始时间、第二起始时间、第一***时间和第二***时间,确定目标监控子***对应的存储负荷率。
步骤S6006,判断确定目标监控子***对应的存储负荷率是否超过预设的阈值,如是,则执行步骤S6007;如否,则执行步骤S6009。
步骤S6007,确定监控子***对应的存储负荷率超过该阈值的连续次数是否超过预设的超过次数阈值,如是,则执行步骤S6008;如否,则执行步骤S6009。
步骤S6008,生成报警信息,并通过界面展示该报警信息。
步骤S6009,将i加一。
<设备实施例>
图7是根据另一个实施例的电子设备的硬件结构示意图。
如图7所示,该电子设备7000包括处理器7100和存储器7200,该存储器7200用于存储可执行的计算机程序,该处理器7100用于根据该计算机程序的控制,执行如以上任意方法实施例的方法。
该电子设备7000可以是智能手机、便携式电脑、台式计算机、平板电脑、服务器、分布式计算机集群等电子产品。
以上电子设备7000的各模块可以由本实施例中的处理器7100执行存储器7200存储的计算机程序实现,也可以通过其他电路结构实现,在此不做限定。
<计算机可读存储介质实施例>
本实施例提供了一种计算机可读存储介质,该存储介质中存储有可执行命令,该可执行命令被处理器执行时,执行本说明书任意方法实施例中描述的方法。
本发明可以是***、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(***)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。

Claims (10)

1.一种数据归档方法,包括:
获取至少一个监控子***所采集的监控数据;
按照预设规则将所述监控数据存储为与所述监控子***对应的多个数据对象;
控制所述监控子***所对应的第一线程,按照预设顺序将所述数据对象读取至对应的数据队列中;
在所述第一线程每次将数据对象读取至所述数据队列的情况下,控制所述监控子***所对应的第二线程,将所述数据队列中的数据对象写入数据库。
2.根据权利要求1所述的方法,所述方法还包括:
在所述第二线程将所述数据队列中的数据对象写入完成的情况下,控制所述第一线程将下一个数据对象读取至所述数据队列中。
3.根据权利要求2所述的方法,所述方法还包括:
获取所述第一线程本次读取数据对象的过程中,所述监控子***对应的存储负荷率,其中,所述存储负荷率为衡量所述监控子***的数据对象的读取速率和写入速率是否平衡的参数;
确定所述存储负荷率是否符合预设的报警条件;
在所述存储负荷率符合所述报警条件的条件下,发出警报。
4.根据权利要求3所述的方法,所述获取所述第一线程本次读取数据对象的过程中,所述监控子***对应的存储负荷率包括:
获取所述第一线程本次读取的数据对象的第一起始时间、及所述第一线程上次读取的数据对象的第二起始时间;其中,起始时间为对应数据对象的开始采集时间;
获取所述第一线程本次开始执行读取数据对象的操作的第一***时间、及所述第一线程上次开始执行读取数据对象的操作的第二***时间;
根据所述第一起始时间、所述第二起始时间、所述第一***时间、所述第二***时间,确定所述存储负荷率。
5.根据权利要求4所述的方法,所述根据所述第一起始时间、所述第二起始时间、所述第一***时间、所述第二***时间,确定所述存储负荷率包括:
确定所述第一起始时间和所述第二起始时间之间的时间差,作为第一时间差;
确定所述第一***时间和所述第二***时间之间的时间差,作为第二时间差;
确定所述第二时间差与所述第一时间差之间的比值,作为所述存储负荷率。
6.根据权利要求3所述的方法,所述确定所述存储负荷率是否符合预设的报警条件包括:
确定所述监控子***对应的存储负荷率超过预设的阈值的连续次数;
在所述连续次数超过预设的次数阈值的情况下,确定所述存储负荷率符合所述报警条件。
7.根据权利要求6所述的方法,所述在所述存储负荷率符合所述报警条件的条件下,发出警报包括:
在所述存储负荷率符合所述报警条件的条件下,根据所述连续次数确定报警等级;
根据所述报警等级发出相应的警报。
8.根据权利要求1所述的方法,所述按照预设规则将所述监控数据存储为与所述监控子***对应的多个数据对象包括:
按照预设的第一时间间隔将所述监控数据存储为与所述监控子***对应的数据文件;
按照预设的第二时间间隔,将所述数据文件拆分为多个数据对象。
9.一种电子设备,其特征在于,包括存储器和处理器,所述存储器用于存储计算机程序,所述处理器用于在所述计算机程序的控制下,执行如权利要求1至8中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器执行时实现如权利要求1至8中任一项所述的方法。
CN202110701029.2A 2021-06-23 2021-06-23 一种数据归档方法、电子设备及可读存储介质 Pending CN115510020A (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202110701029.2A CN115510020A (zh) 2021-06-23 2021-06-23 一种数据归档方法、电子设备及可读存储介质
PCT/CN2022/095984 WO2022267837A1 (zh) 2021-06-23 2022-05-30 一种数据归档方法、电子设备及可读存储介质
BR112023021933A BR112023021933A2 (pt) 2021-06-23 2022-05-30 Método de arquivamento de dados, dispositivo eletrônico, e, mídia de armazenamento
US18/478,664 US20240037006A1 (en) 2021-06-23 2023-09-29 Data archiving method, electronic device, and readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110701029.2A CN115510020A (zh) 2021-06-23 2021-06-23 一种数据归档方法、电子设备及可读存储介质

Publications (1)

Publication Number Publication Date
CN115510020A true CN115510020A (zh) 2022-12-23

Family

ID=84500519

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110701029.2A Pending CN115510020A (zh) 2021-06-23 2021-06-23 一种数据归档方法、电子设备及可读存储介质

Country Status (4)

Country Link
US (1) US20240037006A1 (zh)
CN (1) CN115510020A (zh)
BR (1) BR112023021933A2 (zh)
WO (1) WO2022267837A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116781757B (zh) * 2023-08-22 2023-11-07 北京城建智控科技股份有限公司 数据监控方法、装置、平台、电子设备和存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE188560T1 (de) * 1990-05-21 2000-01-15 Digital Equipment Corp Auf warteschlangen basiertes interprozesskommunikationssystem für ein digitales datenverarbeitungssystem
CN103049317B (zh) * 2013-01-10 2016-03-23 中国南方电网有限责任公司超高压输电公司 云环境下基于队列的高并发数据快速写入***及方法
CN104376082B (zh) * 2014-11-18 2019-06-18 中国建设银行股份有限公司 一种把数据源文件中的数据导入到数据库中的方法
CN104598563B (zh) * 2015-01-08 2018-09-04 北京京东尚科信息技术有限公司 高并发数据存储方法及装置
CN107633087A (zh) * 2017-09-29 2018-01-26 南威软件股份有限公司 一种基于数据库的数据存储方法

Also Published As

Publication number Publication date
US20240037006A1 (en) 2024-02-01
BR112023021933A2 (pt) 2024-01-16
WO2022267837A1 (zh) 2022-12-29

Similar Documents

Publication Publication Date Title
US10240549B2 (en) System and method for evaluating chip zap data
CN109684613B (zh) 在线文档中的引用显示方法、装置、存储介质及电子设备
CN110851495A (zh) 异构源数据处理方法、装置、存储介质和电子设备
US20240037006A1 (en) Data archiving method, electronic device, and readable storage medium
CN108255896A (zh) 网页预读方法、网页访问方法、设备及电子设备
CN110908922A (zh) 应用程序的测试方法和装置
CN107463492A (zh) 应用程序故障定位方法及装置
CN109597482B (zh) 电子书的自动翻页方法和装置、介质及电子设备
US10388068B2 (en) System and method of augmented reality alarm system installation
CN111123778B (zh) 监控车辆使用状况的方法、装置及电子设备
CN111444085A (zh) 一种测试方法、装置以及相关设备
CN111723939A (zh) 机器学习模型的调参方法、装置、设备及***
US20190318027A1 (en) Sample size determination in sampling systems
KR101704145B1 (ko) 이기종 데이터베이스를 지원하는 제어기 관리 스테이션 및 이를 포함하는 제어 시스템
CN111435328A (zh) 应用测试方法、装置、电子设备及可读存储介质
CN114067473B (zh) 综合调度***中的门禁权限管理方法、装置及设备
CN115658127A (zh) 数据处理的方法、装置、电子设备和存储介质
CN114978944A (zh) 压力测试方法、装置及计算机程序产品
CN115705470A (zh) 短信审核方法、装置及电子设备
CN111611127A (zh) 任务运行日志的处理方法、装置、设备及存储介质
CN114064376A (zh) 一种页面监测方法、装置、电子设备及介质
US10528369B2 (en) SCADA system capable of efficiently configuring windows in a screen area
CN111445689A (zh) 车辆信息的处理方法、装置及电子设备
CN115080524B (zh) 一种数据绑定方法、***、电子设备及存储介质
CN113572797B (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