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

文档序号:6441209阅读:149来源:国知局
专利名称:数据查询方法及装置的制作方法
技术领域
本发明涉及通信领域,具体而言,涉及一种数据查询方法及装置。
背景技术
在通信领域,数据库的应用越来越广泛,大数据量的访问不可避免,对数据访问响应速度的要求也越来越高。例如,使用短信、语音通话等方式进行通信越来越频繁,与通信相关的增值业务的发展也越来越快,各种新型数据业务不断被推出。一般来说,每天都会有上百万的数据量,如此大的业务信息导致数据库数据存储量非常大。根据实际维护要求,需要将近一段历史时期的数据使用信息保持在数据库中,以方便对其进行统计分析。如果用户想对某些指定的业务数据进行查询,在这么大的数据量中查找需要的数据存在问题例如,在相关技术中,为了较快地获得需要的数据,通常是把查询结果放到内存中缓存,然而,这样会消耗大量内存,并且,当内存不够时,就必须释放缓存区的查询结果,导致重新查询;又例如,在相关技术中,采用数据库中间表,把数据查询结果放到数据库中间表中,这样处理时需要维护大量的中间表,因此,给维护带来了极大的不便。不仅如此,在相关技术中,不管是将查询结果缓存在内存还是数据库中间表中,都没有一种数据定时更新机制,因而,导致了最初得到的结果和最后实际的结果不一致。因此,在相关技术中存在从数据库获取需要的数据要消耗时间长,消耗内存大,以及获取的数据与实际不符的问题。

发明内容
本发明提供了一种数据查询方法及装置,以至少解决在相关技术中存在从数据库获取需要的数据要消耗时间长,消耗内存大,以及获取的数据与实际不符的问题之一。根据本发明的一个方面,提供了一种数据查询方法,包括接收查询条件,其中,所述查询条件用于从数据库中查询数据;判断所述查询条件是否存在于查询结果文件表中, 其中,所述查询结果文件表保存有从数据库中查询过数据的查询条件,以及所述查询条件对应的查询结果信息;在所述查询条件存在于所述查询结果文件表中的情况下,根据所述查询条件对应的所述查询结果信息获取查询结果。优选地,在判断所述查询条件是否存在于查询结果文件表中之后,还包括,在所述查询条件不存在于所述查询结果文件表中的情况下,根据所述查询条件对数据库进行查询;将所述查询条件及查询获得的查询结果信息添加到所述查询结果文件表中。优选地,所述查询结果信息包括以下至少之一保存所述查询结果文件的路径,所述查询结果被访问的次数,查询结果文件的更新时间。优选地,所述查询结果信息中还包括保存所述查询结果的文件的路径对应的超链接。优选地,还包括每隔预定的时间段根据存在于所述查询结果文件表中的查询条件对存在于所述查询结果文件表中的所述查询条件对应的所述查询结果进行更新。
优选地,在预定的时间段根据存在于所述查询结果文件表中的查询条件对存在于所述查询结果文件表中的所述查询条件对应的所述查询结果进行更新包括在所述预定的时间段计算所述查询结果被访问的次数;按照被访问的次数从高到低的顺序,根据存在于所述查询结果文件表中的查询条件对存在于所述查询结果文件表中的所述查询条件对应的所述查询结果进行更新。优选地,根据所述查询条件对应的所述查询结果信息获取所述查询结果包括根据所述查询条件获取保存查询结果文件的路径,其中,所述查询结果保存于所述查询结果文件中;通过所述路径获取所述查询结果。优选地,根据所述查询条件对应的所述查询结果信息获取查询结果之后,还包括 对所述查询结果进行显示。根据本发明的另一方面,提供了一种数据查询装置,包括接收模块,用于接收查询条件,其中,所述查询条件用于从数据库中查询数据;判断模块,用于判断所述查询条件是否存在于查询结果文件表中,其中,所述查询结果文件表保存有从数据库中查询过数据的查询条件,以及所述查询条件对应的查询结果信息;获取模块,用于在所述查询条件存在于所述查询结果文件表中的情况下,根据所述查询条件对应的所述查询结果信息获取查询结果。优选地,还包括更新模块,用于每隔预定的时间段根据存在于所述查询结果文件表中的查询条件对存在于所述查询结果文件表中的所述查询条件对应的所述查询结果进行更新。通过本发明,在接收查询条件时,判断所述查询条件是否存在于查询结果文件表中,其中,所述查询结果文件表保存有从数据库中查询过数据的查询条件,以及所述查询条件对应的查询结果信息;在所述查询条件存在于所述查询结果文件表中的情况下,根据所述查询条件对应的所述查询结果信息获取查询结果,从而解决了相关技术中从数据库中获取数据消耗时间长,查询缓慢的技术问题,进而达到了可以对需要的数据快速查询的效果。


