数据库查询方法及装置的制作方法

文档序号:6363279阅读:101来源:国知局
专利名称:数据库查询方法及装置的制作方法
技术领域
本发明涉及数据库技木,尤其涉及一种数据库查询方法及装置。
背景技术
当前在互联网、电信、金融等行业,海量数据时代已经来临,各种业务的数据量持续增长,使得企业不得不面对日益增长的业务数据管理的问题。对这些海量数据进行有效的存储,能够实现快速检索所需数据并保持系统的稳定性是保证业务系统正常运行的关键。现有技术通常通过数据库来对业务数据进行管理,当业务过程中产生新的数据吋,根据该数据生成数据库记录,并根据该数据库记录对数据库进行更新操作,以使用户对该更新操作的结果进行查询。但是,由于现有的数据库存储方法往往涉及到数据表之间的关联,在对海量数据进行更新操作时极易出现数据库锁表问题,进而导致系统崩溃,使得业务系统无法正常运行。

发明内容
本发明提供一种数据库查询方法及装置,以提高数据库系统的稳定性。本发明第一个方面提供一种数据库查询方法,包括根据接收到的数据库查询请求中携帯的查询信息,从数据库中获取所述查询信息对应的数据库记录;根据所述查询信息对应的数据库记录生成查询结果并发送。本发明另ー个方面提供一种数据库查询装置,包括获取模块,用于根据接收到的数据库查询请求中携帯的查询信息,从数据库中获取所述查询信息对应的数据库记录;查询结果生成模块,用于根据所述查询信息对应的数据库记录生成查询结果并发
So由上述技术方案可知,本发明第一个方面提供的数据库查询方法,根据接收到的数据库查询请求中携帯的查询信息,从数据库中获取查询信息对应的数据库记录,根据查询信息对应的数据库记录生成查询结果并发送。由于在接收到数据库查询请求吋,才将该数据库查询请求对应的数据库记录从数据库中提取出来,进行相应计算以生成查询結果, 而不需要对在数据库更改时就对数据库进行更新操作,可以避免对数据库进行更新操作时导致的锁表问题,提高数据库系统的稳定性。本发明另ー个方面提供的数据库查询装置,获取模块根据接收到的数据库查询请求中携帯的查询信息,从数据库中获取查询信息对应的数据库记录,查询结果生成模块根据查询信息对应的数据库记录生成查询结果并发送。由于在接收到数据库查询请求时,才将该数据库查询请求对应的数据库记录从数据库中提取出来,进行相应计算以生成查询结果,由于查询结果是根据数据库记录生成的,而不需要对在数据库更改时就对数据库进行更新操作以将该更新操作的结果作为查询结果反馈给用户,可以避免对数据库进行更新操作时导致的锁表问题,提高数据库系统的稳定性。


