CN111930304B - 一种数据采集速度控制方法、设备及存储介质 - Google Patents

一种数据采集速度控制方法、设备及存储介质 Download PDF

Info

Publication number
CN111930304B
CN111930304B CN202010650398.9A CN202010650398A CN111930304B CN 111930304 B CN111930304 B CN 111930304B CN 202010650398 A CN202010650398 A CN 202010650398A CN 111930304 B CN111930304 B CN 111930304B
Authority
CN
China
Prior art keywords
sleep time
data
data acquisition
minimum
maximum
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
CN202010650398.9A
Other languages
English (en)
Other versions
CN111930304A (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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202010650398.9A priority Critical patent/CN111930304B/zh
Publication of CN111930304A publication Critical patent/CN111930304A/zh
Application granted granted Critical
Publication of CN111930304B publication Critical patent/CN111930304B/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/0608Saving storage space on 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • 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
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Power Sources (AREA)

Abstract

本发明公开了一种数据采集速度控制方法、设备及存储介质,所述数据采集速度控制方法包括:采集数据源数据,请求将数据写入系统暂存存储器;根据数据写入是否成功的判断结果和暂存存储器的使用容量,调整系统在两次数据采集之间的休眠时间。所述设备及存储介质实现上述数据采集速度控制方法的步骤。本发明根据数据写入和暂存存储器的使用容量等不同状态而采用不同的休眠策略,可以确保整个数据采集过程的平稳进行,避免因为采集频率突然增加或者突然降低,对整个采集过程的稳定性产生冲击。

Description

一种数据采集速度控制方法、设备及存储介质
技术领域
本发明涉及数据采集领域,具体涉及一种数据采集速度控制方法、设备及存储介质。
背景技术
在大数据时代,Flume等数据采集工具已成为数据采集的主要方式。Flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统。作为一个优秀的数据采集工具,Flume可以应用于多个场景,其中,Agent进程是一种独立的进程,包含Source、Channel、Sink组件,Source是Flume中获取数据的组件,并将数据写入到Channel中,Channel是一个被动的存储器,负责暂存由Source发送过来的数据,Sink负责消费Channel中的数据,发送到对应的目的地。图1为Flume采集数据的架构,Source可以从日志文件、网络端口、Kafka等多种数据源采集数据,封装成Event(Flume中传输数据的最小单位),写入Channel。数据成功写入到Channel中后,Sink会从Channel中主动拉取数据写入到HDFS、HBase、Hive、ES等多种大数据组件中。Source、Sink、Channel三大模块共同构成了一个Agent进程,Source与Sink作为Agent进程中的两个线程,分别负责从数据源获取数据和将数据写入目的地。
在现有的数据写入流程中,由于网络故障、主机负载过高、目的端组件处理速度过慢等原因,会导致Sink写入数据缓慢或者在一段时间内无法写入数据,而Source在采集数据的速度并不会因此发生改变,导致在Channel中积压大量数据。当Channel中存储的数据达到设置的最大值时,Source将无法向Channel写入数据,从而不断地按照固定的时间进行重试,占用主机计算资源,增加本主机负载。而且,由于Channel中积压了大量的数据,也会占用大量的存储资源,无法得到释放。
发明内容
为了解决上述技术问题,本发明提出了一种数据采集速度控制方法、设备及存储介质,通过主动改变数据采集的频率,确保数据采集过程平稳进行,避免采集频率突然增加或降低,影响数据采集的稳定性。
为实现上述目的,本发明采用以下技术方案:
一种数据采集速度控制方法,包括:
采集数据源数据,请求将数据写入系统暂存存储器;
根据数据写入是否成功的判断结果和暂存存储器的使用容量,调整系统在两次数据采集之间的休眠时间。
进一步地,采集数据之前,配置定义数据采集的最大休眠时间和最小休眠时间。
进一步地,当数据写入失败时,执行写入失败休眠策略:
获取当前的数据采集休眠时间,如果当前休眠时间为数据采集最大休眠时间,返回最大休眠时间;
如果当前休眠时间不是最大休眠时间,设置新休眠时间为当前休眠时间的两倍;
如果新休眠时间大于最大休眠时间,返回最大休眠时间;
如果新休眠时间不大于最大休眠时间,返回新休眠时间。
进一步地,当数据写入成功且暂存存储器使用容量为0-60%时,执行缓存充足休眠策略:
获取当前的数据采集休眠时间,如果当前休眠时间为数据采集最小休眠时间,返回最小休眠时间;
如果当前休眠时间不是最小休眠时间,设置新休眠时间为当前休眠时间的二分之一;
如果新休眠时间小于最小休眠时间,返回最小休眠时间;
如果新休眠时间不小于最小休眠时间,返回新休眠时间。
进一步地,当数据写入成功且暂存存储器使用容量为61-80%时,执行缓存较充足休眠策略:
获取当前的数据采集休眠时间,如果当前休眠时间为数据采集最小休眠时间,返回最小休眠时间;
如果当前休眠时间不是最小休眠时间,设置新休眠时间=(最大休眠时间-最小休眠时间)*10%;
如果新休眠时间小于最小休眠时间,返回最小休眠时间;
如果新休眠时间不小于最小休眠时间,返回新休眠时间。
进一步地,当数据写入成功且暂存存储器使用容量为81-100%时,执行缓存紧张休眠策略:
获取当前的数据采集休眠时间,如果当前休眠时间为数据采集最大休眠时间,返回最大休眠时间;
如果当前休眠时间不是最大休眠时间,设置新休眠时间=(最大休眠时间-最小休眠时间)*10%+当前休眠时间;
如果新休眠时间大于最大休眠时间,返回最大休眠时间;
如果新休眠时间不大于最大休眠时间,返回新休眠时间。
本发明还提出了一种数据采集速度控制设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上所述数据采集速度控制方法的步骤。
本发明还提出了一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述数据采集速度控制方法的步骤。
本发明的有益效果是:
本发明通过提出一种数据采集速度控制方法、设备及存储介质,在网络故障、网络不稳定、目的端的组件写入速度过慢、目的端主机负载过高等多种原因造成数据采集进程的目的地数据写入速度远远小于数据采集速度时,主动改变数据采集的频率,从而降低暂存存储器的缓存压力,释放部分存储空间,同时也可以释放部分该进程所在主机计算资源,降低该主机的负载。根据暂存存储器的使用容量状态而采用不同的策略,可以确保整个数据采集过程的平稳进行,避免因为采集频率突然增加或者突然降低,对整个采集过程的稳定性产生冲击。
附图说明
图1是Flume采集数据的架构示意图;
图2是本发明数据采集速度控制方法流程示意图;
图3是本发明实施例数据采集速度控制方法写入失败休眠策略流程示意图;
图4是本发明实施例数据采集速度控制方法缓存充足休眠策略流程示意图;
图5是本发明实施例数据采集速度控制方法缓存较充足休眠策略流程示意图;
图6是本发明实施例数据采集速度控制方法缓存紧张休眠策略流程示意图。
具体实施方式
为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
本发明公开了一种数据采集速度控制方法,包括:
采集数据源数据,请求将数据写入系统暂存存储器;
根据数据写入是否成功的判断结果和暂存存储器的使用容量,调整系统在两次数据采集之间的休眠时间。
采集数据之前,配置定义数据采集的最大休眠时间和最小休眠时间。
具体地,本发明实施例数据采集数据控制方法的流程如图2所示:
1)Source从数据源采集数据,封装到Event中;
2)尝试将数据写入到Channel中;
3)如果数据写入失败,执行数据写入失败休眠策略,修改休眠时间后休眠,重新执行步骤2);如果数据写入成功,执行步骤4);
4)获取Channel的缓存状态,如果缓存充足,执行步骤5.1);如果缓存较充足,执行步骤5.2);如果缓存紧张,执行步骤5.3);
5.1)执行缓存充足修改休眠时间策略;
5.2)执行缓存较充足修改休眠时间策略;
5.3)执行缓存紧张修改休眠时间策略;
6)按照修改后的休眠时间进行休眠,本流程结束,Source采集新数据,重新开始执行本流程。
所述缓存充足、缓存较充足、缓存紧张四种状态具体定义为:
当Channel缓存已经使用了0%-60%,定义为缓存充足状态;
当Channel缓存已经使用了61%-80%,定义为缓存较充足状态;
当Channel缓存已经使用了81%-100%,定义为缓存紧张状态。
如图3所示,当数据写入失败时,执行写入失败休眠策略:
31)获取当前休眠时间;
32)如果当前休眠时间为最大休眠时间,返回最大休眠时间,结束;如果不是,执行步骤33;
33)设置新休眠时间为当前休眠时间的两倍;
34)判断休眠时间是否为大于最大休眠时间;
35)如果大于,设置休眠时间为最大休眠时间,结束;如果小于设置休眠时间为新的休眠时间,结束。
如图4所示,当数据写入成功且暂存存储器使用容量为0-60%时,执行缓存充足休眠策略:
511)获取当前休眠时间;
512)如果当前休眠时间为最小休眠时间,返回最小休眠时间,结束;如果不是,执行步骤513);
513)设置新休眠时间为当前休眠时间的二分之一;
514)判断休眠时间是否为小于最休眠时间;
515)如果小于,设置休眠时间为最小休眠时间,结束;如果大于设置休眠时间为新的休眠时间,结束。
如图5所示,当数据写入成功且暂存存储器使用容量为61-80%时,执行缓存较充足休眠策略:
521)获取当前休眠时间;
522)如果当前休眠时间为最小休眠时间,返回最小休眠时间,结束;如果不是,执行步骤523);
523)设置新休眠时间=当前休眠时间-(最大休眠时间-最小休眠时间)*10%;
524)判断休眠时间是否为小于最休眠时间;
525)如果小于,设置休眠时间为最小休眠时间,结束;如果大于设置休眠时间为新的休眠时间,结束。
如图6所示,当数据写入成功且暂存存储器使用容量为81-100%时,执行缓存紧张休眠策略:
531)获取当前休眠时间;
532)如果当前休眠时间为最大休眠时间,返回最大休眠时间,结束;如果不是,执行步骤533);
533)设置新休眠时间=(最大休眠时间-最小休眠时间)*10%+当前休眠时间;
534)判断休眠时间是否为大于最大休眠时间;
535)如果大于,设置休眠时间为最大休眠时间,结束;如果小于设置休眠时间为新的休眠时间,结束。
本发明实施例还公开了一种数据采集速度控制设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上所述数据采集速度控制方法的步骤。
本发明实施例还公开了一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述数据采集速度控制方法的步骤。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制。对于所属领域的技术人员来说,在上述说明的基础上还可以做出其它不同形式的修改或变形。这里无需也无法对所有的实施方式予以穷举。在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

Claims (6)

1.一种数据采集速度控制方法,其特征在于,包括:
采集数据源数据,请求将数据写入系统暂存存储器;
根据数据写入是否成功的判断结果和暂存存储器的使用容量,调整系统在两次数据采集之间的休眠时间;
采集数据之前,配置定义数据采集的最大休眠时间和最小休眠时间;
当数据写入失败时,执行写入失败休眠策略:
获取当前的数据采集休眠时间,如果当前休眠时间为数据采集最大休眠时间,返回最大休眠时间;
如果当前休眠时间不是最大休眠时间,设置新休眠时间为当前休眠时间的两倍;
如果新休眠时间大于最大休眠时间,返回最大休眠时间;
如果新休眠时间不大于最大休眠时间,返回新休眠时间。
2.根据权利要求1所述的数据采集速度控制方法,其特征在于,当数据写入成功且暂存存储器使用容量为0-60%时,执行缓存充足休眠策略:
获取当前的数据采集休眠时间,如果当前休眠时间为数据采集最小休眠时间,返回最小休眠时间;
如果当前休眠时间不是最小休眠时间,设置新休眠时间为当前休眠时间的二分之一;
如果新休眠时间小于最小休眠时间,返回最小休眠时间;
如果新休眠时间不小于最小休眠时间,返回新休眠时间。
3.根据权利要求1所述的数据采集速度控制方法,其特征在于,当数据写入成功且暂存存储器使用容量为61-80%时,执行缓存较充足休眠策略:
获取当前的数据采集休眠时间,如果当前休眠时间为数据采集最小休眠时间,返回最小休眠时间;
如果当前休眠时间不是最小休眠时间,设置新休眠时间=(最大休眠时间-最小休眠时间)*10%;
如果新休眠时间小于最小休眠时间,返回最小休眠时间;
如果新休眠时间不小于最小休眠时间,返回新休眠时间。
4.根据权利要求1所述的数据采集速度控制方法,其特征在于,当数据写入成功且暂存存储器使用容量为81-100%时,执行缓存紧张休眠策略:
获取当前的数据采集休眠时间,如果当前休眠时间为数据采集最大休眠时间,返回最大休眠时间;
如果当前休眠时间不是最大休眠时间,设置新休眠时间=(最大休眠时间-最小休眠时间)*10%+当前休眠时间;
如果新休眠时间大于最大休眠时间,返回最大休眠时间;
如果新休眠时间不大于最大休眠时间,返回新休眠时间。
5.一种数据采集速度控制设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至4任一项所述数据采集速度控制方法的步骤。
6.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述数据采集速度控制方法的步骤。
CN202010650398.9A 2020-07-10 2020-07-10 一种数据采集速度控制方法、设备及存储介质 Active CN111930304B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010650398.9A CN111930304B (zh) 2020-07-10 2020-07-10 一种数据采集速度控制方法、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010650398.9A CN111930304B (zh) 2020-07-10 2020-07-10 一种数据采集速度控制方法、设备及存储介质