此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中图1是根据本发明实施例的数据查询方法的流程图;图2是根据本发明实施例的数据查询装置的结构框图;图3是根据本发明优选实施例的数据查询装置的结构框图;图4是根据本发明实施例的在门户上实现数据快速查询的系统的框架图;图5是根据本发明实施例的对订购业务关系数据查询方法的流程图。
具体实施例方式下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。在本实施例中提供了一种数据查询方法,图1是根据本发明实施例的数据查询方法的流程图,如图1所示,该方法包括如下步骤
步骤S102,接收查询条件,其中,该查询条件用于从数据库中查询数据;步骤S104,判断该查询条件是否存在于查询结果文件表中,其中,该查询结果文件表保存有从数据库中查询过数据的查询条件,以及该查询条件对应的查询结果信息,例如, 该查询结果信息可以为保存该查询结果文件的路径、该查询结果被访问的次数、或查询结果文件的更新时间;步骤S106,在该查询条件存在于该查询结果文件表中的情况下,根据该查询条件对应的该查询结果信息获取查询结果。通过上述步骤,通过建立保存有查询结果信息的查询结果文件表,在接收到查询条件时,可以直接获取查询条件对应的查询结果信息,从而获得查询结果,相对于现有技术中,在查询的过程中将查询结果保存在内存中,导致内存不够,以及难以维护保存查询结果的中间表,通过保存查询结果信息的方式大大提高了查询的速度。在实施时,如果判断该查询条件不存在于该查询结果文件表中,即表明对查询条件来说,是第一次查询,对该第一次查询,可以对查询条件进行预先设置,例如,对现有应用中通常相关性较大的条件字符预先设置在一起,当接收到其中一个时,将相关的字符也在条件输入区域中进行显示,从而有效避免了第一次查询时速度过慢,根据该查询条件对数据库进行查询;将该查询条件及查询获得的查询结果信息添加到该查询结果文件表中。通过该添加处理,对查询结果文件表进行更新,使得在后续对该条件进行查询时,可以加快查询的速度。为了在对数据进行查询时,使获得的数据与实际的数据是一致的,可以每隔预定的时间段根据存在于该查询结果文件表中的查询条件对存在于该查询结果文件表中的该查询条件对应的该查询结果进行更新。该预定的时间段可以根据数据库中所存数据的性质而定,例如,数据的性质为长时间是不变化的,可以使该预定的时间段长一点,避免时时更新带来的资源浪费,而如果该数据的性质为变化较为频繁时,就需要使该预定的时间段尽量短,从而使获取的数据准确。在预定的时间段根据存在于该查询结果文件表中的查询条件对存在于该查询结果文件表中的该查询条件对应的该查询结果进行更新可以采用多种实施的方式,例如,可以依据查询条件的查询的历史先后顺序来查询,也可以依据查询结果文件表中其它字段的相关信息来查询,较优地,可以以查询结果被访问的次数的多少来查询,首先在该预定的时间内计算该查询结果被访问的次数;按照被访问的次数从高到低的顺序,根据存在于该查询结果文件表中的查询条件对存在于该查询结果文件表中的该查询条件对应的该查询结果进行更新。通过这样的处理方式,可以使得相对较为普遍的查询条件获得较快较为准确的更新数据。在实施时,根据该查询条件对应的该查询结果信息获取该查询结果也可以根据对系统进行设置来实现,例如,根据该查询条件获取保存查询结果文件的路径,其中,该查询结果保存于该查询结果文件中,保存该查询结果文件的路径可以是默认的,也可以是通过设置来选择;通过该路径获取该查询结果的方式可以采用直接查找到保存结果的路径,也可以对保存查询结果的文件的路径建立超链接,需要查询该结果时,只需要点击对应的超链接就可以直接获取结果。根据该查询条件对应的该查询结果信息获取查询结果之后,将查询获得的结果生
6成可以进行显示的文件,例如,将查询结果生成web门户可以解析的文本文件,然后通过该可以解析的文本文件对该查询结果进行显示,方便数据需求者对数据的浏览。在本实施例中还提供了一种数据查询装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。图2是根据本发明实施例的数据查询装置的结构框图,如图2所示,该结构包括接收模块22、判断模块M和获取模块26。下面对该装置进行说明。接收模块22,用于接收查询条件,其中,该查询条件用于从数据库中查询数据;判断模块对,连接至该接收模块22,用于判断该查询条件是否存在于查询结果文件表中,其中,该查询结果文件表保存有从数据库中查询过数据的查询条件,以及该查询条件对应的查询结果信息;获取模块26,连接至该判断模块M,用于在该查询条件存在于该查询结果文件表中的情况下,根据该查询条件对应的该查询结果信息获取查询结果。图3是根据本发明优选实施例的数据查询装置的结构框图,如图3所示,该装置除包括图2所示的模块外,还包括更新模块观,用于每隔预定的时间段根据存在于该查询结果文件表中的查询条件对存在于该查询结果文件表中的该查询条件对应的该查询结果进行更新。上述实施例及优选实施方式中的在数据库中快速查询数据的方法,可以基于多种系统进行操作,例如,在web门户应用系统上对数据库进行快速查询,在本实施例中提供了一种门户数据快速查询的方法和系统,使用户能从大数据量的数据库中,查找到对应信息, 以满足用户需求。本实施例的在门户应用系统实现数据快速查询的方法,该方法包括以下步骤Si,在数据库上建立一个查询结果文件表,用于保存查询结果文件名、查询结果文件路径、该查询结果被访问次数和查询结果文件的更新时间,查询结果文件名根据查询条件,通过连接符拼接在一起生成。S2,设计结果文件生成模块,该模块根据传入的查询条件,执行数据库查询,把查询结果生成web服务器可解析的文本文件,文件名根据查询条件,通过连接符拼接在一起生成,保存在门户服务器的某个目录下(保存路径可配置),并把保存的路径,和文件名更新到查询结果文件表中,并返回文件名和路径。S3,接收查询条件,接收查询条件的方式可以很多,此处可以根据用户的选择而不同,例如,用户可以在门户应用系统上选择已经存在的查询条件进行查询,或者自己输入查询条件,也可以通过预先设置好自己常用的查询条件,避免第一次查询时速度很慢。当用户请求查询时,如果选的是已经存在的查询条件,则直接返回文件名;如果选的不是已经存在的查询条件,直接调用结果文件生成模块,生成结果文件,并返回结果文件名;如果用户设置常用查询条件时,直接调用结果文件生成模块,生成结果文件。用户每执行一次查询,系统自动更新对应的查询结果文件被访问的次数。S4,获得查询结果文件名和路径(如果路径为空则使用默认路径)之后,门户应用系统上的数据加载模块把该查询结果文件直接加载进来,显示在门户上,从而减少了对数据库的查询,快速得到查询结果。
S5,建立一个定时任务,在预定的时间内对查询结果文件表中的查询结果进行更新,更新的顺序可以依据需要进行相应的设置,例如,对查询结果文件表中的结果文件被访问次数进行排序,对访问次数较多的查询结果文件,优先处理,通过调用结果文件生成模块,对结果文件进行更新。图4是根据本发明实施例的在门户上实现数据快速查询的系统的框架图,如图4 所示,该系统包括门户部分和后台预处理部分,门户部分包括查询条件输入模块和查询结果文件加载模块,后台预处理部分包括数据库、结果文件生成模块以及定时模块,门户部分与后台预处理部分相互配合完成在门户上实现数据的快速查询,查询条件输入模块中存储有查询结果文件表,在接收到输入的查询条件时,判断该查询条件存在于该查询结果文件表中,如果存在,则直接返回查询条件对应的查询结果文件信息(例如,保存查询结果文件名、保存路径等),当该查询条件不存在于该查询结果文件表中时,调用结果文件生成模块, 结果文件生成模块接收到门户查询条件输入模块传来的查询条件,对该查询条件进行处理,得到返回的结果文件名,查询条件输入模块把得到的结果文件名返回给结果文件加载模块,结果文件加载模块根据得到的文件名加载结果文件,显示在页面上。较优地,定时模块可以设置一个预定的更新周期,更新周期的长短可以根据需要而定,主要是对结果文件进行定期更新,保证结果文件和实际查询结果的一致性。通信领域的数据库中的数据涉及范围广泛,增值的业务也不断推新,例如,订购业务、退订业务等,下面以门户业务应用系统对订购业务关系查询为例对本实施的数据查询方法进行说明,图5是根据本发明实施例的对订购业务关系数据查询方法的流程图,如图5 所示,该流程包括如下步骤步骤S502,建立查询结果文件表。为订购关系查询建立查询结果文件表,该表有以下列查询结果文件名、查询结果文件路径、查询结果被访问次数和查询结果文件更新时间;步骤S504,设计生成结果文件功能模块。该模块根据传入的一个或多个查询条件,执行数据库查询,把查询结果生成web服务器可解析的html文件(相当于文本文件), 文件名根据查询条件,通过连接符按顺序拼接在一起生成,例如,产品id(产品号)加日期 (10000120110101),保存在门户服务器的某个目录下(保存路径可配置),并把保存的文件名、路径、访问次数加1,当前时间,更新到查询结果文件表中,并返回文件名和路径。步骤S506,设置查询条件并根据查询条件返回查询结果,在查询页面,有查询条件输入区域(如产品id,日期,区域等)、已经存在查询条件区域(通过弹出窗口查询结果文件表,并按定义好的顺序,把查询结果文件表中的文件名解析成对应的查询条件,展示在页面上,进行选择)、查询条件自定义设置区域(如产品id,日期,区域等,用户可以根据自己的需要,定义自己常有的查询条件,并保存到已经存在查询条件区域中);当用户在查询条件输入区域输入查询条件时,首先把查询条件按定义好的顺序拼接成字符串和查询结果文件表中的文件名进行比较,如果有相同的文件名,则把文件名返回,如果没有找到相同的文件名,则调用结果文件生成模块,生成结果文件,并返回结果文件名;当用户选择已经存在查询条件区域中的查询条件,则直接返回文件名;当用户在查询条件自定义设置区域设置查询条件时,首先把查询条件按定义好的顺序拼接成字符串和查询结果文件表中的文件名进行比较,如果有相同的文件名,则不做处理,如果没有找到相同的文件名,则调用结果文件生成模块,生成结果文件。用户每执行一次查询,系统自动更新对应的查询结果文件被访问的次数。步骤S508,加载查询结果文件,门户应用系统上的数据加载模块根据获得的查询结果文件名和路径(路径可以通过配置文件获得),把查询结果文件加载进来,显示在门户上。步骤S510,部署定时任务,更新查询结果文件,建立一个定时任务,对查询结果文件表中的结果文件被访问次数进行排序,对访问次数较多的查询结果文件,优先处理,通过调用结果文件生成模块,对结果文件进行更新。综上所述,本实施例提供的门户数据快速查询的方法和系统能提高了门户查询大数据量表的访问速度,提高了用户体验。显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种数据查询方法,其特征在于,包括接收查询条件,其中,所述查询条件用于从数据库中查询数据;判断所述查询条件是否存在于查询结果文件表中,其中,所述查询结果文件表保存有从数据库中查询过数据的查询条件,以及所述查询条件对应的查询结果信息;在所述查询条件存在于所述查询结果文件表中的情况下,根据所述查询条件对应的所述查询结果信息获取查询结果。
2.根据权利要求1所述的方法,其特征在于,在判断所述查询条件是否存在于查询结果文件表中之后,还包括,在所述查询条件不存在于所述查询结果文件表中的情况下,根据所述查询条件对数据库进行查询;将所述查询条件及查询获得的查询结果信息添加到所述查询结果文件表中。
3.根据权利要求1所述的方法,其特征在于,所述查询结果信息包括以下至少之一保存所述查询结果文件的路径,所述查询结果被访问的次数,查询结果文件的更新时间。
4.根据权利要求3所述的方法,其特征在于,所述查询结果信息中还包括保存所述查询结果的文件的路径对应的超链接。
5.根据权利要求1至4中任一项所述的方法,其特征在于,还包括每隔预定的时间段根据存在于所述查询结果文件表中的查询条件对存在于所述查询结果文件表中的所述查询条件对应的所述查询结果进行更新。
6.根据权利要求5所述的方法,其特征在于,在预定的时间段根据存在于所述查询结果文件表中的查询条件对存在于所述查询结果文件表中的所述查询条件对应的所述查询结果进行更新包括在所述预定的时间段计算所述查询结果被访问的次数;按照被访问的次数从高到低的顺序,根据存在于所述查询结果文件表中的查询条件对存在于所述查询结果文件表中的所述查询条件对应的所述查询结果进行更新。
7.根据权利要求1所述的方法,其特征在于,根据所述查询条件对应的所述查询结果信息获取所述查询结果包括根据所述查询条件获取保存查询结果文件的路径,其中,所述查询结果保存于所述查询结果文件中;通过所述路径获取所述查询结果。
8.根据权利要求1所述的方法,其特征在于,根据所述查询条件对应的所述查询结果信息获取查询结果之后,还包括对所述查询结果进行显示。
9.一种数据查询装置,其特征在于,包括接收模块,用于接收查询条件,其中,所述查询条件用于从数据库中查询数据;判断模块,用于判断所述查询条件是否存在于查询结果文件表中,其中,所述查询结果文件表保存有从数据库中查询过数据的查询条件,以及所述查询条件对应的查询结果信息;获取模块,用于在所述查询条件存在于所述查询结果文件表中的情况下,根据所述查询条件对应的所述查询结果信息获取查询结果。
10.根据权利要求9所述的装置,其特征在于,还包括更新模块,用于每隔预定的时间段根据存在于所述查询结果文件表中的查询条件对存在于所述查询结果文件表中的所述查询条件对应的所述查询结果进行更新。
全文摘要
本发明公开了一种数据查询方法及装置,该方法采用接收查询条件,其中,该查询条件用于从数据库中查询数据;判断该查询条件是否存在于查询结果文件表中,其中,该查询结果文件表保存有从数据库中查询过数据的查询条件,以及该查询条件对应的查询结果信息;在该查询条件存在于该查询结果文件表中的情况下,根据该查询条件对应的该查询结果信息获取查询结果,通过本发明,解决了相关技术中从数据库中获取数据消耗时间长,消耗内存大,以及获取的数据与实际不符的技术问题,进而达到了可以对需要的数据快速查询的效果。
文档编号G06F17/30GK102542009SQ20111041703
公开日2012年7月4日 申请日期2011年12月14日 优先权日2011年12月14日
发明者陈琼春 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1