图1为本发明实施例一提供的数据库查询方法流程图;图2为本发明实施例三提供的数据库查询装置结构示意图;图3为本发明实施例四提供的数据库查询装置结构示意图。
具体实施例方式实施例一图1为本发明实施例一提供的数据库查询方法流程图。如图1所示,本实施例提供的数据库查询方法具体可以应用于对数据库的管理过程,可以由数据库查询装置来执行, 该数据库查询装置可以通过软件和/或硬件的方式来实现。本实施例提供的数据库查询方法具体包括步骤10、根据接收到的数据库查询请求中携帯的查询信息,从数据库中获取查询信息对应的数据库记录;步骤20、根据查询信息对应的数据库记录生成查询结果并发送。具体地,数据库查询请求可以为用户通过客户端发送的用以对业务信息进行查询的请求,例如对于电信行业的查询系统,该数据库查询请求具体可以为账户余额查询等,该数据库查询请求中携帯有查询信息,查询信息例如可以包括用户的账号信息等。数据库查询装置当接收到该数据库查询请求吋,根据查询信息从数据库中获取该查询信息对应的数据库记录,并对该数据库记录进行处理,以生成查询結果,并将该查询结果发送给客户端, 由于查询结果是根据数据库记录生成的,因此,不需要在对数据库更改时就对数据库进行更新(update)操作,以将该更新操作的结果作为查询结果反馈给用户。对数据库记录进行处理具体可以为采用数据聚合的方式进行计算,可以设置数据库查询池,以存储查询处理过程中产生的中间数据。本实施例提供的数据库查询方法,根据接收到的数据库查询请求中携帯的查询信息,从数据库中获取查询信息对应的数据库记录,根据查询信息对应的数据库记录生成查询结果并发送。由于在接收到数据库查询请求吋,才将该数据库查询请求对应的数据库记录从数据库中提取出来,进行相应计算以生成查询結果,由于查询结果是根据数据库记录生成的,而不需要对在数据库更改时就对数据库进行更新操作以将该更新操作的结果作为查询结果反馈给用户,可以避免对数据库进行更新操作时导致的锁表问题,提高数据库系统的稳定性。实施例ニ本实施例提供的数据库查询方法在实施例一的基础上,具体还可以包括如下步骤步骤30、根据接收到的数据库更改请求中携帯的业务信息生成数据库记录,将数据库记录插入到数据库中相应的数据表中。具体地,数据库更改请求是由业务处理中心发送的,该数据库更改请求中携帯有业务信息,数据库用于对业务相关信息进行存储,数据库中具体可以设置有多个数据表,以对不同的业务信息进行管理。当接收到该数据库更改请求吋,根据业务信息生成相应的数据库记录,并将该数据库记录通过插入(insert)操作插入到数据库中,具体可以根据该数据记录的内容将该数据记录插入到数据库的相应数据表中。对于数据库的更改只进行插入操作,而不进行更新操作。例如,在电信行业中,话单采集设备采集话单,并将话单发送给计费中心进行相应的处理生成该话单对应的费用信息。计费中心可以为该业务处理中心,则数据库存储的业务相关信息即为用户的话单信息以及对应的费用信息。计费中心可以根据该话单及其对应的费用信息作为业务信息通过数据库更新请求发送给数据库查询装置,数据库查询装置根据该业务信息生成数据记录,并将该数据记录插入到数据库中。由于用于存储海量数据的数据库,数据更新的频率很高,在对数据库进行更新吋, 只对数据库进行插入操作,而不进行更新操作,可以有有效地避免对数据库进行更新操作时导致的锁表问题。而且简化了对数据库的数据更改流程。在本实施例中,步骤30中将数据库记录插入到数据库中相应的数据表中之前,具体还可以包括如下步骤步骤40、根据获取到的业务关键字对数据库进行分库处理成多个子库,其中,子库中包括至少ー个数据表。具体地,可以先对业务关键字段进行梳理和分类,以获取业务关键字。业务关键字具体可以包括用户名、业务类型等。根据该业务关键字对数据库进行分库处理,以将统ー属性或关联性较强的数据装载在相同的子库中进行管理,降低了不同子库间业务信息的关联性,进ー步降低了数据库的锁表现象的发生概率。相应地,在对新生成的数据库记录插入到数据库的相应数据表中吋,可以根据该数据库记录的内容获取对应的子库,再将该数据库记录插入到子库的相应数据表中。在本实施例中,步骤20,根据查询信息对应的数据库记录生成查询结果并发送之后,具体还可以包括如下步骤步骤50、根据查询结果对数据库中相应的数据库记录进行更新。对数据库的更新操作是在对数据库查询请求响应之后执行的,由于用户对数据库中某一数据记录如账户余额的查询操作频率有限,远远低于对数据库的更改操作,因此,也可以在一定程度上降低更新操作造成的数据库锁表问题,而对数据库记录的更新,可以使下次查询基于本次的更新结果进行,降低了数据聚合处理过程中的计算量。实施例三图2为本发明实施例三提供的数据库查询装置结构示意图。如图2所示,本实施例提供的数据库查询装置具体可以实现本发明任意实施例提供的数据库查询方法的各个步骤,此不再赘述。本实施例提供的数据库查询装置21具体包括获取模块11和查询结果生成模块 12。获取模块11用于根据接收到的数据库查询请求中携帯的查询信息,从数据库22中获取查询信息对应的数据库记录。查询结果生成模块12用于根据查询信息对应的数据库记录生成查询结果并发送。本实施例提供的数据库查询装置21,获取模块11根据接收到的数据库查询请求
5中携帯的查询信息,从数据库22中获取查询信息对应的数据库记录,查询结果生成模块12 根据查询信息对应的数据库记录生成查询结果并发送。由于在接收到数据库查询请求吋, 才将该数据库查询请求对应的数据库记录从数据库22中提取出来,进行相应计算以生成查询結果,由于查询结果是根据数据库记录生成的,而不需要对在数据库22更改时就对数据库22进行更新操作以将该更新操作的结果作为查询结果反馈给用户,可以避免对数据库22进行更新操作时导致的锁表问题,提高数据库系统的稳定性。实施例四图3为本发明实施例四提供的数据库查询装置结构示意图。如图3所示,在本实施例中,该数据库查询装置21具体还可以包括插入模块13,插入模块13用于根据接收到的数据库更改请求中携帯的业务信息生成数据库记录,将数据库记录插入到数据库22中相应的数据表中。由于用于存储海量数据的数据库22,数据更新的频率很高,在对数据库 22进行更新吋,只对数据库22进行插入操作,而不进行更新操作,可以有效地避免对数据库22进行更新操作时导致的锁表问题。而且简化了对数据库22的数据更改流程。在本实施例中,该数据库查询装置21具体还可以包括分库模块14,分库模块14用于根据获取到的业务关键字对数据库22进行分库处理成多个子库,其中,子库中包括至少一个数据表。通过分库模块14的设置,可以将统一属性或关联性较强的数据装载在相同的子库中进行管理,降低了不同子库间业务信息的关联性,进ー步降低了数据库22的锁表现象的发生概率。在本实施例中,该数据库查询装置21具体还可以包括更新模块15,更新模块15用于根据查询结果对数据库22中相应的数据库记录进行更新。通过更新模块15的设置,可以使下次对数据库22的查询基于本次的更新结果进行,降低了数据聚合处理过程中的计
铃旦昇里。本领域普通技术人员可以理解实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于ー计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管參照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
权利要求
1.一种数据库查询方法,其特征在干,包括根据接收到的数据库查询请求中携帯的查询信息,从数据库中获取所述查询信息对应的数据库记录;根据所述查询信息对应的数据库记录生成查询结果并发送。
2.根据权利要求1所述的数据库查询方法,其特征在于,还包括根据接收到的数据库更改请求中携帯的业务信息生成数据库记录,将所述数据库记录插入到所述数据库中相应的数据表中。
3.根据权利要求2所述的数据库查询方法,其特征在干,将所述数据库记录插入到所述数据库中相应的数据表中之前,还包括根据获取到的业务关键字对所述数据库进行分库处理成多个子库,其中,所述子库中包括至少ー个数据表。
4.根据权利要求1或2所述的数据库查询方法,其特征在干,根据所述查询信息对应的数据库记录生成查询结果并发送之后,还包括根据所述查询结果对所述数据库中相应的数据库记录进行更新。
5.一种数据库查询装置,其特征在干,包括获取模块,用于根据接收到的数据库查询请求中携帯的查询信息,从数据库中获取所述查询信息对应的数据库记录;查询结果生成模块,用于根据所述查询信息对应的数据库记录生成查询结果并发送。
6.根据权利要求5所述的数据库查询装置,其特征在于,还包括插入模块,用于根据接收到的数据库更改请求中携帯的业务信息生成数据库记录,将所述数据库记录插入到所述数据库中相应的数据表中。
7.根据权利要求6所述的数据库查询装置,其特征在于,还包括分库模块,用于根据获取到的业务关键字对所述数据库进行分库处理成多个子库,其中,所述子库中包括至少ー个数据表。
8.根据权利要求5或6所述的数据库查询装置,其特征在于,还包括更新模块,用于根据所述查询结果对所述数据库中相应的数据库记录进行更新。
全文摘要
本发明提供一种数据库查询方法及装置,该数据库查询方法包括根据接收到的数据库查询请求中携带的查询信息,从数据库中获取查询信息对应的数据库记录;根据查询信息对应的数据库记录生成查询结果并发送。该数据库查询装置具体包括获取模块和查询结果生成模块。本发明提供的数据库查询方法及装置,由于在接收到数据库查询请求时,才将该数据库查询请求对应的数据库记录从数据库中提取出来,进行相应计算以生成查询结果,而不需要对在数据库更改时就对数据库进行更新操作以将该更新操作的结果作为查询结果反馈给用户,可以避免对数据库进行更新操作时导致的锁表问题,提高数据库系统的稳定性。
文档编号G06F17/30GK102567544SQ201210012710
公开日2012年7月11日 申请日期2012年1月16日 优先权日2012年1月16日
发明者彭佳, 朱峰, 李希金, 王志军, 肖吉 申请人:中国联合网络通信集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1