CN112948031A - 一种动态窗口调整方法及装置 - Google Patents
一种动态窗口调整方法及装置 Download PDFInfo
- Publication number
- CN112948031A CN112948031A CN201911266309.4A CN201911266309A CN112948031A CN 112948031 A CN112948031 A CN 112948031A CN 201911266309 A CN201911266309 A CN 201911266309A CN 112948031 A CN112948031 A CN 112948031A
- Authority
- CN
- China
- Prior art keywords
- time
- window
- tolerable
- effective rate
- trigger
- 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 31
- 238000004364 calculation method Methods 0.000 claims abstract description 44
- 230000001960 triggered effect Effects 0.000 claims abstract description 18
- 238000007619 statistical method Methods 0.000 abstract description 9
- 230000008569 process Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000000750 progressive effect Effects 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明提供了一种动态窗口调整方法及装置,该方法包括:在本次触发时间窗口进行实时计算时,计算截止到当前的消息有效率;判断消息有效率是否大于预设的消息有效率阈值;若是,则通过减小本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间;若否,则通过增大本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间。本发明可以在每次触发时间窗口进行实时计算时,根据用户设定的消息有效率阈值来动态调整可容忍乱序时间,这就可以自适应不同应用场景的可容忍乱序时间,从而达到动态调整时间窗口触发时间的目的,及时完成时间窗口的统计分析,提高实时计算的时效性和准确性。
Description
技术领域
本发明涉及大数据技术领域,更具体地说,涉及一种动态窗口调整方法及装置。
背景技术
在实时计算领域,实时统计分析对于用户及时了解实时信息意义重大。由于实时计算的实时性要求、系统资源的限制、以及流消息的无限性,无法像离线数据一样进行分析统计,因此用于实时统计分析的消息都是基于时间窗口获得,用户基于该时间窗口内的消息完成统计分析。
现阶段,时间窗口主要基于消息时间戳(Event-Time,消息自身提供的时间戳)来划分。而为避免诸如网络异常、终端异常等因素导致部分消息延迟而引发消息乱序,在实时计算时常引入水印时间戳来标记消息应到的时间,后续接收到的消息如果其消息时间戳小于水印时间戳就会被丢弃,反之则会触发该时间窗口的计算。
但是,水印时间戳通常由时间窗口后接收到消息的最大消息时间戳减去固定的可容忍乱序时间得出。如果可容忍乱序时间设置过大,对系统资源的要求会很高、获取实时计算结果就更慢,而如果该可容忍乱序时间设置过小,就会导致大量的消息因为延迟被丢弃、造成统计结果偏差较大。
发明内容
有鉴于此,为解决上述问题,本发明提供一种动态窗口调整方法及装置。
技术方案如下:
一种动态窗口调整方法,所述方法包括:
在本次触发时间窗口进行实时计算时,计算截止到当前的消息有效率;
判断所述消息有效率是否大于预设的消息有效率阈值;
如果所述消息有效率大于所述消息有效率阈值,则通过减小本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间;
如果所述消息有效率不大于所述消息有效率阈值,则通过增大本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间。
优选的,所述计算截止到当前的消息有效率,包括:
获取截至到当前每次触发时间窗口的计算时间内读入消息条数和无效消息条数;
按照如下公式计算截止到当前的消息有效率Un:
其中,n为本次触发时间窗口的次数,Dvi为历史上第i次触发窗口的计算时间内读入消息条数,Dui为历史上第i次触发时间窗口的计算时间内无效消息条数。
优选的,所述通过减小本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间,包括:
按照如下公式减小本次触发时间窗口的可容忍乱序时间OTn:
其中,n为本次触发时间窗口的次数,OTn+1为下次触发时间窗口的可容忍乱序时间,max()表示取最大值,ceil()表示向上取整。
优选的,所述通过增大本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间,包括:
按照如下公式增大本次触发时间窗口的可容忍乱序时间OTn:
其中,n为本次触发时间窗口的次数,OTn+1为下次触发时间窗口的可容忍乱序时间,max()表示取最大值,floor()表示向下取整。
一种动态窗口调整装置,所述装置包括:
第一计算模块,用于在本次触发时间窗口进行实时计算时,计算截止到当前的消息有效率;
判断模块,用于判断所述消息有效率是否大于预设的消息有效率阈值;
第二计算模块,用于如果所述消息有效率大于所述消息有效率阈值,则通过减小本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间;
第三计算模块,用于如果所述消息有效率不大于所述消息有效率阈值,则通过增大本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间。
优选的,所述第一计算模块,具体用于:
获取截至到当前每次触发时间窗口的计算时间内读入消息条数和无效消息条数;按照如下公式计算截止到当前的消息有效率Un:
其中,n为本次触发时间窗口的次数,Dvi为历史上第i次触发窗口的计算时间内读入消息条数,Dui为历史上第i次触发时间窗口的计算时间内无效消息条数。
优选的,所述第二计算模块,具体用于:
按照如下公式减小本次触发时间窗口的可容忍乱序时间OTn:
其中,n为本次触发时间窗口的次数,OTn+1为下次触发时间窗口的可容忍乱序时间,max()表示取最大值,ceil()表示向上取整。
优选的,所述第三计算模块,具体用于:
按照如下公式增大本次触发时间窗口的可容忍乱序时间OTn:
其中,n为本次触发时间窗口的次数,OTn+1为下次触发时间窗口的可容忍乱序时间,max()表示取最大值,floor()表示向下取整。
本发明提供的一种动态窗口调整方法及装置,可以在每次触发时间窗口进行实时计算时,根据用户设定的消息有效率阈值来动态调整可容忍乱序时间,这就可以自适应不同应用场景的可容忍乱序时间,从而达到动态调整时间窗口触发时间的目的,及时完成时间窗口的统计分析,提高实时计算的时效性和准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的动态窗口调整方法的方法流程图;
图2为本发明实施例提供的动态窗口调整装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为方便理解本申请,首先对相关概念进行介绍:
消息有效率:读入的消息中未因消息乱序被丢弃的消息条数与读入的消息条数的比值;
消息有效率阈值:在实时计算时,因消息乱序,可能无法保证每条消息被统计在内,业务侧可以通过设置消息有效率阈值来保证用于统计的消息在读入的消息中的占比,从而保证统计结果的有效性,较少误差。
可容忍乱序时间:在实时计算时,因消息乱序,可能导致在统计分析时间窗口时对应的消息还未能被读入,通过水印机制设置可容忍乱序时间可以在一定程度上缓解因乱序被丢弃的消息量。
本发明实施例提供一种动态窗口调整方法,该方法的方法流程图如图1所示,包括如下步骤:
S10,在本次触发时间窗口进行实时计算时,计算截止到当前的消息有效率。
本发明实施例中,可以在每次触发时间窗口的实时计算时,统计从第一次触发时间窗口到本次触发时间窗口的时段内未被丢弃的消息条数(即有效消息)与读入的消息条数的比值,即消息有效率。
当然,在实际应用中,可以通过注册累加器V和U,来统计读入的消息条数和被丢弃的消息条数(即无效消息),每读入一条消息则累加器V增加1、每有一条消息因延迟(消息时间戳小于时间窗口对应的水印时间)被丢弃则累加器U增加1。每次触发时间窗口时,记录该计算时间内累加器V和U的量值,并重置为0。
具体实现过程中,步骤S10中“计算截止到当前的消息有效率”可以采用如下步骤:
获取截至到当前每次触发时间窗口的计算时间内读入消息条数和无效消息条数;
按照如下公式(1)计算截止到当前的消息有效率Un:
其中,n为本次触发时间窗口的次数,Dvi为历史上第i次触发窗口的计算时间内读入消息条数,Dui为历史上第i次触发时间窗口的计算时间内无效消息条数。
本发明实施例中,通过读取每次触发时间窗口所记录的累加器V和U的量值,来获得每次触发时间窗口的计算时间内读入消息条数和无效消息条数。
需要说明的是,以上本实施例使用的是截至当当前每次触发时间窗口的记录,在实际应用中可以指定其中一个或多个触发时间窗口的记录来计算消息有效率,本实施例对此不做限定。
S20,判断消息有效率是否大于预设的消息有效率阈值;若是,则执行步骤S30;若否,则执行步骤S40。
S30,通过减小本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间。
本发明实施例中,可以按照预设的减小规则,比如减小固定值减小本次触发时间窗口的可容忍乱序时间,本实施例对此不做限定。
在具体实现过程中,由于消息有效率大于消息有效率阈值表明当前的消息有效率满足用户需求,可以适当减小可容忍乱序时间,以加快触发时间窗口的统计分析。
步骤S30“通过减小本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间”可以采用如下步骤,当消息有效率与消息有效率阈值相差较大时,可容忍乱序时间的调整幅度也较大,反之,当消息有效率与消息有效率阈值相差较小时,可容忍乱序时间的调整幅度也较小:
按照如下公式(2)减小本次触发时间窗口的可容忍乱序时间OTn:
其中,n为本次触发时间窗口的次数,OTn+1为下次触发时间窗口的可容忍乱序时间,max()表示取最大值,ceil()表示向上取整。
S40,通过增大本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间。
本发明实施例中,可以按照预设的增大规则,比如增大固定值增大本次触发时间窗口的可容忍乱序时间,本实施例对此不做限定。
在具体实现过程中,由于消息有效率小于消息有效率阈值表明当前的消息有效率不满足用户需求,需要适当增大可容忍乱序时间,以降低因延迟引发的消息丢弃量。
步骤S40“通过增大本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间”可以采用如下步骤,当消息有效率与消息有效率阈值相差较大时,可容忍乱序时间的调整幅度也较大,反之,当消息有效率与消息有效率阈值相差较小时,可容忍乱序时间的调整幅度也较小:
按照如下公式(3)增大本次触发时间窗口的可容忍乱序时间OTn:
其中,n为本次触发时间窗口的次数,OTn+1为下次触发时间窗口的可容忍乱序时间,max()表示取最小值,floor()表示向下取整。
本发明实施例提供的动态窗口调整方法,可以在每次触发时间窗口进行实时计算时,根据用户设定的消息有效率阈值来动态调整可容忍乱序时间,这就可以自适应不同应用场景的可容忍乱序时间,从而达到动态调整时间窗口触发时间的目的,及时完成时间窗口的统计分析,提高实时计算的时效性和准确性。
基于上述实施例提供的动态窗口调整方法,本发明实施例则提供执行上述动态窗口调整方法的装置,该装置的结构示意图如图2所示,包括:
第一计算模块10,用于在本次触发时间窗口进行实时计算时,计算截止到当前的消息有效率;
判断模块20,用于判断消息有效率是否大于预设的消息有效率阈值;
第二计算模块30,用于如果消息有效率大于消息有效率阈值,则通过减小本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间;
第三计算模块40,用于如果消息有效率不大于消息有效率阈值,则通过增大本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间。
可选的,第一计算模块10,具体用于:
获取截至到当前每次触发时间窗口的计算时间内读入消息条数和无效消息条数;按照如下公式计算截止到当前的消息有效率Un:
其中,n为本次触发时间窗口的次数,Dvi为历史上第i次触发窗口的计算时间内读入消息条数,Dui为历史上第i次触发时间窗口的计算时间内无效消息条数。
可选的,第二计算模块30,具体用于:
按照如下公式减小本次触发时间窗口的可容忍乱序时间OTn:
其中,n为本次触发时间窗口的次数,OTn+1为下次触发时间窗口的可容忍乱序时间,max()表示取最大值,ceil()表示向上取整。
可选的,第三计算模块40,具体用于:
按照如下公式增大本次触发时间窗口的可容忍乱序时间OTn:
其中,n为本次触发时间窗口的次数,OTn+1为下次触发时间窗口的可容忍乱序时间,max()表示取最大值,floor()表示向下取整。
本发明实施例提供的动态窗口调整装置,可以在每次触发时间窗口进行实时计算时,根据用户设定的消息有效率阈值来动态调整可容忍乱序时间,这就可以自适应不同应用场景的可容忍乱序时间,从而达到动态调整时间窗口触发时间的目的,及时完成时间窗口的统计分析,提高实时计算的时效性和准确性。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (8)
1.一种动态窗口调整方法,其特征在于,所述方法包括:
在本次触发时间窗口进行实时计算时,计算截止到当前的消息有效率;
判断所述消息有效率是否大于预设的消息有效率阈值;
如果所述消息有效率大于所述消息有效率阈值,则通过减小本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间;
如果所述消息有效率不大于所述消息有效率阈值,则通过增大本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间。
5.一种动态窗口调整装置,其特征在于,所述装置包括:
第一计算模块,用于在本次触发时间窗口进行实时计算时,计算截止到当前的消息有效率;
判断模块,用于判断所述消息有效率是否大于预设的消息有效率阈值;
第二计算模块,用于如果所述消息有效率大于所述消息有效率阈值,则通过减小本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间;
第三计算模块,用于如果所述消息有效率不大于所述消息有效率阈值,则通过增大本次触发时间窗口的可容忍乱序时间得到下次触发时间窗口的可容忍乱序时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911266309.4A CN112948031A (zh) | 2019-12-11 | 2019-12-11 | 一种动态窗口调整方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911266309.4A CN112948031A (zh) | 2019-12-11 | 2019-12-11 | 一种动态窗口调整方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112948031A true CN112948031A (zh) | 2021-06-11 |
Family
ID=76226379
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911266309.4A Pending CN112948031A (zh) | 2019-12-11 | 2019-12-11 | 一种动态窗口调整方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112948031A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114900476A (zh) * | 2022-05-09 | 2022-08-12 | 中国联合网络通信集团有限公司 | 一种数据传输方法、装置、网络设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101944982A (zh) * | 2010-08-11 | 2011-01-12 | 南昌市恒鑫电子技术有限公司 | 基于时间驱动滑动窗口协议的流媒体实时转发方法 |
CN103019303A (zh) * | 2012-12-26 | 2013-04-03 | 上海新储集成电路有限公司 | 时序路径上保持时间的调节装置与方法 |
CN103457707A (zh) * | 2012-05-30 | 2013-12-18 | 华为技术有限公司 | 一种数据传输方法、装置及系统 |
WO2017133014A1 (zh) * | 2016-02-06 | 2017-08-10 | 中国科学院计算技术研究所 | Tcp传输流中基于接收端的网络性能检测方法及系统 |
-
2019
- 2019-12-11 CN CN201911266309.4A patent/CN112948031A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101944982A (zh) * | 2010-08-11 | 2011-01-12 | 南昌市恒鑫电子技术有限公司 | 基于时间驱动滑动窗口协议的流媒体实时转发方法 |
CN103457707A (zh) * | 2012-05-30 | 2013-12-18 | 华为技术有限公司 | 一种数据传输方法、装置及系统 |
CN103019303A (zh) * | 2012-12-26 | 2013-04-03 | 上海新储集成电路有限公司 | 时序路径上保持时间的调节装置与方法 |
WO2017133014A1 (zh) * | 2016-02-06 | 2017-08-10 | 中国科学院计算技术研究所 | Tcp传输流中基于接收端的网络性能检测方法及系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114900476A (zh) * | 2022-05-09 | 2022-08-12 | 中国联合网络通信集团有限公司 | 一种数据传输方法、装置、网络设备及存储介质 |
CN114900476B (zh) * | 2022-05-09 | 2023-06-30 | 中国联合网络通信集团有限公司 | 一种数据传输方法、装置、网络设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8170491B2 (en) | System and method for real-time performance and load statistics of a communications system | |
CN111142942B (zh) | 窗口数据的处理方法、装置、服务器及存储介质 | |
CN109697247B (zh) | 一种数据准确性的检测方法及装置 | |
CN110290280B (zh) | 一种终端状态的识别方法、装置及存储介质 | |
CN106789723B (zh) | 多核网络转发限速的方法和装置 | |
CN113194306B (zh) | 帧率波动评估方法、装置、移动终端、系统和存储介质 | |
CN112738538B (zh) | 直播间挂机行为检测方法、装置、电子设备和计算机可读存储介质 | |
CN107704373B (zh) | 一种数据处理方法及装置 | |
CN111405370B (zh) | 一种视频回放方法和装置 | |
CN112948031A (zh) | 一种动态窗口调整方法及装置 | |
JP6512282B2 (ja) | 通信装置、利用可能帯域計算システム、利用可能帯域計算方法及びプログラム | |
CN112530074A (zh) | 排队叫号提醒方法、装置、设备及存储介质 | |
CN109992481A (zh) | 一种用于分布式块存储的性能分析工具、方法及存储介质 | |
CN108024222B (zh) | 流量话单生成方法和装置 | |
CN107967921A (zh) | 会议系统的音量调节方法及装置 | |
CN116886949A (zh) | 直播码率控制方法、装置、电子设备及存储介质 | |
EP3480696A1 (en) | Adaptive event aggregation | |
CN111212472A (zh) | 一种误差的控制方法、装置及计算机可读存储介质 | |
CN114629826B (zh) | 一种网络最大带宽估计方法、装置、电子设备及存储介质 | |
CN110086592B (zh) | 基于虚拟时间轴的数据处理方法、装置及电子设备 | |
CN112291421A (zh) | 基于语音通信的单通检测方法、装置及存储介质、电子设备 | |
CN110351158B (zh) | 网速计算方法及系统 | |
CN113656275B (zh) | 用户活跃度预测方法、装置、电子设备和存储介质 | |
CN111125279B (zh) | 一种应用于轨迹伴随可能性分析的伴随系数计算方法 | |
CN114938353B (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 |