CN111143456B - 基于Spark的Cassandra数据导入方法、装置、设备及介质 - Google Patents

基于Spark的Cassandra数据导入方法、装置、设备及介质 Download PDF

Info

Publication number
CN111143456B
CN111143456B CN201911379699.6A CN201911379699A CN111143456B CN 111143456 B CN111143456 B CN 111143456B CN 201911379699 A CN201911379699 A CN 201911379699A CN 111143456 B CN111143456 B CN 111143456B
Authority
CN
China
Prior art keywords
data
sstable
cassandra
spark
token value
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
CN201911379699.6A
Other languages
English (en)
Other versions
CN111143456A (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.)
Tongdun Guangzhou Technology Co ltd
Original Assignee
Tongdun Guangzhou 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 Tongdun Guangzhou Technology Co ltd filed Critical Tongdun Guangzhou Technology Co ltd
Priority to CN201911379699.6A priority Critical patent/CN111143456B/zh
Publication of CN111143456A publication Critical patent/CN111143456A/zh
Application granted granted Critical
Publication of CN111143456B publication Critical patent/CN111143456B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于Spark的Cassandra数据导入方法,涉及数据处理技术领域,用于解决现有通过Spark导入数据到Cassandra时,Cassandra性能降低的问题,该方法包括以下步骤:获取待导入数据的数据量及SSTable单文件大小,并根据所述数据量及SSTable单文件大小计算所需分区数量N;根据所述数据的Key计算token值;根据所述token值,将所述数据分配到所述N个分区中,并排序;使用CQLSSTableWriter读取排序后的所述数据,生成SSTable文件;并行处理所述SSTable文件,通过SSTableload将所述SSTable文件导入Cassandra集群。本发明还公开了一种基于Spark的Cassandra数据导入装置、电子设备和计算机存储介质。本发明通过Spark对数据进行分区,进而提高数据导入时,Cassandra的处理性能。

Description

