管理时间序列数据库的方法和装置制造方法

文档序号:6492153阅读:109来源:国知局
管理时间序列数据库的方法和装置制造方法
【专利摘要】本发明提供了管理时间序列数据库的方法和装置。具体地,提供了针对时间序列数据库中的时间序列建立索引的方法,包括:将时间序列数据库中的时间序列划分为多个子序列;针对多个子序列建立空间索引,空间索引定义多个子序列中的子序列在时间序列中的空间位置;以及针对多个子序列建立内容索引,内容索引定义多个子序列中的子序列的内容范围。还提供了在时间序列数据库中进行查询的方法,包括:基于空间索引,在时间序列数据库中的时间序列中搜索与一查询序列相对应的空间位置;基于内容索引,获取在所搜索的空间位置处的子序列的内容范围;以及响应于所获取的内容范围与查询序列的内容范围相一致,输出所搜索的空间位置处的子序列。
【专利说明】管理时间序列数据库的方法和装置
【技术领域】
[0001]本发明的各实施方式涉及数据库管理,更具体地,涉及用于管理时间序列数据库(Time Series Database)的方法和装置。
【背景技术】
[0002]随着计算机、数据通信以及实时监控等技术的发展,时间序列数据库已经被广泛应用于例如设备监控、生产线管理、金融分析等诸多方面。时间序列(Time Sequence)是指按照时间顺序排列的测量值的集合,在此可以将存储测量值的节点称为数据点(DataPoint)或者数据事件(Data Event)。时间序列数据库是指用于存储这些测量值的数据库。测量值可以包括各种数据,例如在监控桥梁安全性的应用环境中,被采集数据可以包括由特定传感器采集的压力数据和/或压强数据;在天气预报应用环境中,被采集数据可以包括温度、湿度、压力、风力(例如,包括大小和方向),等等。
[0003]相似性搜索(Similarity Search)是指在时间序列数据库中发现与给定的序列模式(Sequence Pattern)相类似的序列。时间序列数据库通常包括海量数据,并且不断地由新近的测量值来实时地更新该数据库。例如,在监控桥梁安全性的应用环境中,在桥梁上可能部署有数万个传感器分别用于实时地测量温度、湿度、压力、风力。当以例如I秒甚至更高的频率来更新数据库时,将产生巨大的数据量。因而,如何针对其中数据量急速膨胀的时间序列数据库进行相似性搜索,成为目前数据库领域的一个研究热点。
[0004]目前已经开发出用于加速相似性搜索的技术方案,这些技术方案提出了通过首先返回候选集,继而通过在时间序列数据库中验证候选集中的候选项来缩短查询时间。然而候选集通常包括过多的候选项,逐一验证候选项这一步骤将会产生大量的数据I/o开销并占用大量时间。
[0005]随着时间序列数据库在各行各业中的广泛应用,数据库的提供者、管理者和终端用户都越来越关注于数据查询的效率。因而,如何进一步降低相似性搜索中对于各种资源的开销成为一项亟待解决的问题。

【发明内容】

[0006]因而,期望开发一种能够在时间序列数据库中进行快速查询的技术方案,期望该技术方案能够降低对时间序列数据库进行查询时涉及的各种资源的占用,进而提高相似性搜索的效率。进一步,还期望可以在尽量不改变现有时间序列数据库的情况下实现该技术方案。
[0007]在本发明的一个方面中,提供了 一种针对时间序列数据库中的时间序列建立索弓I的方法,包括:基于滑动窗口将时间序列数据库中的时间序列划分为多个子序列;针对多个子序列建立空间索引,空间索引用于定义多个子序列中的子序列在时间序列中的空间位置;以及针对多个子序列建立内容索引,内容索引用于定义多个子序列中的子序列的内容范围。[0008]在本发明的一个方面中,针对多个子序列建立内容索引包括:将多个子序列中的子序列映射至与子序列的内容范围相对应的符号值。
[0009]在本发明的一个方面中,还包括:将与多个子序列中的子序列相对应的符号值存储为与空间索引相关联的元数据。
[0010]在本发明的一个方面中,提供了一种在时间序列数据库中进行查询的方法,包括:基于针对时间序列数据库中的时间序列的空间索引,在时间序列数据库中的时间序列中搜索与一查询序列相对应的空间位置;基于针对时间序列数据库中的时间序列的内容索引,获取在所搜索的空间位置处的子序列的内容范围;以及响应于所获取的内容范围与查询序列的内容范围相一致,输出所搜索的空间位置处的子序列,其中空间索引用于定义时间序列的子序列在时间序列中的空间位置,内容索引用于定义时间序列的子序列的内容范围。
[0011]在本发明的一个方面中,内容索引包括:与时间序列的子序列的内容范围相对应的符号值。
[0012]在本发明的一个方面中,与多个子序列中的子序列相对应的符号值被存储为与空间索引相关联的元数据。
[0013]在本发明的一个方面中,还提供了用于针对时间序列数据库中的时间序列建立索引的装置、在时间序列数据库中进行查询的装置、以及管理时间序列数据库的方法和装置。
[0014]采用本发明所述的方法和装置,可以在尽可能地少改变现有时间序列数据库配置的情况下,针对时间序列数据库中的时间序列建立索引,并且还可以基于该索引来降低相似性搜索的时间开销,进而提高数据查询的效率。
【专利附图】

