基于spark的双定长文件加载和卸载方法、系统、介质及设备技术方案

技术编号:37377411 阅读:38 留言:0更新日期:2023-04-27 07:20
本发明专利技术提供了一种基于spark的双定长文件加载和卸载系统、方法、介质及设备,包括:加载文件模块:基于spark自适应读取双定长文件中的标志文件和数据文件,对标志文件和数据文件进行解析,并保存至hive表中;卸载文件模块:基于spark读取hive表中结构和数据,并将hive表中结构和数据进行标准化输出。中结构和数据进行标准化输出。中结构和数据进行标准化输出。

【技术实现步骤摘要】
基于spark的双定长文件加载和卸载方法、系统、介质及设备


[0001]本专利技术涉及文件系统
,具体地,涉及基于spark的双定长文件加载和卸载方法、系统、介质及设备。

技术介绍

[0002]现有技术中能够根据企业级标准,按照定长格式完成跨数据库的卸数任务。但是现有技术中仅支持关系型数据库如oralce\informix,加载文件到大数据时缺乏统一的工具,在卸载数据时目前的工具也不支持大数据;
[0003]专利文献CN1866211B(申请号:200510124633.4)公开了一种卸载文件系统的方法。在本专利技术的卸载方法中,响应于对特定文件系统的强制卸载请求,确定要卸载的文件系统是否是根文件系统。如果要卸载的文件系统不是根文件系统,则禁止其它进程访问要卸载的文件系统和属于该文件系统的文件。终止正在执行存在于要卸载的文件系统中的程序的第一进程。唤醒等待获取关于要卸载的文件系统中的所有打开文件的锁的第二进程,并且删除所述锁。在不影响打开了要卸载的文件系统中的文件的第三进程的情况下,关闭所有打开的文件。向在要卸载的文件系统中存在的本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于spark的双定长文件加载和卸载系统,其特征在于,包括:加载文件模块:基于spark自适应读取双定长文件中的标志文件和数据文件,对标志文件和数据文件进行解析,并保存至hive表中;卸载文件模块:基于spark读取hive表中结构和数据,并将hive表中结构和数据进行标准化输出。2.根据权利要求1所述的基于spark的双定长文件加载和卸载系统,其特征在于,在所述加载文件模块中,模块M1.1:通过spark读取双定长文件中的标志文件和数据文件,并对标志文件和数据文件进行解析,得到每个字段的开始位置、读取的长度以及每条数据记录的长度;模块M1.2:通过spark读取数据记录的API,得到每条记录的字节数组;模块M1.3:根据每条记录的字节数组、每个字段的开始位置和长度进行解码得到每个字段的字符串,生成RDD[Array[String],然后生成RDD[Row];模块M1.4:基于RDD[Row]对象通过spark创建dataset的api得到DataSet对象;模块M1.5:将DataSet对象保存到hive表中。3.根据权利要求1所述的基于spark的双定长文件加载和卸载系统,其特征在于,在所述卸载文件模块中,模块M2.1:通过spark读取hive表得到DataSet[Row],从DataSet[Row]得到每个字段需要导出的长度;模块M2.2:对DataSet[Row]进行转换,对每条记录Row依次读取每个字段的内容,然后对内容进行编码生成字节数组,若字节数组长度小于导出长度则后面补入空格,最后生成RDD[Array[byte]];模块M2.3:RDD[Array[byte]]按照每个分区进行标准化输出为文件,然后将所有的分区标准化输出的文件合并成一个文件,最后生成对应的标记文件。4.根据权利要求3所述的基于spark的双定长文件加载和卸载系统,其特征在于,在所述模块M2.3中,数据文件进行分区保存,当基于待导出目录读取数据文件时,则利用多机器分区并行读取。5.一种基于spark的双定长文件加载和卸载方法,其特征在于,包括:加载文件步骤:基于spark自适应读取双定长文件中的标志文件和数据文件,对标志文件和数据文件进行解析,并保存至hive...

【专利技术属性】
技术研发人员:袁佳张同利于涛陈华彬黄俊东
申请(专利权)人:兴业数字金融服务上海股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1