一种数据查询方法及系统技术方案

技术编号:17939673 阅读:31 留言:0更新日期:2018-05-15 20:05
本发明专利技术实施例提供一种数据查询方法及系统。所述方法包括:获取用户的多个查询条件,查询条件包括实体、时间和指标;根据实体和时间从数据库中查询对应的网元数据,并将网元数据存储在第一临时表中;构建网元数据与时间条件的关联关系,将获得的第一关联结果数据存入第二临时表中;将第一关联结果数据与指标表进行关联,并将获得的第二关联结果数据存入第三临时表中,以完成数据查询。所述系统用于执行所述方法。本发明专利技术实施例通过将查询到的网元数据存储在第一临时表、将网元数据与时间条件的关联关系存储在第二临时表,根据第二临时表和指标表获得第二关联结果数据,解决了现有技术中各查询条件的业务逻辑耦合严重的问题,提高了数据查询的效率。

A data query method and system

The embodiment of the invention provides a data query method and system. The methods described include: obtaining multiple query conditions of the user, query conditions including entity, time and index, query the corresponding net data from the database according to the entity and time, and store the network element data in the first temporary table, and build the relationship between the network element data and the time condition, and the first correlation results will be obtained. The data is stored in the second temporary table; the first association result data is associated with the index table, and the obtained second associated result data is stored in the third temporary table to complete the data query. The system is used to execute the method described. By storing the querying network element data in the first temporary table, storing the connection relationship between the network element data and the time condition in the second temporary table, the embodiment of the invention obtains the second associated result data according to the second temporary table and the index table, and solves the problem of the serious business logic coupling of all the query conditions in the existing technology. The efficiency of data query is higher.

【技术实现步骤摘要】
一种数据查询方法及系统
本专利技术实施例涉及数据库查询
,尤其涉及一种数据查询方法及系统。
技术介绍
在信息技术高速发展和普及的今天,网络通信作为信息传输的主要通道已经渗透到每一个行业和业务领域,成为重要的生产力因素。网络通信服务是由大量的底层网络设备比如交换机、路由器等提供的,这些网络设备的工作状态的好坏直接影响网络通信服务质量。所以为了提升网络服务质量或者其他业务用途,需要对底层网络设备性能进行监控、分析。为达此目的,往往需要对在网设备的历史性能数据进行大跨度的查询。基于Oracle数据库的查询服务的查询效率则显得格外重要。现有技术中数据的查询和补充完全基于SQL,导致其结构复杂难以维护扩展,并在某些场景下效率低下。原有逻辑主要在一次事务中,分别以三个基础SQL构建过滤网元数据集、基准实体时间数据集、指标数据。但在网元过滤、属性展示、聚合等场景下,由于各SQL的业务逻辑耦合严重,导致了不必要的数据操作。并且原有的处理流程类进行了简单的事务控制和结果数据标准化的操作,完全依靠数据库进行查询和数据完善,未发挥代码的灵活优势,从而导致查询效率低下的问题。
技术实现思路
针对现有技术存在的问题,本专利技术实施例提供一种数据查询方法及系统。第一方面,本专利技术实施例提供一种数据查询方法,包括:S1、获取用户的多个查询条件,每一所述查询条件包括实体、时间和指标;S2、根据每一所述查询条件对应的实体和所述时间从数据库中查询网元数据,并将所述网元数据存储在第一临时表中;S3、构建所述网元数据与时间条件的关联关系获得第一关联结果数据,将所述第一关联结果数据存入第二临时表中;S4、将所述第一关联结果数据与指标表进行关联,获得第二关联结果数据,将所述第二关联结果数据存入第三临时表中,以完成数据查询。第二方面,本专利技术实施例提供一种数据查询系统,包括:获取模块,用于获取用户的多个查询条件,每一所述查询条件包括实体、时间和指标;查询模块,用于根据每一所述查询条件对应的实体和所述时间从数据库中查询网元数据,并将所述网元数据存储在第一临时表中;第一关联模块,用于构建所述网元数据与时间条件的关联关系获得第一关联结果数据,将所述第一关联结果数据存入第二临时表中;第二关联模块,用于将所述第一关联结果数据与指标表进行关联,获得第二关联结果数据,将所述第二关联结果数据存入第三临时表中,以完成数据查询。第三方面,本专利技术实施例提供一种电子设备,包括:处理器、存储器和总线,其中,所述处理器和所述存储器通过所述总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行第一方面的方法步骤。第四方面,本专利技术实施例提供一种非暂态计算机可读存储介质,包括:所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行第一方面的方法步骤。本专利技术实施例提供的一种数据查询方法及系统,通过将查询到的网元数据存储在第一临时表、将网元数据与时间条件的关联关系存储在第二临时表,根据第二临时表和指标表获得第二关联结果数据,解决了现有技术中各查询条件的业务逻辑耦合严重的问题,提高了数据查询的效率。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种数据查询方法流程示意图;图2为本专利技术实施例提供的一种数据查询系统结构示意图;图3为本专利技术实施例提供的电子设备实体结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。图1为本专利技术实施例提供的一种数据查询方法流程示意图,如图1所示,所述方法,包括:S1、获取用户的多个查询条件,每一所述查询条件包括实体、时间和指标;具体的,用户通过查询条件对数据库进行数据查询操作,查询条件中包括了要查询的条件,可以是要查询某个时间段内的某些实体网元的指标数据,且,查询条件可以为SQL查询条件。且获取到的多个查询条件查询的结果的组合是用户最终要查询的数据。其中,每一条查询条件中都包括有实体、时间和指标。实体是该条查询条件中要查询的网元,可以是实体名称,也可以是实体ID;时间是该条查询条件中要查询的时间范围,可以是某个时间点,也可以是某一时间段;指标是该条查询条件中要查询的网元对应的指标。S2、根据每一所述查询条件对应的实体和所述时间从数据库中查询网元数据,并将所述网元数据存储在第一临时表中;具体的,首先需要构建网元数据,该步骤中将按天查询出查询条件中的对应时间和实体的带版本的网元数据,将获取到的网元数据存储到第一临时表中。例如:查询条件中实体为A,时间为10月1日-10月3日,因此,获取10月1日中实体A对应的网元数据、10月2日中实体A对应的网元数据和10月3日中实体A对应的网元数据,然后,分别将10月1日-10月3日获取到的网元数据存储到第一临时表中。S3、构建所述网元数据与时间条件的关联关系获得第一关联结果数据,将所述第一关联结果数据存入第二临时表中;具体的,构建第一临时表中的网元数据与时间条件之间的关联关系,获得第一关联结果数据,其中,主要会处理不同粒度的区分以及工作日/休息日等场景,时间条件是用户预先设置的,可以是工作日中工作时间段内,且以小时为粒度等。将获得到的第一关联结果数据存储到第二临时表中。例如:时间条件为以小时为粒度,获取10月1日到10月3日中每天9:00-17:00各个网元的网元数据,此时,可以获取到每一天中某个网元在各小时粒度中对应的数据。应当说明的是,第二临时表中的字段可以包括网元名称、时间以及该网元对应的指标。S4、将所述第一关联结果数据与指标表进行关联,获得第二关联结果数据,将所述第二关联结果数据存入第三临时表中,以完成数据查询。具体的,将第二临时表中的第一关联结果数据与指标表进行关联,获得第二关联结果数据,应当说明的是,指标表中包括了各个网元在各时间点中各个指标对应的指标值,因此,第二关联结果数据中包括网元名称、时间、网元对应的指标以及各个指标对应的指标值。将获得到的第二关联结果数据存储到第三临时表中,第二关联结果数据就是用户所要查询的结果数据。还应当说明的是,第一临时表、第二临时表和第三临时表可以是动态建立也可以是预先建立,在查询过程中,还可能创建其他临时表,所谓动态建表就是在查询过程中,需要使用临时表时临时创建,之后在进行数据的插入。所谓预先建立是预先创建N张固定预留字段的临时表,通过临时表池进行统一调配管理,在使用时,直接向表池申请临时表,使用结束后归还。预先建表的优势在于降低了查询时的开销,并且将数据库的表数量维持在一个稳定可控的水平。而动态建表的优势在于实现简单,代码逻辑执行相对稳定,不会受维护机制限制导致异常。两者相互辅助,在表池中的表不可用时本文档来自技高网...
一种数据查询方法及系统

