【技术实现步骤摘要】
一种数据库的更新方法及系统
本申请涉及数据处理技术,特别是涉及一种数据库的更新方法及系统。
技术介绍
数据库中的数据进行同步的过程中,即数据表的更新过程中,需要定时将业务数据表中的数据同步到增量数据表中,再将增量数据表中的数据合并到全量数据表中。其中,将增量数据表中的数据合并到全量数据表采用的方法是insert update方式,即按照业务数据表的主键和更新时间,把增量数据表中增加的数据insert (插入)到全量数据表中,将增量数据表中修改的数据update (更新)到全量数据表中。但是,采用insert update方式时,需要遍历全量数据表中的所有数据,才能确认增量数据表中的哪个数据是增加的,哪个数据是修改的,然后再执行插入或更新操作。全量数据表中的数据是非常多的,并且其中的大部分数据都是不会再修改的,因此采用insert update方式,遍历全量数据表中的所有数据会消耗大量的资源。尤其是针对海量数据的处理时,全量数据表中的数据是数以亿计的,采用insert update方式会大大的增加资源的消耗,并且,数据处理的时间比较长,效率非常低。【专利技术 ...
【技术保护点】
一种数据库的更新方法,其特征在于,包括:在全量数据表中建立结束表和未结束表,其中,结束表中存储业务执行完毕的业务数据,未结束表中存储业务执行中的业务数据;接收增量数据表发送的增量数据,其中,所述增量数据包括处于完成状态的业务数据和/或处于未完成状态的业务数据;分别查询每个增量数据的状态;其中若所述增量数据的状态为完成,则识别所述增量数据为业务执行完毕的业务数据,在全量数据表的结束表的末尾添加所述增量数据的记录;若所述增量数据的状态为未完成,则识别所述增量数据为业务执行中的业务数据,在全量数据表的未结束表中添加所述增量数据的记录。
【技术特征摘要】
1.一种数据库的更新方法,其特征在于,包括: 在全量数据表中建立结束表和未结束表,其中,结束表中存储业务执行完毕的业务数据,未结束表中存储业务执行中的业务数据; 接收增量数据表发送的增量数据,其中,所述增量数据包括处于完成状态的业务数据和/或处于未完成状态的业务数据; 分别查询每个增量数据的状态;其中 若所述增量数据的状态为完成,则识别所述增量数据为业务执行完毕的业务数据,在全量数据表的结束表的末尾添加所述增量数据的记录; 若所述增量数据的状态为未完成,则识别所述增量数据为业务执行中的业务数据,在全量数据表的未结束表中添加所述增量数据的记录。2.根据权利要求1所述的方法,其特征在于,按照业务数据的接收时间划分增量数据表和全量数据表的存储分区。3.根据权利要求2所述的方法,其特征在于,还包括: 增量数据表定时接收业务数据表发送的增量数据; 获取所述增量数据的接收时间,并在增量数据表中建立所述接收时间对应的存储分区; 将所述增量数据存储到增量数据表中所述接收时间对应的存储分区中。4.根据权利要求2所述的方法,其特征在于,在全量数据表的未结束表中添加所述增量数据的记录,包括: 获取接收时间,并在全量数据表的未结束表中建立所述接收时间对应的存储分区; 在所述接收时间对应的存储分区中添加所述增量数据的记录。5.根据权利要求2所述的方法,其特征在于,所述在全量数据表的结束表的末尾添加所述增量数据的记录,包括: 获取接收时间,并在全量数据表的结束表的末尾建立所述接收时间对应的存储分区; 在所述接收时间对应的存储分区中添加所述增量数据唯一的记录。6.根据权利要求1所述的方法...
【专利技术属性】
技术研发人员:吴天虹,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。