基于Spark的Cassandra数据导入方法、装置、设备及介质
技术领域
本发明涉及数据处理技术领域,尤其涉及一种基于Spark的Cassandra数据导入方法、装置、设备及介质。
背景技术
近年来,与物联网、人工智能、智慧城市等相关的产品及应用层出不穷,这些产品及应用也促进了大数据技术的蓬勃发展,随着数据规模指数的增长,数据的处理和存储方法已成为相关公司的主要研究方向。目前,Cassandra作为一种开源分布式NoSQL数据库存储系统,因其高写入性能、高读取性能等优点,被越来越多的公司用作数据存储系统。
Cassandra作为分布式的数据存储系统,可以提供较完善的数据读取、写入和管理功能,Cassandra以SSTable(Cassandra的基本存储单元)的方式进行数据的存储。Cassandra的数据写入功能一般直接通过insert实现;如果数据量比较大,也可以使用CQLSSTableWriter(读取源数据生成SSTable的工具)+SSTableload(SSTable文件导入工具)工具简单的组合实现。
但是,这两种数据写入方法在实际应用时分别存在一些问题。使用insert直接读取数据进行导入的方式性能较低,且对Cassandra服务器的负载影响较大;另一种借助CQLSSTableWriter+SSTableload工具实现数据导入的方法,该方法相对insert直接导入数据的方法,性能上有了较大提升,且借助Spark,也可以实现分布式并行处理,但无法解决各分区中数据不均衡的问题,Spark对数据划分partition(分区)的时候,由于不会考虑Cassandra的数据存储规则,会导致数据通过SSTableLoader导入集群的时候,对SSTable文件进行再次拆分,产生大量的SSTable小文件,引起Cassandra集群负载升高,性能降低;此外,CQLSSTableWriter生成sstable的时候,会在内部进行排序,较大数据量时会导致CQLSSTableWriter性能过低、内存溢出,分布式处理时数据倾斜,造成SSTable文件生成缓慢。
发明内容
为了克服现有技术的不足,本发明的目的之一在于提供一种基于Spark的Cassandra数据导入方法,其根据SStable单文件大小及总数据量,计算出分区数量,并根据token值均分数据,进而防止导入Cassandra时,分区中数据不均衡的问题。
本发明的目的之一采用以下技术方案实现:
一种基于Spark的Cassandra数据导入方法,包括以下步骤:
获取待导入数据的数据量及SSTable单文件大小,并根据所述数据量及SSTable单文件大小计算所需分区数量N;
读取所述待导入的数据,根据所述数据的Key计算token值;
根据所述token值,将所述数据分配到所述N个分区中,并按照所述token值对每个所述分区的数据进行排序;
使用CQLSSTableWriter读取排序后的所述数据,生成SSTable文件;
并行处理所述SSTable文件,并通过SSTableload将所述SSTable文件导入Cassandra集群。
进一步地,根据所述数据量及SSTable单文件大小计算所需分区数量N,包括以下步骤:
从所述待导入的数据中随机抽取若干条数据,计算所述若干条数据的平均数据大小;
根据所述数据量、SSTable单文件大小及所述平均数据大小计算分区数量N,N的计算公式为:N=(数据量*平均数据大小)/SSTable单文件大小。
进一步地,根据所述数据的Key计算token值之后,还包括以下步骤:
从所述数据中随机抽取预设量的数据,对抽取的所述数据按token值进行排序;
根据抽取的所述数据的token值,将抽取的所述数据均分到所述N个分区中,得到每个分区的token值区间。
进一步地,根据所述token值,将所述数据分配到所述N个分区中,包括以下步骤:
将所述N个分区的token值区间依序组成一个数组;
通过二分算法,为每个所述数据的token值匹配所述数组中的token值区间;
根据匹配到的token值区间,为所述数据匹配对应的分区。
进一步地,使用CQLSSTableWriter读取所述数据,生成SSTable文件,还包括以下步骤:
将所述SSTable文件拷贝到分布式文件系统上,并记录拷贝路径。
进一步地,并行处理所述SSTable文件,并通过SSTableload将所述SSTable文件导入Cassandra集群,包括以下步骤:
根据Cassandra节点数计算并行数M;
根据所述SSTable文件的数量,将所述SSTable文件均分到M个Spark task上;
根据均分结果,通过所述拷贝路径,将所述分布式文件系统上的SSTable文件拷贝到所述M个Spark task上,并执行所述Spark task;
通过SSTableload将所述SSTable文件导入Cassandra集群。
进一步地,所述并行数M的计算满足公式:M=Cassandra节点数*4。
本发明的目的之二在于提供基于Spark的Cassandra数据导入装置,其根据SStable单文件大小及总数据量,计算出分区数量,并根据token值均分数据,进而防止导入Cassandra时,分区中数据不均衡的问题。
本发明的目的之二采用以下技术方案实现:
一种基于Spark的Cassandra数据导入装置,其包括:
分区计算模块,用于获取待导入数据的数据量及SSTable单文件大小,并根据所述数据量及SSTable单文件大小计算所需分区数量N;
分区分配模块,用于读取所述待导入的数据,根据所述数据的Key计算token值;根据所述token值,将所述数据分配到所述N个分区中,并按照所述token值对每个所述分区的数据进行排序;
文件生成模块,用于使用CQLSSTableWriter读取排序后的所述数据,生成SSTable文件;
文件导入模块,用于通过SSTableload将所述SSTable文件导入Cassandra集群。
本发明的目的之三在于提供执行发明目的之一的电子设备,其包括处理器、存储介质以及计算机程序,所述计算机程序存储于存储介质中,所述计算机程序被处理器执行时实现上述的基于Spark的Cassandra数据导入方法。
本发明的目的之四在于提供存储发明目的之一的计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的基于Spark的Cassandra数据导入方法。
相比现有技术,本发明的有益效果在于:
本发明提供了一种基于Spark的数据批量导入方法,在数据导入Cassandra前计算其分区数量,并根据计算出的数据token值,均分数据到各个分区,使数据均匀,大小合理,防止了SSTable数据量的不平衡,无需使用CQLSSTableWriter的内部排序功能,提高了CQLSSTableWriter的性能,减少了内存溢出情况的发生;将SSTable文件的生成和导入步骤进行分离,导入Cassandra时无需对SSTable文件进行再次拆分,大大减少了SSTableLoader导入Cassandra时产生的小文件数量,提高了大量数据下的Cassandra数据导入性能,并减少了对Cassandra集群负载的影响。
附图说明
图1是实施例一的数据导入方法的流程图;
图2是实施例一的分区数量计算方法的流程图;
图3是实施例一的分区匹配方法的流程图;
图4是实施例二的数据并行处理方法的流程图;
图5是实施例三的基于Spark的Cassandra数据导入装置的结构框图;
图6是实施例四的电子设备的结构框图。
具体实施方式
以下将结合附图,对本发明进行更为详细的描述,需要说明的是,以下参照附图对本发明进行的描述仅是示意性的,而非限制性的。各个不同实施例之间可以进行相互组合,以构成未在以下描述中示出的其他实施例。
实施例一
实施例一提供了一种基于Spark的Cassandra数据导入方法,旨在通过将需导入的数据均分到各个分区中,防止数据不平衡及数据倾斜的问题,减少内存溢出情况的发生概率。
Spark是用于大规模数据处理的统一分析引擎,其Spark提供了一个全面、统一的框架用于管理各种有着不同性质(文本数据、图表数据等)的数据集和数据源(批量数据或实时的流数据)的大数据处理的需求。
请参照图1所示,一种基于Spark的Cassandra数据导入方法,包括以下步骤:
S110、获取待导入数据的数据量及SSTable单文件大小,并根据所述数据量及SSTable单文件大小计算所需分区数量N;
S110中的SSTable是Cassandra的基本存储单元,SSTable单文件的大小由用户自行设定;一个分区中存储有一个SSTable文件,所以上述的分区数量N也为SSTable文件的数量。
S110中的数据量指的是数据的数量,数据量对应的数据大小需要通过计算得出。当数据量较小时,可以快速计算出其对应数据的大小,但是当数据量很大时,例如TB、PB级别,则难以快速计算出数据的大小;因此,本实施例中采取数据抽样的方法计算数据大小,并根据数据大小计算分区数量N,请参照图2所示,具体包括以下步骤:
S1101、从所述待导入的数据中随机抽取若干条数据,计算所述若干条数据的平均数据大小;
S1101中抽取的数据数量,本实施例中不作具体限定,可以根据实际数量大小进行抽取,例如对于一个1亿条的数据,抽取其中的10万条作为样本,计算这10万条数据的平均大小。
S1102、根据所述数据量、SSTable单文件大小及所述平均数据大小计算N,N的计算满足公式:(数据量*平均数据大小)/SSTable单文件大小。
S120、读取所述待导入的数据,根据所述数据的Key计算token值;
S120中的Key是用于确定某一行数据记录的唯一值,根据数据的Key(主键)就可以计算得到token值;数据的Key在导入Cassandra时,作为Cassandra表的主键子段值。Token值是一个哈希值,其计算过程是一个哈希计算的过程,该哈希计算过程通过MD5算法完成。
为了确定每个分区的token值区间,本实施例采用数据抽样的方法得到分区的token值区间,具体地,包括以下步骤:
从所述数据中随机抽取预设量的数据,对抽取的所述数据按token值进行排序;
根据抽取的所述数据的token值,将抽取的所述数据均分到所述N个分区中,得到每个分区的token值区间。
上述的预设量根据实际情况进行设定,可以是按百分比进行抽取,也可以是按固定数量进行抽取,例如预设量为2%的数据,则对于一个1亿条的数据,抽取其中的200万条数据来确定token区间。上述步骤中的token区间指的是:每个分区中数据token最大值及最小值组成的区间。
S130、根据所述token值,将所述数据分配到所述N个分区中,并按照所述token值对每个所述分区的数据进行排序;
S130中的排序功能由Spark内置算子实现,以便于后续无需再通过CQLSSTableWriter的进行排序;
S130步骤即Spark中的Shuffle分区排序,请参照图3所示,包括以下步骤:
S1301、将所述N个分区的token值区间依序组成一个数组;
上述的数组排序顺序是按照token值区间(每个分区token值区间的两个端点值)的大小进行排列,可以是从大到小进行排列,也可以是由小到大进行排列,本实施例不对排序规则进行限定,该排序是为了得到后续二分算法查找时的数据集。
S1302、通过二分算法,为每个所述数据的token值匹配所述数组中的token值区间;
二分算法的原理为:让最大数与最小数的中间数不断与目标数字比较,然后不断缩小最大值和最小值的范围,直到范围缩小到1个数字为止。相比于普通循环查找算法,二分法的查找速率和匹配速率更快。
S1303、根据匹配到的token值区间,为所述数据匹配对应的分区。
因为在数组中的数据由token值区间组成,即每个分区的token范围值组成,因此,S1303中二分法匹配到的数据区间就是分区的token值区间,根据数据token值的匹配结果就可以得到数据对应的partition(分区)。
S140、使用CQLSSTableWriter读取排序后的所述数据,生成SSTable文件;
上述的CQLSSTableWriter是一个读取源数据生成SSTable的工具。
S140在生成SSTable文件时,是在关闭CQLSSTableWriter内部排序功能的情况下进行的,以防止内部排序造成CQLSSTableWriter性能下降。
S150、并行处理所述SSTable文件,并通过SSTableload将所述SSTable文件导入Cassandra集群。
上述的SSTableload是一个采用Cassandra streaming协议将SSTable文件导入Cassandra的工具。
S150的并行处理即Spark的并行计算功能,将数据处理逻辑拆分成多个Sparktask在集群上并行执行,以提高数据处理效率。
实施例二
实施例二是在实施例一的基础上进行的,其主要对并行处理过程进行了改进。
在Spark完成partition(分区)区间计算及shuffle分区排序后,即完成S110-S130的步骤后,直接使用CQLSSTableWriter+SSTableLoader导入数据到Cassandra时,并行度和流量难以控制,从而影响Cassandra集群性能。
因此,本实施例在实施例一S140步骤生成SSTable文件后,增加将SSTable文件拷贝到分布式文件系统上的步骤,并记录拷贝路径,以便于进行并行数的控制。
本实施例中的分布式文件系统选用hdfs。
请参照图4所示,具体包括以下步骤:
S210、根据Cassandra节点数计算并行数M;
Cassandra是通过各节点处理导入的数据的,因此,本实施例通过Cassandra节点数计算Spark集群处理的并行数,以便于均衡每个Cassandra节点处理的数据量。
本实施例中并行数M的计算满足公式:M=Cassandra节点数*4。
S220、根据所述SSTable文件的数量,将所述SSTable文件均分到M个Spark task上;
Spark是通过将数据拆分成多个task进行集群处理,因此,Spark task的数量即为M;因为一个分区存储一个SSTable文件,因此,上述SSTable文件的数量等于分区数量N;则每个Spark task处理的SSTable文件数量为N/M个。
S230、根据均分结果,通过所述拷贝路径,将所述分布式文件系统上的SSTable文件拷贝到所述M个Spark task上,并执行所述Spark task;
S230中会将分布式文件系统上的SSTable文件拷贝到worker节点,worker节点指的是Spark上执行Spark task的节点。
S240、通过SSTableload将所述SSTable文件导入Cassandra集群。
本实施例通过将数据拷贝到分布式文件系统上,实现了并行数的控制,充分发挥了Spark集群处理的性能,且有效的控制了导入数据时对Cassandra集群的影响。
实施例三
实施例三公开了一种对应上述实施例的基于Spark的Cassandra数据导入方法对应的装置,为上述实施例的虚拟装置结构,请参照图5所示,包括:
分区计算模块310,用于获取数据量及SSTable单文件大小,并根据所述数据量及SSTable单文件大小计算所需分区数量N;
分区分配模块320,用于读取数据,根据所述数据的Key计算token值;根据所述token值,将所述数据分配到所述N个分区中,并按照所述token值对每个所述分区的数据进行排序;
文件生成模块330,用于使用CQLSSTableWriter读取排序后的所述数据,生成SSTable文件;
文件导入模块340,用于通过SSTableload将所述SSTable文件导入Cassandra集群。
实施例四
图6为本发明实施例四提供的一种电子设备的结构示意图,如图6所示,该电子设备包括处理器410、存储器420、输入装置430和输出装置440;计算机设备中处理器410的数量可以是一个或多个,图6中以一个处理器410为例;电子设备中的处理器410、存储器420、输入装置430和输出装置440可以通过总线或其他方式连接,图6中以通过总线连接为例。
存储器420作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的基于Spark的Cassandra数据导入方法对应的程序指令/模块(例如,基于Spark的Cassandra数据导入方法装置中的分区计算模块310、分区分配模块320、文件生成模块330和文件导入模块340)。处理器410通过运行存储在存储器420中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述实施例一至实施例二的基于Spark的Cassandra数据导入方法。
存储器420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器420可进一步包括相对于处理器410远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置430可用于接收输入的用户身份信息、数据以及预设值等。输出装置440可包括显示屏等显示设备。
实施例五
本发明实施例五还提供一种包含计算机可执行指令的存储介质,该存储介质可用于计算机执行基于Spark的Cassandra数据导入方法方法,该方法包括:
获取待导入数据的数据量及SSTable单文件大小,并根据所述数据量及SSTable单文件大小计算所需分区数量N;
读取所述待导入的数据,根据所述数据的Key计算token值;
根据所述token值,将所述数据分配到所述N个分区中,并按照所述token值对每个所述分区的数据进行排序;
使用CQLSSTableWriter读取排序后的所述数据,生成SSTable文件;
并行处理所述SSTable文件,并通过SSTableload将所述SSTable文件导入Cassandra集群。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的基于Spark的Cassandra数据导入方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台电子设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述基于Spark的Cassandra数据导入方法装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
对本领域的技术人员来说,可根据以上描述的技术方案以及构思,做出其它各种相应的改变以及形变,而所有的这些改变以及形变都应该属于本发明权利要求的保护范围之内。

