一种湖仓下沉方法、装置、设备及介质制造方法及图纸

技术编号:39291227 阅读:10 留言:0更新日期:2023-11-07 10:59
本申请提供了一种湖仓下沉方法、装置、设备及介质,可应用于大数据领域或金融领域,包括:数据仓库通过kafka向数据湖发送消息;数据湖通过TBDS事件API,将参数传给API,所述参数包括分析所述kafka得到的事件名和数据日期;TBDS根据所述参数,产生事件实例;TBDS执行工作流运行包,消费所述事件实例,以实现湖仓下沉,所述工作流运行包为文件格式转化脚本。这样,通过消息触发TBDS,由工作流运行包实现数据仓库的数据格式向数据湖的数据格式的转换,解决表数据兼容问题,进而完成湖仓下沉。进而完成湖仓下沉。进而完成湖仓下沉。

【技术实现步骤摘要】
一种湖仓下沉方法、装置、设备及介质


[0001]本申请涉及大数据或金融的
,特别是涉及一种湖仓下沉方法、装置、设备及介质。

技术介绍

[0002]数据仓库,简称数仓,是长期储存在计算机内的、有组织、可共享的数据集合,是为决策支持系统提供基础数据的分析型数据库。数据仓库存储容量有限,只会存储一年的数据,且业务无法从数据仓库直接提取业务数据使用。而数据湖是一种以原始格式存储数据的系统或存储库,可以用于报告、可视化、高级分析和机器学习等任务。
[0003]通过湖仓下沉,把数据仓库的MPP表数据下沉至数据湖HIVE表进行存储,可以保存数据仓库的数据,也便于提取业务数据使用。但是数仓使用MPP技术栈存储数据,数据则用HIVE存储数据,通过湖仓下沉存在表数据兼容问题。
[0004]因此,如何实现湖仓下沉,是本领域技术人员亟需解决的技术问题。

技术实现思路

