[发明专利]数据预分区方法、装置、电子设备及可读存储介质在审
申请号: | 201911321136.1 | 申请日: | 2019-12-20 |
公开(公告)号: | CN111159235A | 公开(公告)日: | 2020-05-15 |
发明(设计)人: | 李威;覃鹏;刘增文;叶长全;吴仰波 | 申请(专利权)人: | 中国建设银行股份有限公司;建信金融科技有限责任公司 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455;G06F16/27 |
代理公司: | 北京市兰台律师事务所 11354 | 代理人: | 张峰 |
地址: | 100033 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 分区 方法 装置 电子设备 可读 存储 介质 | ||
本申请提供了一种数据预分区方法、装置、电子设备及可读存储介质,应用于大数据技术领域,其中该方法包括:通过Spark‑sql引擎从目标Hive数据集中获取目标行键数据,实现大规模的目标行键数据的归集,根据归集的目标行键数据得到分区结果信息,并根据分区结果信息对Hbase数据库进行数据预分区,从而能实现大规模数据的均匀存储,避免出现数据倾斜;此外,Spark‑sql引擎为基于内存的大数据处理框架,相较于基于磁盘的MapReduce,其数据处理速度更快,能实现大规模数据的快速计算;再者,与Hash散列rowkey(行键)的方式相比,本申请在读取数据时,不需要进行转义(Hash散列方式需要转义),能有效提升数据查询的速度。
技术领域
本申请涉及大数据技术领域,具体而言,本申请涉及一种数据预分区方法、装置、电子设备及可读存储介质。
背景技术
金融业特别是银行业为代表的传统巨头企业,其业务种类复杂度高、客户指标维度多、客户群体总量大、交易流水大,客户360视图或者历时流水查询等数据多达几百维度,体量多达数亿客户、万亿级数据。
主流的用于查询交易的分布式、面向列的Hbase常用语解决上述问题,但是由于数据分布不均匀,高并发交易下常因热点问题而造成交易性能较低。现在常见的处理办法是创建hash散列rowkey,然后做到数据均匀分布,但是,Hash散列rowkey能比较好的优化数据分布,但是查询的时候需要进行转义、且Hash其存在本身也占用空间,所以本身效率不是最佳且浪费资源。因此,大批量的数据的合理存储成为了一个问题。
发明内容
本申请提供了一种数据预分区方法、装置、电子设备及可读存储介质,用于实现大规模数据的均匀存储,避免出现数据倾斜现象,本申请采用的技术方案如下:
第一方面,提供了一种数据预分区方法,该方法包括,
基于接收到的预分区信息通过Spark-sql引擎从目标Hive数据集中获取目标行键数据,预分区信息包括行键表名、行键列名、预定分区数;
基于目标行键数据与预定分区数,通过Spark-sql引擎进行分区迭代计算,得到分区结果信息,分区结果信息包括各个分区的开始行键与结束行键;
基于分区结果信息对Hbase数据库进行数据预分区。
可选地,基于接收的预分区信息通过Spark-sql引擎从目标Hive数据集中获取目标行键数据,包括:
基于行键表名从目标Hive数据集中确定目标行键表;
基于行键列名从目标行键表中获取目标行键数据。
可选地,基于目标行键数据与预定分区数,通过Spark-sql引擎进行分区迭代计算,得到分区结果信息,包括:
对目标行键数据进行RDD化处理,得到RDD化处理后的目标行键数据;
基于RDD化处理后的目标行键数据进行排序处理,得到排序处理后的目标行键数据;
基于排序处理后的目标行键数据与预定分区数确定分区结果信息。
可选地,目标Hive数据集中数据的获取方式包括以下至少一项:
从多个Hive表中抽取目标行键数据得到目标Hive数据集;
从至少一个业务文件中抽取目标行键数据,并将得到的目标行键数据存储至HDFS系统,以及将存储至HDFS系统的目标行键数据映射为Hive表访问。
可选地,该方法还包括:
接收待存储目标数据的存储请求,待存储目标数据包含第二目标行键;
基于第二目标行键确定待存储目标数据对应的目标分区,并基于确定的目标分区将待存储目标数据存储。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国建设银行股份有限公司;建信金融科技有限责任公司,未经中国建设银行股份有限公司;建信金融科技有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911321136.1/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置