CN106713066A - 一种对流处理系统进行监控的方法和装置 - Google Patents

一种对流处理系统进行监控的方法和装置 Download PDF

Info

Publication number
CN106713066A
CN106713066A CN201611080188.0A CN201611080188A CN106713066A CN 106713066 A CN106713066 A CN 106713066A CN 201611080188 A CN201611080188 A CN 201611080188A CN 106713066 A CN106713066 A CN 106713066A
Authority
CN
China
Prior art keywords
time interval
processing system
stream processing
receiving unit
processing unit
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.)
Granted
Application number
CN201611080188.0A
Other languages
English (en)
Other versions
CN106713066B (zh
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.)
Qingdao Haier Technology Co Ltd
Haier Smart Home Co Ltd
Original Assignee
Haier Uplus Intelligent Technology Beijing 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 Haier Uplus Intelligent Technology Beijing Co Ltd filed Critical Haier Uplus Intelligent Technology Beijing Co Ltd
Priority to CN201611080188.0A priority Critical patent/CN106713066B/zh
Publication of CN106713066A publication Critical patent/CN106713066A/zh
Application granted granted Critical
Publication of CN106713066B publication Critical patent/CN106713066B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/067Generation of reports using time frame reporting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0681Configuration of triggering conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0888Throughput
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring

Abstract

本发明提出了一种对流处理系统进行监控的方法和装置,该方法,包括:通过在流处理系统的各个工作单元中分别设置的计数器,统计各个工作单元的数据量;按照第一时间间隔,定期将从每个工作单元的计数器中获取到的计数结果分别累加到在Redis数据库中设置的与每个工作单元相对应的累加器中,并对每个计数器进行清零操作;按照第二时间间隔,定期从每个累加器中获取累加结果,并根据所述累加结果计算出所述流处理系统的性能指标;所述第二时间间隔的时长大于所述第一时间间隔的时长;在所述流处理系统的性能指标小于预设阈值的情况下,进行警告处理。本发明可以有效的监控流处理系统的性能水平,保证流处理系统稳定、持续的运行环境。

Description

