数据库处理、数据访问方法及系统技术方案

技术编号:11412741 阅读:103 留言:0更新日期:2015-05-06 12:36
本申请公开了数据库处理、数据访问方法及系统,其中,所述数据库处理方法包括:确定在特定时间段内待迁移的目标数据以及所述目标数据对应的应用;将所述目标数据临时迁移到目标存储区;将所述目标数据的标识信息通知给所述应用,以便所述应用在产生对数据的访问操作时,根据所述标识信息识别所述目标数据,并到所述目标存储区访问所述目标数据。通过本申请,能够在可能会出现存储资源不足的情况时,避免由于争抢存储资源而造成系统性能下降。

【技术实现步骤摘要】
数据库处理、数据访问方法及系统
本申请涉及数据库
,特别是涉及数据库处理、数据访问方法及系统。
技术介绍
一般而言,互联网应用系统在为用户提供业务或者服务的过程中,都需要数据库的支持。例如,电子商务交易平台中,需要在数据库中保存卖家用户上传的商品对象的描述、库存信息,等等。但在实际应用中,数据库操作经常出现瓶颈问题。例如,在数据库系统中,为了保证事务的ACID特性(原子性、一致性、隔离性、持久性),一般都采用锁机制,包括主流的Oracle、MySQL、SQLServer等,各类数据库采用的锁理论也基本一致。引入锁机制之后,在同一时间点只有一个会话可以操作同一条数据。这样,假设并发产生了10个会话都需要操作该数据,则只有其中一个会话能够获得锁,其他9个会话都处于锁等待状态。也就是说,更新同一条数据的操作都是串行的,在数据库访问量很大的情况下,会使得整体性能以及服务能力降低。因此,迫切需要本领域技术人员解决的技术问题就在于:如何在可能会出现存储资源不足的情况时,避免由于争抢存储资源而造成系统性能下降。
技术实现思路
本申请提供了数据库处理、数据访问方法及系统,能够在可能会出现存储资源不足的情况时,避免由于争抢存储资源而造成系统性能下降。本申请提供了如下方案:一种数据库处理方法,包括:确定在特定时间段内待迁移的目标数据以及所述目标数据对应的应用;将所述目标数据临时迁移到目标存储区;将所述目标数据的标识信息通知给所述应用,以便所述应用在产生对数据的访问操作时,根据所述标识信息识别所述目标数据,并到所述目标存储区访问所述目标数据。一种数据访问方法,包括:接收通知消息,所述通知消息中携带有被临时迁移到目标存储区的目标数据的标识信息;当产生对数据的访问操作时,根据所述标识信息识别待访问的数据是否为所述目标数据;如果是,则根据预置的目标存储区的地址及端口号,连接到所述目标存储区访问所述目标数据。一种数据库处理系统,包括:目标数据确定单元,用于确定在特定时间段内待迁移的目标数据以及所述目标数据对应的应用;第一数据迁移单元,用于将所述目标数据临时迁移到目标存储区;通知单元,用于将所述目标数据的标识信息通知给所述应用,以便所述应用在产生对数据的访问操作时,根据所述标识信息识别所述目标数据,并到所述目标存储区访问所述目标数据。一种数据访问系统,包括:通知消息接收单元,用于接收通知消息,所述通知消息中携带有被临时迁移到目标存储区的目标数据的标识信息;目标数据识别单元,用于当产生对数据的访问操作时,根据所述标识信息识别待访问的数据是否为所述目标数据;连接单元,用于如果是,则根据预置的目标存储区的地址及端口号,连接到所述目标存储区访问所述目标数据。根据本申请提供的具体实施例,本申请公开了以下技术效果:通过本申请实施例,在系统可能会出现存储资源不足的情况时,可以临时将部分数据迁移到目标存储区,并将这部分数据的标识信息通知给各个应用,这样,应用就可以识别出已经被迁移的数据,进而在产生的对这部分数据的访问请求时,就会被引流到目标存储区。相当于一部分访问请求是在原来的数据库中进行,而另一部分访问请求则是在目标存储区中进行,从而避免由于争抢存储资源而造成系统性能下降。另外,结合具体的应用场景,本申请实施例可以实现将热点数据与非热点数据隔离,避免少量的热点数据影响到大量的非热点数据的处理。另外,待迁移的目标数据也可以是当数据库的访问量比较大、数据库资源不足时,数据库中任意的一部分数据,将这部分数据临时迁移到其他存储区,当访问量恢复到日常水平时,还可以再迁移回原来的数据库,相当于实现了数据库的动态扩容或缩容,并且这种扩容或缩容可以是非对称的。再者,本申请实施例还可以实现底层存储的异构,可以将目标数据迁移到不同于源数据库存储结构的其他数据库中,灵活性得到提高。另外还可以将目标数据迁移到缓存中,进一步提高系统的性能。当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本申请实施例提供的数据库处理方法的流程图;图2是本申请实施例提供的数据访问方法的流程图;图3是本申请实施例提供的数据库处理系统的示意图;图4是本申请实施例提供的数据访问系统的示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本申请保护的范围。在本申请实施例中,在必要的时候,可以将源数据库中的一些数据迁移到其他的存储区,之后又可以将数据迁移回源数据库,从而实现动态的数据库扩容或缩容,达到从整体上提高系统性能及服务能力的目的。下面对具体的实现方式进行详细的介绍。实施例一参见图1,本申请实施例一首先提供了一种数据库处理方法,该方法可以包括以下步骤:S101:确定在特定时间段内待迁移的目标数据以及所述目标数据对应的应用;首先需要说明的是,在本申请实施例提供的技术方案中,可以提供一个“运维平台”,利用该运维平台实现对数据库动态的扩容或缩容,因此,图1中所述各个步骤的执行主体就可以是该运维平台。当然,“运维平台”只是一个形象化的名词,在实际应用中,也可以用其他的名称,但只要通过执行本申请实施例中各个步骤来实现对数据库的处理方案,都属于本申请的保护范围。当然,为了便于描述,本申请实施例中均以“运维平台”为例进行介绍。运维平台在确定待迁移的目标数据时,具体需要作为目标数据被迁移的数据,也可以根据实际的情况而定。例如,在实际应用中,可能存在以下情况:数据库中可能会存在一些热点数据(例如,热卖商品对象的库存记录,由于参加营销活动等原因造成其更新次数远高于其他数据),针对这种热点数据,同时可能会有10个以上的会话。由于锁机制的存在,如果有多个热点数据出现在同一个数据库中,将会导致大量的会话处于等待状态,只有少数会话可以正常操作,这样势必导致数据库性能的急剧下降。测试数据显示,如果同一个数据库中出现32个以上的热点数据时,则单库的TPS(每秒处理事务数)相对于没有热点数据时要降低3至5倍。因此,在本申请实施例中,就可以将上述热点数据确定为待迁移的目标数据。也就是说,为了保证热点数据不会影响其他大量的非热点数据,可以建立一种将热点数据临时迁移到别的存储区(例如,OceanBase数据库集群,或者其他的临时增加的MySQL数据库)的机制,对热点数据使用专门的数据存储物理资源,以起到对热点数据进行隔离的作用。这样既能保证热点数据有充足的物理资源,也能保证热点数据的资源争用不会影响非热点数据的处理,有利于保证整个系统的业务稳定性。例如,在电子商务交易平台中,经常会出现一些临时性的营销活动,不同的营销活动可能造就不同的热卖商品库存(也即,使得热点商品的库存信息成为热点信息)。因此,可以在活动前临时将热卖商品库存迁移到独立的数据库上,以保证营销活动的顺利进行本文档来自技高网...

