用于将大数据量的文本文件导入分布式数据库的方法及装置制造方法及图纸

技术编号:27935456 阅读:25 留言:0更新日期:2021-04-02 14:15
本发明专利技术涉及用于将大数据量的文本文件导入分布式数据库的方法和装置,其特征在于,所述方法具有下列步骤:查询并获取文件导入参数配置;将所述大数据量的文本文件以数据量平均的方式分成多个文件读取子区域;以对应数量的线程拆分所有文件读取子区域,其中,每个文件读取子区域中的数据分别被拆分到同等数量的多个子文件中;将拆分后得到的所有子文件分配给多个分布式AP;使用多线程异步外呼发送文件导入请求至各分布式AP,并且各分布式AP分别以分配到的子文件个数发起对应数量的线程进行文件导入,其中,按照拆分后的子文件的编号并发导入到各分表中。此外,本发明专利技术还涉及用于将大数据量的文本文件导入分布式数据库的装置。

【技术实现步骤摘要】
用于将大数据量的文本文件导入分布式数据库的方法及装置
本专利技术涉及一种用于将大数据量的文本文件导入分布式数据库的方法及装置。
技术介绍
自从资产管理的新规则出台以来,存在大量的符合净值化要求的理财产品需要从母行迁移到理财子公司名下进行经营。理财系统涉及的数据包括清算信息、账户信息、客户信息、份额信息、投研信息、净值信息以及监管信息等等。要将这些数据快速且成功的迁移到大资管系统中面临来自系统处理能力、硬件设施、业务维持正常营运的要求并且面临数据的安全性、可用性、可延展性这三方面的压力和挑战。因此,针对以上这三方面的挑战并制定合理方案,需要从合理利用系统资源、减少数据迁移时耗和保证数据健康这三个维度来考虑,用以解决理财数据迁移问题。现有技术对于文件导入的处理一般是由web层发起请求、由service层建立数据库连接池并且将接收到的原始文件直接交给DB层处理来实现数据导入。然而,现有技术具有诸多缺点。在传统方案中,将大数据量的文本文件导入到单库单表中,该数据库表会存在千万级别以上的数据量。因此,数据的安全性,可用性,可延展性本文档来自技高网...

【技术保护点】
1.用于将大数据量的文本文件导入分布式数据库的方法,其特征在于具有下列步骤:/n第一步:查询并获取文件导入参数配置;/n第二步:将所述大数据量的文本文件以数据量平均的方式分成多个文件读取子区域;/n第三步:以对应数量的线程拆分所有文件读取子区域,其中,每个文件读取子区域中的数据分别被拆分到同等数量的多个子文件中;/n第四步:将拆分后得到的所有子文件分配给多个分布式AP;/n第五步:使用多线程异步外呼发送文件导入请求至各分布式AP,并且各分布式AP分别以分配到的子文件个数发起对应数量的线程进行文件导入,其中,按照拆分后的子文件的编号并发导入到各分表中。/n

【技术特征摘要】
1.用于将大数据量的文本文件导入分布式数据库的方法,其特征在于具有下列步骤:
第一步:查询并获取文件导入参数配置;
第二步:将所述大数据量的文本文件以数据量平均的方式分成多个文件读取子区域;
第三步:以对应数量的线程拆分所有文件读取子区域,其中,每个文件读取子区域中的数据分别被拆分到同等数量的多个子文件中;
第四步:将拆分后得到的所有子文件分配给多个分布式AP;
第五步:使用多线程异步外呼发送文件导入请求至各分布式AP,并且各分布式AP分别以分配到的子文件个数发起对应数量的线程进行文件导入,其中,按照拆分后的子文件的编号并发导入到各分表中。


2.根据权利要求1所述的方法,其特征在于,在所述第一步中解析文本文件的名称并将文本文件的名称作为查询条件。


3.根据权利要求1或2所述的方法,其特征在于,如果文本文件不属于大数据量的文本文件,则应用传统的技术方案对文本文件进行处理。


4.根据权利要求3所述的方法,其特征在于,所述传统的技术方案包括下列步骤:
第一步:由service层建立数据库连接池;
第二步:将文本文件直接交给DB层处理并实现数据导入。


5.根据权利要求1所述的方法,其特征在于,在所述第二步中,向后检索数据换行符来对文件读取子区域的边界进行修正直至最后一个文件读取子区域。


6.根据权利要求5所述的方法,其特征在于,经修正的第一个文件读取子区域为其中,X是文件大小,Y是文件读取子区域的数量,Y为自然数且Y≤M×N,其中,M是分库数而N是分表数且均属于文件导入参数配置并且M和N均为自然数,K1是针对第一个文件读取子区域而言的由于出现换行符所引起的偏移位置,经修正的第m个文件读取子区域为其中,Km是针对第m个文件读取子区域而言的由于出现换行符所引起的偏移位置,m∈[2,3,……,Y]。


7.根据权利要求6所述的方法,其特征在于,在所述第三步中,获取合适的业务字段,拆分每个文件读取子区域中的数据并按照hash(Key)%(M×N)分别来确定拆分出的数据属于哪个子文件,其中,Key是业务字段值,M是分库数而N是分表数并且M和N均属于文件导入参数配置且均为自然数,并且其中,拆分出的子文件表示为“文件名_m_hash(Key)%(M×N)”。


8.根据权利要求7所述的方法,其特征在于,所述业务字段为主键。
<...

【专利技术属性】
技术研发人员:朱晓真邓昌胜陈章立
申请(专利权)人:中国建设银行股份有限公司
类型:发明
国别省市:北京;11

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

1