一种对流处理系统进行监控的方法和装置
技术领域
本发明涉及流处理系统技术领域,尤其涉及一种对流处理系统进行监控的方法和装置。
背景技术
流数据是一组顺序、大量、快速、连续到达的数据序列,一般情况下,流数据可被视为一个随时间延续而无限增长的动态数据集合。例如:物联网中的智能设备上报的数据就是流数据。流处理系统是一种用于对流数据进行持续性处理的软件系统,流处理系统包括串行的多个逻辑处理单元以及一个数据源接收单元。如图1所示,待处理数据从数据源接收单元进入,依次通过流数据系统中的各个逻辑处理单元。流处理系统需要稳定、持续的运行环境。但是,待处理数据流的流量会经常变化,当待处理数据流的流量突然增加时,流处理系统会因为资源不足而导致数据处理不及时,造成数据处理的延迟,影响整个业务流程。
发明内容
本发明要解决的技术问题是,提供一种对流处理系统进行监控的方法和装置,有效的监控流处理系统的性能水平,保证流处理系统稳定、持续的运行环境。
本发明采用的技术方案是,所述对流处理系统进行监控的方法,包括:
通过在流处理系统的各个工作单元中分别设置的计数器,统计各个工作单元的数据量;
按照第一时间间隔,定期将从每个工作单元的计数器中获取到的计数结果分别累加到在Redis数据库中设置的与每个工作单元相对应的累加器中,并对每个计数器进行清零操作;
按照第二时间间隔,定期从每个累加器中获取累加结果,并根据所述累加结果计算出所述流处理系统的性能指标;所述第二时间间隔的时长大于所述第一时间间隔的时长;
在所述流处理系统的性能指标小于预设阈值的情况下,进行警告处理。
进一步的,所述工作单元包括:接收单元和处理单元。
进一步的,所述按照第二时间间隔,定期从每个累加器中获取累加结果,并根据所述累加结果计算出所述流处理系统的性能指标,包括:
将在一个第二时间间隔结束时从与所述接收单元相对应的累加器中获取到的累加结果与在上个第二时间间隔结束时从与所述接收单元相对应的累加器中获取到的累加结果之差作为在所述一个第二时间间隔内所述接收单元接收的数据量;
将在所述一个第二时间间隔结束时从与所述处理单元相对应的累加器中获取到的累加结果与在上个第二时间间隔结束时从与所述处理单元相对应的累加器中获取到的累加结果之差作为在所述一个第二时间间隔内所述处理单元处理的数据量;
根据在在所述一个第二时间间隔内所述接收单元接收的数据量与所述处理单元处理的数据量计算出所述流处理系统在所述一个第二时间间隔内的性能指标。
进一步的,所述根据在所述一个第二时间间隔内所述接收单元接收的数据量与所述处理单元处理的数据量计算出所述流处理系统在所述一个第二时间间隔内的性能指标,包括:
将在所述一个第二时间间隔内所述接收单元接收的数据量除以所述第二时间间隔的时长,得到所述接收单元的接收吞吐量;
将在所述一个第二时间间隔内所述处理单元处理的数据量除以所述第二时间间隔的时长,得到所述处理单元的处理吞吐量;
将所述处理单元的处理吞吐率除以所述接收单元的接收吞吐率,得到所述处理单元在所述一个第二时间间隔内的性能指标。
进一步的,所述在所述流处理系统的性能指标小于预设阈值的情况下,进行警告处理,包括:
当所述处理单元在所述一个第二时间间隔内的性能指标小于预设阈值时,发送警告短信或邮件。
本发明还提供一种对流处理系统进行监控的装置,包括:
统计模块,用于通过在流处理系统的各个工作单元中分别设置的计数器,统计各个工作单元的数据量;
第一处理模块,用于按照第一时间间隔,定期将从每个工作单元的计数器中获取到的计数结果分别累加到在Redis数据库中设置的与每个工作单元相对应的累加器中,并对每个计数器进行清零操作;
第二处理模块,用于按照第二时间间隔,定期从每个累加器中获取累加结果,并根据所述累加结果计算出所述流处理系统的性能指标;所述第二时间间隔的时长大于所述第一时间间隔的时长;
警告模块,用于在所述流处理系统的性能指标小于预设阈值的情况下,进行警告处理。
进一步的,所述工作单元包括:接收单元和处理单元。
进一步的,,所述第二处理模块,具体包括:
接收数据计算单元,用于将在一个第二时间间隔结束时从与所述接收单元相对应的累加器中获取到的累加结果与在上个第二时间间隔结束时从与所述接收单元相对应的累加器中获取到的累加结果之差作为在所述一个第二时间间隔内所述接收单元接收的数据量;
处理数据计算单元,用于将在所述一个第二时间间隔结束时从与所述处理单元相对应的累加器中获取到的累加结果与在所述上个第二时间间隔结束时从与所述处理单元相对应的累加器中获取到的累加结果之差作为在所述一个第二时间间隔内所述处理单元处理的数据量;
性能指标计算单元,用于根据在在所述一个第二时间间隔内所述接收单元接收的数据量与所述处理单元处理的数据量计算出所述流处理系统在所述一个第二时间间隔内的性能指标。
进一步的,所述性能指标计算单元,具体用于:
将在所述一个第二时间间隔内所述接收单元接收的数据量除以所述第二时间间隔的时长,得到所述接收单元的接收吞吐量;
将在所述一个第二时间间隔内所述处理单元处理的数据量除以所述第二时间间隔的时长,得到所述处理单元的处理吞吐量;
将所述处理单元的处理吞吐率除以所述接收单元的接收吞吐率,得到所述处理单元在所述一个第二时间间隔内的性能指标。
进一步的,所述警告模块,具体用于:
当所述处理单元在所述一个第二时间间隔内的性能指标小于预设阈值时,发送警告短信或邮件。
采用上述技术方案,本发明至少具有下列优点:
本发明所述的对流处理系统进行监控的方法和装置,提供了一种比较通用的性能监控告警方案,可以保证流处理系统的稳定运行。可以对流处理系统中的多个处理单元进行同时监控,采用具有高性能的Redis数据库作为缓存数据库,并通过Redis数据库获取各个处理单元和接收单元中的计数器的计数结果。通过Redis数据库可以准确的得到流处理系统中的各个处理单元和接收单元的数据处理量值。通过计数器和累加器的两级计数更新机制,平衡了流量统计精度和监控本身的运行压力。既减少了对流处理系统本身性能的影响,也保证了流量统计的准确性。本发明可以自动的监控流处理系统的处理性能,一旦发现流处理系统的处理数据的性能大幅下降时,向维护人员发出警告邮件或短信,以提醒维护人员排查原因,及时处理流处理系统中的故障。
附图说明
图1为流处理系统处理数据的流程图;
图2为本发明第一实施例的对流处理系统进行监控的方法的流程图;
图3为本发明第二实施例的对流处理系统进行监控的方法的流程图;
图4为本发明第三实施例的对流处理系统进行监控的装置的组成结构示意图;
图5为本发明第四实施例的对流处理系统进行监控的装置的组成结构示意图。
具体实施方式
为更进一步阐述本发明为达成预定目的所采取的技术手段及功效,以下结合附图及较佳实施例,对本发明进行详细说明如后。
本发明第一实施例,一种对流处理系统进行监控的方法,如图2所示,包括以下具体步骤:
步骤S201:通过在流处理系统的各个工作单元中分别设置的计数器,统计各个工作单元的数据量。
具体的,所述工作单元包括:接收单元和处理单元。
进一步的,步骤S201,具体包括:
通过在所述流处理系统的接收单元中设置的计数器,统计所述接收单元接收的数据量;通过在所述流处理系统的各个处理单元中分别设置的计数器,分别统计所述各个处理单元处理的数据量。
当所述接收单元每接收一条流数据时,所述接收单元中的计数器加一;当所述处理单元每处理一条流数据时,所述处理单元中的计数器加一。
步骤S202:按照第一时间间隔,定期将从每个工作单元的计数器中获取到的计数结果分别累加到在Redis数据库中设置的与每个工作单元相对应的累加器中,并对每个计数器进行清零操作。
具体的,步骤S202,包括:
按照第一时间间隔,定期从所述接收单元的计数器中获取计数结果,将所述计数结果累加到在所述Redis数据库中设置的与所述接收单元相对应的累加器中,与此同时,定期从所述各个处理单元的计数器中获取计数结果,并将所述计数结果分别累加到在所述Redis数据库中设置的与各个处理单元相对应的累加器中。在所述第一时间间隔结束时,对所述流处理系统中的接收单元和各个处理单元中的计数器进行清零操作,以便于所述计数器在下个第一时间间隔内重新开始计数。
各个累加器均设置在所述Redis数据库中。通过远程调用Redis数据库提供的incrBy API来做累加器的自增操作,保证了累加器自增的原子性,即使同一处理单元在多个机器上部署和运行,也能保证累加器的计数准确性。
所述Redis数据库是一种具有很高读写性能的开源的key/value内存数据库服务,支持对存储的值做自增操作,可以当作计数器来使用。以第三方库的形式提供了多种开发语言的远程访问接口,也提供命令行来远程查看其内存内容。
对累加器中的累加结果进行更新的频率越高,得到的统计精度越高,但对Redis数据库的写入压力也越大,为了平衡写入压力和统计准确性,一般每隔几秒对所述Redis数据库的各个累加器中的累加结果进行更新。
步骤S203:按照第二时间间隔,定期从每个累加器中获取累加结果,并根据所述累加结果计算出所述流处理系统的性能指标。
所述第二时间间隔的时长大于所述第一时间间隔的时长。优选的,所述第二时间间隔的时长与所述第一时间间隔的时长之间有倍数关系。
具体的,步骤S203,包括:
将在一个第二时间间隔结束时从与所述接收单元相对应的累加器中获取到的累加结果与在上个第二时间间隔结束时从与所述接收单元相对应的累加器中获取到的累加结果之差作为在所述一个第二时间间隔内所述接收单元接收的数据量;
将在所述一个第二时间间隔结束时从与所述处理单元相对应的累加器中获取到的累加结果与在上个第二时间间隔结束时从与所述处理单元相对应的累加器中获取到的累加结果之差作为在所述一个第二时间间隔内所述处理单元处理的数据量;
根据在在所述一个第二时间间隔内所述接收单元接收的数据量与所述处理单元处理的数据量计算出所述流处理系统在所述一个第二时间间隔内的性能指标。
进一步的,所述根据在所述一个第二时间间隔内所述接收单元接收的数据量与所述处理单元处理的数据量计算出所述流处理系统在所述一个第二时间间隔内的性能指标,包括:
将在所述一个第二时间间隔内所述接收单元接收的数据量除以所述第二时间间隔的时长,得到所述接收单元的接收吞吐量;
将在所述一个第二时间间隔内所述处理单元处理的数据量除以所述第二时间间隔的时长,得到所述处理单元的处理吞吐量;
将所述处理单元的处理吞吐率除以所述接收单元的接收吞吐率,得到所述处理单元在所述一个第二时间间隔内的性能指标。
步骤S204:在所述流处理系统的性能指标小于预设阈值的情况下,进行警告处理。
具体的,步骤S204,包括:
当所述处理单元在所述一个第二时间间隔内的性能指标小于预设阈值时,发送警告短信或邮件。
本发明第二实施例,一种对流处理系统进行监控的方法,如图3所示,包括以下具体步骤:
步骤S301:在流处理系统中的接收单元和各个处理单元中分别设置一个计数器。
当所述流处理系统中的接收单元每接收一条数据时,在所述接收单元的计数器中加一。
当所述流处理系统中的任一处理单元每处理一条数据时,在所述任一处理单元的计数器中加一。
步骤S302:在Redis数据库中分别为所述流处理系统中的接收单元和各个处理单元设置对应的累加器。
所述Redis数据库按照设定时间间隔定期将从所述接收单元的计数器中获取到的计数结果累加到与所述接收单元相对应的累加器中,并将从任一处理单元的计数器中获取到的计数结果累加到与所述任一处理单元相互对应的累加器中。
具体的,所述Redis数据库通过IncrBy命令,从计数器中获取计数结果。Redis数据库可以保证累加器的自增累加操作的原子性,即便每个处理单元中运行着多个实例,也可以保证每个累加器的累加结果的准确性。
步骤S303:当所述Redis数据库完成各个累加器的数据更新时,将流处理系统中的接收单元和各个处理单元中的计数器清零,各个计数器重新开始计数。
步骤S304:按照设定的监控周期的时长,定期从Redis数据库中的各个累加器中获取当前累加数值,并从本地文件中获取接收单元的历史累加数值和各个处理单元的历史累加数值。
所述监控周期的时长大于所述设定时间间隔的时长,并且所述监控周期的时长与所述设定时间间隔的时长之间存在倍数关系。
所述Redis数据库中的任一累加器的当前累加数值为截止至当前监控周期结束时,所述任一累加器中的累加数值。
所述本地文件用于存储截止至上个监控周期结束时,从Redis数据库中获得到的各个累加器的累加数值。
所述本地文件中的任一单元的历史累加数值为截止至上个监控周期结束时,从Redis数据库中获得到的与所述任一单元对应的累加器中的累加数值。
步骤S305:针对所述流处理系统中的任一单元,将所述任一单元从所述Redis数据库中对应的累加器中获取到的当前累加数值减去从所述本地文件中获取到的所述任一单元的历史累加数值,得到所述任一单元在当前监控周期内的数据量值。
步骤S306:将所述任一单元在当前监控周期内的数据量值除以所述控制周期的时长,得到所述任一单元的吞吐率。
步骤S307:将任一处理单元的吞吐率除以接收单元的吞吐率,得到所述任一处理单元的性能指标。
步骤S308:判断所述流处理系统中是否存在处理单元的性能指标小于预设阈值的情况,若是,则向所述流处理系统的维修人员发生警告短信或邮件;若否,则继续监测所述流处理系统的运行状态。
进一步的,所述方法还包括:
将从所述Redis数据库中获取到的截止至当前监控周期结束时各个累加器的累加数值存储到所述本地文件中,以替换所述本地文件中原先存储的截止至上个监控周期结束时的接收单元的历史累加数值和各个处理单元的历史累加数值,以便于在下个监控周期内的监控计算。
本发明第三实施例,一种对流处理系统进行监控的装置,如图4所示,具体包括以下组成部分:
1)统计模块401,用于通过在流处理系统的各个工作单元中分别设置的计数器,统计各个工作单元的数据量。
具体的,所述工作单元包括:接收单元和处理单元。
进一步的,统计模块401,具体用于:
通过在所述流处理系统的接收单元中设置的计数器,统计所述接收单元接收的数据量;通过在所述流处理系统的各个处理单元中分别设置的计数器,分别统计所述各个处理单元处理的数据量。
2)第一处理模块402,用于按照第一时间间隔,定期将从每个工作单元的计数器中获取到的计数结果分别累加到在Redis数据库中设置的与每个工作单元相对应的累加器中,并对每个计数器进行清零操作。
具体的,一处理模块402,用于:
按照第一时间间隔,定期从所述接收单元的计数器中获取计数结果,将所述计数结果累加到在所述Redis数据库中设置的与所述接收单元相对应的累加器中,与此同时,定期从所述各个处理单元的计数器中获取计数结果,并将所述计数结果分别累加到在所述Redis数据库中设置的与各个处理单元相对应的累加器中。在所述第一时间间隔结束时,对所述流处理系统中的接收单元和各个处理单元中的计数器进行清零操作,以便于所述计数器在下个第一时间间隔内重新开始计数。
进一步的,各个累加器均设置在所述Redis数据库中。一处理模块402通过远程调用incrBy API来做累加器的自增操作,保证了累加器自增的原子性,即使同一处理单元在多个机器上部署和运行,也能保证累加器的计数准确性。
所述Redis数据库是一种具有很高读写性能的开源的key/value内存数据库服务,支持对存储的值做自增操作,可以当作计数器来使用。以第三方库的形式提供了多种开发语言的远程访问接口,也提供命令行来远程查看其内存内容。
对累加器中的累加结果进行更新的频率越高,得到的统计精度越高,但对Redis数据库的写入压力也越大,为了平衡写入压力和统计准确性,一般每隔几秒对所述Redis数据库的各个累加器中的累加结果进行更新。
3)第二处理模块403,用于按照第二时间间隔,定期从每个累加器中获取累加结果,并根据所述累加结果计算出所述流处理系统的性能指标。
所述第二时间间隔的时长大于所述第一时间间隔的时长。优选的,所述第二时间间隔的时长与所述第一时间间隔的时长之间有倍数关系。
具体的,第二处理模块403,具体包括:
接收数据计算单元,用于将在一个第二时间间隔结束时从与所述接收单元相对应的累加器中获取到的累加结果与在上个第二时间间隔结束时从与所述接收单元相对应的累加器中获取到的累加结果之差作为在所述一个第二时间间隔内所述接收单元接收的数据量;
处理数据计算单元,用于将在所述一个第二时间间隔结束时从与所述处理单元相对应的累加器中获取到的累加结果与在上个第二时间间隔结束时从与所述处理单元相对应的累加器中获取到的累加结果之差作为在所述一个第二时间间隔内所述处理单元处理的数据量;
性能指标计算单元,用于根据在在所述一个第二时间间隔内所述接收单元接收的数据量与所述处理单元处理的数据量计算出所述流处理系统在所述一个第二时间间隔内的性能指标。
进一步的,所述性能指标计算单元,具体用于:
将在所述一个第二时间间隔内所述接收单元接收的数据量除以所述第二时间间隔的时长,得到所述接收单元的接收吞吐量;
将在所述一个第二时间间隔内所述处理单元处理的数据量除以所述第二时间间隔的时长,得到所述处理单元的处理吞吐量;
将所述处理单元的处理吞吐率除以所述接收单元的接收吞吐率,得到所述处理单元在所述一个第二时间间隔内的性能指标。
4)警告模块404,用于在所述流处理系统的性能指标小于预设阈值的情况下,进行警告处理。
具体的,警告模块404,用于:
当所述处理单元在所述一个第二时间间隔内的性能指标小于预设阈值时,发送警告短信或邮件。
本发明第四实施例,一种对流处理系统进行监控的装置,如图5所示,具体包括以下组成部分:
1)计数器设置模块501,用于在流处理系统中的接收单元和各个处理单元中分别设置一个计数器。
当所述流处理系统中的接收单元每接收一条数据时,在所述接收单元的计数器中加一。
当所述流处理系统中的任一处理单元每处理一条数据时,在所述任一处理单元的计数器中加一。
2)累加器设置模块502,用于在Redis数据库中分别为所述流处理系统中的接收单元和各个处理单元设置对应的累加器。
所述Redis数据库按照设定时间间隔定期将从所述接收单元的计数器中获取到的计数结果累加到与所述接收单元相对应的累加器中,并将从任一处理单元的计数器中获取到的计数结果累加到与所述任一处理单元相互对应的累加器中。
具体的,所述Redis数据库通过IncrBy命令,从计数器中获取计数结果。Redis数据库可以保证累加器的自增累加操作的原子性,即便每个处理单元中运行着多个实例,也可以保证每个累加器的累加结果的准确性。
3)清零模块503,用于当所述Redis数据库完成各个累加器的数据更新时,将流处理系统中的接收单元和各个处理单元中的计数器清零,各个计数器重新开始计数。
4)获取模块504,用于按照设定的监控周期的时长,定期从Redis数据库中的各个累加器中获取当前累加数值,并从本地文件中获取接收单元的历史累加数值和各个处理单元的历史累加数值。
所述监控周期的时长大于所述设定时间间隔的时长,并且所述监控周期的时长与所述设定时间间隔的时长之间存在倍数关系。
所述Redis数据库中的任一累加器的当前累加数值为截止至当前监控周期结束时,所述任一累加器中的累加数值。
所述本地文件用于存储截止至上个监控周期结束时,从Redis数据库中获得到的各个累加器的累加数值。
所述本地文件中的任一单元的历史累加数值为截止至上个监控周期结束时,从Redis数据库中获得到的与所述任一单元对应的累加器中的累加数值。
5)第一计算模块505,用于针对所述流处理系统中的任一单元,将所述任一单元从所述Redis数据库中对应的累加器中获取到的当前累加数值减去从所述本地文件中获取到的所述任一单元的历史累加数值,得到所述任一单元在当前监控周期内的数据量值。
6)第二计算模块506,用于将所述任一单元在当前监控周期内的数据量值除以所述控制周期的时长,得到所述任一单元的吞吐率。
7)第三计算模块507,用于将任一处理单元的吞吐率除以接收单元的吞吐率,得到所述任一处理单元的性能指标。
8)判断模块508,用于判断所述流处理系统中是否存在处理单元的性能指标小于预设阈值的情况,若是,则向所述流处理系统的维修人员发生警告短信或邮件;若否,则继续监测所述流处理系统的运行状态。
进一步的,所述装置还包括:
存储模块,用于将将从所述Redis数据库中获取到的截止至当前监控周期结束时各个累加器的累加数值存储到所述本地文件中,以替换所述本地文件中原先存储的截止至上个监控周期结束时的接收单元的历史累加数值和各个处理单元的历史累加数值,以便于在下个监控周期内的监控计算。
本发明实施例中介绍的对流处理系统进行监控的方法和装置,提供了一种比较通用的性能监控告警方案,可以保证流处理系统的稳定运行。可以对流处理系统中的多个处理单元进行同时监控,采用具有高性能的Redis数据库作为缓存数据库,并通过Redis数据库获取各个处理单元和接收单元中的计数器的计数结果。通过Redis数据库可以准确的得到流处理系统中的各个处理单元和接收单元的数据处理量值。通过计数器和累加器的两级计数更新机制,平衡了流量统计精度和监控本身的运行压力。既减少了对流处理系统本身性能的影响,也保证了流量统计的准确性。本发明可以自动的监控流处理系统的处理性能,一旦发现流处理系统的处理数据的性能大幅下降时,向维护人员发出警告邮件或短信,以提醒维护人员排查原因,及时处理流处理系统中的故障。
通过具体实施方式的说明,应当可对本发明为达成预定目的所采取的技术手段及功效得以更加深入且具体的了解,然而所附图示仅是提供参考与说明之用,并非用来对本发明加以限制。

