数据库的访问方法和装置制造方法及图纸

技术编号:16038188 阅读:31 留言:0更新日期:2017-08-19 20:01
本发明专利技术提供了一种数据库的访问方法和装置。其中数据库的访问方法包括:获取需要访问的数据库的类型,其中供访问的数据库预先按照业务类型划分为多类,每类数据库设置有各自的索引;调用与需要访问的数据库的类型对应的索引;确定索引指向的数据库实例的连接状态;在连接状态为正在连接的情况下,访问索引指向的数据库实例。本发明专利技术的方案将提供数据服务的数据库按照业务类型进行分类,每类数据库单独设置索引,从而按照业务类型在对应的数据库中进行均衡调度,一方面可以根据业务类型进行数据库实例的配置,另一方面可以保证同一类型数据库的访问负载均衡,提高了访问数据库的效率。

【技术实现步骤摘要】
数据库的访问方法和装置
本专利技术涉及数据库,特别是涉及数据库的访问方法和装置。
技术介绍
数据库(Database)是为了实现一定目的按某种规则组织起来的数据的集合,随着计算机技术的快速发展,数据库的读写速度、数据可用性、安全性、扩展性均面临着更高的要求。特别对于大规模高并发数的后台服务架构体系中,数据库一般为分布式设置,也即采用数据库集群。数据库集群在使用时需要保证数据库之间的负载均衡。因此数据库集群的访问协调是数据库领域的重要技术。现有的数据库集群的访问方法一般有两种方式,一种为连接固定地址的数据库服务器,这种方式无法在各个服务器间进行平衡调度,会出现某些服务器的访问压力大,而另一些服务器的访问量较小;另一种为采用代理(PROXY)技术,将访问请求均衡地发送至各个服务器,这种方式实现了服务器间的平衡调度,然而需要所有的数据库均具备处理相同业务的能力,而且如果出现某台服务器的连接异常,会出现数据丢失的情况。
技术实现思路
本专利技术的一个目的是要提高数据库访问的效率。特别地,本专利技术提供了一种数据库的访问方法,该方法包括:获取需要访问的数据库的类型,其中供访问的数据库预先按照业务类型划分为多类,每类数据库设置有各自的索引;调用与需要访问的数据库的类型对应的索引;确定索引指向的数据库实例的连接状态;在连接状态为正在连接的情况下,访问索引指向的数据库实例。可选地,在访问索引指向的数据库实例之后还包括:将索引修改为指向下一顺序的数据库实例,以供下次访问,其中每类数据库中的数据库实例预先按照设定顺序进行排列。可选地,在确定索引指向的数据库实例的连接状态的步骤之后还包括:在访问连接状态为断开的情况下,检查索引指向的数据库的最近连接时间;在相距最近连接时间的间隔短于预设的阈值的情况下,尝试重新连接索引指向的数据库,并在重新连接成功后,访问索引指向的数据库实例并将索引修改为指向下一顺序的数据库实例。可选地,在相距最近连接时间的间隔长于阈值的情况下,按照设定顺序对需要访问的数据库的类型的数据库实例进行逐一查询,直至查询出处于正在连接状态的数据库实例,并访问查询出的数据库实例。可选地,在按照设定顺序对需要访问的数据库的类型的数据库实例进行逐一查询之后,若没有查询到处于正在连接状态的数据库实例,返回数据库连接失败信息。可选地,在对一类数据库进行添加数据库实例添加和/或删除之后还包括:对该类数据库中的数据库实例进行重新排序。根据本专利技术的另一个方面,还提供了一种数据库的访问装置,该装置包括:类型获取模块,配置成获取需要访问的数据库的类型,其中供访问的数据库预先按照业务类型划分为多类,每类数据库设置有各自的索引;索引调用模块,配置成调用与需要访问的数据库的类型对应的索引;状态查询模块,配置成确定索引指向的数据库实例的连接状态;实例访问模块,配置成在连接状态为正在连接的情况下,访问索引指向的数据库实例。可选地,上述装置还包括:索引修改模块,配置成在实例访问模块访问索引指向的数据库实例之后,将索引修改为指向下一顺序的数据库实例,以供下次访问,其中每类数据库中的数据库实例预先按照设定顺序进行排列。可选地,上述实例访问模块还配置成:在访问连接状态为断开的情况下,检查索引指向的数据库的最近连接时间;在相距最近连接时间的间隔短于预设的阈值的情况下,尝试重新连接索引指向的数据库,并在重新连接成功后,访问索引指向的数据库实例,并且索引修改模块,还配置成在实例访问模块访问索引指向的数据库实例之后,将索引修改为指向下一顺序的数据库实例。可选地实例访问模块还配置成:在相距最近连接时间的间隔长于阈值的情况下,按照设定顺序对需要访问的数据库的类型的数据库实例进行逐一查询,直至查询出处于正在连接状态的数据库实例,并访问查询出的数据库实例;并且上述数据库的访问装置还包括:提示模块,配置成:在按照设定顺序对需要访问的数据库的类型的数据库实例进行逐一查询之后,若没有查询到处于正在连接状态的数据库实例,返回数据库连接失败信息;以及排序模块配置成:在对一类数据库进行添加数据库实例添加和/或删除之后还包括:对该类数据库中的数据库实例进行重新排序。本专利技术的数据库的访问方法和装置,将提供数据服务的数据库按照业务类型进行分类,每类数据库单独设置索引,从而按照业务类型在对应的数据库中进行均衡调度,一方面可以根据业务类型进行数据库实例的配置,另一方面可以保证同一类型数据库的访问负载均衡,提高了访问数据库的效率。进一步地,本专利技术的数据库的访问方法和装置,同时管理多类不同类型的数据库实例,对各类数据库实例进行预先排列,利用索引确定需要访问的数据库实例。对于数据库连接异常的情况,对重连做了时间限制,防止在短时间内频繁的尝试连接异常的数据库实例,减少时间的浪费,提高了效率。更进一步地,本专利技术的数据库的访问方法和装置,通过对数据库实例进行分类管理,可以对每一类数据库分别进行添加数据库实例和删除数据库实例的操作,提高了数据库的灵活性。根据下文结合附图对本专利技术具体实施例的详细描述,本领域技术人员将会更加明了本专利技术的上述以及其他目的、优点和特征。附图说明后文将参照附图以示例性而非限制性的方式详细描述本专利技术的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解,这些附图未必是按比例绘制的。附图中:图1是根据本专利技术一个实施例的数据库的访问装置的示意框图;图2是根据本专利技术另一实施例的数据库的访问装置的示意框图;图3是根据本专利技术一个实施例的数据库的访问方法的示意图;以及图4是根据本专利技术另一实施例的数据库的访问方法的流程示意图。具体实施方式图1是根据本专利技术一个实施例的数据库的访问装置100的示意框图。该数据库的访问装置100一般性地可包括:类型获取模块110、索引调用模块120、状态查询模块130、实例访问模块140。在本实施例中,供访问的数据库预先按照业务类型划分为多类,每类数据库设置有各自的索引。具体划分的数量可以按照数据库的功能业务确定,每类数据库可以完成相对独立的数据服务,并且每类数据库可以包括多个数据库实例(instance)。数据库实例是一组后台进程和内存结构的组合,可对数据库进行操作。类型获取模块110配置成获取需要访问的数据库的类型。索引调用模块120,配置成调用与需要访问的数据库的类型对应的索引。该索引用于指示出本次应被访问的数据库实例。状态查询模块130配置成确定索引指向的数据库实例的连接状态;实例访问模块140配置成在连接状态为正在连接的情况下,访问索引指向的数据库实例。该数据库的访问装置100对数据库进行分类,对每一类数据库分别进行平衡调度,便于数据库调用,提高了数据库的访问效率。图2是根据本专利技术另一实施例的数据库的访问装置100的示意框图,该数据库的访问装置100在上一实施例的基础上,可以选择增加以下模块的一种或多种:索引修改模块150、提示模块160、排序模块170。索引修改模块150在实例访问模块140访问索引指向的数据库实例之后,将索引修改为指向下一顺序的数据库实例,以供下次访问索引修改模块150在一个数据库实例被访问后,将将索引修改为指向下一顺序的数据库实例,可以避免重复对同一数据库实例进行访问,可以保证索引中正常连接的数据库实本文档来自技高网...
数据库的访问方法和装置

