一种数据处理的方法及装置制造方法及图纸

技术编号:15938761 阅读:31 留言:0更新日期:2017-08-04 21:41
本申请公开了一种数据处理方法及装置,由于预先配置有第一以及第二转换规则,所以在接收到业务请求后,可先后通过该业务请求、该第一转换规则以及该第二转换规则生成对第一数据库进行操作的第一SQL语句和对第二数据库进行操作的第二SQL语句,并可分别执行该第一和第二SQL语句实现对该第二数据库的操作。可见,通过本申请提供的方法,可根据业务请求对该第一以及第二数据库进行操作,使得该第二数据库中的数据实际上是根据该应用的业务请求执行得到的,进而使得无需再将该第一数据库中的数据备份至该第二数据库中,避免了后续需要对该第二数据库中数据进行验证的过程,降低了数据库替换的成本。

Method and device for data processing

The invention discloses a method and a device for processing data, with pre configured with first and second transformation rules, so after receiving the service request from the service request can be passed, the first sentence of the conversion rules and the first SQL second conversion rule generation operation of the first operation of the database and the second database second the SQL statement, and can respectively carry out the first and the second SQL statement on the second database operation. The method provided by the application, according to the request of business operation of the first and second database, the second data in the database is actually according to the application service request implementation, which makes no longer will the data backup in the first database to the second database, to avoid the follow-up process need to verify the second data in the database, the database reduces the replacement cost.

【技术实现步骤摘要】
一种数据处理的方法及装置
本申请涉及信息
,尤其涉及一种数据处理的方法及装置。
技术介绍
随着信息技术的发展,应用程序通过网络执行业务的需求不断增长,执行业务而产生的业务数据也不断增加。这些业务数据通常采用数据库予以存储。在存储业务数据时,为保证数据存储的一致性,防止出现“脏数据”,通常采用关系型数据库存储各业务数据。通常,由于不同应用程序使用的关系型数据库的结构不完全一致,应用对应的应用服务器需要为一个应用配置与其需求或性能相匹配的关系型数据(这里称为原有数据库)。但是,随着时间的推移,该原有数据库可能不再适应该应用程序的需求或性能,这就需要使用性能更为优越的其他数据库(这里称为替换数据库)来替换该原有数据库。在现有技术中,替换原有数据库的做法通常是:将该原有数据库在预定时间点后一段时间内产生的业务数据,通过“异步双写”的数据处理方式备份至该替换数据库(即先写到原关系型数据库,再写入替换数据库),从而实现原有数据库中的数据到替换数据库的数据“迁移”。但是,由于这种“异步双写”的过程仅仅在数据库层面进行,而与应用程序以及应用服务器没有特别的关系,可能导致数据迁移后的替换数据库不能支持应用程序的正常运行。为防止这种情形的出现,在该应用或应用服务器使用该替换数据库内的数据之前,必须对该替换数据库中数据的准确性进行验证,但目前的各种验证方法不具有通用性,需要进行验证方法、验证工具、验证环境等的专门设计,导致验证过程相当繁复,耗时较长,从而大大增加了关系数据库的替换成本。
技术实现思路
本申请实施例提供一种数据处理方法,用于解决现有技术中,在更换数据库进行数据处理后,还需要对数据库中数据的准确性进行验证,验证时间长,耗费资源多,导致替换成本高的问题。本申请实施例提供一种数据处理装置,用于解决现有技术中,在更换数据库进行数据处理后,还需要对数据库中数据的准确性进行验证,验证时间长,耗费资源多,导致替换成本高的问题。本申请实施例采用下述技术方案:一种数据处理方法,包括:接收对关系型数据库的业务请求;根据所述业务请求以及预先配置的第一转换规则,生成所述业务请求对应的第一SQL语句,以及根据所述业务请求以及预先配置的第二转换规则,生成第二SQL语句;通过所述第一SQL语句对第一关系型数据库执行对应的操作,以及通过第二SQL语句对第二关系型数据库执行对应的操作。一种数据处理装置,包括:接收模块,接收对关系型数据库的业务请求;生成模块,根据所述业务请求以及预先配置的第一转换规则,生成所述业务请求对应的第一SQL语句,以及根据所述业务请求以及预先配置的第二转换规则,生成第二SQL语句;执行模块,通过所述第一SQL语句对第一关系型数据库执行对应的操作,以及通过第二SQL语句对第二关系型数据库执行对应的操作。本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:由于预先配置有第一转换规则以及第二转换规则,所以在接收到业务请求后,可先通过该业务请求以及该第一转换规则生成对第一数据库进行操作的第一SQL语句,之后再根据该第二转换规则以及该业务请求生成对第二数据库进行操作的第二SQL语句,并通过该第一以及第二SQL语句分别执行对应的操作,其中,该第一数据库为原有数据库,该第二数据库为替换数据库。可见,通过本申请提供的方法,可根据业务请求对该第一以及第二数据库进行操作,使得该第二数据库中的数据实际上是根据执行该应用的业务请求生成的,进而使得无需在数据库层面将该第一数据库中的数据备份至该第二数据库中,避免了后续需要对该第二数据库中数据进行验证的过程,降低了数据库替换的成本。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1是本申请实施例提供一种数据处理过程;图2为本申请实施例提供的应用服务器、该第一数据库以及该第二数据库的结构关系示意图;图3为本申请实施例提供的应用服务器、该第一数据库以及该第二数据库的详细结构关系示意图。图4为本申请实施例提供的在该第一数据库以及该第二数据库中分别执行该第一SQL语句以及该第二SQL语句过程的示意图;图5是本申请实施例提供一种数据处理装置的结构示意图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。在本申请实施例中提供的数据处理过程为,需要对应用程序使用的第一数据库替换为第二数据库时,将该第一数据库在预定时点后一段时间内执行业务请求时产生的业务数据“迁移”至该第二数据库中的过程。其中,该第一数据库为该应用程序使用的原有数据库,该第二数据库为替换该原有数据库的替换数据库。通常,该预定时间点可为工作人员确定的时间点,该预定时间点后一段时间所对应的时长也可由工作人员确定,即,该“迁移”过程的结束时间也可由工作人员确定。并且,由于该预定时间点以及该一段时间的时长与本申请的数据处理过程没有关系,所以本申请对此并不做具体限定。也就是说,本申请所述的数据处理过程为在该预定时间点之后直至该一段时间的时长结束时,该应用执行业务请求时的数据处理方法,并不涉及该数据处理方法何时开始以及何时结束。以下结合附图,详细说明本申请各实施例提供的技术方案。图1为本申请实施例提供的数据处理过程,具体包括以下步骤:S101:接收对关系型数据库的业务请求。在现有技术中,一个业务在执行的过程中,通常可由应用服务器接收该业务对应的业务请求,并由该应用服务器根据该业务请求,确定后续步骤的操作。同理,在本申请实施例中,也可由应用服务器接收业务请求,其中,由于本申请对应的是对数据库中数据如何进行数据处理的过程,所以该业务请求还可以是针对关系型数据库的业务请求。又由于该数据处理过程为对该第一数据库中的数据“迁移”至该第二数据库中的过程,所以该应用服务器可对应该第一数据库以及该第二数据库,并且,该第一数据库为该应用服务器使用的原有数据库,该第二数据库为该应用服务器预计在该“迁移”过程结束后,使用的替换该第一数据库的替换数据库,该第一数据库以及该第二数据库均可为关系型数据库,可如图2所示。图2为本申请实施例提供的应用服务器、该第一数据库以及该第二数据库的结构关系示意图。可见,该应用服务器与该第一数据库和该第二数据库对应。其中,该应用服务器可以是单独的一台设备,也可以是由多台设备组成的系统(即,分布式应用服务器),该第一数据库与该第二数据库均可以是单独的一台设备,也可以是由多台设备组成的系统(即,分布式数据库),本申请对此并不做限定。另外,由于应用程序通常执行的是面对对象的语言(如,java语言),所以该应用服务器接收到的该业务请求通常也是由该面对对象的语言生成的,但是若该业务请求涉及到对该应用服务器对应的数据库中数据的增加、查询、更改、删除(Create、Retrieve、Update、Delete,CRUD)操作,则因为对关系型数据库进行操作的语言为结构化查询语言(St本文档来自技高网...
一种数据处理的方法及装置

【技术保护点】
一种数据处理的方法,其特征在于,包括:接收对关系型数据库的业务请求;根据所述业务请求以及预先配置的第一转换规则,生成所述业务请求对应的第一SQL语句,以及根据所述业务请求以及预先配置的第二转换规则,生成第二SQL语句;通过所述第一SQL语句对第一关系型数据库执行对应的操作,以及通过第二SQL语句对第二关系型数据库执行对应的操作。

【技术特征摘要】
1.一种数据处理的方法,其特征在于,包括:接收对关系型数据库的业务请求;根据所述业务请求以及预先配置的第一转换规则,生成所述业务请求对应的第一SQL语句,以及根据所述业务请求以及预先配置的第二转换规则,生成第二SQL语句;通过所述第一SQL语句对第一关系型数据库执行对应的操作,以及通过第二SQL语句对第二关系型数据库执行对应的操作。2.如权利要求1所述的方法,其特征在于,所述业务请求中携带有业务标识;根据所述业务请求以及预先配置的第二转换规则,生成第二SQL语句之前,所述方法还包括:根据预先存储的业务标识列表以及所述业务请求中携带的所述业务标识,确定需要生成对所述第二关系型数据库进行操作的所述第二SQL语句。3.如权利要求2所述的方法其特征在于,根据预先存储的业务标识列表以及所述业务请求中携带的所述业务标识,确定需要生成对所述第二关系型数据库进行操作的所述第二SQL语句,具体包括:将所述业务标识写入执行所述第一SQL语句的线程的线程变量中;使得在运行所述线程时,根据所述线程变量确定所述业务标识;根据预先存储的业务标识列表以及所述业务标识,确定需要生成对所述第二关系型数据库进行操作的所述第二SQL语句。4.如权利要求1所述的方法,其特征在于,通过所述第一SQL语句对第一数据库执行对应的操作以及通过第二SQL语句对所述第二数据库执行对应的操作,具体包括:建立在所述第一关系型数据库中执行所述第一SQL语句的第一事务;建立在所述第二关系型数据库中执行所述第二SQL语句的第二事务;通过所述第一事务,根据所述第一SQL语句对所述第一关系型数据库执行对应的操作;通过所述第二事务,根据所述第二SQL语句对所述第二关系型数据库执行对应的操作;当所述第一SQL语句以及所述第二SQL语句均执行成功时,提交所述第一事务以及所述第二事务;当所述第一SQL语句和/或所述第二SQL语句执行失败时,返回错误信息,并执行回滚操作。5.如权利要求1至4任一项所述的方法,其特征在于,所述第一关系型数据库为原有数据库,所述第二关系型数据库为替换数据库,所述对应的操作包括增加、删除、更改中的至少一种。6.如权利...

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

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

1