Claims (10)

1.一种对流处理系统进行监控的方法,其特征在于,包括:
通过在流处理系统的各个工作单元中分别设置的计数器,统计各个工作单元的数据量;
按照第一时间间隔,定期将从每个工作单元的计数器中获取到的计数结果分别累加到在Redis数据库中设置的与每个工作单元相对应的累加器中,并对每个计数器进行清零操作;
按照第二时间间隔,定期从每个累加器中获取累加结果,并根据所述累加结果计算出所述流处理系统的性能指标;所述第二时间间隔的时长大于所述第一时间间隔的时长;
在所述流处理系统的性能指标小于预设阈值的情况下,进行警告处理。
2.根据权利要求1所述的对流处理系统进行监控的方法,其特征在于,所述工作单元包括:接收单元和处理单元。
3.根据权利要求2所述的对流处理系统进行监控的方法,其特征在于,所述按照第二时间间隔,定期从每个累加器中获取累加结果,并根据所述累加结果计算出所述流处理系统的性能指标,包括:
将在一个第二时间间隔结束时从与所述接收单元相对应的累加器中获取到的累加结果与在上个第二时间间隔结束时从与所述接收单元相对应的累加器中获取到的累加结果之差作为在所述一个第二时间间隔内所述接收单元接收的数据量;
将在所述一个第二时间间隔结束时从与所述处理单元相对应的累加器中获取到的累加结果与在上个第二时间间隔结束时从与所述处理单元相对应的累加器中获取到的累加结果之差作为在所述一个第二时间间隔内所述处理单元处理的数据量;
根据在在所述一个第二时间间隔内所述接收单元接收的数据量与所述处理单元处理的数据量计算出所述流处理系统在所述一个第二时间间隔内的性能指标。
4.根据权利要求3所述的对流处理系统进行监控的方法,其特征在于,所述根据在所述一个第二时间间隔内所述接收单元接收的数据量与所述处理单元处理的数据量计算出所述流处理系统在所述一个第二时间间隔内的性能指标,包括:
将在所述一个第二时间间隔内所述接收单元接收的数据量除以所述第二时间间隔的时长,得到所述接收单元的接收吞吐量;
将在所述一个第二时间间隔内所述处理单元处理的数据量除以所述第二时间间隔的时长,得到所述处理单元的处理吞吐量;
将所述处理单元的处理吞吐率除以所述接收单元的接收吞吐率,得到所述处理单元在所述一个第二时间间隔内的性能指标。
5.根据权利要求3所述的对流处理系统进行监控的方法,其特征在于,所述在所述流处理系统的性能指标小于预设阈值的情况下,进行警告处理,包括:
当所述处理单元在所述一个第二时间间隔内的性能指标小于预设阈值时,发送警告短信或邮件。
6.一种对流处理系统进行监控的装置,其特征在于,包括:
统计模块,用于通过在流处理系统的各个工作单元中分别设置的计数器,统计各个工作单元的数据量;
第一处理模块,用于按照第一时间间隔,定期将从每个工作单元的计数器中获取到的计数结果分别累加到在Redis数据库中设置的与每个工作单元相对应的累加器中,并对每个计数器进行清零操作;
第二处理模块,用于按照第二时间间隔,定期从每个累加器中获取累加结果,并根据所述累加结果计算出所述流处理系统的性能指标;所述第二时间间隔的时长大于所述第一时间间隔的时长;
警告模块,用于在所述流处理系统的性能指标小于预设阈值的情况下,进行警告处理。
7.根据权利要求6所述的对流处理系统进行监控的装置,其特征在于,所述工作单元包括:接收单元和处理单元。
8.根据权利要求7所述的对流处理系统进行监控的装置,其特征在于,所述第二处理模块,具体包括:
接收数据计算单元,用于将在一个第二时间间隔结束时从与所述接收单元相对应的累加器中获取到的累加结果与在上个第二时间间隔结束时从与所述接收单元相对应的累加器中获取到的累加结果之差作为在所述一个第二时间间隔内所述接收单元接收的数据量;
处理数据计算单元,用于将在所述一个第二时间间隔结束时从与所述处理单元相对应的累加器中获取到的累加结果与在所述上个第二时间间隔结束时从与所述处理单元相对应的累加器中获取到的累加结果之差作为在所述一个第二时间间隔内所述处理单元处理的数据量;
性能指标计算单元,用于根据在在所述一个第二时间间隔内所述接收单元接收的数据量与所述处理单元处理的数据量计算出所述流处理系统在所述一个第二时间间隔内的性能指标。
9.根据权利要求8所述的对流处理系统进行监控的装置,其特征在于,所述性能指标计算单元,具体用于:
将在所述一个第二时间间隔内所述接收单元接收的数据量除以所述第二时间间隔的时长,得到所述接收单元的接收吞吐量;
将在所述一个第二时间间隔内所述处理单元处理的数据量除以所述第二时间间隔的时长,得到所述处理单元的处理吞吐量;
将所述处理单元的处理吞吐率除以所述接收单元的接收吞吐率,得到所述处理单元在所述一个第二时间间隔内的性能指标。
10.根据权利要求8所述的对流处理系统进行监控的装置,其特征在于,所述警告模块,具体用于:
当所述处理单元在所述一个第二时间间隔内的性能指标小于预设阈值时,发送警告短信或邮件。
CN201611080188.0A 2016-11-30 2016-11-30 一种对流处理系统进行监控的方法和装置 Active CN106713066B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611080188.0A CN106713066B (zh) 2016-11-30 2016-11-30 一种对流处理系统进行监控的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611080188.0A CN106713066B (zh) 2016-11-30 2016-11-30 一种对流处理系统进行监控的方法和装置