Publications (2)

Publication Number Publication Date
CN111930304A CN111930304A (zh) 2020-11-13
CN111930304B true CN111930304B (zh) 2022-08-12

Family

ID=73313378

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010650398.9A Active CN111930304B (zh) 2020-07-10 2020-07-10 一种数据采集速度控制方法、设备及存储介质

Country Status (1)

Country Link
CN (1) CN111930304B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113888773A (zh) * 2021-09-28 2022-01-04 南京领行科技股份有限公司 网约车的数据处理方法、装置、服务器和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105631026A (zh) * 2015-12-30 2016-06-01 北京奇艺世纪科技有限公司 一种安全数据分析系统
CN106776680A (zh) * 2016-11-04 2017-05-31 国网浙江省电力公司 一种分布式流数据的采集方法
CN107609158A (zh) * 2017-09-26 2018-01-19 北京计算机技术及应用研究所 一种基于Flume的高可靠数据采集及存储方法
CN107748756A (zh) * 2017-09-20 2018-03-02 努比亚技术有限公司 数据采集方法、移动终端及可读存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105631026A (zh) * 2015-12-30 2016-06-01 北京奇艺世纪科技有限公司 一种安全数据分析系统
CN106776680A (zh) * 2016-11-04 2017-05-31 国网浙江省电力公司 一种分布式流数据的采集方法
CN107748756A (zh) * 2017-09-20 2018-03-02 努比亚技术有限公司 数据采集方法、移动终端及可读存储介质
CN107609158A (zh) * 2017-09-26 2018-01-19 北京计算机技术及应用研究所 一种基于Flume的高可靠数据采集及存储方法

