[发明专利]Hive数据仓库同步方法、系统、设备及存储介质有效
申请号: | 202010084651.9 | 申请日: | 2020-02-10 |
公开(公告)号: | CN111241203B | 公开(公告)日: | 2022-10-04 |
发明(设计)人: | 韩文欣;董延峰 | 申请(专利权)人: | 江苏满运软件科技有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/22;G06F16/178 |
代理公司: | 上海隆天律师事务所 31282 | 代理人: | 钟宗 |
地址: | 210012 江苏省南京市*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | hive 数据仓库 同步 方法 系统 设备 存储 介质 | ||
1.一种Hive数据仓库同步方法,用于将源Hive数据仓库中的元数据同步至目标Hive数据仓库,且将源文件系统中的数据文件同步至目标文件系统,其特征在于,所述方法包括以下步骤:
S10,获取所述源Hive数据仓库的存储路径信息,判断所述源文件系统中是否存在与所述存储路径信息对应的文件存储目录;
S20,若所述源文件系统存在所述文件存储目录,则生成元数据扫描任务;
S30,接收所述元数据扫描任务,基于所述元数据扫描任务判断所述目标Hive数据仓库中是否存在与所述源Hive数据仓库中元数据记录的表ID匹配的第二元数据;
S40,若所述目标Hive数据仓库中存在所述第二元数据,判断所述源Hive数据仓库的元数据和所述目标Hive数据仓库中的第二元数据是否相同;若不同或者所述目标Hive数据仓库中不存在所述第二元数据,则生成同步任务数据,并将所述同步任务数据序列化为同步任务序列;所述同步任务数据包含有数据文件同步任务数据和元数据同步任务数据;
S50,接收所述同步任务序列,对所述同步任务序列进行反序列化,得到所述同步任务数据;
S70,基于所述同步任务数据中的所述数据文件同步任务数据执行数据文件同步任务,将源文件系统中的数据文件同步至目标文件系统;
S80,判断所述数据文件同步任务是否执行完成,若是则基于所述同步任务数据中的所述元数据同步任务数据执行元数据同步任务,将源Hive数据仓库中的元数据同步至目标Hive数据仓库,直至所有待同步的元数据同步完成。
2.如权利要求1所述的Hive数据仓库同步方法,其特征在于,所述源Hive数据仓库的元数据和所述目标Hive数据仓库中的第二元数据均记录有表类型信息,所述表类型信息为分区表或非分区表;所述分区表记录有分区信息,所述分区信息包含有分区ID、分区名、分区文件地址以及分区数据行数;
所述步骤S40包括:
S401,若所述目标Hive数据仓库中存在所述第二元数据,判断所述元数据的表类型信息是否为分区表;
S402,若所述元数据的表类型信息为分区表,判断所述源Hive数据仓库的元数据和所述目标Hive数据仓库中的第二元数据是否相同;若不同则生成元数据同步任务数据;
S403,判断所述元数据的分区表记录的分区文件地址在所述第二元数据的分区表中是否存在,若存在则判断所述元数据的分区表记录的分区信息与所述第二元数据的分区表记录的分区信息是否相同;若不同则生成数据文件同步任务数据。
3.如权利要求2所述的Hive数据仓库同步方法,其特征在于,所述步骤S40还包括:
S404,若所述元数据的表类型信息不是分区表,则判断所述源Hive数据仓库的元数据和所述目标Hive数据仓库中的第二元数据是否相同;若不同,则生成所述同步任务数据。
4.如权利要求1所述的Hive数据仓库同步方法,其特征在于,所述步骤S10包括:基于Map-Reduce系统中的Map单元获取所述源Hive数据仓库的存储路径信息,并且判断所述源文件系统中是否存在与所述存储路径信息对应的文件存储目录;
所述步骤S20包括:若所述源文件系统存在所述文件存储目录,则基于所述Map单元生成元数据扫描任务;
所述步骤S30包括:接收所述元数据扫描任务,基于所述Map单元和所述元数据扫描任务判断所述目标Hive数据仓库中是否存在所述第二元数据;
所述步骤S40包括:若所述目标Hive数据仓库中存在所述第二元数据,则基于Map-Reduce系统中的Reduce单元判断所述源Hive数据仓库的元数据和所述第二元数据是否相同;若不同,则基于所述Reduce单元生成同步任务数据,并将所述同步任务数据序列化为同步任务序列;
所述步骤S50包括:基于所述Map单元对所述同步任务序列进行反序列化,得到所述同步任务数据;
所述步骤S70包括:基于所述Reduce单元以及所述同步任务数据中的所述数据文件同步任务数据执行数据文件同步任务;
所述步骤S80包括:判断所述数据文件同步任务是否执行完成,若是则基于所述Map单元以及所述同步任务数据中的所述元数据同步任务数据执行元数据同步任务。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏满运软件科技有限公司,未经江苏满运软件科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010084651.9/1.html,转载请声明来源钻瓜专利网。