【附图说明】
[0015]通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其他目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
[0016]图1示意性示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图;
[0017]图2示意性示出了在时间序列数据库中进行相似性搜索的过程的图示;
[0018]图3示意性示出了根据本发明一个实施方式的、用于管理时间序列数据库的技术方案的架构图;
[0019]图4A示意性示出了根据本发明一个实施方式的针对时间序列数据库中的时间序列建立索引的方法的流程图;图48示意性示出了根据本发明一个实施方式的在时间序列数据库中进行查询的方法的流程图;
[0020]图5A和5B分别示意性示出了根据本发明一个实施方式的时间序列数据库中的数据点/数据事件的图示;
[0021]图6示意性示出了根据本发明一个实施方式的建立空间索引和内容索引的技术方案的架构图;
[0022]图7示意性示出了根据本发明一个实施方式的获得查询结果的方法的流程图;以及
[0023]图8A示意性示出了根据本发明一个实施方式的针对时间序列数据库中的时间序列建立索引的装置的架构图;图88示意性示出了根据本发明一个实施方式的在时间序列数据库中进行查询的装置的架构图。
【具体实施方式】
[0024]下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
[0025]所属【技术领域】的技术人员知道,本发明可以实现为系统、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:可以是完全的硬件、也可以是完全的软件(包括固件、驻留软件、微代码等),还可以是硬件和软件结合的形式,本文一般称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
[0026]可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是一但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPR0M或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0027]计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0028]计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括一但不限于一无线、电线、光缆、RF等等,或者上述的任意合适的组合。
[0029]可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言-诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言-诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络一包括局域网(LAN)或广域网(WAN)-连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0030]下面将参照本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而生产出一种机器,这些计算机程序指令通过计算机或其他可编程数据处理装置执行,产生了实现流程图和/或框图中的方框中规定的功能/操作的装置。
[0031]也可以把这些计算机程序指令存储在能使得计算机或其他可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令就产生出一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置(instructionmeans)的制造品(manufacture)。
[0032]也可以把计算机程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其他可编程装置上执行的指令能够提供实现流程图和/或框图中的方框中规定的功能/操作的过程。
[0033]图1示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图。图1显示的计算机系统/服务器12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
[0034]如图1所示,计算机系统/服务器12以通用计算设备的形式表现。计算机系统/服务器12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
[0035]总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
[0036]计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
[0037]系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM) 30和/或高速缓存存储器32。计算机系统/服务器12可以进一步包括其他可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图1未显示,通常称为“硬盘驱动器”)。尽管图1中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如⑶-ROM,DVD-ROM或者其他光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序严品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
[0038]具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其他程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
[0039]计算机系统/服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其他计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口 22进行。并且,计算机系统/服务器12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机系统/服务器12的其他模块通信。应当明白,尽管图中未示出,可以结合计算机系统/服务器12使用其他硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
[0040]应当注意,一个或者多个虚拟机可以运行在上文所述的一个或者多个计算机系统/服务器上,单一的虚拟机在物理上可以分布于一个或者多个计算机系统/服务器上。参见图1示出的计算机系统/服务器仅仅是可以用于实现本发明所述的方法和装置的示例,随着硬件技术和虚拟机技术的发展,本发明的方法和装置还可以在具有数据处理能力的其他设备上实现。
[0041]图2示意性示出了在时间序列数据库中进行相似性搜索的过程的图示200。图2示出了时间序列数据库中的一个时间序列220,并且在相似性搜索中所涉及的查询序列由附图标记210所示。在此上下文中,相似性搜索是指从时间序列220中搜索与查询序列210相似的子序列。例如,返回的备选子序列的集合可以包括三个子序列,分别示出为子序列A、子序列B和子序列C。由于图2中示出的时间序列的长度较小,查询结果仅返回3个子序列。当针对较大或者超大的时间序列进行搜索时(例如,在包括近5年的气象数据的时间序列数据库中搜索特定的查询序列),很可能会返回数万的候选子序列。
[0042]目前已经开发出了可以输出更为准确的候选子序列的技术方案,这些技术方案可以将时间序列数据库中的数据从时间域映射到频率域,并基于频率域中的特征频率建立空间索引的方法,可以通过考虑主要频率而忽略不太重要的频率的方法,来简化在时间序列数据库中进行相似性搜索的复杂性,进而降低相似性搜索的各种开销。然而,由于这些解决方案仅考虑了时间序列数据库中的空间关系,所输出的候选集仍然是远远大于真正满足相似性条件的子序列集合的超集(Super Set),效果并不理想。因而,期望提出一种能够改进仅使用空间索引管理时间序列数据库的技术方案,并期望该技术方案可以考虑到数据库其他方面的特征进而加快查询速度。
[0043]在本发明的一个实施方式中,提出了一种针对时间序列数据库建立双层索引(空间索引和内容索引),并且基于该双层索引提高相似性搜索效率的方法和装置。图3示意性示出了根据本发明一个实施方式的、用于管理时间序列数据库的技术方案的架构图300。
[0044]应当注意,可以针对已经存储在时间序列数据库中的时间序列建立索弓丨,还可以与实时采集测量数据并将该测量数据存储至时间序列数据库几乎同时建立索引。如图3所示,设置索引建立模块320,以便在实时采集的数据进入时间序列数据库310后,读取数据库310的数据(如箭头A所示),并针对时间序列数据库310中的数据建立空间索引和内容索引(如箭头B所示),并将所建立的双层索引存储至索引库330中。
[0045]应当注意,在此索引库330可以采取各种形式,并且并不限制索引库330的存储位置,例如,可以存储到该时间序列数据库310中,或者还可以独立于时间序列数据库310存储。例如可以存储至诸如硬盘的数据存储装置上;为了尽量提高对于索引的访问速度,索引库330还可以位于诸如内存(Memory)中。应当注意,建立双层索引的过程可以并行于时间序列数据库更新的过程,并且双层索引随着数据库中内容的增加而逐渐增长。
[0046]当执行相似性搜索时,响应于接收到查询序列(如箭头C)所示,查询装置360查询索引库330中的双层索引(即,首先通过空间索引获得与查询序列相关联的子序列的空间位置,继而通过内容索引来比较在该空间位置处的子序列与查询序列的内容范围是否相一致,并且在一致的情况下认为该子序列是与查询序列相似的(如箭头D所示)。继而,可以将该子序列加入候选集中,以此方式产生的候选集中子序列的数量将大大降低,并且由于已经基于内容索引预先比较了查询序列与各个子序列是否大致相似,因而可以过滤掉仅基于空间索引获取候选集时可能产生大量无用数据,进而降低在原始时间序列数据库310中逐一验证候选集中的每个候选子序列(如箭头E所示)时的数据I/O开销、计算资源开销和时间开销。最终,查询装置360将输出搜索结果(如箭头F所示)。
[0047]基于图3所示的架构,在本发明的一个实施方式中,提供了一种针对时间序列数据库中的时间序列建立索引的方法,包括:基于滑动窗口将时间序列数据库中的时间序列划分为多个子序列;针对多个子序列建立空间索引,空间索引用于定义多个子序列中的子序列在时间序列中的空间位置;以及针对多个子序列建立内容索引,内容索引用于定义多个子序列中的子序列的内容范围。
[0048]图4A示意性示出了根据本发明一个实施方式的针对时间序列数据库中的时间序列建立索引的方法的流程图400A。首先,在步骤S402A中,基于滑动窗口将时间序列数据库中的时间序列划分为多个子序列。本领域技术人员可以自定义滑动窗口的长度,当划分子序列时,可以基于滑动窗口的原理进行划分。例如,当滑动窗口长度为N、并且步长为I时,第一个子序列可以是第1-N号数据点,第二个子序列可以是第2-(Ν+1)号数据点,以此类推。备选地,滑动窗口的步长还可以被设置为大于I的整数,以便减少划分时的工作量。
[0049]在步骤S404A中,针对多个子序列建立空间索引,空间索引用于定义多个子序列中的子序列在时间序列中的空间位置。空间索引可以采用树状结构的形式,或者本领域技术人员还可以基于现有技术中的方案来采用其他形式。
[0050]在步骤S406A中,针对多个子序列建立内容索引,内容索引用于定义多个子序列中的子序列的内容范围。在此实施方式中,子序列的内容范围可以指子序列中所包括的数据点的数值的范围。例如,当时间序列涉及在预定时间间隔采集的温度、并且每个子序列包括N个数据点时,则内容范围可以是指N个温度值中最低值和最高值之间的范围[Tmin,T I
[0051]在本发明的一个实施方式中,例如特定子序列在空间序列中对应于节点1,可以向该节点I增加附加数据项来描述与该特定子序列相关的内容范围。换言之,内容索引可以被整合到空间索引中。
[0052]应当注意,如果已经对时间序列数据库建立了空间索引,则可以仅针对该数据库执行步骤S406A ;如果尚未针对数据库建立任何索引,则可以同步地执行S404A和S406A所示的步骤,或者还可以先执行步骤S406A继而执行步骤S404A。
[0053]在本发明的一个实施方式中,针对多个子序列建立内容索引包括:将多个子序列中的子序列映射至与子序列的内容范围相对应的符号值。
[0054]例如,可以建立内容范围与符号值的映射表,假设时间序列数据库中存储了测量值为0-20°C的温度序列,可以采用如下表1所示的映射关系:
[0055]表1
[0056]
【权利要求】
1.一种针对时间序列数据库中的时间序列建立索引的方法,包括: 基于滑动窗口将所述时间序列数据库中的时间序列划分为多个子序列; 针对所述多个子序列建立空间索引,所述空间索引用于定义所述多个子序列中的子序列在所述时间序列中的空间位置;以及 针对所述多个子序列建立内容索引,所述内容索引用于定义所述多个子序列中的子序列的内容范围。
2.根据权利要求1所述的方法,其中针对所述多个子序列建立内容索引包括: 将所述多个子序列中的子序列映射至与所述子序列的内容范围相对应的符号值。
3.根据权利要求2所述的方法,还包括: 将与所述多个子序列中的子序列相对应的符号值存储为与所述空间索引相关联的元数据。
4.根据权利要求1-3中任一项所述的方法,其中针对所述多个子序列建立空间索引包括: 基于线性离散变换将所述多个子序列转换至频率域;以及 根据所述频率域中的特征频率,针对所述多个子序列建立空间索引。
5.根据权利要求4所述的方法,其中基于线性离散变换将所述多个子序列转换至频率域包括:· 基于分段维度缩减将所述多个子序列划分为分段;以及 基于所述分段将所述多个子序列转换至频率域。
6.根据权利要求1-3中任一项所述的方法,还包括预处理步骤: 响应于所述时间序列是多维时间序列,则将所述时间序列分解为多个一维时间序列。
7.—种在时间序列数据库中进行查询的方法,包括: 基于针对所述时间序列数据库中的时间序列的空间索引,在所述时间序列数据库中的时间序列中搜索与一查询序列相对应的空间位置; 基于针对所述时间序列数据库中的时间序列的内容索引,获取在所搜索的空间位置处的子序列的内容范围;以及 响应于所获取的内容范围与所述查询序列的内容范围相一致,输出所搜索的空间位置处的子序列, 其中所述空间索引用于定义所述时间序列的子序列在所述时间序列中的空间位置,所述内容索引用于定义所述时间序列的子序列的内容范围。
8.根据权利要求7所述的方法,其中所述内容索引包括:与所述时间序列的子序列的内容范围相对应的符号值。
9.根据权利要求8所述的方法,其中: 与所述多个子序列中的子序列相对应的符号值被存储为与所述空间索引相关联的元数据。
10.根据权利要求7-9中的任一项所述的方法,其中基于针对所述时间序列数据库中的时间序列的空间索引,在所述时间序列数据库中的时间序列中搜索与上述查询序列相对应的空间位置包括: 基于线性离散变换将所述查询序列转换至频率域;以及根据所述频率域中的特征频率,经由所述空间索引在所述时间序列数据库中的时间序列中搜索与所述查询序列相对应的空间位置。
11.根据权利要求10所述的方法,其中基于线性离散变换将所述查询序列转换至频率域包括: 基于分段维度缩减将所述查询序列划分为分段;以及 基于所述分段将所述查询序列转换至频率域。
12.根据权利要求7-9中的任一项所述的方法,进一步包括: 所述查询序列划分为多个查询子序列;以及 整合针对所述多个查询子序列输出的所搜索的空间位置。
13.根据权利要求7-9中任一项所述的方法,还包括预处理步骤: 响应于所述查询序列是多维时间序列,则将所述查询序列分解为多个一维查询序列。
14.一种针对时间序列数据库中的时间序列建立索引的装置,包括: 划分模块,配置用于基于滑动窗口将所述时间序列数据库中的时间序列划分为多个子序列; 空间索引建立模块,配置用于针对所述多个子序列建立空间索引,所述空间索引用于定义所述多个子序列中的子序列在所述时间序列中的空间位置;以及 内容索引建立模块,配置用于针对所述多个子序列建立内容索引,所述内容索引用于定义所述多个子序列中的子序列的内容范围。
15.根据权利要求14所述的装置,其中所述空间索引建立模块包括: 映射模块,配置用于将所述多个子序列中的子序列映射至与所述子序列的内容范围相对应的符号值。
16.根据权利要求15所述的装置,还包括: 存储据模块,配置用于将与所述多个子序列中的子序列相对应的符号值存储为与所述空间索引相关联的元数据。
17.根据权利要求14-16中任一项所述的装置,其中所述空间索引建立模块包括: 转换模块,配置用于基于线性离散变换将所述多个子序列转换至频率域;以及 建立模块,配置用于根据所述频率域中的特征频率,针对所述多个子序列建立空间索引。
18.根据权利要求17所述的装置,其中所述变换模块包括: 分段模块,配置用于基于分段维度缩减将所述多个子序列划分为分段;以及 分段转换模块,配置用于基于所述分段将所述多个子序列转换至频率域。
19.一种在时间序列数据库中进行查询的装置,包括: 搜索模块,配置用于基于针对所述时间序列数据库中的时间序列的空间索引,在所述时间序列数据库中的时间序列中搜索与一查询序列相对应的空间位置; 获取模块,配置用于基于针对所述时间序列数据库中的时间序列的内容索引,获取在所搜索的空间位置处的子序列的内容范围;以及 输出模块,配置用于响应于所获取的内容范围与所述查询序列的内容范围相一致,输出所搜索的空间位置处的子序列, 其中所述空间索引用于定义所述时间序列的子序列在所述时间序列中的空间位置,所述内容索引用于定义所述时间序列的子序列的内容范围。
20.根据权利要求19所述的装置,其中所述内容索引包括:与所述时间序列的子序列的内容范围相对应的符号值。
21.根据权利要求20所述的装置,其中: 与所述多个子序列中的子序列相对应的符号值被存储为与所述空间索引相关联的元数据。
22.根据权利要求19-21中的任一项所述的装置,其中所述搜索模块包括: 转换模块,配置用于基于线性离散变换将所述查询序列转换至频率域;以及 频率搜索模块,配置用于根据所述频率域中的特征频率,经由所述空间索引在所述时间序列数据库中的时间序列中搜索与所述查询序列相对应的空间位置。
23.根据权利要求22所述的装置,其中所述转换模块包括: 分段模块,配置用于基于分段维度缩减将所述查询序列划分为分段;以及 分段转换模块,配置用于基于所述分段将所述查询序列转换至频率域。
24.根据权利要求19-21中的任一项所述的装置,进一步包括: 划分模块,配置用于所述查询序列划分为多个查询子序列;以及 整合模块,配置用于整合针对所述多个查询子序列输出的所搜索的空间位置。
25.—种管理时间序列·数据库的方法,包括: 根据权利要求1所述的针对时间序列数据库中的时间序列建立索引的方法,以及根据权利要求7所述的在时间序列数据库中进行查询的方法。
26.—种管理时间序列数据库的装置,包括: 根据权利要求14所述的针对时间序列数据库中的时间序列建立索引的装置,以及根据权利要求19所述的在时间序列数据库中进行查询的装置。
【文档编号】G06F17/30GK103853752SQ201210507004
【公开日】2014年6月11日 申请日期:2012年11月30日 优先权日:2012年11月30日
【发明者】陈垚亮, 黄胜, 陈晓艳, 刘凯, 王晨 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1