CN106407395A - 数据查询的处理方法及装置 - Google Patents
数据查询的处理方法及装置 Download PDFInfo
- Publication number
- CN106407395A CN106407395A CN201610833403.3A CN201610833403A CN106407395A CN 106407395 A CN106407395 A CN 106407395A CN 201610833403 A CN201610833403 A CN 201610833403A CN 106407395 A CN106407395 A CN 106407395A
- Authority
- CN
- China
- Prior art keywords
- data
- time
- moment
- data query
- limit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24554—Unary operations; Data partitioning operations
- G06F16/24556—Aggregation; Duplicate elimination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
- G06F16/244—Grouping and aggregation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Fuzzy Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种数据查询的处理方法及装置。所述方法包括:根据数据过滤条件和数据查询的起始时刻开始,从时序数据库中获取N个数据点,N为预设的软性限制阈值;根据数据查询的各聚合函数的采样时间的最小公倍数、第N个数据点对应的时刻以及起始时刻,获取限制时刻;当限制时刻位于结束时刻之前,以第N个数据点对应的时刻开始,根据数据过滤条件从时序数据库中继续获取限制时刻之前的剩余数据点;根据各聚合函数对起始时刻至限制时刻之间的所有数据点进行聚合处理,得到第一数据查询结果。通过采用本发明的技术方案,数据查询时所消耗的计算机资源更少,消耗的时间更短,且能够有效地提高数据查询的效率。
Description
【技术领域】
本发明涉及数据处理技术领域,尤其涉及一种数据查询的处理方法及装置。
【背景技术】
随着信息科技的发展,数据成为信息处理中一个非常重要的信息。且为了更加精准地对数据进行研究,对于带有时间戳的数据通常将时间戳与数据一起保存在时序数据库中。
传统的时序数据库是基于单机少量用户共同使用的,用户独占了整个时序数据库的资源,因此用户运行一些耗时长久、耗费资源的查询的话,影响并不大。但是随着各种云服务的出现,庞大的数据及对应的时间戳需要存储。基于云的时序数据库则是集群化的、多租户的,多个用户共享时序数据库的集群。如果用户运行了一些耗时、耗资源的查询的话,会对整个集群产生影响,从而对其他用户造成影响。为了有效的控制耗时查询对***的影响,现有的对时序数据库的查询一定都设置了限制(limit)的功能,能对查询的原始结果(聚合前的)或者最终结果(聚合后的)的数目进行限制。其中,与对查询的原始结果(聚合前的)进行限制相比,对查询的最终结果(聚合后的)进行限制的方案,更能保证聚合结果的正确性。
但是,现有的对查询的最终结果(聚合后的)进行限制的方案不能有效的控制耗时查询对***的影响。譬如:目前数据库中有1年的数据,总共1亿个数据点,查询的条件是将最终结果限制为1个数据点,并对原始结果每1年进行一次求和,那么得到的结果就是对1亿个数据点的求和,这将消耗***大量的计算资源,没有起到控制耗时数据查询的作用。
【发明内容】
本发明提供了一种数据查询的处理方法及装置,用于有效控制数据查询的耗时影响。
本发明提供一种数据查询的处理方法,所述方法包括:
根据数据过滤条件和数据查询的起始时刻开始,从时序数据库中获取N个数据点,所述N为预设的软性限制阈值;
根据数据查询的各聚合函数的采样时间的最小公倍数、第N个数据点对应的时刻以及所述起始时刻,获取限制时刻;
当所述限制时刻位于结束时刻之前,以所述第N个数据点对应的时刻开始,根据数据过滤条件从所述时序数据库中继续获取所述限制时刻之前的剩余数据点;
根据各所述聚合函数对所述起始时刻至所述限制时刻之间的所有数据点进行聚合处理,得到第一数据查询结果。
进一步可选地,如上所述的方法中,根据各所述聚合函数对所述限制时刻之前的所有数据点进行聚合处理,得到数据查询结果之后,所述方法还包括:
向用户反馈所述限制时刻以及对应的所述第一数据查询结果。
进一步可选地,如上所述的方法中,向所述用户反馈所述限制时刻以及对应的所述第一数据查询结果之后,还包括:
接收所述用户发送的携带所述限制时刻的继续查询指示消息;
将所述起始时刻的数值更新为所述限制时刻的数值,以继续进行数据查询处理。
进一步可选地,如上所述的方法中,根据数据查询的各聚合函数的采样时间的最小公倍数、第N个数据点对应的时刻以及所述起始时刻,获取限制时刻,具体包括:
从lcm_sample_time的倍数中,取比(soft_limit_time-start_time)大的最小的一个,然后加上start_time,等于limit_time;
其中,所述lcm_sample_time为数据查询的各所述聚合函数的采样时间的最小公倍数;所述soft_limit_time为所述第N个数据点对应的时刻;所述start_time为所述起始时刻;所述limit_time为所述限制时刻。
进一步可选地,如上所述的方法中,根据数据过滤条件和数据查询的起始时刻开始,从时序数据库中获取N个数据点之前,还包括:
获取所述用户指定的所述数据过滤条件、数据查询的各所述聚合函数的采样时间、数据查询的所述起始时刻和所述结束时刻。
进一步可选地,如上所述的方法中,根据数据查询的各聚合函数的采样时间的最小公倍数、第N个数据点对应的时刻以及所述起始时刻,获取限制时刻之前,所述方法包括:
从所述时序数据库中获取所述第N个数据点的时间戳;
将所述第N个数据点的时间戳作为所述第N个数据点对应的时刻。
进一步可选地,如上所述的方法中,当所述限制时刻位于所述结束时刻之后,还包括:
以所述第N个数据点对应的时刻开始,根据所述数据过滤条件从所述时序数据库中继续获取所述结束时刻之前的剩余数据点;
根据各所述聚合函数对所述起始时刻至所述结束时刻之间的所有数据点进行聚合处理,得到第二数据查询结果。
本发明还提供一种数据查询的处理装置,所述装置包括:
数据点获取模块,用于根据数据过滤条件和数据查询的起始时刻开始,从时序数据库中获取N个数据点,所述N为预设的软性限制阈值;
时刻获取模块,用于根据数据查询的各聚合函数的采样时间的最小公倍数、第N个数据点对应的时刻以及所述起始时刻,获取限制时刻;
所述数据点获取模块,还用于当所述限制时刻位于结束时刻之前,以所述第N个数据点对应的时刻开始,根据数据过滤条件从所述时序数据库中继续获取所述限制时刻之前的剩余数据点;
聚合处理模块,用于根据各所述聚合函数对所述起始时刻至所述限制时刻之间的所有数据点进行聚合处理,得到第一数据查询结果。
进一步可选地,如上所述的装置中,还包括:
发送模块,用于向用户反馈所述限制时刻以及对应的所述第一数据查询结果。
进一步可选地,如上所述的装置中,还包括:
接收模块,用于接收所述用户发送的携带所述限制时刻的继续查询指示消息;
更新模块,用于将所述起始时刻的数值更新为所述限制时刻的数值,以继续进行数据查询处理。
进一步可选地,如上所述的装置中,所述时刻获取模块,具体用于从lcm_sample_time的倍数中,取比(soft_limit_time-start_time)大的最小的一个,然后加上start_time,等于limit_time;
其中,所述lcm_sample_time为数据查询的各所述聚合函数的采样时间的最小公倍数;所述soft_limit_time为所述第N个数据点对应的时刻;所述start_time为所述起始时刻;所述limit_time为所述限制时刻。
进一步可选地,如上所述的装置中,还包括:参数获取模块,用于获取所述用户指定的所述数据过滤条件、数据查询的各所述聚合函数的采样时间、数据查询的所述起始时刻和所述结束时刻。
进一步可选地,如上所述的装置中,所述时刻获取模块,还用于从所述时序数据库中获取所述第N个数据点的时间戳;将所述第N个数据点的时间戳作为所述第N个数据点对应的时刻。
进一步可选地,如上所述的装置中,所述数据点获取模块,还用于当所述限制时刻位于所述结束时刻之后,以所述第N个数据点对应的时刻开始,根据所述数据过滤条件从所述时序数据库中继续获取所述结束时刻之前的剩余数据点;
所述聚合处理模块,还用于根据各所述聚合函数对所述起始时刻至所述结束时刻之间的所有数据点进行聚合处理,得到第二数据查询结果。
本发明的数据查询的处理方法及装置,由于采用限制时刻对数据查询,从而实现了对数据的分页查询,每一页的原始数据点是有限的,与现有技术的对查询的最终结果(聚合后的)进行限制的技术方案相比,相同的计算机资源处理一页数据所消耗的资源更少,消耗的时间更短,从而能够有效地提高数据查询的效率,真正实现控制数据查询对***的耗时影响,而且还可以提高用户的使用体验。而且,本发明的数据查询的处理方案,还可以有效地保证数据查询结果的准确性;另外,本发明的数据查询的处理方案,还具有较强的适用性,不仅可以适用于对查询的原始结果(聚合前的)进行限制的技术方案,还可以适用于对查询的最终结果(聚合后的)进行限制的技术方案。
【附图说明】
图1为本发明的数据查询的处理方法实施例的流程图。
图2为本发明的数据查询的处理装置实施例一的结构图。
图3为本发明的数据查询的处理装置实施例二的结构图。
【具体实施方式】
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
图1为本发明的数据查询的处理方法实施例的流程图。如图1所示,本实施例的数据查询的处理方法,具体可以包括如下步骤:
100、根据数据过滤条件和数据查询的起始时刻开始,从时序数据库中获取N个数据点;
本实施例的N为预设的软性限制阈值,N的数值为正整数。本实施例的N为时序数据库中预先设置的一个软性限制值,即表示根据软性限制值,从数据库中取数据点时,初步取N个数据点。具体地,从数据查询的起始时刻开始,根据数据过滤条件按顺序从时序数据库中获取N个数据点。本实施例中的预设的软性限制阈值N可以根据实际需求来设置,例如可以参考某时序数据库中一段历史数据查询的结果,选择最恰当的一个预设的软性限制阈值。本实施例的数据过滤条件具体可以限定查询的表、哪些字段满足什么条件等等,例如查询所有上海地区的温度、或者查询北京地区的全年的湿度或者全年每次降雨的降雨量等等数据。由于时序数据库中,可能包括一个或者多个地区的多方面的信息,根据数据过滤条件可以从时序数据库中获取符合数据过滤条件的数据点,然后按照数据查询的起始时刻以及N个数据点再次从符合数据过滤条件的数据点中获取N个符合条件的数据点。
101、根据数据查询的各聚合函数的采样时间的最小公倍数、第N个数据点对应的时刻以及起始时刻,获取限制时刻;
由于时序数据库中的数据量非常大,如果查询数据时直接获取时序数据库中的原始数据,获取的数据量非常大,有时候这些数据也不能真正反应数据的变化趋势。因此,本实施例中也设置有聚合函数对数据查询结果进行处理。具体地,聚合函数是对查询的原始结果进行聚合处理。且一次数据查询中聚合函数可以包括一个,两个或者多个。例如查询每5分钟的平均值;其中5分钟是采样时间范围,平均值是聚合函数;再例如:某次数据查询时的聚合函数可以包括对每五分钟内的数据点取平均,对每一小时的数据点求和;对应的聚合函数的采样时间分别为5分钟和60分钟;取平均和求和分别为聚合函数。
由于时序数据库中不仅存储有数据点的数值,同时还存储有每个数据点对应的时间戳,该时间戳即表示该数据点的时刻。因此该步骤101之前,还可以包括如下步骤:
(a1)从时序数据库中获取第N个数据点的时间戳;
(a2)将第N个数据点的时间戳作为第N个数据点对应的时刻。
根据数据查询的各聚合函数的采样时间的最小公倍数、第N个数据点对应的时刻以及起始时刻,
102、当限制时刻位于结束时刻之前,以第N个数据点对应的时刻开始,根据数据过滤条件从时序数据库中继续获取限制时刻之前的剩余数据点;
103、根据各聚合函数对起始时刻至限制时刻之间的所有数据点进行聚合处理,得到第一数据查询结果。
本实施例中起始时刻至限制时刻之间的所有数据点包括步骤101获取到的N个数据点、和步骤102中以第N个数据点对应的时刻开始,根据数据过滤条件从时序数据库中继续获取到的限制时刻之前的剩余数据点。
本实施例中,获取的限制时刻由于考虑到了数据查询的各聚合函数的采样时间的最小公倍数,所以可以保证在数据查询时,对原始数据点进行聚合处理的完整性,从而保证查询结果的准确性。例如聚合函数的采样时间分别为5分钟和60分钟的时候,可以选取数据查询的各聚合函数的采样时间的最小公倍数为60,这样,根据可以保证限制时刻之前获取的原始数据点均能够进行完整的聚合处理,而不会存在部分数据无法参加聚合处理,导致数据查询结果的错误。
本实施例中,以起始时刻到结束时刻之间的时间段较长为例,若数据查询时,直接获取起始时刻到结束时刻之间的数据点的话,数据查询过程非常耗时,且非常消耗计算机的资源。本实施例中通过设置限制时刻,该限制时刻位于起始时刻之后、结束时刻之前,在数据查询时,可以分页进行数据查询,例如本次数据查询仅查询该起始时刻至限制时刻之间的所有数据点,并按照各聚合函数对对起始时刻至限制时刻之间的所有数据点进行聚合处理,得到第一数据查询结果。本实施例的数据查询过程可以减少数据查询的耗时,节省计算机资源的消耗。用户在进行数据查询时,可以先为用户查询限制时刻之前的第一数据查询结果。
进一步可选地,在上述实施例的步骤103“根据各聚合函数对起始时刻至限制时刻之间的所有数据点进行聚合处理,得到第一数据查询结果”之后,本实施例的数据查询的处理方法,具体还可以包括:
向用户反馈限制时刻以及对应的第一数据查询结果。
本实施例中的向用户反馈限制时刻以及对应的第一数据查询结果,具体可以通过向用户所使用的设备(如移动终端或者个人计算机等)发送该限制时刻以及对应的第一数据查询结果,以供用户所使用的设备显示该限制时刻以及对应的第一数据查询结果,从而实现向用户反馈限制时刻以及对应的第一数据查询结果。
本实施例中,通过向用户反馈限制时刻以及对应的第一数据查询结果,以告知用户本次的数据查询结果为限制时刻之前的数据查询结果,如果用户需要继续进行数据查询,还可以继续指示数据查询的处理装置进行数据查询。因此,进一步可选地,步骤“向用户反馈限制时刻以及对应的第一数据查询结果”之后,还可以包括如下步骤:
(b1)接收用户发送的携带限制时刻的继续查询指示消息;
(b2)将起始时刻的数值更新为限制时刻的数值,以继续进行数据查询处理。
具体地,用户通过所使用的设备接收到限制时刻以及对应的第一数据查询结果之后,还需要进一步的数据查询结果,可以通过所使用的设备向数据查询的处理装置发送携带限制时刻的继续查询指示消息。这样,数据查询的处理装置接收到该继续查询指示消息之后,确定需要进一步进行数据查询,可以先将起始时刻的数值更新为限制时刻的数值,即将限制时刻作为新的起始时刻,继续按照上述实施例的步骤100-103进行下一轮的数据查询,依次类推,直到查询到结束时刻之前的所有数据。
采用本实施例的技术方案,当用户需要再次查询的时候,可以将该限制时刻作为起始时刻,继续进行数据查询,相当于将数据查询分为多页进行,同时可以避免用户进行一次数据查询,便进入无休止的等待,甚至让用户误以为网络故障,采用本实施例的技术方案,将数据查询分页进行,每一页的数据查询耗时较短,用户不用长时间等待,很快便可以获取到查询结果。且本市实施例的技术方案中,用户可以了解每一页数据查询的情况,当需要再次查询的时候,用户可以通过所使用的设备发送携带限制时刻的继续查询指示消息,便进入下一页的数据查询,用户全程参与数据查询的过程,极大地增强了用户的体验度。
进一步可选地,上述实施例的技术方案中,步骤101“根据数据查询的各聚合函数的采样时间的最小公倍数、第N个数据点对应的时刻以及起始时刻,获取限制时刻”,具体可以包括:从lcm_sample_time的倍数中,取比(soft_limit_time-start_time)大的最小的一个,然后加上start_time,等于limit_time;
其中,lcm_sample_time为数据查询的各聚合函数的采样时间的最小公倍数;soft_limit_time为第N个数据点对应的时刻;start_time为起始时刻;limit_time为限制时刻。
进一步可选地,上述实施例的技术方案中,步骤100“根据数据过滤条件和数据查询的起始时刻开始,从时序数据库中获取N个数据点“之前,还可以包括:获取用户指定的数据过滤条件、数据查询的各聚合函数的采样时间、数据查询的起始时刻、结束时刻。
本实施例中的数据过滤条件、数据查询的各聚合函数的采样时间、数据查询的起始时刻和结束时刻等这些参数信息均是由用户进行数据查询时指定的。具体地,这些信息可以携带在用户通过所使用的设备发送的数据查询请求中。例如数据查询的处理装置可以接收用户通过所使用的设备发送的携带数据过滤条件、数据查询的各聚合函数的采样时间、数据查询的起始时刻和结束时刻的数据查询请求,并从数据查询请求中获取数据过滤条件、数据查询的各聚合函数的采样时间、数据查询的起始时刻和结束时刻。或者用户在进行数据查询请求之前,可以先发送数据查询的这些参数信息,即数据过滤条件、数据查询的各聚合函数的采样时间、数据查询的起始时刻和结束时刻。
进一步可选地,上述实施例的技术方案均是在限制时刻位于结束时刻之前,当进行分页数据查询至最后一页时,对应的限制时刻位于结束时刻之后,此时,本实施例的数据查询的处理方法,还可以包括如下步骤:
(c1)以第N个数据点对应的时刻开始,根据数据过滤条件从时序数据库中继续获取结束时刻之前的剩余数据点;
(c2)根据各聚合函数对起始时刻至结束时刻之间的所有数据点进行聚合处理,得到第二数据查询结果。
由于限制时刻位于结束时刻之后,此时数据查询时获取的数据点只能获取到结束时刻,此时,以第N个数据点对应的时刻开始,根据数据过滤条件从时序数据库中继续获取结束时刻之前的剩余数据点,然后根据各聚合函数对起始时刻至结束时刻之间的所有数据点进行聚合处理,得到第二数据查询结果。
进一步可选地,上述实施例的步骤102“当限制时刻位于结束时刻之前,以第N个数据点对应的时刻开始,根据数据过滤条件从时序数据库中继续获取限制时刻之前的剩余数据点”之前,还可以包括判断限制时刻是否位于结束时刻之前,如果限制时刻位于结束时刻之前,执行步骤102。否则当限制时刻位于结束时刻之后,执行步骤(c1)-(c2)。
本实施例的数据查询的处理的方案,由于采用限制时刻对数据查询进行分页查询,每一页的原始数据点是有限的,与现有技术的对查询的最终结果(聚合后的)进行限制的技术方案相比,相同的计算机资源处理一页数据所消耗的计算机资源更少,消耗的时间更短,从而能够有效地提高数据查询的效率,真正实现控制数据查询对***的耗时影响,而且还可以提高用户的使用体验。
另外,现有技术中还提供了对查询的原始结果(聚合前的)进行限制的技术方案,例如具体地可以为:目前时序数据库中有10个数据点,每1秒有一个,查询的条件是,将原始结果限制为5个数据点,并对原始结果每10秒进行一次求和(采用聚合函数求和),那么得到的结果则变成了前5秒的和值,而不是10秒的和值,因此,现有的对查询的原始结果(聚合前的)进行限制的技术方案,容易导致数据查询结果错误。
本实施例的数据查询的处理方法,由于采用数据查询的各聚合函数的采样时间的最小公倍数设置限制时刻,可以保证最后一页之前的每一页的数据查询的原始数据点均能够对各个聚合函数进行完整的聚合处理,与现有技术的对原始结果(聚合前的)进行限制的技术方案相比,可以保证数据查询结果的准确性。
综上所述,本实施例的数据查询的处理方法,不仅可以适用于对查询的原始结果(聚合前的)进行限制的技术方案,还可以适用于对查询的最终结果(聚合后的)进行限制的技术方案,因此,本实施例的数据查询的处理方法,具有较强的适用性,且数据查询耗时非常短、数据查询效率非常高。
图2为本发明的数据查询的处理装置实施例一的结构图。如图2所示,本实施例的数据查询的处理装置,具体可以包括:数据点获取模块10、时刻获取模块11和聚合处理模块12。
其中数据点获取模块10用于根据数据过滤条件和数据查询的起始时刻开始,从时序数据库中获取N个数据点,N为预设的软性限制阈值;时刻获取模块11用于根据数据查询的各聚合函数的采样时间的最小公倍数、数据点获取模块10获取的第N个数据点对应的时刻以及起始时刻,获取限制时刻;数据点获取模块10还用于当时刻获取模块11获取的限制时刻位于结束时刻之前,以第N个数据点对应的时刻开始,根据数据过滤条件从时序数据库中继续获取限制时刻之前的剩余数据点;聚合处理模块12用于根据数据点获取模块10获取的各聚合函数对起始时刻至限制时刻之间的所有数据点进行聚合处理,得到第一数据查询结果。
本实施例的数据查询的处理装置,通过采用上述模块实现数据查询处理的实现原理以及技术效果与上述相关方法实施例的实现相同,详细可以参考上述相关方法实施例的记载,在此不再赘述。
图3为本发明的数据查询的处理装置实施例二的结构图。本实施例的数据处理查询装置在上述图2所示实施例的技术方案的基础上,进一步更加详细地介绍本发明的技术方案。
如图3所示,本实施例的数据处理查询装置中,还包括:发送模块13。发送模块13用于向用户反馈时刻获取模块11限制时刻以及对应的聚合处理模块12处理的第一数据查询结果。
进一步可选地,如图3所示,本实施例的数据处理查询装置中,还包括接收模块14和更新模块15。
其中接收模块14用于接收用户发送的携带限制时刻的继续查询指示消息;更新模块15用于根据接收模块14接收的继续查询指示消息,将起始时刻的数值更新为限制时刻的数值,以继续进行数据查询处理。即继续执行数据点获取模块10、时刻获取模块11和聚合处理模块12的功能。即更新模块1将起始时刻的数值更新为限制时刻的数值更新完之后,可以触发数据点获取模块10启动,以继续进行数据查询处理。
进一步可选地,本实施例的数据处理查询装置中,时刻获取模块11具体用于从lcm_sample_time的倍数中,取比(soft_limit_time-start_time)大的最小的一个,然后加上start_time,等于limit_time;
其中,lcm_sample_time为数据查询的各聚合函数的采样时间的最小公倍数;soft_limit_time为第N个数据点对应的时刻;start_time为起始时刻;limit_time为限制时刻。
进一步可选地,如图3所示,本实施例的数据处理查询装置中,还包括参数获取模块16。参数获取模块16用于获取用户指定的数据过滤条件、数据查询的各聚合函数的采样时间、数据查询的起始时刻和结束时刻。
对应地,数据点获取模块10用于根据参数获取模块16获取的数据过滤条件和数据查询的起始时刻开始,从时序数据库中获取N个数据点,N为预设的软性限制阈值。时刻获取模块11用于根据参数获取模块16获取的数据查询的各聚合函数的采样时间的最小公倍数、第N个数据点对应的时刻以及参数获取模块16获取的起始时刻,获取限制时刻。
进一步可选地,本实施例的数据处理查询装置中,时刻获取模块11还用于从时序数据库中获取第N个数据点的时间戳;将第N个数据点的时间戳作为第N个数据点对应的时刻。
进一步可选地,本实施例的数据处理查询装置中,数据点获取模块10还用于当限制时刻位于结束时刻之后,以第N个数据点对应的时刻开始,根据数据过滤条件从时序数据库中继续获取结束时刻之前的剩余数据点;
聚合处理模块12还用于根据各聚合函数对起始时刻至结束时刻之间的所有数据点进行聚合处理,得到第二数据查询结果。
本实施例的数据查询的处理装置,通过采用上述模块实现数据查询处理的实现原理以及技术效果与上述相关方法实施例的实现相同,详细可以参考上述相关方法实施例的记载,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (14)
1.一种数据查询的处理方法,其特征在于,所述方法包括:
根据数据过滤条件和数据查询的起始时刻开始,从时序数据库中获取N个数据点,所述N为预设的软性限制阈值;
根据数据查询的各聚合函数的采样时间的最小公倍数、第N个数据点对应的时刻以及所述起始时刻,获取限制时刻;
当所述限制时刻位于结束时刻之前,以所述第N个数据点对应的时刻开始,根据数据过滤条件从所述时序数据库中继续获取所述限制时刻之前的剩余数据点;
根据各所述聚合函数对所述起始时刻至所述限制时刻之间的所有数据点进行聚合处理,得到第一数据查询结果。
2.根据权利要求1所述的方法,其特征在于,根据各所述聚合函数对所述限制时刻之前的所有数据点进行聚合处理,得到数据查询结果之后,所述方法还包括:
向用户反馈所述限制时刻以及对应的所述第一数据查询结果。
3.根据权利要求2所述的方法,其特征在于,向所述用户反馈所述限制时刻以及对应的所述第一数据查询结果之后,所述方法还包括:
接收所述用户发送的携带所述限制时刻的继续查询指示消息;
将所述起始时刻的数值更新为所述限制时刻的数值,以继续进行数据查询处理。
4.根据权利要求1所述的方法,其特征在于,根据数据查询的各聚合函数的采样时间的最小公倍数、第N个数据点对应的时刻以及所述起始时刻,获取限制时刻,具体包括:
从lcm_sample_time的倍数中,取比(soft_limit_time-start_time)大的最小的一个,然后加上start_time,等于limit_time;
其中,所述lcm_sample_time为数据查询的各所述聚合函数的采样时间的最小公倍数;所述soft_limit_time为所述第N个数据点对应的时刻;所述start_time为所述起始时刻;所述limit_time为所述限制时刻。
5.根据权利要求1-4任一所述的方法,其特征在于,根据数据过滤条件和数据查询的起始时刻开始,从时序数据库中获取N个数据点之前,所述方法还包括:
获取所述用户指定的所述数据过滤条件、数据查询的各所述聚合函数的采样时间、数据查询的所述起始时刻和所述结束时刻。
6.根据权利要求1-4任一所述的方法,其特征在于,根据数据查询的各聚合函数的采样时间的最小公倍数、第N个数据点对应的时刻以及所述起始时刻,获取限制时刻之前,所述方法包括:
从所述时序数据库中获取所述第N个数据点的时间戳;
将所述第N个数据点的时间戳作为所述第N个数据点对应的时刻。
7.根据权利要求1-4任一所述的方法,其特征在于,当所述限制时刻位于所述结束时刻之后,所述方法还包括:
以所述第N个数据点对应的时刻开始,根据所述数据过滤条件从所述时序数据库中继续获取所述结束时刻之前的剩余数据点;
根据各所述聚合函数对所述起始时刻至所述结束时刻之间的所有数据点进行聚合处理,得到第二数据查询结果。
8.一种数据查询的处理装置,其特征在于,所述装置包括:
数据点获取模块,用于根据数据过滤条件和数据查询的起始时刻开始,从时序数据库中获取N个数据点,所述N为预设的软性限制阈值;
时刻获取模块,用于根据数据查询的各聚合函数的采样时间的最小公倍数、第N个数据点对应的时刻以及所述起始时刻,获取限制时刻;
所述数据点获取模块,还用于当所述限制时刻位于结束时刻之前,以所述第N个数据点对应的时刻开始,根据数据过滤条件从所述时序数据库中继续获取所述限制时刻之前的剩余数据点;
聚合处理模块,用于根据各所述聚合函数对所述起始时刻至所述限制时刻之间的所有数据点进行聚合处理,得到第一数据查询结果。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
发送模块,用于向用户反馈所述限制时刻以及对应的所述第一数据查询结果。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
接收模块,用于接收所述用户发送的携带所述限制时刻的继续查询指示消息;
更新模块,用于将所述起始时刻的数值更新为所述限制时刻的数值,以继续进行数据查询处理。
11.根据权利要求8所述的装置,其特征在于,所述时刻获取模块,具体用于从lcm_sample_time的倍数中,取比(soft_limit_time-start_time)大的最小的一个,然后加上start_time,等于limit_time;
其中,所述lcm_sample_time为数据查询的各所述聚合函数的采样时间的最小公倍数;所述soft_limit_time为所述第N个数据点对应的时刻;所述start_time为所述起始时刻;所述limit_time为所述限制时刻。
12.根据权利要求8-11任一所述的装置,其特征在于,还包括:
参数获取模块,用于获取所述用户指定的所述数据过滤条件、数据查询的各所述聚合函数的采样时间、数据查询的所述起始时刻和所述结束时刻。
13.根据权利要求8-11任一所述的装置,其特征在于,所述时刻获取模块,还用于从所述时序数据库中获取所述第N个数据点的时间戳;将所述第N个数据点的时间戳作为所述第N个数据点对应的时刻。
14.根据权利要求8-11任一所述的装置,其特征在于:
所述数据点获取模块,还用于当所述限制时刻位于所述结束时刻之后,以所述第N个数据点对应的时刻开始,根据所述数据过滤条件从所述时序数据库中继续获取所述结束时刻之前的剩余数据点;
所述聚合处理模块,还用于根据各所述聚合函数对所述起始时刻至所述结束时刻之间的所有数据点进行聚合处理,得到第二数据查询结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610833403.3A CN106407395B (zh) | 2016-09-19 | 2016-09-19 | 数据查询的处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610833403.3A CN106407395B (zh) | 2016-09-19 | 2016-09-19 | 数据查询的处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106407395A true CN106407395A (zh) | 2017-02-15 |
CN106407395B CN106407395B (zh) | 2019-09-20 |
Family
ID=57997940
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610833403.3A Active CN106407395B (zh) | 2016-09-19 | 2016-09-19 | 数据查询的处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106407395B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107220283A (zh) * | 2017-04-21 | 2017-09-29 | 东软集团股份有限公司 | 数据处理方法、装置、存储介质及电子设备 |
CN108268589A (zh) * | 2017-12-05 | 2018-07-10 | 北京百度网讯科技有限公司 | 时序数据的聚合查询方法、装置、计算机设备及可读介质 |
CN109164980A (zh) * | 2018-08-03 | 2019-01-08 | 北京涛思数据科技有限公司 | 一种时序数据的聚合优化处理方法 |
WO2019114754A1 (zh) * | 2017-12-12 | 2019-06-20 | 清华大学 | 一种列式存储下多时间序列的连接查询方法及*** |
CN110377642A (zh) * | 2019-07-24 | 2019-10-25 | 杭州太尼科技有限公司 | 一种快速获取有序序列数据的装置 |
CN111475526A (zh) * | 2020-03-10 | 2020-07-31 | 平安科技(深圳)有限公司 | 基于oracle数据的时序数据转换方法、及其相关设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130066674A1 (en) * | 2011-09-12 | 2013-03-14 | Microsoft Corporation | Marketplace for timely event data distribution |
CN103281343A (zh) * | 2013-01-07 | 2013-09-04 | 广西电网公司 | 一种基于代理机制的通用历史数据服务的实现方法 |
CN103605805A (zh) * | 2013-12-09 | 2014-02-26 | 冶金自动化研究设计院 | 一种海量时序数据的存储方法 |
-
2016
- 2016-09-19 CN CN201610833403.3A patent/CN106407395B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130066674A1 (en) * | 2011-09-12 | 2013-03-14 | Microsoft Corporation | Marketplace for timely event data distribution |
CN103281343A (zh) * | 2013-01-07 | 2013-09-04 | 广西电网公司 | 一种基于代理机制的通用历史数据服务的实现方法 |
CN103605805A (zh) * | 2013-12-09 | 2014-02-26 | 冶金自动化研究设计院 | 一种海量时序数据的存储方法 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107220283A (zh) * | 2017-04-21 | 2017-09-29 | 东软集团股份有限公司 | 数据处理方法、装置、存储介质及电子设备 |
CN107220283B (zh) * | 2017-04-21 | 2019-11-08 | 东软集团股份有限公司 | 数据处理方法、装置、存储介质及电子设备 |
CN108268589A (zh) * | 2017-12-05 | 2018-07-10 | 北京百度网讯科技有限公司 | 时序数据的聚合查询方法、装置、计算机设备及可读介质 |
WO2019114754A1 (zh) * | 2017-12-12 | 2019-06-20 | 清华大学 | 一种列式存储下多时间序列的连接查询方法及*** |
CN109164980A (zh) * | 2018-08-03 | 2019-01-08 | 北京涛思数据科技有限公司 | 一种时序数据的聚合优化处理方法 |
WO2020024799A1 (zh) * | 2018-08-03 | 2020-02-06 | 北京涛思数据科技有限公司 | 一种时序数据的聚合优化处理方法 |
US20210333994A1 (en) * | 2018-08-03 | 2021-10-28 | Taos Data | Method for aggregation optimization of time series data |
US11714554B2 (en) * | 2018-08-03 | 2023-08-01 | Taos Data | Method for aggregation optimization of time series data |
CN109164980B (zh) * | 2018-08-03 | 2024-02-02 | 北京涛思数据科技有限公司 | 一种时序数据的聚合优化处理方法 |
CN110377642A (zh) * | 2019-07-24 | 2019-10-25 | 杭州太尼科技有限公司 | 一种快速获取有序序列数据的装置 |
CN111475526A (zh) * | 2020-03-10 | 2020-07-31 | 平安科技(深圳)有限公司 | 基于oracle数据的时序数据转换方法、及其相关设备 |
CN111475526B (zh) * | 2020-03-10 | 2024-05-28 | 平安科技(深圳)有限公司 | 基于oracle数据的时序数据转换方法、及其相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN106407395B (zh) | 2019-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106407395A (zh) | 数据查询的处理方法及装置 | |
CN105049268B (zh) | 分布式计算资源分配***和任务处理方法 | |
US10402746B2 (en) | Computing instance launch time | |
CN109032796B (zh) | 一种数据处理方法和装置 | |
EP3191948A1 (en) | Computing instance launch time | |
CN110661829B (zh) | 文件下载方法及装置、客户端和计算机可读存储介质 | |
CN107153643B (zh) | 数据表连接方法及装置 | |
CN112799596A (zh) | 一种存储资源的扩容控制方法、装置及电子设备 | |
CN108520401B (zh) | 用户名单管理方法、装置、平台及存储介质 | |
CN107193749B (zh) | 测试方法、装置及设备 | |
CN108241693B (zh) | 同步数据的方法和装置 | |
CN106156210B (zh) | 一种确定应用标识匹配列表的方法和装置 | |
CN116976457A (zh) | 模型加载方法、推理***、装置和计算机设备 | |
CN114756527A (zh) | Redis集群的扩容方法、装置、电子设备和存储介质 | |
CN113360689B (zh) | 图像检索***、方法、相关装置及计算机程序产品 | |
CN108228334B (zh) | 一种容器集群扩展的方法和装置 | |
CN114296965A (zh) | 特征检索方法、装置、电子设备及计算机存储介质 | |
CN113901076A (zh) | 数据同步方法、装置、服务器及存储介质 | |
CN114138786A (zh) | 一种联机交易消息去重方法、装置、介质、产品和设备 | |
CN111240577A (zh) | 基于mpp数据库的数据多分片存储方法及装置 | |
CN110420458A (zh) | 游戏请求处理方法及装置 | |
CN114884946B (zh) | 基于人工智能的异地多活实现方法及相关设备 | |
CN116821250B (zh) | 一种分布式图数据处理方法和*** | |
CN109542601B (zh) | 策略编译方法、装置、电子设备及计算机存储介质 | |
CN111131361B (zh) | 集群查询***中连接节点的处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |