[发明专利]基于Spark的Cassandra数据导入方法、装置、设备及介质有效
申请号: | 201911379699.6 | 申请日: | 2019-12-27 |
公开(公告)号: | CN111143456B | 公开(公告)日: | 2022-07-05 |
发明(设计)人: | 程万胜 | 申请(专利权)人: | 同盾(广州)科技有限公司 |
主分类号: | G06F16/25 | 分类号: | G06F16/25;G06F16/27 |
代理公司: | 杭州创智卓英知识产权代理事务所(普通合伙) 33324 | 代理人: | 张迪 |
地址: | 511457 广东省广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 spark cassandra 数据 导入 方法 装置 设备 介质 | ||
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集群。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于同盾(广州)科技有限公司,未经同盾(广州)科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911379699.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种编号可自由组合的金属标识牌
- 下一篇:一种宠物用吸入性异氟烷
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置