【技术保护点】
一种数据库的访问方法,其特征在于包括:获取需要访问的数据库的类型,其中供访问的数据库预先按照业务类型划分为多类,每类所述数据库设置有各自的索引;调用与所述需要访问的数据库的类型对应的索引;确定所述索引指向的数据库实例的连接状态;在所述连接状态为正在连接的情况下,访问所述索引指向的数据库实例。

【技术特征摘要】
1.一种数据库的访问方法,其特征在于包括:获取需要访问的数据库的类型,其中供访问的数据库预先按照业务类型划分为多类,每类所述数据库设置有各自的索引;调用与所述需要访问的数据库的类型对应的索引;确定所述索引指向的数据库实例的连接状态;在所述连接状态为正在连接的情况下,访问所述索引指向的数据库实例。2.根据权利要求1所述的方法,其特征在于,在访问所述索引指向的数据库实例之后还包括:将所述索引修改为指向下一顺序的数据库实例,以供下次访问,其中每类所述数据库中的数据库实例预先按照设定顺序进行排列。3.根据权利要求2所述的方法,其特征在于,在确定所述索引指向的数据库实例的连接状态的步骤之后还包括:在访问所述连接状态为断开的情况下,检查所述索引指向的数据库的最近连接时间;在相距所述最近连接时间的间隔短于预设的阈值的情况下,尝试重新连接所述索引指向的数据库,并在重新连接成功后,访问所述索引指向的数据库实例并将所述索引修改为指向下一顺序的数据库实例。4.根据权利要求3所述的方法,其特征在于在相距所述最近连接时间的间隔长于所述阈值的情况下,按照所述设定顺序对所述需要访问的数据库的类型的数据库实例进行逐一查询,直至查询出处于正在连接状态的数据库实例,并访问查询出的数据库实例。5.根据权利要求4所述的方法,其特征在于,在按照所述设定顺序对所述需要访问的数据库的类型的数据库实例进行逐一查询之后,若没有查询到处于正在连接状态的数据库实例,返回数据库连接失败信息。6.根据权利要求2所述的方法,其特征在于,在对一类所述数据库进行添加数据库实例添加和/或删除之后还包括:对该类数据库中的数据库实例进行重新排序。7.一种数据库的访问装置,其特征在于包括:类型获取模块,配置成获取需要访问的数据库的类型,...

【专利技术属性】
技术研发人员:杨玉奇杨从安张宇平
申请(专利权)人:北京数字联盟网络科技有限公司
类型:发明
国别省市:北京,11

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

1