Also Published As

Publication number Publication date
CN111930304A (zh) 2020-11-13

Similar Documents

Publication Publication Date Title
DE112015006117B4 (de) Halbleiterlaufwerk mit selbstaktualisierungsenergiesparmodus
CN111930304B (zh) 一种数据采集速度控制方法、设备及存储介质
CN110580195B (zh) 一种基于内存热插拔的内存分配方法和装置
US11599290B2 (en) Data storage method, electronic device, and computer program product
CN109144787A (zh) 一种数据恢复方法、装置、设备及可读存储介质
CN112749102A (zh) 一种内存空间垃圾回收处理方法、装置、设备及介质
CN108566418B (zh) 一种电子数据的智能的处理方法
CN112667527A (zh) 一种确保客户端数据采集准确性的方法及客户端
CN115167782B (zh) 临时存储副本管理方法、系统、设备和存储介质
CN108519987A (zh) 一种数据持久化方法和装置
CN104199729B (zh) 一种资源管理方法及系统
US8380962B2 (en) Systems and methods for efficient sequential logging on caching-enabled storage devices
CN111737254A (zh) 一种提高应用缓存利用率的方法及装置
CN106469119A (zh) 一种基于nvdimm的数据写缓存方法及其装置
CN105068760B (zh) 数据存储方法、数据存储装置和存储设备
CN112269763A (zh) 一种文件聚合方法及相关装置
US20130091313A1 (en) Method and apparatus for device dynamic addition processing, and method and apparatus for device dynamic removal processing
US20180309702A1 (en) Method and device for processing data after restart of node
CN107967172B (zh) 一种面向异构存储的Spark任务动态迁移方法和系统
CN110362448A (zh) 一种gpu管控方法及相关装置
CN112286681A (zh) 一种内存分配管理方法、系统、设备及存储介质
CN112905121B (zh) 一种数据下刷方法和系统
CN112597112B (zh) 数据处理方法及装置、电子设备和存储介质
CN109582244B (zh) 一种元数据落盘方法、装置、终端及计算机可读存储介质
WO2008074613A2 (en) Data copy system apparatus and method

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