【技术实现步骤摘要】
一种基于参数配置的spark
‑
hbase批量数据快速入库实现方法及系统
[0001]本专利技术涉及数据库
,尤其涉及一种基于参数配置的spark
‑
hbase批量数据快速入库实现方法以及一种基于参数配置的spark
‑
hbase批量数据快速入库实现系统。
技术介绍
[0002]目前在spark处理批量离线以及小批实时流式数据中,针对数据加工结果需要入库hbase数据库的情况,一般采用spark
‑
bulkload方式。
[0003]如图1所示,spark
‑
bulkload即在spark计算完成并产生结果RDD数据集后,通过组装产生hbase的<rowkey,cell>格式的RDD数据集、排序、写入hdfs(Hadoop Distributed File System,Hadoop分布式文件系统)生成hfile文件,最后通过hbase的bulkload方式完成hfile文件加载实现数据入库。
[0004]采用此方式首先生成hfile文件并通过bulkload进行加载的好处是文件级的批量操作,避免了通过大批量单条或者批量put操作的方式对hbase数据服务器regionserver的访问压力以及I/O和CPU较大的性能开销。
[0005]spark
‑
bulkload虽然实现了文件级的批量数据hbase入库,但是hbase表设计时,一般采用预分区的方式, ...
【技术保护点】
【技术特征摘要】
1.一种基于参数配置的spark
‑
hbase批量数据快速入库实现方法,其特征在于,包括:针对spark引擎计算得到批量数据向hbase数据库入库的场景,配置hbase表的数据入库合并策略;利用spark引擎对业务数据进行计算,将生成的结果数据集写入hdfs并记录至信息表;根据所述信息表的文件生成时间顺序不断添加hdfs文件目录,在满足所述数据入库合并策略的要求时,提交MR任务以生成hfile文件;将所述hfile文件入库至所述hbase数据库。2.根据权利要求1所述的基于参数配置的spark
‑
hbase批量数据快速入库实现方法,其特征在于,还包括:在将所述hfile文件入库至所述hbase数据库后,清除所述hdfs的结果数据集。3.根据权利要求1或2所述的基于参数配置的spark
‑
hbase批量数据快速入库实现方法,其特征在于,所述数据入库合并策略的配置信息包括hbase表名、写hdfs文件时每个分区的数据量、生成hfile文件的最小合并数据量、生成hfile文件的最大合并数据量、数据入库的最大允许延迟时间以及扫描间隔。4.根据权利要求3所述的基于参数配置的spark
‑
hbase批量数据快速入库实现方法,其特征在于,所述将生成的结果数据集写入hdfs并记录至信息表的具体过程包括:所述结果数据集无需组装构建为预设格式,动态计算并缩减所述结果数据集的分区数,根据所述分区数无需排序、直接将所述结果数据集写入hdfs,并记录至本批次的信息表,所述信息表包括流水、表名、hdfs文件目录、数据量、状态及生成时间。5.根据权利要求3所述的基于参数配置的spark
‑
hbase批量数据快速入库实现方法,其特征在于:启动异步扫描应用,根据所述数据入库合并策略扫描所述信息表,根据所述信息表的文件生成时间顺序不断添加待处理的hdfs文件目录,直至满足所述数据入库合并策略的要求,则提交MR任务,若不满足,则进行下一次轮询;所述MR任务将多数据源合并生成hfile文件,并通过bulkload方式将所述hfile文件加载入库至所述hbase数据库。6.一种基于参数配置的spark
‑
hbase批量数据快速入库实现系统,其特征在于,应用如权利要求1至5中任一项所述的基于参...
【专利技术属性】
技术研发人员:朱常杰,
申请(专利权)人:北京思特奇信息技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。