This invention provides an offline incremental synchronization method of database to data warehouse, which includes the following steps: monitor the change events of the database table, reflow the change events into the directory of the distributed file system, and file the incremental data of the changed events into the row in the default time cycle; import the total number of database tables into the number of data. According to the warehouse table, after the response scheduling instruction, the incremental data accumulated in the time cycle and the data warehouse table data are synthesized to a new full scale, and the previous table data are covered with a new full scale. The total amount of table data is synchronized only once, and the updated data and the last full amount data are merged in the second time to merge the new full scale. In the follow-up, incremental merging has been used, so the incremental data from the database table is lower than the cost of the synchronized total scale, and the database table to the data warehouse can be synchronized quickly when the database resource is limited.
【技术实现步骤摘要】
数据库到数据仓库的离线增量同步方法及系统
本专利技术涉及数据同步
,特别涉及一种数据库到数据仓库的离线增量同步方法系统。
技术介绍
当我们需要对OLTP数据库的某张业务大表进行统计报表分析,以提供一些所需的用于业务决策的数据依据,往往都是用ETL导入工具把数据库表全量导入数据仓库的HIVE表,然后利用大数据的集群资源能力快速地对表加工得出我们需要的统计报表。每天数据库表都有更新(新增、更新或者删除),如果每天都需要看这样的报表的话,就需要每天调度导一次新的HIVE表覆盖之前的,然后在产出新的报表。上述的做法存在以下缺陷:一方面,OLTP数据库是比较宝贵的资源,导入工具在导的过程势必需要限制速率,防止速率太快对造成资源压力,从而导致使用该数据库的上层核心业务应用受到影响,造成用户的不好体验。但是如果数据库表很大,而限速就会导致导入过程变的很长,最终报表产出就会很延迟,这份迟到的数据依据可能就变的毫无意义;另一方面,大部分业务表每天更新数据相对于全表是很少的,可能只占了1%,如果将数据库表全量导入数据仓库表中时,就需要每天把99%重复数据从一个地方搬到另一个地方,本身就白白浪费了很多资源。
技术实现思路
本专利技术的目的是提供一种数据库到数据仓库的离线增量同步方法和系统,解决现有上述的问题。为解决上述问题,本专利技术实施例提供一种数据库到数据仓库的离线增量同步方法,包括以下步骤:监听数据库表的变更事件;将变更事件回流到分布式文件系统的目录中,同时将变更事件的增量数据按预设时间周期进行归档;将数据库表全量导入数据仓库表中;响应调度指令后,将时间周期内累加的增量 ...
【技术保护点】
一种数据库到数据仓库的离线增量同步方法,其特征在于,包括以下步骤:监听数据库表的变更事件;将变更事件回流到分布式文件系统的目录中,同时将变更事件的增量数据按预设时间周期进行归档;将数据库表全量导入数据仓库表中;响应调度指令后,将时间周期内累加的增量数据与数据仓库表数据合成新的全量表,并用新的全量表覆盖之前表数据。
【技术特征摘要】
1.一种数据库到数据仓库的离线增量同步方法,其特征在于,包括以下步骤:监听数据库表的变更事件;将变更事件回流到分布式文件系统的目录中,同时将变更事件的增量数据按预设时间周期进行归档;将数据库表全量导入数据仓库表中;响应调度指令后,将时间周期内累加的增量数据与数据仓库表数据合成新的全量表,并用新的全量表覆盖之前表数据。2.根据权利要求1所述的数据库到数据仓库的离线增量同步方法,其特征在于,所述将变更事件回流到分布式文件系统的目录中,包括以下步骤:对数据库表订阅数据变更事件,实时写入消息队列;实时地消费变更事件,并批量写入分布式文件系统的目录中。3.根据权利要求2所述的数据库到数据仓库的离线增量同步方法,其特征在于,所述订阅数据变更事件消息体内容包括:记录的事件类型、记录所有字段名和对应的值、以及能用于识别单个记录事件时序的字段名和值。4.根据权利要求1所述的数据库到数据仓库的离线增量同步方法,其特征在于,所述监听数据库表的变更事件,包括以下步骤:通过事件时序标记数据库表每个记录的多个变更事件。5.根据权利要求4所述的数据库到数据仓库的离线增量同步方法,其特征在于,所述将增量数据与数据仓库表数据合成新的全量表,包括以下步骤:筛选每个记录中最新的变更事件作为增量数据;通过全局唯一键来关联增量数据与数据仓库表的相同记录;将增量数...
【专利技术属性】
技术研发人员:胡加华,
申请(专利权)人:杭州有赞科技有限公司,
类型:发明
国别省市:浙江,33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。