Claims (9)

1.一种基于Spark的Cassandra数据导入方法,其特征在于,包括以下步骤:
获取待导入数据的数据量及SSTable单文件大小,从所述待导入的数据中随机抽取若干条数据,计算所述若干条数据的平均数据大小;根据所述数据量、SSTable单文件大小及所述平均数据大小计算分区数量N,N的计算公式为:N=(数据量*平均数据大小)/SSTable单文件大小;
读取所述待导入的数据,根据所述数据的Key计算token值;
根据所述token值,将所述数据分配到N个分区中,并按照所述token值对每个所述分区的数据进行排序;
使用CQLSSTableWriter读取排序后的所述数据,生成SSTable文件;
并行处理所述SSTable文件,并通过SSTableload将所述SSTable文件导入Cassandra集群。
2.如权利要求1所述的基于Spark的Cassandra数据导入方法,其特征在于,根据所述数据的Key计算token值之后,还包括以下步骤:
从所述数据中随机抽取预设量的数据,对抽取的所述数据按token值进行排序;
根据抽取的所述数据的token值,将抽取的所述数据均分到所述N个分区中,得到每个分区的token值区间。
3.如权利要求2所述的基于Spark的Cassandra数据导入方法,其特征在于,根据所述token值,将所述数据分配到所述N个分区中,包括以下步骤:
将所述N个分区的token值区间依序组成一个数组;
通过二分算法,为每个所述数据的token值匹配所述数组中的token值区间;
根据匹配到的token值区间,为所述数据匹配对应的分区。
4.如权利要求1所述的基于Spark的Cassandra数据导入方法,其特征在于,使用CQLSSTableWriter读取所述数据,生成SSTable文件,还包括以下步骤:
将所述SSTable文件拷贝到分布式文件系统上,并记录拷贝路径。
5.如权利要求4所述的基于Spark的Cassandra数据导入方法,其特征在于,并行处理所述SSTable文件,并通过SSTableload将所述SSTable文件导入Cassandra集群,包括以下步骤:
根据Cassandra节点数计算并行数M;
根据所述SSTable文件的数量,将所述SSTable文件均分到M个Spark task上;
根据均分结果,通过所述拷贝路径,将所述分布式文件系统上的SSTable文件拷贝到所述M个Spark task上,并执行所述Spark task;
通过SSTableload将所述SSTable文件导入Cassandra集群。
6.如权利要求5所述的基于Spark的Cassandra数据导入方法,其特征在于,所述并行数M的计算满足公式:M=Cassandra节点数*4。
7.一种基于Spark的Cassandra数据导入装置,其特征在于,其包括:
分区计算模块,用于获取待导入数据的数据量及SSTable单文件大小,从所述待导入的数据中随机抽取若干条数据,计算所述若干条数据的平均数据大小;根据所述数据量、SSTable单文件大小及所述平均数据大小计算分区数量N,N的计算公式为:N=(数据量*平均数据大小)/SSTable单文件大小;
分区分配模块,用于读取所述待导入的数据,根据所述数据的Key计算token值;根据所述token值,将所述数据分配到N个分区中,并按照所述token值对每个所述分区的数据进行排序;
文件生成模块,用于使用CQLSSTableWriter读取排序后的所述数据,生成SSTable文件;
文件导入模块,用于通过SSTableload将所述SSTable文件导入Cassandra集群。
8.一种电子设备,其包括处理器、存储介质以及计算机程序,所述计算机程序存储于存储介质中,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6任一项所述的基于Spark的Cassandra数据导入方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6任一项所述的基于Spark的Cassandra数据导入方法。
CN201911379699.6A 2019-12-27 2019-12-27 基于Spark的Cassandra数据导入方法、装置、设备及介质 Active CN111143456B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911379699.6A CN111143456B (zh) 2019-12-27 2019-12-27 基于Spark的Cassandra数据导入方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911379699.6A CN111143456B (zh) 2019-12-27 2019-12-27 基于Spark的Cassandra数据导入方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN111143456A CN111143456A (zh) 2020-05-12
CN111143456B true CN111143456B (zh) 2022-07-05

Family

ID=70521124

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911379699.6A Active CN111143456B (zh) 2019-12-27 2019-12-27 基于Spark的Cassandra数据导入方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN111143456B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114816255A (zh) * 2022-04-26 2022-07-29 平安普惠企业管理有限公司 基于Spark的文件处理方法、装置、设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103294799A (zh) * 2013-05-27 2013-09-11 北京大学 一种数据并行批量导入只读查询系统的方法及系统
CN106980540A (zh) * 2017-03-07 2017-07-25 清华大学 一种分布式多维离散数据的计算方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102737130A (zh) * 2012-06-21 2012-10-17 广州从兴电子开发有限公司 处理hdfs元数据的方法及系统
US11146613B2 (en) * 2016-07-29 2021-10-12 International Business Machines Corporation Distributed computing on document formats
US10769111B2 (en) * 2018-04-24 2020-09-08 EMC Holding Company, LLC Data transformation of Cassandra files for improved deduplication during backup

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103294799A (zh) * 2013-05-27 2013-09-11 北京大学 一种数据并行批量导入只读查询系统的方法及系统
CN106980540A (zh) * 2017-03-07 2017-07-25 清华大学 一种分布式多维离散数据的计算方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Cassandra的实时气象数据分布式存储系统;杨芳等;《陕西气象》;20170715(第04期);全文 *

Also Published As

Publication number Publication date
CN111143456A (zh) 2020-05-12

Similar Documents

Publication Publication Date Title
Lin Mr-apriori: Association rules algorithm based on mapreduce
US10346439B2 (en) Entity resolution from documents
Halappanavar et al. Scalable static and dynamic community detection using grappolo
CN106407207B (zh) 一种实时新增数据更新方法和装置
CN111797096A (zh) 基于ElasticSearch的数据索引方法、装置、计算机设备及存储介质
Arnaiz-González et al. MR-DIS: democratic instance selection for big data by MapReduce
CN108733790B (zh) 数据排序方法、装置、服务器和存储介质
US11221890B2 (en) Systems and methods for dynamic partitioning in distributed environments
US10162830B2 (en) Systems and methods for dynamic partitioning in distributed environments
CN103838626A (zh) 一种处理串行任务的数据处理装置及方法
CN103440246A (zh) 用于MapReduce的中间结果数据排序方法及系统
CN109597810B (zh) 一种任务切分方法、装置、介质及电子设备
CN105556474A (zh) 管理数据操作的存储器和存储空间
CN112579595A (zh) 数据处理方法、装置、电子设备及可读存储介质
Elagib et al. Big data analysis solutions using MapReduce framework
CN113672375B (zh) 资源分配预测方法、装置、设备及存储介质
CN109165201B (zh) 日志的归并方法及终端设备
CN111143456B (zh) 基于Spark的Cassandra数据导入方法、装置、设备及介质
US10313457B2 (en) Collaborative filtering in directed graph
CN111767287A (zh) 数据导入方法、装置、设备及计算机存储介质
CN114860460B (zh) 一种数据库加速的方法、装置、计算机设备
CN110909085A (zh) 数据处理方法、装置、设备及存储介质
US11442792B2 (en) Systems and methods for dynamic partitioning in distributed environments
CN104598567A (zh) 一种基于Hadoop MapReduce编程框架的数据统计排重的方法
CN110929207B (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