CN110287038A - 提升Spark Streaming框架的数据处理效率的方法及*** - Google Patents
提升Spark Streaming框架的数据处理效率的方法及*** Download PDFInfo
- Publication number
- CN110287038A CN110287038A CN201910498151.7A CN201910498151A CN110287038A CN 110287038 A CN110287038 A CN 110287038A CN 201910498151 A CN201910498151 A CN 201910498151A CN 110287038 A CN110287038 A CN 110287038A
- Authority
- CN
- China
- Prior art keywords
- data
- subregion
- kafka
- elasticity distribution
- skew
- 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
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/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明提供提升Spark Streaming框架的数据处理效率的方法、***、介质和设备,所述方法包括:从Kafka消息中间件中读取当前批次的待处理数据;读取待处理数据的每个Kafka分区所包含的数据量;依据预设规则判断各Kafka分区中是否存在数据倾斜的Kafka分区;若判断结果为是,则在弹性分布数据集中为存在数据倾斜的Kafka分区创建至少两个连续的弹性分布数据集分区,并将存在数据倾斜的Kafka分区所包含的待处理数据写入所述至少两个连续的弹性分布数据集分区中;令弹性分布数据集所包含的各弹性分布数据集分区所对应的任务并行地消费各弹性分布数据集分区中的待处理数据。本发明有效解决了Spark Streaming框架中的数据倾斜问题,显著提高了数据处理吞吐量,并大大降低了数据处理时延。
Description
技术领域
本发明涉及大数据实时计算领域,特别是涉及提升Spark Streaming框架的数据处理效率的方法及***。
背景技术
在大数据时代,数据作为信息的载体蕴含着大量的价值,是最重要的生产资料之一;而另一方面,数据的价值也会随着时间的流逝而逐渐消失。由此可见,如何快速高效地处理数据并挖掘信息的价值就变得越来越重要。
Spark Streaming作为目前应用最广泛的实时流数据处理框架,具有可伸缩、高吞吐、高容错等特性。它通过微批的方式将流式数据按时间进行切片,每个数据切片都会通过流计算引擎并按照用户定义的业务逻辑处理以生成最终的结果。目前,业界常用的实时计算架构是通过Spark Streaming Direct方式消费Kafka中的数据,如图1所示,首先SparkStreaming的驱动(Driver)会从Kafka消息中间件中读取一批次每个分区的数据范围,之后通过Executor(执行器)启动一定数量的消费者(Consumer task)来获取对应Kafka分区内的数据进行处理。这里Direct方式为我们提供了一种简单的映射关系,即Kafka中分区(Partition)与Spark弹性分布式数据集(Resilient Distributed Datasets,RDD)中的分区(Partition)是一一映射的,如图2所示,Kafka Partition 1分区中的数据由对应的Spark RDD Partition 1的Task来消费,Kafka Partition 2分区中的数据由对应的SparkRDD Partition 2的Task来消费,以此类推。
然而,如果Kafka分区出现了数据倾斜,即某些Partition的数据量远大于其它Partition的数据量,如图3所示,Partition 1的数据量远大于Partition 3、Partition 4的数据量。那么,Spark Streaming在获取到数据后,个别任务(Task)就需要更多的时间来处理多余的数据,从而拖慢了整个批次的执行时间。图4是一个涉及实时计算业务的任务执行统计信息,可以看出,大部分任务9秒左右就能够完成,而最慢的任务却花了55秒,原因就是它处理的数据量是其它任务的好多倍。
目前,解决Spark Streaming框架中可能遇到的数据倾斜问题的方案如下:
1.增大Kafka分区的数量,以期之前被分在一个分区中的数据被分散到更多的分区中、该方案对于分布较离散的Key值数据有效果,而对于大量Key值相同的数据来说却没有作用,因为这些数据仍旧会被分到同一个分区。
2.改造Kafka生产者,通过使用哈希分区器将消息均匀并且随机地发送到其中一个分区,但该方案仍旧没有解决方案1遇到的问题。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供提升Spark Streaming框架的数据处理效率的方法及***,用于解决现有技术中Spark Streaming框架因数据倾斜而导致数据处理效率低下的问题。
为实现上述目的及其他相关目的,本发明提供一种提升Spark Streaming框架的数据处理效率的方法,包括:从Kafka消息中间件中读取当前批次的待处理数据;读取所述待处理数据的每个Kafka分区所包含的数据量;依据预设规则判断各所述Kafka分区中是否存在数据倾斜的Kafka分区;若判断结果为是,则在弹性分布数据集中为所述存在数据倾斜的Kafka分区创建至少两个连续的弹性分布数据集分区,并将所述存在数据倾斜的Kafka分区所包含的待处理数据写入所述至少两个连续的弹性分布数据集分区中;令所述弹性分布数据集所包含的各所述弹性分布数据集分区所对应的任务并行地消费各所述弹性分布数据集分区中的待处理数据。
于本发明一实施例中,所述依据预设规则判断各所述Kafka分区中是否存在数据倾斜的Kafka分区的实现方式包括:将数据量超过预设阈值的Kafka分区判定为所述存在数据倾斜的Kafka分区。
于本发明一实施例中,所述依据预设规则判断各所述Kafka分区中是否存在数据倾斜的Kafka分区的实现方式还包括:按各所述Kafka分区所包含的数据量的大小进行排序并确定中位数;将数据量超过所述中位数且超过所述预设阈值的Kafka分区判定为所述存在数据倾斜的Kafka分区。
于本发明一实施例中,所述方法还包括:根据所述存在数据倾斜的Kafka分区所包含的数据量的大小确定所述弹性分布数据集分区的创建数量。
为实现上述目的及其他相关目的,本发明提供一种提升Spark Streaming框架的数据处理效率的***,包括:数据读取模块,用于从Kafka消息中间件中读取当前批次的待处理数据;读取所述待处理数据的每个Kafka分区所包含的数据量;倾斜判断模块,用于依据预设规则判断各所述Kafka分区中是否存在数据倾斜的Kafka分区;分区创建模块,用于在所述判断模块的判断结果为是时,在弹性分布数据集中为所述存在数据倾斜的Kafka分区创建至少两个连续的弹性分布数据集分区,并将所述存在数据倾斜的Kafka分区所包含的待处理数据写入所述至少两个连续的弹性分布数据集分区中;数据消费模块,用于令所述弹性分布数据集所包含的各所述弹性分布数据集分区所对应的任务并行地消费各所述弹性分布数据集分区中的待处理数据。
于本发明一实施例中,所述倾斜判断模块依据预设规则判断各所述Kafka分区中是否存在数据倾斜的Kafka分区的实现方式包括:将数据量超过预设阈值的Kafka分区判定为所述存在数据倾斜的Kafka分区。
于本发明一实施例中,所述倾斜判断模块依据预设规则判断各所述Kafka分区中是否存在数据倾斜的Kafka分区的实现方式还包括:按各所述Kafka分区所包含的数据量的大小进行排序并确定中位数;将数据量超过所述中位数且超过所述预设阈值的Kafka分区判定为所述存在数据倾斜的Kafka分区。
于本发明一实施例中,所述分区创建模块还用于:根据所述存在数据倾斜的Kafka分区所包含的数据量的大小确定所述弹性分布数据集分区的创建数量。
为实现上述目的及其他相关目的,本发明提供一种计算机可读存储介质,其中存储有计算机程序,所述计算机程序被处理器加载执行时,实现所述的提升Spark Streaming框架的数据处理效率的方法。
为实现上述目的及其他相关目的,本发明提供一种电子设备,包括:处理器及存储器;其中,所述存储器用于存储计算机程序;所述处理器用于加载执行所述计算机程序,以使所述电子设备执行所述的提升Spark Streaming框架的数据处理效率的方法。
如上所述,本发明的提升Spark Streaming框架的数据处理效率的方法及***,从Kafka消息中间件中读取当前批次的待处理数据;读取所述待处理数据的每个Kafka分区所包含的数据量;依据预设规则判断各所述Kafka分区中是否存在数据倾斜的Kafka分区;若判断结果为是,则在弹性分布数据集中为所述存在数据倾斜的Kafka分区创建至少两个连续的弹性分布数据集分区,并将所述存在数据倾斜的Kafka分区所包含的待处理数据写入所述至少两个连续的弹性分布数据集分区中;令所述弹性分布数据集所包含的各所述弹性分布数据集分区所对应的任务并行地消费各所述弹性分布数据集分区中的待处理数据。
本发明具有以下有益效果:有效解决了Spark Streaming框架中的数据倾斜问题,显著提高了Spark Streaming框架的数据处理吞吐量,并大大降低了Spark Streaming框架的数据处理时延。
附图说明
图1显示为现有技术中Spark Streaming框架以Direct方式消费Kafka数据的原理图。
图2显示为现有技术中Kafka分区与弹性分布式数据集分区的一一映射示意图。
图3显示为现有技术中Kafka分区存在数据倾斜的示意图。
图4显示为现有技术中Spark Streaming框架进行实时计算业务的任务执行统计示意图。
图5显示为本发明一实施例中提升Spark Streaming框架的数据处理效率的方法流程图。
图6显示为本发明一实施例中的Kafka分区与弹性分布式数据集分区的映射示意图。
图7显示为本发明一实施例中提升Spark Streaming框架的数据处理效率的***模块图。
图8显示为本发明一实施例中的电子设备的结构示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
在涉及大数据实时计算的Spark Streaming框架中,如果不能很好地处理数据倾斜将会严重降低Spark Streaming框架的数据处理吞吐量并增大数据处理的时延,进而影响到整个业务的发展。为了解决由Kafka分区数据倾斜所导致的实时计算缓慢的瓶颈,本发明提出了用于提升Spark Streaming框架的数据处理效率的方法及***,通过动态地检测数据倾斜并对数据倾斜加以处理,从而显著地提高Spark Streaming框架实时计算的吞吐量并大大降低处理时延。
请参阅图5,本实施例提供一种提升Spark Streaming框架的数据处理效率的方法,包括如下步骤:
S51:从Kafka消息中间件中读取当前批次的待处理数据。
Spark Streaming框架将流式数据按时间进行切片,于此,每个数据切片被称为一个批次的数据。Spark Streaming框架从Kafka消息中间件中读取当前批次的待处理数据,并执行步骤S52~S56,随后,Spark Streaming框架再从Kafka消息中间件中读取下一个批次的待处理数据,并执行步骤S52~S56,直至流式数据的所有批次的待处理数据全部处理完毕。
S52:读取所述待处理数据的每个Kafka分区所包含的数据量。
以图3为例,当前批次的待处理数据包含4个Kafka分区,分别为:分区1(Partition1)、分区2(Partition2)、分区3(Partition3)、分区4(Partition4)。Partition1的偏移量范围是1000至301000,所包含的数据量为300000;Partition2的偏移量范围是500至140500,所包含的数据量为140000;Partition3的偏移量范围是880至80880,所包含的数据量为80000;Partition4的偏移量范围是32至5032,所包含的数据量为5000。
S53:依据预设规则判断各所述Kafka分区中是否存在数据倾斜的Kafka分区;若判断结果为是,则执行步骤S54。
在一实施例中,将数据量的大小超过预设阈值的Kafka分区判定为所述存在数据倾斜的Kafka分区。例如,若预设阈值为经验值10000,则图3所示的4个分区中,Partition1~3皆被视为存在数据倾斜。
对于经验值10000,需要说明的是,如果该预设阈值设置的太小,每个任务处理的数据量就会很小并且很快结束,这样会增加Spark任务调度的负担;如果该预设阈值设置的太大,则不能很好地解决数据倾斜的问题。
较佳的,在一实施例中,首先,按当前批次中各所述Kafka分区所包含的数据量的大小进行排序并确定中位数;然后,将数据量超过所述中位数且超过所述预设阈值的Kafka分区判定为所述存在数据倾斜的Kafka分区。依然以图3为例,计算得到当前批次所有Kafka分区数据量的中位数是(80000+140000)/2=11000,其中Partition 1和Partition 2的数据量大于中位数11000,且均超过预设阈值10000,故Partition1~2皆存在数据倾斜。
S54:在弹性分布数据集中为所述存在数据倾斜的Kafka分区创建至少两个连续的弹性分布数据集分区。
承接图3示例,本步骤在弹性分布数据集(即Spark RDD)中为存在数据倾斜的Kafka分区中的Partition1创建了3个弹性分布数据集分区,如图6中Spark RDD的Partition1~3所示,其中,Partition1~3的位置连续。另外,本步骤还在弹性分布数据集(即Spark RDD)中为存在数据倾斜的Kafka分区中的Partition2创建了2个弹性分布数据集分区,如图6中Spark RDD的Partition4~5所示,其中,Partition4~5的位置连续。由于Kafka分区中的分区3~4不存在数据倾斜,所以在弹性分布数据集(即Spark RDD)中仅为Kafka分区中的Partition3创建了Partition6,且为Kafka分区中的Partition4创建了Partition7。
较佳的,在一实施例中,本步骤根据所述存在数据倾斜的Kafka分区所包含的数据量的大小自适应地确定所述弹性分布数据集分区的创建数量。详细而言,本步骤为存在数据倾斜的Kafka分区创建N个弹性分布数据集分区,而N为存在数据倾斜的Kafka分区的数据量与前述中位数的比值,取整数再加1。
S55:将所述存在数据倾斜的Kafka分区所包含的待处理数据写入所述至少两个连续的弹性分布数据集分区中。
较佳的,本步骤将存在数据倾斜的Kafka分区所包含的待处理数据均匀地写入所述至少两个连续的弹性分布数据集分区中。比如,在图3的示例中,本步骤将Kafka分区1中的数据均匀的写到Spark RDD分区1、2、3中,将Kafka分区2中的数据均匀写到Spark RDD分区4、5中,而Kafka分区3和4因未发生数据倾斜不需要对Spark RDD重分区,故只需将Kafka分区3和4内的数据对应拷贝到Spark RDD分区6和7中。
S56:令所述弹性分布数据集所包含的各所述弹性分布数据集分区所对应的任务并行地消费各所述弹性分布数据集分区中的待处理数据。
经过上述步骤S54~S56,当前Spark RDD所有分区的数据量差异性变小,从而后续任务处理数据的耗时差异性也会变小,以此降低了当前整个批次的执行时间。并且,任务数由原先的4个扩展到现在的7个,并行度进一步增大,从而Spark Streaming框架的处理吞吐量也随之增大。
根据本发明的实施例,还提供一种计算机存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(如:软盘、硬盘、磁带)、光介质(如:DVD)、或者半导体介质(如:固态硬盘Solid State Disk(SSD))等。
参阅图7,本实施例提供一种提升Spark Streaming框架的数据处理效率的***70,作为一款软件搭载于电子设备中,以在运行时执行前述方法实施例所述的提升SparkStreaming框架的数据处理效率的方法。由于本***实施例的技术原理与前述方法实施例的技术原理相似,因而不再对同样的技术细节做重复性赘述。
本实施例的提升Spark Streaming框架的数据处理效率的***70具体包括:数据读取模块71、倾斜判断模块72、分区创建模块73、数据消费模块74。数据读取模块71用于执行前述方法实施例介绍的步骤S51和S52,倾斜判断模块72用于执行前述方法实施例介绍的步骤S53,分区创建模块73用于执行前述方法实施例介绍的步骤S54和S55,数据消费模块74用于执行前述方法实施例介绍的步骤S56。
本领域技术人员应当理解,图7实施例中的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个或多个物理实体上。且这些模块可以全部以软件通过处理元件调用的形式实现,也可以全部以硬件的形式实现,还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,分区创建模块73可以为单独设立的处理元件,也可以集成在某一个芯片中实现,此外,也可以以程序代码的形式存储于存储器中,由某一个处理元件调用并执行分区创建模块73的功能。其它模块的实现与之类似。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
参阅图8,本实施例提供一种电子设备80,电子设备80可以是台式机、便携式电脑、智能手机等设备。详细的,电子设备80至少包括通过总线81连接的:存储器82、处理器83,其中,存储器82用于存储计算机程序,处理器83用于执行存储器82存储的计算机程序,以执行前述方法实施例中的全部或部分步骤。
上述提到的***总线可以是外设部件互连标准(Peripheral PomponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该***总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。通信接口用于实现数据库访问装置与其他设备(例如客户端、读写库和只读库)之间的通信。存储器可能包含随机存取存储器(Random Access Memory,简称RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
综上所述,本发明的提升Spark Streaming框架的数据处理效率的方法及***,有效解决了Spark Streaming框架中的数据倾斜问题,显著提高了数据处理吞吐量,并大大降低了数据处理时延。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (10)
1.一种提升Spark Streaming框架的数据处理效率的方法,其特征在于,包括:
从Kafka消息中间件中读取当前批次的待处理数据;
读取所述待处理数据的每个Kafka分区所包含的数据量;
依据预设规则判断各所述Kafka分区中是否存在数据倾斜的Kafka分区;
若判断结果为是,则在弹性分布数据集中为所述存在数据倾斜的Kafka分区创建至少两个连续的弹性分布数据集分区,并将所述存在数据倾斜的Kafka分区所包含的待处理数据写入所述至少两个连续的弹性分布数据集分区中;
令所述弹性分布数据集所包含的各所述弹性分布数据集分区所对应的任务并行地消费各所述弹性分布数据集分区中的待处理数据。
2.根据权利要求1所述的方法,其特征在于,所述依据预设规则判断各所述Kafka分区中是否存在数据倾斜的Kafka分区的实现方式包括:将数据量超过预设阈值的Kafka分区判定为所述存在数据倾斜的Kafka分区。
3.根据权利要求2所述的方法,其特征在于,所述依据预设规则判断各所述Kafka分区中是否存在数据倾斜的Kafka分区的实现方式还包括:
按各所述Kafka分区所包含的数据量的大小进行排序并确定中位数;
将数据量超过所述中位数且超过所述预设阈值的Kafka分区判定为所述存在数据倾斜的Kafka分区。
4.根据权利要求1所述的方法,其特征在于,还包括:根据所述存在数据倾斜的Kafka分区所包含的数据量的大小确定所述弹性分布数据集分区的创建数量。
5.一种提升Spark Streaming框架的数据处理效率的***,其特征在于,包括:
数据读取模块,用于从Kafka消息中间件中读取当前批次的待处理数据;读取所述待处理数据的每个Kafka分区所包含的数据量;
倾斜判断模块,用于依据预设规则判断各所述Kafka分区中是否存在数据倾斜的Kafka分区;
分区创建模块,用于在所述判断模块的判断结果为是时,在弹性分布数据集中为所述存在数据倾斜的Kafka分区创建至少两个连续的弹性分布数据集分区,并将所述存在数据倾斜的Kafka分区所包含的待处理数据写入所述至少两个连续的弹性分布数据集分区中;
数据消费模块,用于令所述弹性分布数据集所包含的各所述弹性分布数据集分区所对应的任务并行地消费各所述弹性分布数据集分区中的待处理数据。
6.根据权利要求5所述的***,其特征在于,所述倾斜判断模块依据预设规则判断各所述Kafka分区中是否存在数据倾斜的Kafka分区的实现方式包括:将数据量超过预设阈值的Kafka分区判定为所述存在数据倾斜的Kafka分区。
7.根据权利要求6所述的***,其特征在于,所述倾斜判断模块依据预设规则判断各所述Kafka分区中是否存在数据倾斜的Kafka分区的实现方式还包括:
按各所述Kafka分区所包含的数据量的大小进行排序并确定中位数;
将数据量超过所述中位数且超过所述预设阈值的Kafka分区判定为所述存在数据倾斜的Kafka分区。
8.根据权利要求5所述的***,其特征在于,所述分区创建模块还用于:根据所述存在数据倾斜的Kafka分区所包含的数据量的大小确定所述弹性分布数据集分区的创建数量。
9.一种计算机可读存储介质,其中存储有计算机程序,其特征在于,所述计算机程序被处理器加载执行时,实现如权利要求1至4中任一所述的提升Spark Streaming框架的数据处理效率的方法。
10.一种电子设备,其特征在于,包括:处理器及存储器;其中,
所述存储器用于存储计算机程序;
所述处理器用于加载执行所述计算机程序,以使所述电子设备执行如权利要求1至4中任一所述的提升Spark Streaming框架的数据处理效率的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910498151.7A CN110287038A (zh) | 2019-06-10 | 2019-06-10 | 提升Spark Streaming框架的数据处理效率的方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910498151.7A CN110287038A (zh) | 2019-06-10 | 2019-06-10 | 提升Spark Streaming框架的数据处理效率的方法及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110287038A true CN110287038A (zh) | 2019-09-27 |
Family
ID=68003681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910498151.7A Pending CN110287038A (zh) | 2019-06-10 | 2019-06-10 | 提升Spark Streaming框架的数据处理效率的方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110287038A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111427887A (zh) * | 2020-03-17 | 2020-07-17 | 中国邮政储蓄银行股份有限公司 | 一种快速扫描HBase分区表的方法、装置、*** |
CN112488705A (zh) * | 2020-11-16 | 2021-03-12 | 中国人寿保险股份有限公司 | Kafka低阶消费程序消息积压监控方法及相关设备 |
CN112732165A (zh) * | 2019-10-28 | 2021-04-30 | 北京沃东天骏信息技术有限公司 | 偏移量管理方法、装置及存储介质 |
CN112749204A (zh) * | 2019-10-31 | 2021-05-04 | 北京沃东天骏信息技术有限公司 | 一种读取数据的方法和装置 |
CN112799820A (zh) * | 2021-02-05 | 2021-05-14 | 拉卡拉支付股份有限公司 | 数据处理方法、装置、电子设备、存储介质及程序产品 |
CN113127221A (zh) * | 2019-12-31 | 2021-07-16 | 奇安信科技集团股份有限公司 | 一种限制消息消费速率的方法、装置、设备及存储介质 |
CN116561171A (zh) * | 2023-07-10 | 2023-08-08 | 浙江邦盛科技股份有限公司 | 一种倾斜数据双时序分布处理方法、装置、设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107066612A (zh) * | 2017-05-05 | 2017-08-18 | 郑州云海信息技术有限公司 | 一种基于SparkJoin操作的自适应数据倾斜调整方法 |
CN107220123A (zh) * | 2017-05-25 | 2017-09-29 | 郑州云海信息技术有限公司 | 一种解决Spark数据倾斜方法及*** |
CN108388603A (zh) * | 2018-02-05 | 2018-08-10 | 中国科学院信息工程研究所 | 基于Spark框架的分布式概要数据结构的构建方法及查询方法 |
CN108776692A (zh) * | 2018-06-06 | 2018-11-09 | 北京京东尚科信息技术有限公司 | 用于处理信息的方法和装置 |
CN109213751A (zh) * | 2018-08-06 | 2019-01-15 | 北京所问数据科技有限公司 | 基于Spark平台的Oracle数据库并行迁移技术 |
US20190095462A1 (en) * | 2015-09-27 | 2019-03-28 | International Business Machines Corporation | Parallel processing of large data files on distributed file systems with dynamic workload balancing |
-
2019
- 2019-06-10 CN CN201910498151.7A patent/CN110287038A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190095462A1 (en) * | 2015-09-27 | 2019-03-28 | International Business Machines Corporation | Parallel processing of large data files on distributed file systems with dynamic workload balancing |
CN107066612A (zh) * | 2017-05-05 | 2017-08-18 | 郑州云海信息技术有限公司 | 一种基于SparkJoin操作的自适应数据倾斜调整方法 |
CN107220123A (zh) * | 2017-05-25 | 2017-09-29 | 郑州云海信息技术有限公司 | 一种解决Spark数据倾斜方法及*** |
CN108388603A (zh) * | 2018-02-05 | 2018-08-10 | 中国科学院信息工程研究所 | 基于Spark框架的分布式概要数据结构的构建方法及查询方法 |
CN108776692A (zh) * | 2018-06-06 | 2018-11-09 | 北京京东尚科信息技术有限公司 | 用于处理信息的方法和装置 |
CN109213751A (zh) * | 2018-08-06 | 2019-01-15 | 北京所问数据科技有限公司 | 基于Spark平台的Oracle数据库并行迁移技术 |
Non-Patent Citations (1)
Title |
---|
过往记忆: "四种解决Spark数据倾斜的方法", 《HTTPS://WWW.ITEBLOG.COM/ARCHIVES/2061.HTML#COMMENTS》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112732165A (zh) * | 2019-10-28 | 2021-04-30 | 北京沃东天骏信息技术有限公司 | 偏移量管理方法、装置及存储介质 |
CN112749204A (zh) * | 2019-10-31 | 2021-05-04 | 北京沃东天骏信息技术有限公司 | 一种读取数据的方法和装置 |
CN112749204B (zh) * | 2019-10-31 | 2024-04-05 | 北京沃东天骏信息技术有限公司 | 一种读取数据的方法和装置 |
CN113127221A (zh) * | 2019-12-31 | 2021-07-16 | 奇安信科技集团股份有限公司 | 一种限制消息消费速率的方法、装置、设备及存储介质 |
CN113127221B (zh) * | 2019-12-31 | 2024-06-07 | 奇安信科技集团股份有限公司 | 一种限制消息消费速率的方法、装置、设备及存储介质 |
CN111427887A (zh) * | 2020-03-17 | 2020-07-17 | 中国邮政储蓄银行股份有限公司 | 一种快速扫描HBase分区表的方法、装置、*** |
CN112488705A (zh) * | 2020-11-16 | 2021-03-12 | 中国人寿保险股份有限公司 | Kafka低阶消费程序消息积压监控方法及相关设备 |
CN112799820A (zh) * | 2021-02-05 | 2021-05-14 | 拉卡拉支付股份有限公司 | 数据处理方法、装置、电子设备、存储介质及程序产品 |
CN112799820B (zh) * | 2021-02-05 | 2024-06-11 | 拉卡拉支付股份有限公司 | 数据处理方法、装置、电子设备、存储介质及程序产品 |
CN116561171A (zh) * | 2023-07-10 | 2023-08-08 | 浙江邦盛科技股份有限公司 | 一种倾斜数据双时序分布处理方法、装置、设备及介质 |
CN116561171B (zh) * | 2023-07-10 | 2023-09-15 | 浙江邦盛科技股份有限公司 | 一种倾斜数据双时序分布处理方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110287038A (zh) | 提升Spark Streaming框架的数据处理效率的方法及*** | |
CN105637524B (zh) | 硬件平台中的资产管理设备和方法 | |
CN110187835A (zh) | 用于管理访问请求的方法、装置、设备和存储介质 | |
CN103336672B (zh) | 数据读取方法、装置及计算设备 | |
US10545941B1 (en) | Hash based data processing | |
US9754402B2 (en) | Graphics processing method and graphics processing apparatus | |
CN113886162B (zh) | 一种计算设备性能测试方法、计算设备及存储介质 | |
US20240143392A1 (en) | Task scheduling method, chip, and electronic device | |
CN109614270A (zh) | 基于Hbase的数据读写方法、装置、设备及存储介质 | |
WO2024119988A1 (zh) | 多cpu环境下的进程调度方法、装置、电子设备和介质 | |
CN103064955A (zh) | 查询规划方法及装置 | |
CN110908797B (zh) | 调用请求数据处理方法、装置、设备、存储介质及*** | |
US20130212584A1 (en) | Method for distributed caching and scheduling for shared nothing computer frameworks | |
US20190188643A1 (en) | Method and system of sharing product data in a collaborative environment | |
CN114489475A (zh) | 分布式存储***及其数据存储方法 | |
CN112000703A (zh) | 数据入库处理方法、装置、计算机设备和存储介质 | |
US10248331B2 (en) | Delayed read indication | |
CN111045959B (zh) | 一种基于存储优化的复杂算法变量映射方法 | |
CN113656370B (zh) | 电力量测***数据处理方法、装置和计算机设备 | |
CN115934309A (zh) | 用于核心特定度量收集的技术 | |
CN114924848A (zh) | Io调度方法、装置及设备 | |
CN108519909A (zh) | 一种流数据处理方法和装置 | |
CN115344358A (zh) | 资源调度方法、装置和管理节点 | |
US10365997B2 (en) | Optimizing DRAM memory based on read-to-write ratio of memory access latency | |
CN111580831A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190927 |