访问超时的数据处理方法和装置制造方法

文档序号:6638932阅读:273来源:国知局
访问超时的数据处理方法和装置制造方法
【专利摘要】本发明公开了一种访问超时的数据处理方法和装置。其中,该访问超时的数据处理方法包括:获取访问请求的查询属性,查询属性用于表征访问请求的类型;获取查询属性与超时时间的对应关系,超时时间为超出预设访问等待时间的时间;以及根据对应关系确定访问请求的实际超时时间。通过本发明,解决了相关技术中如果仅仅估计一个固定超时时间,则难以满足所有的查询条件,况且,这样一个为所有的查询条件共用的固定超时时间也难以确定,即使能够成功确定,也可能对系统的性能造成影响的问题。
【专利说明】访问超时的数据处理方法和装置

【技术领域】
[0001] 本发明涉及数据库领域,具体而言,涉及一种访问超时的数据处理方法和装置。

【背景技术】
[0002] 目前,在信息系统中,大量采用数据库进行数据存储。而对数据库查询时,一般采 用SQL语言。在采用SQL语言查询数据库时,为了降低数据库进入死锁状态的可能性和减 少数据库的负担,一般需要设置一个超时时间。当SQL脚本执行的时间超过该超时时间时, 停止执行此脚本。当SQL脚本执行的时间未超过该超时时间时,继续执行此脚本。
[0003] 超时时间对系统的影响非常大,如果超时时间设置过短,则会导致大量的SQL脚 本执行超时,进而导致系统不可用;而如果超时时间设置过长,则会导致大量的极耗时的 SQL脚本执行得不到结束,进而会导致系统资源由于耗尽而不可用。因此,确定SQL脚本的 合理的超时时间非常重要。
[0004] 在相关技术中,一般会根据系统的实际情况,估计一个固定的超时时间。然而,由 于系统中可能存在多中类型的查询条件,因此,如果仅仅估计一个固定超时时间,则难以满 足所有的查询条件,况且,这样一个为所有的查询条件共用的固定超时时间也难以确定,即 使能够成功确定,也可能对系统的性能造成影响。
[0005] 针对相关技术中如果仅仅估计一个固定超时时间,则难以满足所有的查询条件, 况且,这样一个为所有的查询条件共用的固定超时时间也难以确定,即使能够成功确定,也 可能对系统的性能造成影响的问题,目前尚未提出有效的解决方案。


【发明内容】