Publications (2)

Publication Number Publication Date
CN106713066A true CN106713066A (zh) 2017-05-24
CN106713066B CN106713066B (zh) 2020-11-10

Family

ID=58934247

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611080188.0A Active CN106713066B (zh) 2016-11-30 2016-11-30 一种对流处理系统进行监控的方法和装置

Country Status (1)

Country Link
CN (1) CN106713066B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108450033A (zh) * 2017-05-31 2018-08-24 华为技术有限公司 跨平台流式数据流

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1852147A (zh) * 2005-09-19 2006-10-25 华为技术有限公司 一种实现业务吞吐率统计的方法及系统
CN101383737A (zh) * 2008-08-25 2009-03-11 中兴通讯股份有限公司 一种基于链路层发现协议进行链路质量检测的方法及系统
CN101729197A (zh) * 2008-10-14 2010-06-09 华为技术有限公司 一种丢包率检测方法、装置及系统
CN101803302A (zh) * 2007-08-24 2010-08-11 Lm爱立信电话有限公司 用于确定数据通信的延迟和吞吐量的方法与装置
US20140032974A1 (en) * 2012-07-25 2014-01-30 Texas Instruments Incorporated Method for generating descriptive trace gaps
CN103782270A (zh) * 2013-10-28 2014-05-07 华为技术有限公司 流处理系统的管理方法和相关设备及系统
CN104252458A (zh) * 2013-06-25 2014-12-31 博雅网络游戏开发(深圳)有限公司 数据分析方法和装置
CN105630712A (zh) * 2014-10-28 2016-06-01 深圳市中兴微电子技术有限公司 计数器及计数方法
CN105897501A (zh) * 2015-12-17 2016-08-24 乐视云计算有限公司 数据监控方法及装置
CN105939234A (zh) * 2016-06-15 2016-09-14 乐视控股(北京)有限公司 数据监控方法及装置

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1852147A (zh) * 2005-09-19 2006-10-25 华为技术有限公司 一种实现业务吞吐率统计的方法及系统
CN101803302A (zh) * 2007-08-24 2010-08-11 Lm爱立信电话有限公司 用于确定数据通信的延迟和吞吐量的方法与装置
CN101383737A (zh) * 2008-08-25 2009-03-11 中兴通讯股份有限公司 一种基于链路层发现协议进行链路质量检测的方法及系统
CN101729197A (zh) * 2008-10-14 2010-06-09 华为技术有限公司 一种丢包率检测方法、装置及系统
US20140032974A1 (en) * 2012-07-25 2014-01-30 Texas Instruments Incorporated Method for generating descriptive trace gaps
CN104252458A (zh) * 2013-06-25 2014-12-31 博雅网络游戏开发(深圳)有限公司 数据分析方法和装置
CN103782270A (zh) * 2013-10-28 2014-05-07 华为技术有限公司 流处理系统的管理方法和相关设备及系统
CN105630712A (zh) * 2014-10-28 2016-06-01 深圳市中兴微电子技术有限公司 计数器及计数方法
CN105897501A (zh) * 2015-12-17 2016-08-24 乐视云计算有限公司 数据监控方法及装置
CN105939234A (zh) * 2016-06-15 2016-09-14 乐视控股(北京)有限公司 数据监控方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108450033A (zh) * 2017-05-31 2018-08-24 华为技术有限公司 跨平台流式数据流
CN108450033B (zh) * 2017-05-31 2020-12-15 华为技术有限公司 跨平台流式数据流