【技术保护点】
一种数据库处理方法,其特征在于,包括:确定在特定时间段内待迁移的目标数据以及所述目标数据对应的应用;将所述目标数据临时迁移到目标存储区;将所述目标数据的标识信息通知给所述应用,以便所述应用在产生对数据的访问操作时,根据所述标识信息识别所述目标数据,并到所述目标存储区访问所述目标数据。

【技术特征摘要】
1.一种数据库处理方法,其特征在于,包括:确定在特定时间段内待迁移的目标数据以及所述目标数据对应的应用,所述目标数据包括热点数据,所述热点数据包括在预置时间段内将被高并发访问的热点业务数据;将所述目标数据从源数据库临时迁移到目标存储区,以便将热点数据与非热点数据进行隔离;将所述目标数据的标识信息通知给所述应用,以便所述应用在产生对数据的访问操作时,根据所述标识信息识别所述目标数据是否为热点数据,如果是,从所述目标存储区访问所述目标数据,否则,从所述源数据库进行数据访问;在所述特定时间段结束后,将所述目标存储区中的目标数据迁移回源数据库。2.根据权利要求1所述的方法,其特征在于,所述确定在特定时间段内待迁移的目标数据,包括:通过识别数据库中业务对象的特定标识,确定热点业务对象;根据所述热点业务对象确定在预置时间段内将被高并发访问的热点业务数据,将所述热点业务数据确定为该时间段内待迁移的目标数据。3.根据权利要求2所述的方法,其特征在于,所述将所述目标数据的标识信息通知给应用,包括:将所述目标数据的ID通知给应用。4.根据权利要求1所述的方法,其特征在于,所述确定在特定时间段内待迁移的目标数据,包括:通过对数据库的历史访问记录进行分析,确定所述数据库将出现高并发访问的时间段;在所述时间段到来之前,将数据ID符合预置的ID选取规则的数据确定为所述时间段内待迁移的目标数据。5.根据权利要求4所述的方法,其特征在于,所述将所述目标数据的标识信息通知给应用,包括:将所述目标数据的ID通知给应用;或者,将用于选择目标数据的ID选取规则通知给应用。6.根据权利要求1至5任一项所述的方法,其特征在于,所述将所述目标数据临时迁移到目标存储区,包括:将所述目标数据临时迁移到新增的数据库中。7.根据权利要求6所述的方法,其特征在于,所述新增的数据库为多个,每个数据库中包括多个表,所述将所述目标数据临时迁移到新增的数据库中,包括:根据所述目标数据的ID、新增数据库的数目、每个数据库中的表的数目,确定目标数据库以及目标表;将所述目标数据临时迁移到所述目标数据库的目标表中,以便所述应用在产生对目标数据的访问操作时,根据目标数据的ID、新增数据库的数目、每个数据库中的表的数目,确定目标数据所在的目标数据库以及目标表,并根据所述目标数据所在的目标数据库以及目标表访问所述目标数据。8.根据权利要求1至5任一项所述的方法,其特征在于,所述将所述目标数据临时迁移到目标存储区,包括:将所述目标数据临时迁移到缓存中。9.根据权利要求1至5任一项所述的方法,其特征在于,所述目标存储区与所述目标数据所在的源存储区具有不同的存储结构,所述方法还包括:将所述目标存储区的存储结构信息通知给所述应用,以便所述应用到所述目标存储区访问所述目标数据时,根据所述存储结构信息与所述目标存储区建立连接。10.根据权利要求1至5任一项所述的方法,其特征在于,在所述目标数据所在的源数据库中保留所述目标数据,以便发生迁移故障时,所述应用从所述源数据库中访问所述目标数据。11.根据权利要求10所述的方法,其特征在于,还包括:在将所述目标数据迁移到目标存储区之前,将所述目标数据在源数据库中的状态置为只可读不可写状态;在在将所述目标数据成功迁移到目标存储区之后,将所述目标数据在源数据库中的状态置为可读可写状态。12.根据权利要求10所述的方法,其特征在于,还包括:将所述目标存储区产生的关于所述目标数据...

【专利技术属性】
技术研发人员:许俊楼方鑫
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

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

1