[0006] 本发明的主要目的在于提供一种访问超时的数据处理方法和装置,以解决相关技 术中如果仅仅估计一个固定超时时间,则难以满足所有的查询条件,况且,这样一个为所有 的查询条件共用的固定超时时间也难以确定,即使能够成功确定,也可能对系统的性能造 成影响的问题。
[0007] 为了实现上述目的,根据本发明的一个方面,提供了一种访问超时的数据处理方 法。该方法包括:获取访问请求的查询属性,上述查询属性用于表征上述访问请求的类型; 获取上述查询属性与超时时间的对应关系,上述超时时间为超出预设访问等待时间的时 间;以及根据上述对应关系确定上述访问请求的实际超时时间。
[0008] 进一步地,在获取上述查询属性与超时时间的对应关系之前,上述数据处理方法 还包括:判断上述查询属性是否为离散化的查询属性,其中,如果判断出上述查询属性为上 述离散化的查询属性,则执行获取上述查询属性与超时时间的对应关系的步骤;如果判断 出上述查询属性不为上述离散化的查询属性,则先对上述查询属性进行离散化处理,再执 行获取上述查询属性与超时时间的对应关系的步骤。
[0009] 进一步地,上述离散化的查询属性包括:第一查询属性和第二查询属性,组合查询 属性为上述第一查询属性和第二查询属性的组合的查询属性,通过以下方法确定与上述离 散化的查询属性相对应的超时时间:按照上述访问请求的上述组合查询属性进行实际查 询;记录上述访问请求在实际查询中的超时时间;以及将上述访问请求在实际查询中的超 时时间作为与上述离散化的查询属性相对应的超时时间。
[0010] 进一步地,上述离散化的查询属性包括:第一查询属性和第二查询属性,组合查询 属性为上述第一查询属性和第二查询属性的组合的查询属性,通过以下方法确定与上述离 散化的查询属性相对应的超时时间:按照上述访问请求的上述组合查询属性进行多次实际 查询;记录上述访问请求在实际查询中的多次超时时间;对上述访问请求在实际查询中的 多次超时时间求平均时间;以及将上述平均时间作为与上述离散化的查询属性相对应的超 时时间。
[0011] 进一步地,在根据上述对应关系确定上述访问请求的实际超时时间之后,上述数 据处理方法还包括:获取预先设定的最大超时时间;判断上述实际超时时间是否大于上述 最大超时时间;如果判断出上述实际超时时间大于上述最大超时时间,则将上述最大超时 时间作为最终的实际超时时间;以及如果判断出上述实际超时时间不大于上述最大超时时 间,则将上述实际超时时间作为上述最终的实际超时时间。
[0012] 为了实现上述目的,根据本发明的另一方面,提供了一种访问超时的数据处理装 置。该装置包括:第一获取单元,用于获取访问请求的查询属性,上述查询属性用于表征上 述访问请求的类型;第二获取单元,用于获取上述查询属性与超时时间的对应关系,上述超 时时间为超出预设访问等待时间的时间;以及第一确定单元,用于根据上述对应关系确定 上述访问请求的实际超时时间。
[0013] 进一步地,上述数据处理装置还包括:第一判断单元,用于在获取上述查询属性与 超时时间的对应关系之前,判断上述查询属性是否为离散化的查询属性,其中,如果判断出 上述查询属性为上述离散化的查询属性,则执行上述第二获取单元的功能;如果判断出上 述查询属性不为上述离散化的查询属性,则先对上述查询属性进行离散化处理,再执行上 述第二获取单元的功能。
[0014] 进一步地,上述离散化的查询属性包括:第一查询属性和第二查询属性,组合查询 属性为上述第一查询属性和第二查询属性的组合的查询属性,上述数据处理装置还包括: 第二确定单元,用于通过以下装置确定与上述离散化的查询属性相对应的超时时间,其中, 上述第二确定单元具有:第一查询模块,用于按照上述访问请求的上述组合查询属性进行 实际查询;第一记录模块,用于记录上述访问请求在实际查询中的超时时间;以及第一确 定模块,用于将上述访问请求在实际查询中的超时时间作为与上述离散化的查询属性相对 应的超时时间。
[0015] 进一步地,上述离散化的查询属性包括:第一查询属性和第二查询属性,组合查询 属性为上述第一查询属性和第二查询属性的组合的查询属性,上述数据处理装置还包括: 第三确定单元,用于通过以下装置确定与上述离散化的查询属性相对应的超时时间,其中, 上述第三确定单元具有:第二查询模块,用于按照上述访问请求的上述组合查询属性进行 多次实际查询;第二记录模块,用于记录上述访问请求在实际查询中的多次超时时间;计 算模块,用于对上述访问请求在实际查询中的多次超时时间求平均时间;以及第二确定模 块,用于将上述平均时间作为与上述离散化的查询属性相对应的超时时间。
[0016] 进一步地,上述数据处理装置还包括:第三获取单元,用于在根据上述对应关系确 定上述访问请求的实际超时时间之后,获取预先设定的最大超时时间;第二判断单元,用于 判断上述实际超时时间是否大于上述最大超时时间;第四确定单元,用于在判断出上述实 际超时时间大于上述最大超时时间时,将上述最大超时时间作为最终的实际超时时间;以 及第五确定单元,用于在判断出上述实际超时时间不大于上述最大超时时间时,将上述实 际超时时间作为上述最终的实际超时时间。
[0017] 通过本发明,采用获取访问请求的查询属性,查询属性用于表征访问请求的类型; 获取查询属性与超时时间的对应关系,超时时间为超出预设访问等待时间的时间;以及根 据对应关系确定访问请求的实际超时时间,解决了相关技术中如果仅仅估计一个固定超时 时间,则难以满足所有的查询条件,况且,这样一个为所有的查询条件共用的固定超时时间 也难以确定,即使能够成功确定,也可能对系统的性能造成影响的问题,进而达到了动态的 确定超时时间以满足不同的查询条件的要求的效果。

【专利附图】

【附图说明】
[0018] 构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实 施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0019] 图1是根据本发明实施例的访问超时的数据处理方法的流程图;以及
[0020] 图2是根据本发明实施例的访问超时的数据处理装置的示意图。