Also Published As

Publication number Publication date
CN106713066B (zh) 2020-11-10

Similar Documents

Publication Publication Date Title
CN104572391A (zh) 监控告警策略配置方法及装置、监控告警方法及装置
CN110740061B (zh) 故障预警方法、装置及计算机存储介质
CN109981328B (zh) 一种故障预警方法及装置
CN110995482B (zh) 告警分析方法、装置、计算机设备及计算机可读存储介质
CN111143102B (zh) 异常数据检测方法、装置、存储介质及电子设备
CN107918579B (zh) 一种批量生成基线数据的方法和装置
CN108848072A (zh) 一种基于相对熵的车载can总线异常检测方法
CN106202389A (zh) 一种基于交易数据的异常监测方法及装置
US20160253425A1 (en) Bloom filter based log data analysis
CN105095056A (zh) 一种数据仓库数据监控的方法
CN106202280B (zh) 一种信息处理方法及服务器
CN111241151A (zh) 一种业务数据分析预警方法、系统、存储介质及计算设备
CN105681128A (zh) 一种用于大数据系统状态监控的方法和装置
CN110781220A (zh) 故障预警方法、装置、存储介质和电子设备
CN110597860A (zh) 数据识别方法及其装置、电子设备和介质
CN114201201A (zh) 一种对业务系统异常检测方法、装置及设备
CN106951360B (zh) 数据统计完整度计算方法和系统
CN106713066A (zh) 一种对流处理系统进行监控的方法和装置
CN114064402A (zh) 服务器系统监控方法
CN106933673A (zh) 调整组件逻辑线程数量的方法及装置
CN110673973A (zh) 应用程序编程接口api的异常确定方法和装置
CN115426287A (zh) 一种系统监控和优化方法、装置、电子设备及介质
CN110113471B (zh) 号码监测方法及装置
CN114331688A (zh) 一种银行柜面系统业务批量运行状态检测方法及装置
CN106302594B (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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210219

Address after: 266101 Haier Industrial Park, 1 Haier Road, Laoshan District, Shandong, Qingdao

Patentee after: QINGDAO HAIER TECHNOLOGY Co.,Ltd.

Patentee after: Haier Zhijia Co.,Ltd.

Address before: Room 601-606, 6 / F, Pacific International Building, 106 Zhichun Road, Haidian District, Beijing 100086

Patentee before: HAIER YOUJIA INTELLIGENT TECHNOLOGY (BEIJING) Co.,Ltd.