【技术保护点】
一种数据查询方法,其特征在于,包括:S1、获取用户的多个查询条件,每一所述查询条件包括实体、时间和指标;S2、根据每一所述查询条件对应的实体和所述时间从数据库中查询网元数据,并将所述网元数据存储在第一临时表中;S3、构建所述网元数据与时间条件的关联关系获得第一关联结果数据,将所述第一关联结果数据存入第二临时表中;S4、将所述第一关联结果数据与指标表进行关联,获得第二关联结果数据,将所述第二关联结果数据存入第三临时表中,以完成数据查询。

【技术特征摘要】
1.一种数据查询方法,其特征在于,包括:S1、获取用户的多个查询条件,每一所述查询条件包括实体、时间和指标;S2、根据每一所述查询条件对应的实体和所述时间从数据库中查询网元数据,并将所述网元数据存储在第一临时表中;S3、构建所述网元数据与时间条件的关联关系获得第一关联结果数据,将所述第一关联结果数据存入第二临时表中;S4、将所述第一关联结果数据与指标表进行关联,获得第二关联结果数据,将所述第二关联结果数据存入第三临时表中,以完成数据查询。2.根据权利要求1所述的方法,其特征在于,所述将所述网元数据存储在第一数据表中,包括:根据用户配置的过滤规则对所述网元数据进行过滤,并将过滤后的网元数据存储在第一数据表中。3.根据权利要求1所述的方法,其特征在于,所述方法,还包括:预先创建索引表,将所述第一临时表对应的第一临时表信息、所述第二临时表对应的第二临时表信息和所述第三临时表对应的第三临时表信息插入到所述索引表中。4.根据权利要求1所述的方法,其特征在于,在S1之前,所述方法,还包括:获取用户的查询条件,根据所述查询条件计算对应的哈希值;若根据所述哈希值判断获知存在可复用的所述第三临时表,则直接复用所述可复用的第三临时表;若根据所述哈希值判断获知不存在可复用的所述第一临时表、所述第二临时表和所述第三临时表,则执行S1。5.根据权利要求4所述的方法,其特征在于,所述若根据所述哈希值判断获知不存在可复用的所述第一临时表、所述第二临时表和所述第三临时表,则执行S1,包括:若根据所述哈希值判断获知不存在可复用的所述第一...

【专利技术属性】
技术研发人员:张希琛
申请(专利权)人:北京天元创新科技有限公司
类型:发明
国别省市:北京,11

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

1