CN108121507B - 一种数据处理方法、装置以及电子设备 - Google Patents

一种数据处理方法、装置以及电子设备 Download PDF

Info

Publication number
CN108121507B
CN108121507B CN201711274747.6A CN201711274747A CN108121507B CN 108121507 B CN108121507 B CN 108121507B CN 201711274747 A CN201711274747 A CN 201711274747A CN 108121507 B CN108121507 B CN 108121507B
Authority
CN
China
Prior art keywords
data
agents
agent
data volume
guided
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.)
Active
Application number
CN201711274747.6A
Other languages
English (en)
Other versions
CN108121507A (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.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and Technology 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 Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN201711274747.6A priority Critical patent/CN108121507B/zh
Publication of CN108121507A publication Critical patent/CN108121507A/zh
Application granted granted Critical
Publication of CN108121507B publication Critical patent/CN108121507B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0626Reducing size or complexity of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明实施例提供了一种数据处理方法、装置以及电子设备,其中,所述数据处理方法包括:按照预设时间周期,获取当前时间段内代理服务Agent中缓存的待导流数据的第一数据量;获取所述当前时间段相邻的上一时间段内,所述Agent中缓存的待导流数据的第二数据量;根据所述第一数据量与所述第二数据量,确定所述Agent的个数变更方式,所述个数变更方式包括,删除、增加或不变;按照所述Agent的个数变更方式,对应变更当前接入Agent的个数。本发明实施例实现了合理使用Agent进行数据导流,减少资源浪费。

Description

一种数据处理方法、装置以及电子设备
技术领域
本发明涉及计算机技术领域,特别是涉及一种数据处理方法、装置以及电子设备。
背景技术
在实际生产中,经常遇到需要把数据流导流到另一个存储***中的情况。现有技术中,可以通过代理服务Agent将数据流从一个***导流到另一个存储***。为了保证数据导流的实时性,通常将数据流的流量顶点值设为导流的固定吞吐量值,即按照该固定吞吐量值设置需要的Agent的个数,且该Agent的个数是一成不变的。
然而,发明人在实现本发明的过程中发现,现有技术至少存在如下问题:
实际导流过程中,数据流的流量大小是不断变化的,可能随着在线用户的数量变化呈现周期性变化,或者因为其他原因发生变化。而进行数据导流使用的Agent是固定不变的,这可能导致Agent资源浪费。
发明内容
本发明实施例的目的在于提供一种数据处理方法、装置以及电子设备,以实现合理使用Agent进行数据导流,减少资源浪费。具体技术方案如下:
为达到上述发明目的,本发明实施例公开了一种数据处理方法,包括:
按照预设时间周期,获取当前时间段内代理服务Agent中缓存的待导流数据的第一数据量;
获取所述当前时间段相邻的上一时间段内,所述Agent中缓存的待导流数据的第二数据量;
根据所述第一数据量与所述第二数据量,确定所述Agent的个数变更方式,所述个数变更方式包括,删除、增加或不变;
按照所述Agent的个数变更方式,对应变更当前接入Agent的个数。
可选地,在所述Agent中缓存待导流数据的过程包括:
将获取的待导流数据发送到接收方的过程中,当获取待导流数据的速率大于发送待导流数据的速率时,在所述Agent中缓存待导流数据。
可选地,所述根据所述第一数据量与所述第二数据量,确定所述Agent的个数变更方式,包括:
将所述第一数据量与所述第二数据量做差值运算,并将所述差值运算结果与所述Agent的吞吐量做商运算,得到所述第一数据量与所述第二数据量之间的函数关系;
根据所述函数关系,确定所述Agent的个数变更方式。
可选地,所述根据所述函数关系,确定所述Agent的个数变更方式,包括:
计算所述函数关系的结果值;
当所述结果值为正数时,确定所述Agent的个数变更方式为增加对应个数的Agent;
或者,当所述结果值为零且所述第一数据量等于所述第二数据量不为零时,确定所述Agent的个数变更方式为不变;
或者,当所述结果值为零且所述第一数据量等于所述第二数据量为零时,确定所述Agent的个数变更方式为删除一个Agent;
或者,当所述结果值为负数时,确定所述Agent的个数变更方式为删除对应个数的Agent。
为达到上述发明目的,本发明实施例还公开了一种数据处理装置,包括:
第一数据量获取模块,用于按照预设时间周期,获取当前时间段内代理服务Agent中缓存的待导流数据的第一数据量;
第二数据量获取模块,用于获取所述当前时间段相邻的上一时间段内,所述Agent中缓存的待导流数据的第二数据量;
变更方式确定模块,用于根据所述第一数据量与所述第二数据量,确定所述Agent的个数变更方式,所述个数变更方式包括,删除、增加或不变;
Agent变更模块,用于按照所述Agent的个数变更方式,对应变更当前接入Agent的个数。
可选地,所述装置还包括:
待导流数据缓存模块,用于将获取的待导流数据发送到接收方的过程中,当获取待导流数据的速率大于发送待导流数据的速率时,在所述Agent中缓存待导流数据。
可选地,所述变更方式确定模块,包括:
函数关系确定子模块,用于将所述第一数据量与所述第二数据量做差值运算,并将所述差值运算结果与所述Agent的吞吐量做商运算,得到所述第一数据量与所述第二数据量之间的函数关系;
变更方式确定子模块,用于根据所述函数关系,确定所述Agent的个数变更方式。
可选地,所述变更方式确定子模块,具体用于计算所述函数关系的结果值;当所述结果值为正数时,确定所述Agent的个数变更方式为增加对应个数的Agent;或者,当所述结果值为零且所述第一数据量等于所述第二数据量不为零时,确定所述Agent的个数变更方式为不变;或者,当所述结果值为零且所述第一数据量等于所述第二数据量为零时,确定所述Agent的个数变更方式为删除一个Agent;或者,当所述结果值为负数时,确定所述Agent的个数变更方式为删除对应个数的Agent。
为达到上述发明目的,本发明实施例公开了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现上述任一所述的数据处理方法。
为达到上述发明目的,本发明实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的数据处理方法。
为达到上述发明目的,本发明实施例还公开了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的数据处理方法。
本发明实施例提供的一种数据处理方法、装置以及电子设备,实现了合理使用Agent进行数据导流,减少了资源的浪费。具体地,按照时间周期获取当前时间Agent中缓存的待导流数据的数据量,即为第一数据量;以及获取与该当前时间段相邻的上一时间段内,该Agent中缓存的待导流数据的数据量,即为第二数据量;通过第一数据量与第二数据量的关系,得到当前所需Agent的个数,进而按照Agent实时的需求量对应变更Agent的数目。可见,本发明实施例可根据流量的实时变化,进而确定所需Agent的数目,达到动态及时的调整Agent的数目,进而有效避免资源的浪费。另外,本发明实施例的数据处理方法可实现自动的调整当前Agent的数目,无须人工介入,提高了工作效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例的一种数据处理方法流程图;
图2为本发明实施例的一种数据处理方法中Agent个数变更方式的确定方法流程图;
图3为本发明实施例的一种数据处理方法***结构图;
图4为本发明实施例的另一种数据处理方法流程图;
图5为本发明实施例的一种数据处理装置结构示意图;
图6为本发明实施例的一种电子设备结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
随着信息技术的快速发展,数据信息也越来越庞大,如何将一个***的数据快速准确的导流到另外的***中进行存储,也是数据处理过程中需要关注的问题。现有技术中有通过代理服务Agent将数据流从一个***导流到另一个存储***的方法。为了保证数据导流的实时性,通常将数据流的流量顶点值设为导流的固定吞吐量值,即按照该固定吞吐量值设置需要的Agent的个数,且该Agent的个数是一成不变的。然而这种导流方式存在的问题是,当前数据流的流量较小时导致Agent资源浪费。
为了解决上述问题,本发明实施例公开了一种数据处理方法、装置以及电子设备,通过周期性的获取缓存的数据量,进而变更Agent的个数以适应当前导流的数据量,达到合理使用Agent进行数据导流,减少资源浪费的目的。具体实施方式如下:
为达到上述发明目的,本发明实施例公开了一种数据处理方法,如图1所示。图1为本发明实施例的一种数据处理方法流程图,包括:
S101,按照预设时间周期,获取当前时间段内代理服务Agent中缓存的待导流数据的第一数据量。
在本发明实施例中,通过周期性的检测代理服务Agent中缓存的待导流数据,以及与该当前检测的时间段相邻的上一时间段内Agent中缓存的待导流数据的数据量之间的关系,确定当前是否需要变更Agent的个数。
需要说明的是,本发明实施例的执行主体为设置有本发明的数据处理方法的软件程序,或者带有本发明实施例的数据处理方法的硬件设备。本领域技术人员可以理解的是,以下步骤的执行主体均为同一执行主体,故不再一一赘述。
在本步骤中,可设置预设时间周期,进而当到达预设时间周期时,执行主体获取Agent中当前时间段缓存的待导流数据量,即为本发明实施例的第一数据量。例如,预设时间周期设置为30分钟,当前时间为12:00,则可获取每个Agent中11:30-12:00缓存的待导流数据量。
S102,获取当前时间段相邻的上一时间段内,Agent中缓存的待导流数据的第二数据量。
上述在获取了当前时间段所有Agent中缓存的待导流数据量,即为本发明实施例的第一数据量后,通过执行主体获取与该当前时间段相邻的上一时间段内Agent中缓存的待导流数据量,即为本发明实施例的第二数据量。例如,预设时间周期设置为30分钟,当前时间为12:00,则获取每个Agent中11:00-11:30缓存的待导流数据量。
S103,根据第一数据量与第二数据量,确定Agent的个数变更方式,个数变更方式包括,删除、增加或不变。
上述在获取了第一数据量与第二数据量后,通过第一数据量与第二数据量以及提前设置的每个Agent的吞吐量,可确定出当前时间Agent的个数变更方式。该Agent的个数变更方式为在原有Agent个数的基础上增加Agent的个数,在原有Agent个数的基础上减少Agent的个数,以及原有Agent的个数不变这三种情况。
具体地,可以通过第一数据量与第二数据量所确定的预设函数关系,计算出该预设函数关系的结果值,当该结果为正数时,对应的变更方式为增加Agent的个数;当该结果值为-1时,对应的变更方式为Agent个数不变;当结果值为非-1的负数时,对应的变更方式为删除Agent。
S104,按照Agent的个数变更方式,对应变更当前接入Agent的个数。
上述在确定了当前时间所对应的Agent的个数变更方式后,按照上述确定的Agent的个数变更方式,在原接入Agent个数的基础上,对应增加或者减少与该结果值相应个数的Agent。
本发明实施例提供的一种数据处理方法,实现了合理使用Agent进行数据导流,减少了资源的浪费。具体地,按照时间周期获取当前时间Agent中缓存的待导流数据的数据量,即为第一数据量;以及获取与该当前时间段相邻的上一时间段内,该Agent中缓存的待导流数据的数据量,即为第二数据量;通过第一数据量与第二数据量的关系,得到当前所需Agent的个数,进而按照Agent实时的需求量对应变更Agent的数目。可见,本发明实施例可根据流量的实时变化,进而确定所需的Agent的数目,达到动态的调整Agent的数目,进而有效避免资源的浪费。另外,本发明实施例的数据处理方法可实现自动的调整当前Agent的数目,无须人工介入,提高了工作效率。
可选地,在本发明实施例的数据处理方法的一种实施例中,在Agent中缓存待导流数据的过程包括:
将获取的待导流数据发送到接收方的过程中,当获取待导流数据的速率大于发送待导流数据的速率时,在Agent中缓存待导流数据。
Agent技术是一种处于一定环境下包装的计算机***。它具有自主性、交互性、反应性、主动性,此外还应具备一些人类才具有的特性,如知识、信念、义务、意图等。
Agent的自主性主要体现在:Agent具有属于其自身的计算资源和局部于自身的行为控制机制,能够在没有外界直接操纵的情况下,根据其内部状态和感知到的环境信息,决定和控制自身的行为。例如,SNMP(Simple NetworkManagement Protocol,简单网络管理协议)中的Agent就是独立运行在被管理单元上的自主进程;Agent的交互性主要体现在:Agent能够与其他Agent(包括人)用Agent通信语言实施灵活多样的交互,能够有效地与其他Agent协同工作。例如,一个Internet上的用户需要使用Agent通信语言向主动服务Agent陈述信息需求。
Agent的反应性主要体现在:Agent能够感知所处的环境(可能是物理世界、操纵图形界面的用户或其他Agent等),并对相关事件作出适时反应。例如,一个模拟飞机的Agent能够对用户的操纵作出适时反应;Agent的主动性主要体现在:Agent能够遵循承诺采取主动行动,表现出面向目标的行为。例如,一个Internet上的主动服务Agent,在获得新的信息之后能够按照约定主动将其提交给需要的用户,一个工作流管理Agent,能够按照约定将最新的工作进展情况主动通报给有关的工作站。
本发明实施例通过Agent技术的上述特性,在待导流数据端与待导流数据的接收方之间设置Agent技术以及通过弹性资源池来管理各Agent,从而通过Agent实现数据导流,以及通过弹性资源池来管理各Agent实现对待导流数据的缓存。弹性资源池类似基于分布式资源管理框架,如mesos等,可以随时便捷的申请、释放、伸缩资源的使用量的服务。
Agent内部有三个模块,分别负责拉取数据,缓存数据,发送数据。
在本发明实施例中,Agent将待导流数据发送到接收方的过程中,获取待导流数据的速率以及发送待导流数据的速率,进而比较两者速率的大小的关系。当获取待导流数据的速率大于发送待导流数据的速率时,就会在Agent中产生剩余的数据量,即出现缓存待导流数据的情况。
将获取的待导流数据发送到接收方的过程中,当获取待导流数据的速率大于发送待导流数据的速率时,在Agent中缓存待导流数据。
可见,通过本发明实施例,可实现实时的检测Agent的服务效率,即可检测Agent获取待导流数据的速率以及Agent发送待导流数据的速率,进而还可判断当前时间Agent中是否缓存有待导流数据。
可选地,在本发明实施例的数据处理方法的一种实施例中,根据第一数据量与第二数据量,确定Agent的个数变更方式,可有如图2所示的本发明实施例的一种数据处理方法中Agent个数变更方式的确定方法流程图,包括:
S201,将第一数据量与第二数据量做差值运算,并将差值运算结果与Agent的吞吐量做商运算,得到第一数据量与第二数据量之间的函数关系。
本发明实施例利用弹性资源池部署Agent进行数据导流,通过定期获取Agent的运行状态,进而决定是否向弹性资源池申请新的Agent或者销毁一个或多个Agent。
在本步骤中,可确定出第一数据量与第二数据量之间的函数关系。具体实施过程为:先计算第一数据量与第二数据量的差值,再在该差值的基础上与Agent的吞吐量做商运算,将该运算方式确定为第一数据量与第二数据量之间的函数关系。
假设第一数据量表示为S0;第二数据量表示为S1,因为第二数据量S1表示与当前时间段相邻的上一时间段内的数据量,则第二数据量S1为历史已知数据;Agent的吞吐量表示为Q,该吞吐量Q为提前设置的已知量。则第一数据量与第二数据量之间的函数关系可表示如下:
num=(S0–S1)/Q,其中,num表示第一数据量S0与第二数据量S1之间的函数关系确定的结果值,它是随着第一数据量S0以及第二数据量S1的变化而变化的量。
S202,计算函数关系的结果值。
具体地,按照上述第一数据量与第二数据量之间的函数关系,通过service获取预设时间周期所对应的当前时间段内Agent中缓存的待导流数据的第一数据量S0,获取与当前时间段相邻的上一时间段内Agent中缓存的待导流数据的第二数据量S1,以及获取Agent的吞吐量Q(每个汇报间隔能发送Q条数据),进而计算结果值num。
S2031,当结果值为正数时,确定Agent的个数变更方式为增加对应个数的Agent;
S2032,当结果值为零且第一数据量等于第二数据量不为零时,确定Agent的个数变更方式为不变;
S2033,当结果值为零且第一数据量等于第二数据量为零时,确定Agent的个数变更方式为删除一个Agent;
S2034,当结果值为负数时,确定Agent的个数变更方式为删除对应个数的Agent。
在上述计算得到num的结果值后,该num的结果值对应有3种情况:正数、零以及负数。则可确定出当前时间Agent的个数变更方式。
即该num>0时,说明当前Agent的发送速率较慢,Agent中有较多的缓存数据量,需要适当的增加Agent确保缓存的数据量过多影响Agent的性能,则可确定Agent的个数变更方式为增加对应个数的Agent。
当该num=0时,有两种情况:当上述函数关系中第一数据量等于第二数据量不为零时,说明当前时间在Agent中缓存的数据量与历史数量量相同,则可确定Agent的个数变更方式为不变;当上述函数关系中第一数据量等于第二数据量为零时,说明当前的发送速率较大,在Agent中无缓存的数据,则可确定Agent的个数变更方式为删除一个Agent;当该num<0时,说明当前Agent的发送速率较快,Agent中缓存的数据量较少,需要适当的减少Agent的数量以免造成资源的浪费,则可确定Agent的个数变更方式为删除对应个数的Agent。
可见,通过本发明实施例,可以及时得知当前Agent的使用数量情况,进而自动的变更当前所需Agent的个数,解决流量波谷造成的资源量费问题。
为了更好的说明本发明实施例的一种数据处理方法,可有如图3所示的本发明实施例的一种数据处理方法***结构图。该数据处理方法***结构图包括:待导流数据队列301、代理服务Agent302、弹性资源池303、计算服务service304以及待导流数据接收方305。
在本发明实施例中,通过代理服务Agent302获取以及发送待导流数据队列301,发送给待导流数据接收方305的待导流数据。在预设时间周期内,计算服务service304获取各代理服务Agent302中当前时间段缓存的待导流数据的第一数据量,以及获取与该当前时间段相邻的上一时间段内Agent中缓存的待导流数据的第二数据量。计算服务service304通过第一数据量与第二数据量之间的函数关系,确定当前时间Agent的个数变更方式,进而在弹性资源池303中申请或者撤销一个或多个代理服务Agent302。
需要说明的是,本发明实施例的数据处理方法***结构图仅为包含本发明数据处理方法的一种***结构图,其他包含本发明数据处理方法的***结构图,也属于本发明实施例的保护范围,此处不再一一赘述。
为了更好的说明本发明实施例的一种数据处理方法,在本实施例中公开了一种数据处理方法,如图4所示。图4为本发明实施例的另一种数据处理方法流程图,具体实施步骤如下:
S401,按照预设时间周期,获取当前时间段内代理服务Agent中缓存的待导流数据的第一数据量;
S402,获取当前时间段相邻的上一时间段内,Agent中缓存的待导流数据的第二数据量;
S403,将第一数据量与第二数据量做差值运算,并将差值运算结果与Agent的吞吐量做商运算,得到第一数据量与第二数据量之间的函数关系;
S404,计算函数关系的结果值;
S405,当结果值为正数时,确定Agent的个数变更方式为增加对应个数的Agent;当结果值为零且第一数据量等于第二数据量不为零时,确定Agent的个数变更方式为不变;当结果值为零且第一数据量等于第二数据量为零时,确定Agent的个数变更方式为删除一个Agent;当结果值为负数时,确定Agent的个数变更方式为删除对应个数的Agent。
S406,按照Agent的个数变更方式,对应变更当前接入Agent的个数。
可见,通过本发明实施例,可通过实时的计算当前时间所需要的Agent,进而向弹性资源池申请或者撤销Agent,实现动态的、及时的调整Agent的个数,从而避免流量波谷浪费资源。
为达到上述发明目的,本发明实施例还公开了一种数据处理装置,如图5所示。图5为本发明实施例的一种数据处理装置结构示意图,包括:
第一数据量获取模块501,用于按照预设时间周期,获取当前时间段内代理服务Agent中缓存的待导流数据的第一数据量;
第二数据量获取模块502,用于获取当前时间段相邻的上一时间段内,Agent中缓存的待导流数据的第二数据量;
变更方式确定模块503,用于根据第一数据量与第二数据量,确定Agent的个数变更方式,个数变更方式包括,删除、增加或不变;
Agent变更模块504,用于按照Agent的个数变更方式,对应变更当前接入Agent的个数。
本发明实施例提供的一种数据处理装置,实现了合理使用Agent进行数据导流,减少了资源的浪费。具体地,按照时间周期获取当前时间Agent中缓存的待导流数据的数据量,即为第一数据量;以及获取与该当前时间段相邻的上一时间段内,该Agent中缓存的待导流数据的数据量,即为第二数据量;通过第一数据量与第二数据量的关系,得到当前所需Agent的个数,进而按照Agent实时的需求量对应变更Agent的数目。可见,本发明实施例可根据流量的实时变化,进而确定所需Agent的数目,达到动态及时的调整Agent的数目,进而有效避免资源的浪费。另外,本发明实施例的数据处理方法可实现自动的调整当前Agent的数目,无须人工介入,提高了工作效率。
需要说明的是,本发明实施例的装置是应用上述一种数据处理方法的装置,则上述一种数据处理方法的所有实施例均适用于该装置,且均能达到相同或相似的有益效果。
可选地,在本发明实施例的数据处理装置的一种实施例中,所述装置还包括:
待导流数据缓存模块,用于将获取的待导流数据发送到接收方的过程中,当获取待导流数据的速率大于发送待导流数据的速率时,在Agent中缓存待导流数据。
可选地,在本发明实施例的数据处理装置的一种实施例中,变更方式确定模块503,包括:
函数关系确定子模块,用于将第一数据量与第二数据量做差值运算,并将差值运算结果与Agent的吞吐量做商运算,得到第一数据量与第二数据量之间的函数关系;
变更方式确定子模块,用于根据函数关系,确定Agent的个数变更方式。
可选地,在本发明实施例的数据处理装置的一种实施例中,变更方式确定子模块,具体用于计算函数关系的结果值;当结果值为正数时,确定Agent的个数变更方式为增加对应个数的Agent;当结果值为零且第一数据量等于第二数据量不为零时,确定Agent的个数变更方式为不变;当结果值为零且第一数据量等于第二数据量为零时,确定Agent的个数变更方式为删除一个Agent;当结果值为负数时,确定Agent的个数变更方式为删除对应个数的Agent。
为达到上述发明目的,本发明实施例公开了一种电子设备,如图6所示。图6为本发明实施例的一种电子设备结构示意图,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601、通信接口602、存储器603通过通信总线604完成相互间的通信;
存储器603,用于存放计算机程序;
处理器601,用于执行存储器上所存放的程序时,实现如下方法步骤:
按照预设时间周期,获取当前时间段内代理服务Agent中缓存的待导流数据的第一数据量;
获取当前时间段相邻的上一时间段内,Agent中缓存的待导流数据的第二数据量;
根据第一数据量与第二数据量,确定Agent的个数变更方式,个数变更方式包括,删除、增加或不变;
按照Agent的个数变更方式,对应变更当前接入Agent的个数。
上述电子设备提到的通信总线604可以是外设部件互连标准(PeripheralComponent Interconnect,PCI)总线或扩展工业标准结构(ExtendedIndustryStandard Architecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口602用于上述电子设备与其他设备之间的通信。
存储器603可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器603还可以是至少一个位于远离前述处理器601的存储装置。
上述的处理器601可以是通用处理器,包括中央处理器(CentralProcessingUnit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(Application SpecificIntegratedCircuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例提供的一种电子设备,实现了合理使用Agent进行数据导流,减少了资源的浪费。具体地,按照时间周期获取当前时间Agent中缓存的待导流数据的数据量,即为第一数据量;以及获取与该当前时间段相邻的上一时间段内,该Agent中缓存的待导流数据的数据量,即为第二数据量;通过第一数据量与第二数据量的关系,得到当前所需Agent的个数,进而按照Agent实时的需求量对应变更Agent的数目。可见,本发明实施例可根据流量的实时变化,进而确定所需Agent的数目,达到动态及时的调整Agent的数目,进而有效避免资源的浪费。另外,本发明实施例的数据处理方法可实现自动的调整当前Agent的数目,无须人工介入,提高了工作效率。
为达到上述发明目的,本发明实施例还公开了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时,实现上述实施例中任一所述的数据处理方法的步骤。
本发明实施例提供的一种计算机可读存储介质,实现了合理使用Agent进行数据导流,减少了资源的浪费。具体地,按照时间周期获取当前时间Agent中缓存的待导流数据的数据量,即为第一数据量;以及获取与该当前时间段相邻的上一时间段内,该Agent中缓存的待导流数据的数据量,即为第二数据量;通过第一数据量与第二数据量的关系,得到当前所需Agent的个数,进而按照Agent实时的需求量对应变更Agent的数目。可见,本发明实施例可根据流量的实时变化,进而确定所需Agent的数目,达到动态及时的调整Agent的数目,进而有效避免资源的浪费。另外,本发明实施例的数据处理方法可实现自动的调整当前Agent的数目,无须人工介入,提高了工作效率。
为达到上述发明目的,本发明实施例还公开了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的数据处理方法。
本发明实施例提供的一种包含指令的计算机程序产品,实现了合理使用Agent进行数据导流,减少了资源的浪费。具体地,按照时间周期获取当前时间Agent中缓存的待导流数据的数据量,即为第一数据量;以及获取与该当前时间段相邻的上一时间段内,该Agent中缓存的待导流数据的数据量,即为第二数据量;通过第一数据量与第二数据量的关系,得到当前所需Agent的个数,进而按照Agent实时的需求量对应变更Agent的数目。可见,本发明实施例可根据流量的实时变化,进而确定所需Agent的数目,达到动态及时的调整Agent的数目,进而有效避免资源的浪费。另外,本发明实施例的数据处理方法可实现自动的调整当前Agent的数目,无须人工介入,提高了工作效率。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本发明实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算机可读存储介质以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (6)

1.一种数据处理方法,其特征在于,包括:
按照预设时间周期,获取当前时间段内代理服务Agent中缓存的待导流数据的第一数据量;
获取所述当前时间段相邻的上一时间段内,所述Agent中缓存的待导流数据的第二数据量;
通过所述第一数据量与所述第二数据量所确定的公式:num=(S0–S1)/Q,计算得到所述公式的结果值,其中,第一数据量表示为S0,第二数据量表示为S1,Agent的吞吐量表示为Q,num表示所述结果值;
当所述结果值为正数时,确定所述Agent的个数变更方式为增加对应个数的Agent;
或者,当所述结果值为零且所述第一数据量等于所述第二数据量不为零时,确定所述Agent的个数变更方式为不变;
或者,当所述结果值为零且所述第一数据量等于所述第二数据量为零时,确定所述Agent的个数变更方式为删除一个Agent;
或者,当所述结果值为负数时,确定所述Agent的个数变更方式为删除对应个数的Agent;
按照所述Agent的个数变更方式,对应变更当前接入Agent的个数。
2.根据权利要求1所述的方法,其特征在于,在所述Agent中缓存待导流数据的过程包括:
将获取的待导流数据发送到接收方的过程中,当获取待导流数据的速率大于发送待导流数据的速率时,在所述Agent中缓存待导流数据。
3.一种数据处理装置,其特征在于,包括:
第一数据量获取模块,用于按照预设时间周期,获取当前时间段内代理服务Agent中缓存的待导流数据的第一数据量;
第二数据量获取模块,用于获取所述当前时间段相邻的上一时间段内,所述Agent中缓存的待导流数据的第二数据量;
变更方式确定模块,用于通过所述第一数据量与所述第二数据量所确定的公式:num=(S0–S1)/Q,计算得到所述公式的结果值,其中,第一数据量表示为S0,第二数据量表示为S1,Agent的吞吐量表示为Q,num表示所述结果值;当所述结果值为正数时,确定所述Agent的个数变更方式为增加对应个数的Agent;或者,当所述结果值为零且所述第一数据量等于所述第二数据量不为零时,确定所述Agent的个数变更方式为不变;或者,当所述结果值为零且所述第一数据量等于所述第二数据量为零时,确定所述Agent的个数变更方式为删除一个Agent;或者,当所述结果值为负数时,确定所述Agent的个数变更方式为删除对应个数的Agent;
Agent变更模块,用于按照所述Agent的个数变更方式,对应变更当前接入Agent的个数。
4.根据权利要求3所述的装置,其特征在于,所述装置还包括:
待导流数据缓存模块,用于将获取的待导流数据发送到接收方的过程中,当获取待导流数据的速率大于发送待导流数据的速率时,在所述Agent中缓存待导流数据。
5.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口、所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序时,实现权利要求1-2任一所述的方法步骤。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-2任一所述的方法步骤。
CN201711274747.6A 2017-12-06 2017-12-06 一种数据处理方法、装置以及电子设备 Active CN108121507B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711274747.6A CN108121507B (zh) 2017-12-06 2017-12-06 一种数据处理方法、装置以及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711274747.6A CN108121507B (zh) 2017-12-06 2017-12-06 一种数据处理方法、装置以及电子设备

Publications (2)

Publication Number Publication Date
CN108121507A CN108121507A (zh) 2018-06-05
CN108121507B true CN108121507B (zh) 2021-04-02

Family

ID=62229733

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711274747.6A Active CN108121507B (zh) 2017-12-06 2017-12-06 一种数据处理方法、装置以及电子设备

Country Status (1)

Country Link
CN (1) CN108121507B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111552711A (zh) * 2020-04-27 2020-08-18 中国银行股份有限公司 一种流式数据的处理方法、装置及电子设备
CN112632163B (zh) * 2020-12-18 2024-05-17 北京神州数码云科信息技术有限公司 大数据报表导出方法及相关设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101184031A (zh) * 2007-12-03 2008-05-21 浙江大学 面向网络多媒体传输服务的客户端主动性负载平衡方法
CN101198034A (zh) * 2007-12-29 2008-06-11 北京航空航天大学 一种网络视频监控***及其数据交换方法
KR20100048491A (ko) * 2008-10-31 2010-05-11 에스케이텔레콤 주식회사 이동 에이전트를 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법
CN105933391A (zh) * 2016-04-11 2016-09-07 青岛海信传媒网络技术有限公司 一种节点扩容方法、装置及***
CN106202370A (zh) * 2016-07-07 2016-12-07 乐视控股(北京)有限公司 一种在云对象存储中进行导流的方法和***
CN106911778A (zh) * 2017-02-27 2017-06-30 网宿科技股份有限公司 一种流量引导方法和***
CN107295040A (zh) * 2016-03-31 2017-10-24 阿里巴巴集团控股有限公司 数据上传方法、装置及***

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101184031A (zh) * 2007-12-03 2008-05-21 浙江大学 面向网络多媒体传输服务的客户端主动性负载平衡方法
CN101198034A (zh) * 2007-12-29 2008-06-11 北京航空航天大学 一种网络视频监控***及其数据交换方法
KR20100048491A (ko) * 2008-10-31 2010-05-11 에스케이텔레콤 주식회사 이동 에이전트를 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법
CN107295040A (zh) * 2016-03-31 2017-10-24 阿里巴巴集团控股有限公司 数据上传方法、装置及***
CN105933391A (zh) * 2016-04-11 2016-09-07 青岛海信传媒网络技术有限公司 一种节点扩容方法、装置及***
CN106202370A (zh) * 2016-07-07 2016-12-07 乐视控股(北京)有限公司 一种在云对象存储中进行导流的方法和***
CN106911778A (zh) * 2017-02-27 2017-06-30 网宿科技股份有限公司 一种流量引导方法和***

Also Published As

Publication number Publication date
CN108121507A (zh) 2018-06-05

Similar Documents

Publication Publication Date Title
KR102300077B1 (ko) 미래 액션들을 위한 사용자 인터페이스 데이터 캐싱 최적화
JP2021152908A (ja) 計測手段が組み込まれたソフトウェアを分析するためのデータストリーム処理言語
KR102201919B1 (ko) 랜덤 포레스트 모델의 훈련 방법, 전자장치 및 저장매체
US9043383B2 (en) Stream processing using a client-server architecture
JP2019533235A5 (zh)
US10972555B2 (en) Function based dynamic traffic management for network services
CN108121507B (zh) 一种数据处理方法、装置以及电子设备
EP4187882B1 (en) Data transmission method and apparatus, device, storage medium, and computer program product
CN109002249A (zh) 通过长按手势实现礼物连击的方法、存储介质、设备及***
CN110555038A (zh) 一种数据处理***、方法及装置
CN109949064B (zh) 一种开放接口调用计费方法和装置
WO2022257604A1 (zh) 一种用户标签的确定方法和装置
CN114339135A (zh) 一种负载均衡方法、装置、电子设备和存储介质
JP7313351B2 (ja) リソースの処理方法及びシステム、記憶媒体、電子機器
WO2017114180A1 (zh) 调整组件逻辑线程数量的方法及装置
CN113760982B (zh) 一种数据处理方法和装置
US11231869B2 (en) Method, electronic device, and computer program product for processing data
CN113254191A (zh) 用于运行应用的方法、电子设备和计算机程序产品
CN114584627B (zh) 一种具有网络监控功能的中台调度***及方法
US9674060B2 (en) Dynamic and selective management of integration points using performance metrics
CN114257521A (zh) 流量预测方法、装置、电子设备和存储介质
CN113591999A (zh) 一种端边云联邦学习模型训练***及方法
TWI735520B (zh) 調整元件邏輯執行緒數量的方法及裝置
CN111694672A (zh) 资源分配方法、任务提交方法、装置、电子设备和介质
Harris Jr et al. DDT: A Reinforcement Learning Approach to Dynamic Flow Timeout Assignment in Software Defined Networks

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