[发明专利]一种基于Spark框架的关系型数据库分布式读取方法及装置在审
申请号: | 202111055101.5 | 申请日: | 2021-09-09 |
公开(公告)号: | CN113836197A | 公开(公告)日: | 2021-12-24 |
发明(设计)人: | 吴珉杰;赵凡举;李垚;朱亮;陈国润;钱栋军;马文斌 | 申请(专利权)人: | 上海理想信息产业(集团)有限公司 |
主分类号: | G06F16/2458 | 分类号: | G06F16/2458;G06F16/242;G06F16/28 |
代理公司: | 上海方澜知识产权代理事务所(普通合伙) 31440 | 代理人: | 李娜 |
地址: | 201315 上海市浦东*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 spark 框架 关系 数据库 分布式 读取 方法 装置 | ||
本发明实施例涉及分布式计算技术领域,公开了一种基于Spark框架的关系型数据库分布式读取方法及装置。该方法包括:获取待读取的数据表中的数据总量S以及分区数量n;S、n分别为正整数;根据数据总量S以及分区数量n得到每个分区对应的数据量m;对待读取的数据表中的数据的分区用字段的字段值进行排序之后,根据各个分区的数据量m查找得到各个分区对应的分区用字段的字段值;其中,分区用字段的数据类型为非数值型;根据各个分区对应的分区用字段的字段值组装成查询语句并分发到n个节点进行读取计算。本发明实施例可实现字符型分区字段的数据的并行处理,提高数据处理效率以及迁移速度。
技术领域
本发明涉及分布式计算技术领域,特别涉及一种基于Spark框架的关系型数据库分布式读取方法及装置。
背景技术
伴随着经济的飞速发展,各大企业业务量猛增,企业所留存的数据也迎来了爆发式的增长,数据量由原来的GB级别向着TB、PB级别发展,为最大程度地发掘数据价值,企业会采用各种算法对数据进行分析。面对单日TB、PB级别的数据增长,传统的数据库或者单机进程无法支撑如此大规模的数据计算,各种分布式计算框架如雨后春笋涌现出来,Spark是当前离线批处理中炙手可热的框架,具有高可用、高并发、高性能等的特性,很大程度上提升了数据处理的性能。Spark支持的数据源种类繁多,包括FileSystem、关系型数据库、非关系型数据库等。
Spark能够提高处理性能的一个关键点在于能够将一个大的任务切分成n个小的任务分发到不同的机器并行执行,这种并行是从数据读取阶段就开始的。当前很多企业数据还是存储在关系型数据库中,如Mysql、Oracle中,Spark自然也实现了对其的支持,但是当前Spark版本中,若要并行读取关系型数据库,则需要使用到分区字段,该字段要求表中必须存在一个数值类型的字段,且字段的值要尽量不重复,大部分场景下会使用主键。而很多企业的数据库中是不存在类似字段的,他们的表字段是字符串类型的,因此在此场景下,Spark任务便无法并行读取数据,后续的数据处理自然无法并行。
应当理解的是,以上的描述仅是对相关技术的示例性解释,并不表示属于本公开的现有技术。
发明内容
本发明实施例的目的在于提供一种基于Spark框架的关系型数据库分布式读取方法及装置,解决当前Spark任务无法对关系型数据库中缺少数值型分区字段的数据进行并行读取的问题。
为解决上述技术问题,第一方面,本发明实施例提供了一种基于Spark框架的关系型数据库分布式读取方法,包括:
获取待读取的数据表中的数据总量S以及分区数量n;S、n均为正整数;
根据所述数据总量S以及分区数量n得到每个分区对应的数据量m;
对所述待读取的数据表中的数据的分区用字段的字段值进行排序之后,根据各个分区的数据量m查找得到各个分区对应的分区用字段的字段值;其中,所述分区用字段的数据类型为非数值型;
根据所述各个分区对应的分区用字段的字段值组装成查询语句并分发到n个节点进行读取计算。
另外,所述根据所述数据总量S以及分区数量n得到每个分区对应的数据量m,包括:
若S/n的余数r不为0,则将r条数据平均分配给n个分区中的r个分区。
另外,所述根据所述数据总量S以及分区数量n得到每个分区对应的数据量m,包括:
若S/n的余数r不为0,则将r条数据分配给n个分区中的任意一个分区。
另外,所述根据所述各个分区对应的分区用字段的字段值组装成查询语句并分发到n个节点进行读取计算,包括:
将包含(s/n+r)条数据的分区的计算任务轮流分配给不同的计算节点。
另外,所述方法还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海理想信息产业(集团)有限公司,未经上海理想信息产业(集团)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111055101.5/2.html,转载请声明来源钻瓜专利网。