【具体实施方式】
[0021] 需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相 互组合。下面将参考附图并结合实施例来详细说明本发明。
[0022] 为了使本【技术领域】的人员更好地理解本申请方案,下面将结合本申请实施例中的 附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是 本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术 人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范 围。
[0023] 需要说明的是,本申请的说明书和权利要求书及上述附图中的术语"第一"、"第 二"等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使 用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语"包括"和 "具有"以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元 的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有 清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0024] 根据本发明的实施例,提供了一种访问超时的数据处理方法。该访问超时的数据 处理方法可以运行在计算机处理设备上。
[0025] 图1是根据本发明实施例的访问超时的数据处理方法的流程图。如图1所示,该 方法包括如下的步骤S102至步骤S106 :
[0026] 步骤S102,获取访问请求的查询属性,查询属性用于表征访问请求的类型。
[0027] 需要说明的是,在本发明实施例中,访问请求可以是访问数据库的访问请求,例 如,其可以是SQL查询请求。查询属性可以包括一种或者多种,本发明对其不做任何限定, 例如,其可以是查询数据条数的属性、是否具有过滤条件的属性、是否有排序的属性等,相 应的,表征访问请求的类型可以分别是查询数据条数的请求、是否具有过滤条件的请求、是 否有排序的请求等。
[0028] 由于查询数据的条数、是否具有过滤条件以及是否有排序等是影响查询时间的主 要因素,因此,在获取访问请求的查询属性之后,可以主要将上述几个要素对应的查询属性 作为确定超时时间的输入条件。
[0029] 步骤S104,获取查询属性与超时时间的对应关系。超时时间为超出预设访问等待 时间的时间。
[0030] 超时时间为超出预设访问等待时间的时间,也即,在客户端发起访问请求之后,数 据库响应的超时时间。实施时,可以根据历史查询记录或者实验数据预先确定各查询属性 对应的超时时间,并将得到的超时时间以及各查询属性与相应的超时时间的对应关系存储 在超时表格中,以备实际访问数据库时使用。
[0031] 步骤S106,根据对应关系确定访问请求的实际超时时间。
[0032] 实施时,当需要确定一个查询请求的超时时间时,可以先获取这个查询请求的各 查询属性,即各查询条件,并按照这些查询条件在上述的超时表格中查找对应的超时时间, 并以此对应的超时时间作为访问请求的实际超时时间,也即,实际查询的超时时间。
[0033] 通过本发明实施例,由于可以根据各访问请求的查询属性,动态地确定一个用于 数据库查询的超时时间,从而可以让尽量多的查询不超时,且尽量避免过度消耗系统资源, 达到了动态的确定超时时间以满足不同的查询条件的要求的效果。
[0034] 优选地,在本发明实施例中,在步骤S104获取查询属性与超时时间的对应关系之 前,该数据处理方法还可以包括:
[0035] S2,判断查询属性是否为离散化的查询属性。其中,如果判断出查询属性为离散化 的查询属性,则执行步骤S104获取查询属性与超时时间的对应关系的步骤;如果判断出查 询属性不为离散化的查询属性,则先对查询属性进行离散化处理,再执行步骤S104获取查 询属性与超时时间的对应关系的步骤。
[0036] 由于查询属性按照查询意义可以分为连续型查询属性和离散型查询属性,也即, 确定超时时间的输入条件可以分为两类:连续型输入条件和离散型输入条件,例如,查询数 据条数的属性为连续型查询属性,而是否具有过滤的属性以及是否有排序的属性为离散型 查询属性,因而在实施时,对于每一个连续型输入条件,需要先将之离散化,再使用离散化 后的输入条件在上述超时表格中查找对应的超时时间,并以此查找到的超时时间作为实际 查询的超时时间,也即,最终超时时间。
[0037] 其中,离散化的处理流程如下:先确定此连续型输入条件在系统中查询的最大值 和最小值,再在最大值和最小值之间按照预设间隔采集一些点,用这些点对应的值作为此 连续性输入条件的离散化形式。
[0038] 进一步优选地,在本发明实施例中,离散化的查询属性包括:第一查询属性和第二 查询属性,组合查询属性可以为第一查询属性和第二查询属性的组合的查询属性,通过以 下方法确定与离散化的查询属性相对应的超时时间:
[0039] S4,按照访问请求的组合查询属性进行实际查询;
[0040] S6,记录访问请求在实际查询中的超时时间;以及
[0041] S8,将访问请求在实际查询中的超时时间作为与离散化的查询属性相对应的超时 时间。
[0042] 优选地,在本发明实施例中,离散化的查询属性包括:第一查询属性和第二查询属 性,组合查询属性为第一查询属性和第二查询属性的组合的查询属性,通过以下方法确定 与离散化的查询属性相对应的超时时间:
[0043] S10,按照访问请求的组合查询属性进行多次实际查询;
[0044] S12,记录访问请求在实际查询中的多次超时时间;
[0045] S14,对访问请求在实际查询中的多次超时时间求平均时间;以及
[0046] S16,将平均时间作为与离散化的查询属性相对应的超时时间。
[0047] 实施时,可以先获取每一个输入条件,对于本身就是离散化的输入条件的不做任 何处理,而对于本身时连续型的输入条件则先做离散化处理,得到离散型的输入条件,然后 将这些离散型的输入条件进行组合,从而构造查询请求进行实际查询,并记录每一组查询 的超时时间,以及计算这些超时时间的均值,以此均值作为这组查询条件的典型查询耗费 时间t,也即,与离散化的查询属性相对应的超时时间。
[0048] 进一步地,还可以确定一个超时系数m,按照如下公式计算每一组查询条件的超时 时间:T = mt。在计算完毕之后,记录每一组查询条件的超时时间,并将记录结果存储在一 个超时表格中。
[0049] 优选地,在本发明实施例中,在步骤S106根据对应关系确定访问请求的实际超时 时间之后,该数据处理方法还可以包括:
[0050] S18,获取预先设定的最大超时时间;
[0051] S20,判断实际超时时间是否大于最大超时时间;
[0052] S22,如果判断出实际超时时间大于最大超时时间,则将最大超时时间作为最终的 实际超时时间;以及
[0053] S24,如果判断出实际超时时间不大于最大超时时间,则将实际超时时间作为最终 的实际超时时间。
[0054] 由于按照上述实施得到的超时时间可能会很大,进而导致系统资源被过度消耗, 因此,为了避免动态计算的SQL的超时时间过大,首先需要指定一个最大超时时间TmaxjB 果动态计算的SQL的超时时间不超过这个最大超时时间Tmax,则将动态计算的SQL的超时 时间作为最终的实际超时时间,否则,则将指定的最大超时时间Tmax作为最终的实际超时 时间。
[0055] 以下以一个具体实施例详细阐述本发明:
[0056] 首先,指定系统的最大超时时间Tmax = 5分钟;选择访问请求的如下查询属性作 为确定超时时间的输入条件,如表1所示:
[0057] 表 1
[0058]