[0005]有鉴于此,本申请实施例提供了一种湖仓下沉方法及装置,旨在实现湖仓下沉。
[0006]第一方面,本申请实施例提供了一种湖仓下沉方法,包括:
[0007]数据仓库通过kafka向数据湖发送消息;
[0008]数据湖通过TBDS事件API,将参数传给API,所述参数包括分析所述kafka得到的事件名和数据日期;
[0009]TBDS根据所述参数,产生事件实例;
[0010]TBDS执行工作流运行包,消费所述事件实例,以实现湖仓下沉,所述工作流运行包为文件格式转化脚本。
[0011]可选的,所述TBDS执行工作流运行包,消费所述事件实例,以实现湖仓下沉,所述工作流运行包为文件格式转化脚本,包括:
[0012]TBDS获取数据仓库下传的txt格式文件;
[0013]TBDS将所述txt格式文件转换为orc格式文件;
[0014]TBDS解析所述orc格式文件,生成临时HIVE表;
[0015]TBDS将所述临时HIVE表的数据加载至目标HIVE表,所述目标HIVE表为数据湖对应的HIVE表。
[0016]可选的,所述TBDS将所述txt格式文件转换为orc格式文件,包括:
[0017]TBDS解析所述txt格式文件的识别字段分隔符和换行分隔符;
[0018]TBDS根据所述识别字段分隔符和换行分隔符,将txt格式文件转换为orc格式文件。
[0019]可选的,所述TBDS解析所述orc格式文件,生成临时HIVE表,包括:
[0020]TBDS根据所述参数,生成空白HIVE表;
[0021]TBDS通过预设脚本,将所述orc格式文件加载到所述空白HIVE表,得到临时HIVE表。
[0022]可选的,所述TBDS将所述临时HIVE表的数据加载至目标HIVE表,包括:
[0023]TBDS从app_metadata_src表和/或app_metadata表获取数据湖表字段和字段顺序;
[0024]TBDS依据所述字段和字段顺序,将所述临时HIVE表的数据加载至目标HIVE表。
[0025]可选的,在所述TBDS将所述临时HIVE表的数据加载至目标HIVE表之后,所述方法还包括:
[0026]TBDS定时清理所述临时HIVE表。
[0027]第二方面,本申请实施例提供了一种湖仓下沉装置,包括:
[0028]发送模块,用于数据仓库通过kafka向数据湖发送消息;
[0029]传输模块,用于数据湖通过TBDS事件API,将参数传给API,所述参数包括分析所述kafka得到的事件名和数据日期;
[0030]实例产生模块,用于TBDS根据所述参数,产生事件实例;
[0031]实例消费模块,用于TBDS执行工作流运行包,消费所述事件实例,以实现湖仓下沉,所述工作流运行包为文件格式转化脚本。
[0032]可选的,所述实例消费模块,包括:
[0033]获取单元,用于TBDS获取数据仓库下传的txt格式文件;
[0034]文件解析单元,用于TBDS将所述txt格式文件转换为orc格式文件;
[0035]临时表生成单元,用于TBDS解析所述orc格式文件,生成临时HIVE表;
[0036]目标表生成单元,用于TBDS将所述临时HIVE表的数据加载至目标HIVE表,所述目标HIVE表为数据湖对应的HIVE表。
[0037]第三方面,本申请实施例提供了一种设备,所述设备包括存储器和处理器,所述存储器用于存储指令或代码,所述处理器用于执行所述指令或代码,以使所述设备执行前述第一方面任一项所述的湖仓下沉方法。
[0038]第四方面,本申请实施例提供了一种计算机存储介质,所述计算机存储介质中存储有代码,当所述代码被运行时,运行所述代码的设备实现前述第一方面任一项所述的湖仓下沉方法。
[0039]本申请实施例提供了一种湖仓下沉方法及装置,在执行所述方法时,数据仓库通过kafka向数据湖发送消息;数据湖通过TBDS事件API,将参数传给API,所述参数包括分析所述kafka得到的事件名和数据日期;TBDS根据所述参数,产生事件实例;TBDS执行工作流运行包,消费所述事件实例,以实现湖仓下沉,所述工作流运行包为文件格式转化脚本。这样,通过消息触发TBDS,由工作流运行包实现数据仓库的数据格式向数据湖的数据格式的转换,解决表数据兼容问题,进而完成湖仓下沉。
附图说明
[0040]为更清楚地说明本实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这
些附图获得其他的附图。
[0041]图1为本申请实施例提供的湖仓下沉方法的一种方法流程图;
[0042]图2为本申请实施例提供的湖仓下沉方法的一种简化方法流程图;
[0043]图3为本申请实施例提供的湖仓下沉方法的消费实例的方法流程图;
[0044]图4为本申请实施例提供的湖仓下沉方法的另一种简化方法流程图;
[0045]图5为本申请实施例提供的湖仓下沉装置的一种结构示意图;
[0046]图6为本申请实施例提供的湖仓下沉设备的结构示意图。
具体实施方式
[0047]数据湖(Data Lake)是一个以原始格式(通常是对象块或文件)存储数据的系统或存储库。数据湖通常是所有企业数据的单一存储。用于报告、可视化、高级分析和机器学习等任务。数据湖可以包括来自关系数据库的结构化数据(行和列)、半结构化数据(CSV、日志、XML、JSON)、非结构化数据(电子邮件、文档、pdf)和二进制数据(图像、音频、视频)。
[0048]数据仓库,简称数仓。长期储存在计算机内,有组织、可共享的数据集合,是为决策支持系统提供基础数据的分析型数据库。数据仓库是为企业所有级别的决策本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种湖仓下沉方法,其特征在于,所述方法包括:数据仓库通过kafka向数据湖发送消息;数据湖通过TBDS事件API,将参数传给API,所述参数包括分析所述kafka得到的事件名和数据日期;TBDS根据所述参数,产生事件实例;TBDS执行工作流运行包,消费所述事件实例,以实现湖仓下沉,所述工作流运行包为文件格式转化脚本。2.根据权利要求1所述的方法,其特征在于,所述TBDS执行工作流运行包,消费所述事件实例,以实现湖仓下沉,所述工作流运行包为文件格式转化脚本,包括:TBDS获取数据仓库下传的txt格式文件;TBDS将所述txt格式文件转换为orc格式文件;TBDS解析所述orc格式文件,生成临时HIVE表;TBDS将所述临时HIVE表的数据加载至目标HIVE表,所述目标HIVE表为数据湖对应的HIVE表。3.根据权利要求2所述的方法,其特征在于,所述TBDS将所述txt格式文件转换为orc格式文件,包括:TBDS解析所述txt格式文件的识别字段分隔符和换行分隔符;TBDS根据所述识别字段分隔符和换行分隔符,将txt格式文件转换为orc格式文件。4.根据权利要求2所述的方法,其特征在于,所述TBDS解析所述orc格式文件,生成临时HIVE表,包括:TBDS根据所述参数,生成空白HIVE表;TBDS通过预设脚本,将所述orc格式文件加载到所述空白HIVE表,得到临时HIVE表。5.根据权利要求2所述的方法,其特征在于,所述TBDS将所述临时HIVE表的数据加载至目标HIVE表,包括:TBDS从app_metadata_src表和/或app_metadata表获取数据湖表...

【专利技术属性】
技术研发人员:操庐宁
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:

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

1