CN112364063A - 流计算系统及其数据处理方法、电子设备及介质 - Google Patents
流计算系统及其数据处理方法、电子设备及介质 Download PDFInfo
- Publication number
- CN112364063A CN112364063A CN202110034409.5A CN202110034409A CN112364063A CN 112364063 A CN112364063 A CN 112364063A CN 202110034409 A CN202110034409 A CN 202110034409A CN 112364063 A CN112364063 A CN 112364063A
- Authority
- CN
- China
- Prior art keywords
- data
- queue
- aging
- accumulation
- computing system
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 25
- 230000032683 aging Effects 0.000 claims abstract description 138
- 238000009825 accumulation Methods 0.000 claims abstract description 58
- 238000004590 computer program Methods 0.000 claims description 8
- 230000003203 everyday effect Effects 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 description 11
- 238000000034 method Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 238000011144 upstream manufacturing Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000002354 daily effect Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24532—Query optimisation of parallel queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24568—Data stream processing; Continuous queries
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation 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/5016—Allocation 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 the resource being the memory
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种流计算系统及其数据处理方法、电子设备及介质,流计算系统包括流计算引擎和数据接入层,所述数据接入层包括时效队列和堆积队列,所述流计算引擎包括时效数据流图和堆积数据流图,数据接入层接收数据源的数据,检查时效队列中缓存的数据长度,如果时效队列还有剩余空间,数据直接入队到时效队列;如果时效队列没有剩余空间,数据直接入队到堆积队列;所述时效数据流图消费时效队列的数据,所述堆积数据流图消耗堆积队列的数据。本发明使流计算引擎同时具有时效敏感和抗堆积特性。
Description
技术领域
本发明涉及数据处理技术领域,更为具体地,涉及一种流计算系统及其数据处理方法、电子设备及计算机可读存储介质。
背景技术
流计算是一种广范应用于实时大数据处理的计算模型。流计算模型将数据源看作在时间分布和数量上无限的流的形式,数据源源不断的持续生成,并随着时间的流逝价值逐渐降低。流计算模型中,不同算子以有向无环图(DAG)的形式串联到一起,从上到下依次处理流入的数据。
当前主流的流计算引擎(如Flink),同一算子以多实例的方式并行处理数据,不同算子以远程调用(RPC)的方式连接,加之数据缓冲池、流水线化等机制,最大化利用计算资源,提升计算能力。然而,不同算子处理数据时能承载的最大吞吐量是不同的,当下游算子的吞吐量小于上游时,下游算子的数据缓冲池就会出现数据堆积。为了防止数据堆积过大造成系统崩溃,流计算引擎一般会引入反压机制,通过降低上游算子的吞吐量来平衡上下游算子的数据通过量。因此,当输入流计算引擎的数据源出现数据洪峰时,数据到达量大于数据通过量,系统将进入反压状态,对计算的时效性产生严重影响。
发明内容
鉴于上述问题,本发明提供一种流计算系统及其数据处理方法、电子设备及计算机可读存储介质,其目的在于新的数据源接入方法,使流计算引擎即使处于反压状态也具有时效敏感性,同时且有抗数据堆积能力。
为了实现上述目的,本发明提供一种流计算系统包括流计算引擎和数据接入层,所述数据接入层包括时效队列和堆积队列,所述流计算引擎包括时效数据流图和堆积数据流图,数据接入层接收数据源的数据,检查时效队列中缓存的数据长度,如果时效队列还有剩余空间,数据直接入队到时效队列;如果时效队列没有剩余空间,数据直接入队到堆积队列;所述时效数据流图消费时效队列的数据,所述堆积数据流图消耗堆积队列的数据。
可选地,所述数据接入层还包括判断模块,通过判断时效队列是否达到了设定的固定最大长度来判断时效队列是否还有剩余空间。
可选地,所述时效数据流图按照吞吐量配置计算资源。
进一步地,所述时效队列的容量通过数据在时效队列中的最长停留时间和消费时效队列的时效数据流图的吞吐量确定。
可选地,所述流计算引擎还包括:
采集模块,采集每天时效队列和堆积队列的数据流入的峰值;
吞吐量获得模块,通过上一天的时效队列和堆积队列的数据流入的峰值分别设定时效数据流图和堆积数据流图的最大计算吞吐量,一天的时效数据流图的最大计算吞吐量不小于上一天的时效队列的数据流入的峰值,一天的堆积数据流图的最大计算吞吐量不小于上一天的堆积队列的数据流入的峰值。
可选地,所述流计算引擎还包括调整模块,调整消费堆积队列的堆积数据流图的计算资源配置,从而动态调整流计算系统的通过流量上限。
为了实现上述目的,本发明还提供一种利用流计算系统的数据处理方法,包括:
构建连接数据源和流计算系统的流计算引擎的数据接入层,所述数据接入层包括时效队列和堆积队列,所述流计算引擎包括时效数据流图和堆积数据流图;
通过数据接入层接收数据源的数据;
检查数据接入层的时效队列中缓存的数据长度;
如果时效队列还有剩余空间,数据直接入队到时效队列;
如果时效队列没有剩余空间,数据直接入队到堆积队列;
通过时效数据流图消费时效队列的数据;
通过堆积数据流图消耗堆积队列的数据。
可选地,利用流计算系统的数据处理方法还包括:
调整调整消费堆积队列的堆积数据流图的计算资源配置,从而动态调整流计算系统的通过流量上限。
为了实现上述目的,本发明还提供一种电子设备,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述利用流计算系统的数据处理方法。
为了实现上述目的,本发明还提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述利用流计算系统的数据处理方法。
本发明所述流计算系统及其数据处理方法、电子设备及介质当流计算系统进入反压状态,时效队列提供高时效性,保障足量的实时数据可以即时地通过系统;堆积队列提供抗堆积能力,保证溢出流量也可以通过系统。
为了实现上述以及相关目的,本发明的一个或多个方面包括后面将详细说明特别指出的特征。下面的说明以及附图详细说明了本发明的某些示例性方面。然而,这些方面指示的仅仅是可使用本发明的原理的各种方式中的一些方式。此外,本发明旨在包括所有这些方面以及它们的等同物。
附图说明
图1是本发明所述利用流计算系统的数据处理方法的流程示意图;
图2是本发明利用流计算系统的数据处理方法的数据流向的示意图;
图3是本发明所述流计算系统的构成框图;
图4是本发明一实施例提供的实现利用流计算系统的数据处理方法的电子设备的内部结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
以下将结合附图对本发明的具体实施例进行详细描述。
图1是本发明所述利用流计算系统的数据处理方法的流程示意图,图2是本发明利用流计算系统的数据处理方法的数据流向的示意图,如图1和2所示,所述数据处理方法包括:
步骤S1,构建连接数据源和流计算系统的流计算引擎的数据接入层,所述数据接入层包括时效队列和堆积队列,所述流计算引擎包括时效数据流图和堆积数据流图;
步骤S2,通过数据接入层接收数据源的数据;
步骤S3,检查数据接入层的时效队列中缓存的数据长度;
步骤S4,如果时效队列还有剩余空间,数据直接入队到时效队列;
步骤S5,如果时效队列没有剩余空间,数据直接入队到堆积队列;
步骤S6,通过时效数据流图消费时效队列的数据;
步骤S7,通过堆积数据流图消耗堆积队列的数据,例如,流计算引擎中原本的数据流图则被复制为完全相同的两份,分别消费时效队列和堆积队列中的数据。
通常流计算引擎与数据源直接连接,并配置数据流图消费数据源中的数据。本发明在数据源和流计算引擎之间增加一个数据接入层,其中包含时效队列和堆积队列两个队列,数据接入层起到溢流阀的作用。时效队列可以自动匹配流计算引擎的吞吐量,保障系统的高时效性,堆积队列则为系统提供抗堆积能力。
在一个实施例中,在步骤S2中,所述检查数据接入层的时效队列中缓存的数据长度的步骤包括:
通过判断时效队列是否达到了设定的固定最大长度(例如, 10万篇文章)来判断时效队列是否还有剩余空间。
在一个实施例中,在步骤S6中,所述通过时效数据流图消费时效队列的数据的步骤包括:
按照吞吐量配置计算资源,以此保证流计算系统的基本计算能力,所述计算资源包括CPU资源和内存资源,例如,单docker CPU资源 462 毫核(m),内存资源8715 MiB。
可选地,还包括:通过数据在时效队列中的最长停留时间和消费时效队列的时效数据流图的吞吐量确定时效队列的容量,例如,假定设计流计算系统时的要求数据在时效队列中的最长停留时间计算为2秒,消费时效队列的时效数据流图的最大计算吞吐量为4500TPS,则:
时效队列的容量大小 = 4500TPS * 2s = 9000。
在一个实施例中,所述吞吐量的获得方法包括:
采集每天时效队列数据流入的峰值;
通过上一天的时效队列数据流入的峰值设定时效数据流图的最大计算吞吐量,一天的时效数据流图的最大计算吞吐量不小于上一天的时效队列的数据流入的峰值。
在一个实施例中,在步骤S7中,所述通过堆积数据流图消费堆积队列的数据的步骤包括:
按照吞吐量配置计算资源。
可选地,还包括:通过数据在堆积队列中的最长停留时间和消费堆积队列的堆积数据流图的吞吐量确定堆积队列的容量。
在一个实施例中,所述吞吐量的获得方法包括:
采集每天堆积队列数据流入的峰值;
通过上一天的堆积队列数据流入的峰值设定堆积数据流图的最大计算吞吐量,一天的堆积数据流图的最大计算吞吐量不小于上一天的堆积队列的数据流入的峰值。
在一个实施例中,时效队列具有较小的固定容量(如2000),堆积队列则没有容量限制。
在一个实施例中,流计算系统的最大计算吞吐量等于消费时效队列的时效数据流图的最大计算吞吐量和消费堆积队列的堆积数据流图的最大计算吞吐量之和,利用流计算系统的数据处理方法还包括:调整消费堆积队列的堆积数据流图的计算资源配置,动态调整其最大计算吞吐量,从而动态调整流计算系统的通过流量上限。
可选地,所述动态调整堆积数据流图的最大计算吞吐量的步骤包括:
动态加入新的计算节点增加算力,整个流式计算是docker分布式架构,所以当吞吐量不足的时候,动态加入新的计算节点增加算力,可以动态调整堆积数据流图的最大计算吞吐量。
在一个实施例中,利用流计算系统的数据处理方法还包括:将流计算引擎的不同算子(时效数据流图或/和堆积数据流图的拓扑结构中的算子)通过数据接入层连接,可以为流计算系统提供更灵活的资源配置能力。
图3是本发明所述流计算系统的构成框图,如图3所示,所述流计算系统100包括数据接入层110和流计算引擎120,所述数据接入层110包括时效队列112和堆积队列113,所述流计算引擎120包括时效数据流图124和堆积数据流图125,数据接入层接收数据源的数据,检查时效队列112中缓存的数据长度,如果时效队列112还有剩余空间,数据直接入队到时效队列112;如果时效队列112没有剩余空间,数据直接入队到堆积队列113;所述时效数据流图124消费时效队列112的数据,所述堆积数据流图125消耗堆积队列113的数据。
在一个实施例中,所述数据接入层110还包括判断模块111,通过判断时效队列112是否达到了设定的固定最大长度来判断时效队列112是否还有剩余空间。
在一个实施例中,所述时效数据流图124按照吞吐量配置计算资源。
在一个实施例中,所述时效队列112的容量通过数据在时效队列112中的最长停留时间和消费时效队列112的时效数据流图124的吞吐量确定。
在一个实施例中,所述流计算引擎120还包括:
采集模块121,采集每天时效队列112和堆积队列113的数据流入的峰值;
吞吐量获得模块122,通过上一天的时效队列112和堆积队列113的数据流入的峰值分别设定时效数据流图124和堆积数据流图125的最大计算吞吐量,一天的时效数据流图124的最大计算吞吐量不小于上一天的时效队列112的数据流入的峰值,一天的堆积数据流图125的最大计算吞吐量不小于上一天的堆积队列113的数据流入的峰值。
在一个实施例中,所述流计算引擎120还包括调整模块123,调整消费堆积队列113的堆积数据流图125的计算资源配置,从而动态调整流计算系统的通过流量上限。
在一个实施例中,使用Redis的List结构作为时效队列,RocketMQ作为堆积队列,Flink作为流计算引擎。
当数据到达时,调用Redis的llen命令查看list的长度,若长度小于时效队列的容量,则调用Redis的lpush命令将数据写入list;反之调用RocketMQ的DefaultMQProducer.send()将数据写入topic。
定义RedisSource,并实现Flink的SourceFunction接口,在run()方法中通过jedis库调用brpop消费Redis的List(时效队列)中的数据;使用rocketmq-flink包消费RocketMQ(堆积队列)中的数据。
如图4所示,是本发明实现利用流计算系统的数据处理方法的电子设备的结构示意图。
所述电子设备1可以包括处理器10、存储器11和总线,还可以包括存储在所述存储器11中并可在所述处理器10上运行的计算机程序,如利用流计算系统的数据处理程序12。
其中,所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:SD或DX存储器等)、磁性存储器、磁盘、光盘等。所述存储器11在一些实施例中可以是电子设备1的内部存储单元,例如该电子设备1的移动硬盘。所述存储器11在另一些实施例中也可以是电子设备1的外部存储设备,例如电子设备1上配备的插接式移动硬盘、智能存储卡(Smart Media Card, SMC)、安全数字(SecureDigital, SD)卡、闪存卡(Flash Card)等。进一步地,所述存储器11还可以既包括电子设备1的内部存储单元也包括外部存储设备。所述存储器11不仅可以用于存储安装于电子设备1的应用软件及各类数据,例如利用流计算系统的数据处理程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
所述处理器10在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述处理器10是所述电子设备的控制核心(Control Unit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在所述存储器11内的程序或者模块(例如利用流计算系统的数据处理程序等),以及调用存储在所述存储器11内的数据,以执行电子设备1的各种功能和处理数据。
所述总线可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。所述总线被设置为实现所述存储器11以及至少一个处理器10等之间的连接通信。
图4仅示出了具有部件的电子设备,本领域技术人员可以理解的是,图4示出的结构并不构成对所述电子设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
例如,尽管未示出,所述电子设备1还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理装置与所述至少一个处理器10逻辑相连,从而通过电源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备1还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
进一步地,所述电子设备1还可以包括网络接口,可选地,所述网络接口可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该电子设备1与其他电子设备之间建立通信连接。
可选地,该电子设备1还可以包括用户接口,用户接口可以是显示器(Display)、输入单元(比如键盘(Keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备1中处理的信息以及用于显示可视化的用户界面。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
所述电子设备1中的所述存储器11存储的利用流计算系统的数据处理程序12是多个指令的组合,在所述处理器10中运行时,可以实现:
构建连接数据源和流计算系统的流计算引擎的数据接入层,所述数据接入层包括时效队列和堆积队列,所述流计算引擎包括时效数据流图和堆积数据流图;
通过数据接入层接收数据源的数据;
检查数据接入层的时效队列中缓存的数据长度;
如果时效队列还有剩余空间,数据直接入队到时效队列;如果时效队列没有剩余空间,数据直接入队到堆积队列;
通过时效数据流图消费时效队列的数据;
通过堆积数据流图消耗堆积队列的数据。
具体地,所述处理器10对上述指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
进一步地,所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质可以是非易失性,也可以是易失性,计算机可读存储介质中包括计算机程序,该计算机程序被处理器执行时实现如下操作:
构建连接数据源和流计算系统的流计算引擎的数据接入层,所述数据接入层包括时效队列和堆积队列,所述流计算引擎包括时效数据流图和堆积数据流图;
通过数据接入层接收数据源的数据;
检查数据接入层的时效队列中缓存的数据长度;
如果时效队列还有剩余空间,数据直接入队到时效队列;如果时效队列没有剩余空间,数据直接入队到堆积队列;
通过时效数据流图消费时效队列的数据;
通过堆积数据流图消耗堆积队列的数据。
本申请之计算机可读存储介质的具体实施方式与上述流计算系统及其数据处理方法、设备的具体实施方式大致相同,在此不再赘述。
在一个实施例中,本发明的流计算系统及其数据处理方法、设备及介质有数据接入层后,将快速队列和堆积队列分开,优先保证快速队列的后进先出特性,可以将1s以内的数据处理保持在99.9%以上,同时,一旦出现数据峰值,自动转入堆积队列进行安全处理,保持数据的安全性和全面性>=99.999%。现有的流计算引擎与数据源直接连接的流计算系统仅堆积队列数据处理1s内为30%,10s内为90%,1分钟内为99%,10分钟内为99.98%。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
Claims (10)
1.一种流计算系统,包括流计算引擎,其特征在于,还包括数据接入层,所述数据接入层包括时效队列和堆积队列,所述流计算引擎包括时效数据流图和堆积数据流图,数据接入层接收数据源的数据,检查时效队列中缓存的数据长度,如果时效队列还有剩余空间,数据直接入队到时效队列;如果时效队列没有剩余空间,数据直接入队到堆积队列;所述时效数据流图消费时效队列的数据,所述堆积数据流图消耗堆积队列的数据。
2.根据权利要求1所述的流计算系统,其特征在于,所述数据接入层还包括判断模块,通过判断时效队列是否达到了设定的固定最大长度来判断时效队列是否还有剩余空间。
3.根据权利要求1所述的流计算系统,其特征在于,所述时效数据流图按照吞吐量配置计算资源。
4.根据权利要求3所述的流计算系统,其特征在于,所述时效队列的容量通过数据在时效队列中的最长停留时间和消费时效队列的时效数据流图的吞吐量确定。
5.根据权利要求3所述的流计算系统,其特征在于,所述流计算引擎还包括:
采集模块,采集每天时效队列和堆积队列的数据流入的峰值;
吞吐量获得模块,通过上一天的时效队列和堆积队列的数据流入的峰值分别设定时效数据流图和堆积数据流图的最大计算吞吐量,一天的时效数据流图的最大计算吞吐量不小于上一天的时效队列的数据流入的峰值,一天的堆积数据流图的最大计算吞吐量不小于上一天的堆积队列的数据流入的峰值。
6.根据权利要求1所述的流计算系统,其特征在于,所述流计算引擎还包括调整模块,调整消费堆积队列的堆积数据流图的计算资源配置,从而动态调整流计算系统的通过流量上限。
7.一种利用流计算系统的数据处理方法,其特征在于,包括:
构建连接数据源和流计算系统的流计算引擎的数据接入层,所述数据接入层包括时效队列和堆积队列,所述流计算引擎包括时效数据流图和堆积数据流图;
通过数据接入层接收数据源的数据;
检查数据接入层的时效队列中缓存的数据长度;
如果时效队列还有剩余空间,数据直接入队到时效队列;
如果时效队列没有剩余空间,数据直接入队到堆积队列;
通过时效数据流图消费时效队列的数据;
通过堆积数据流图消耗堆积队列的数据。
8.根据权利要求7所述的利用流计算系统的数据处理方法,其特征在于还包括:
调整调整消费堆积队列的堆积数据流图的计算资源配置,从而动态调整流计算系统的通过流量上限。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求7或8所述的利用流计算系统的数据处理方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求7或8所述的利用流计算系统的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110034409.5A CN112364063B (zh) | 2021-01-12 | 2021-01-12 | 流计算系统及其数据处理方法、电子设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110034409.5A CN112364063B (zh) | 2021-01-12 | 2021-01-12 | 流计算系统及其数据处理方法、电子设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112364063A true CN112364063A (zh) | 2021-02-12 |
CN112364063B CN112364063B (zh) | 2021-06-04 |
Family
ID=74534812
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110034409.5A Active CN112364063B (zh) | 2021-01-12 | 2021-01-12 | 流计算系统及其数据处理方法、电子设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112364063B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103390049A (zh) * | 2013-07-23 | 2013-11-13 | 南京联创科技集团股份有限公司 | 一种基于内存数据库缓存的高速消息队列溢出的处理方法 |
CN105045820A (zh) * | 2015-06-25 | 2015-11-11 | 浙江立元通信技术股份有限公司 | 一种处理海量级数据的视频图像信息的方法及数据库系统 |
CN106648904A (zh) * | 2017-01-09 | 2017-05-10 | 大连理工大学 | 一种流式数据处理自适应速率控制方法 |
CN107395669A (zh) * | 2017-06-01 | 2017-11-24 | 华南理工大学 | 一种基于流式实时分布式大数据的数据采集方法及系统 |
CN109800129A (zh) * | 2019-01-17 | 2019-05-24 | 青岛特锐德电气股份有限公司 | 一种处理监控大数据的实时流计算监控系统及方法 |
CN109905329A (zh) * | 2019-01-04 | 2019-06-18 | 东南大学 | 一种虚拟化环境下任务类型感知的流队列自适应管理方法 |
US20190324794A1 (en) * | 2016-12-30 | 2019-10-24 | Alibaba Group Holding Limited | Real-Time Data Processing Method and Apparatus |
CN111355689A (zh) * | 2018-12-21 | 2020-06-30 | 中兴通讯股份有限公司 | 一种流数据处理方法及装置 |
CN111459986A (zh) * | 2020-04-07 | 2020-07-28 | 中国建设银行股份有限公司 | 数据计算系统及方法 |
-
2021
- 2021-01-12 CN CN202110034409.5A patent/CN112364063B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103390049A (zh) * | 2013-07-23 | 2013-11-13 | 南京联创科技集团股份有限公司 | 一种基于内存数据库缓存的高速消息队列溢出的处理方法 |
CN105045820A (zh) * | 2015-06-25 | 2015-11-11 | 浙江立元通信技术股份有限公司 | 一种处理海量级数据的视频图像信息的方法及数据库系统 |
US20190324794A1 (en) * | 2016-12-30 | 2019-10-24 | Alibaba Group Holding Limited | Real-Time Data Processing Method and Apparatus |
CN106648904A (zh) * | 2017-01-09 | 2017-05-10 | 大连理工大学 | 一种流式数据处理自适应速率控制方法 |
CN107395669A (zh) * | 2017-06-01 | 2017-11-24 | 华南理工大学 | 一种基于流式实时分布式大数据的数据采集方法及系统 |
CN111355689A (zh) * | 2018-12-21 | 2020-06-30 | 中兴通讯股份有限公司 | 一种流数据处理方法及装置 |
CN109905329A (zh) * | 2019-01-04 | 2019-06-18 | 东南大学 | 一种虚拟化环境下任务类型感知的流队列自适应管理方法 |
CN109800129A (zh) * | 2019-01-17 | 2019-05-24 | 青岛特锐德电气股份有限公司 | 一种处理监控大数据的实时流计算监控系统及方法 |
CN111459986A (zh) * | 2020-04-07 | 2020-07-28 | 中国建设银行股份有限公司 | 数据计算系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112364063B (zh) | 2021-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111813513B (zh) | 基于分布式的实时任务调度方法、装置、设备及介质 | |
CN107239339A (zh) | 系统性能优化参数确定方法、系统性能优化方法及装置 | |
Kameda | A finite-source queue with different customers | |
CN112631806A (zh) | 异步消息排列及调度方法、装置、电子设备及存储介质 | |
CN111381961A (zh) | 一种处理定时任务的方法、装置与电子设备 | |
CN109992796B (zh) | 一种MerCube机器翻译管理控制系统及方法、计算机程序 | |
CN103778099A (zh) | 信息处理设备 | |
CN112988383A (zh) | 一种资源分配方法、装置、设备以及存储介质 | |
EP3853726A1 (en) | Dynamic allocation of computing resources for electronic design automation operations | |
CN107861878A (zh) | Java应用程序性能问题定位的方法、装置和设备 | |
CN112364063B (zh) | 流计算系统及其数据处理方法、电子设备及介质 | |
CN116069500A (zh) | 一种模型训练任务处理方法、装置、电子设备及可读介质 | |
CN110750359A (zh) | 硬件资源配置方法、装置、云侧设备和存储介质 | |
CN104679575A (zh) | 输入输出流的控制系统及其方法 | |
CN108733536B (zh) | 监控管理系统及方法 | |
CN109002381A (zh) | 进程通信监控方法、电子装置及计算机可读存储介质 | |
CN116089049B (zh) | 基于异步并行i/o请求的进程同步调度方法、装置以及设备 | |
CN113163018B (zh) | 时延、资源和能耗感知的虚拟网络在线迁移方法和装置 | |
CN115373826B (zh) | 一种基于云计算的任务调度方法及装置 | |
CN107480071B (zh) | 缓存数据迁移方法及装置 | |
CN113918296B (zh) | 模型训练任务调度执行方法、装置、电子设备及存储介质 | |
CN111193617A (zh) | 网页篡改识别方法、装置、电子设备及存储介质 | |
Joyce et al. | Exploring storage bottlenecks in Linux-based embedded systems | |
CN116610354A (zh) | 参数校验方法、装置、计算机设备及存储介质 | |
CN115454592A (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 |