【权利要求】
1. 一种访问超时的数据处理方法,其特征在于,包括: 获取访问请求的查询属性,所述查询属性用于表征所述访问请求的类型; 获取所述查询属性与超时时间的对应关系,所述超时时间为超出预设访问等待时间的 时间;W及 根据所述对应关系确定所述访问请求的实际超时时间。
2. 根据权利要求1所述的访问超时的数据处理方法,其特征在于,在获取所述查询属 性与超时时间的对应关系之前,所述数据处理方法还包括: 判断所述查询属性是否为离散化的查询属性, 其中,如果判断出所述查询属性为所述离散化的查询属性,则执行获取所述查询属性 与超时时间的对应关系的步骤;如果判断出所述查询属性不为所述离散化的查询属性,贝U 先对所述查询属性进行离散化处理,再执行获取所述查询属性与超时时间的对应关系的步 骤。
3. 根据权利要求2所述的访问超时的数据处理方法,其特征在于,所述离散化的查询 属性包括:第一查询属性和第二查询属性,组合查询属性为所述第一查询属性和第二查询 属性的组合的查询属性,通过W下方法确定与所述离散化的查询属性相对应的超时时间: 按照所述访问请求的所述组合查询属性进行实际查询; 记录所述访问请求在实际查询中的超时时间;W及 将所述访问请求在实际查询中的超时时间作为与所述离散化的查询属性相对应的超 时时间。
4. 根据权利要求2所述的访问超时的数据处理方法,其特征在于,所述离散化的查询 属性包括:第一查询属性和第二查询属性,组合查询属性为所述第一查询属性和第二查询 属性的组合的查询属性,通过W下方法确定与所述离散化的查询属性相对应的超时时间: 按照所述访问请求的所述组合查询属性进行多次实际查询; 记录所述访问请求在实际查询中的多次超时时间; 对所述访问请求在实际查询中的多次超时时间求平均时间;W及 将所述平均时间作为与所述离散化的查询属性相对应的超时时间。
5. 根据权利要求1所述的访问超时的数据处理方法,其特征在于,在根据所述对应关 系确定所述访问请求的实际超时时间之后,所述数据处理方法还包括: 获取预先设定的最大超时时间; 判断所述实际超时时间是否大于所述最大超时时间; 如果判断出所述实际超时时间大于所述最大超时时间,则将所述最大超时时间作为最 终的实际超时时间;W及 如果判断出所述实际超时时间不大于所述最大超时时间,则将所述实际超时时间作为 所述最终的实际超时时间。
6. -种访问超时的数据处理装置,其特征在于,包括: 第一获取单元,用于获取访问请求的查询属性,所述查询属性用于表征所述访问请求 的类型; 第二获取单元,用于获取所述查询属性与超时时间的对应关系,所述超时时间为超出 预设访问等待时间的时间;W及 第一确定单元,用于根据所述对应关系确定所述访问请求的实际超时时间。
7. 根据权利要求6所述的访问超时的数据处理装置,其特征在于,所述数据处理装置 还包括: 第一判断单元,用于在获取所述查询属性与超时时间的对应关系之前,判断所述查询 属性是否为离散化的查询属性, 其中,如果判断出所述查询属性为所述离散化的查询属性,则执行所述第二获取单元 的功能;如果判断出所述查询属性不为所述离散化的查询属性,则先对所述查询属性进行 离散化处理,再执行所述第二获取单元的功能。
8. 根据权利要求7所述的访问超时的数据处理装置,其特征在于,所述离散化的查询 属性包括:第一查询属性和第二查询属性,组合查询属性为所述第一查询属性和第二查询 属性的组合的查询属性,所述数据处理装置还包括;第二确定单元,用于通过W下装置确定 与所述离散化的查询属性相对应的超时时间,其中,所述第二确定单元具有: 第一查询模块,用于按照所述访问请求的所述组合查询属性进行实际查询; 第一记录模块,用于记录所述访问请求在实际查询中的超时时间;W及 第一确定模块,用于将所述访问请求在实际查询中的超时时间作为与所述离散化的查 询属性相对应的超时时间。
9. 根据权利要求7所述的访问超时的数据处理装置,其特征在于,所述离散化的查询 属性包括:第一查询属性和第二查询属性,组合查询属性为所述第一查询属性和第二查询 属性的组合的查询属性,所述数据处理装置还包括:第H确定单元,用于通过W下装置确定 与所述离散化的查询属性相对应的超时时间,其中,所述第H确定单元具有: 第二查询模块,用于按照所述访问请求的所述组合查询属性进行多次实际查询; 第二记录模块,用于记录所述访问请求在实际查询中的多次超时时间; 计算模块,用于对所述访问请求在实际查询中的多次超时时间求平均时间;W及 第二确定模块,用于将所述平均时间作为与所述离散化的查询属性相对应的超时时 间。
10. 根据权利要求6所述的访问超时的数据处理装置,其特征在于,所述数据处理装置 还包括: 第H获取单元,用于在根据所述对应关系确定所述访问请求的实际超时时间之后,获 取预先设定的最大超时时间; 第二判断单元,用于判断所述实际超时时间是否大于所述最大超时时间; 第四确定单元,用于在判断出所述实际超时时间大于所述最大超时时间时,将所述最 大超时时间作为最终的实际超时时间;W及 第五确定单元,用于在判断出所述实际超时时间不大于所述最大超时时间时,将所述 实际超时时间作为所述最终的实际超时时间。
【文档编号】G06F17/30GK104462447SQ201410779513
【公开日】2015年3月25日 申请日期:2014年12月15日 优先权日:2014年12月15日
【发明者】赖华贵 申请人:北京国双科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1