CN108092667B - 压缩时序数据以及查询时序数据的方法、装置 - Google Patents
压缩时序数据以及查询时序数据的方法、装置 Download PDFInfo
- Publication number
- CN108092667B CN108092667B CN201711181694.3A CN201711181694A CN108092667B CN 108092667 B CN108092667 B CN 108092667B CN 201711181694 A CN201711181694 A CN 201711181694A CN 108092667 B CN108092667 B CN 108092667B
- Authority
- CN
- China
- Prior art keywords
- time
- sequence data
- time range
- time sequence
- query
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/70—Type of the data to be coded, other than image and sound
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明提供一种压缩时序数据的方法,包括:将获取的时序数据写入临时表;根据查询时间范围从临时表中确定待压缩的时序数据;对待压缩的时序数据进行压缩后写入最终表,判断当前查询时间范围能否进行更新,如果能,在更新查询时间范围后,转至根据查询时间范围从所述临时表中确定待压缩的时序数据的步骤;否则,对写入最终表中的时序数据的压缩结果进行压缩。本发明还提供一种查询时序数据的方法,包括:获取待查询的时序数据的生成时间范围;将第一次压缩时所使用的查询时间范围中的标记时间与生成时间范围进行比较,根据比较结果确定待查询的时序数据的存储位置,存储位置包括临时表和/或最终表;根据所确定的存储位置获取待查询的时序数据。
Description
【技术领域】
本发明涉及云计算领域,尤其涉及一种压缩时序数据以及查询时序数据的方法、装置。
【背景技术】
时序数据可以用于分析过去、监控现在以及预测未来,对于企业而言,时序数据具有不可估量的价值。因此需要对时序数据进行存储。但现有场景下的时序数据的特点就是数据量大,随之带来的问题就是存储时序数据的成本较高。为了降低时序数据的存储成本,一般通过对时序数据进行压缩来实现。但是现有技术对时序数据进行压缩时,存在以下缺点:压缩率不高,例如使用OpenTsdb进行压缩时,只是对时序数据库生成的数据文件进行压缩,因此无法得到时序数据的高压缩率;对写入的时序数据有较多的限制,例如facebook的Gorilla,利用该算法虽然能够取得对时序数据的高压缩率,但是其要求写入的时序数据必须在当前时间戳的一定范围内,无法对时间较长的历史数据进行压缩。因此,亟需提供一种能够提高压缩率且对写入的时序数据没有限制的压缩时序数据的方法。
【发明内容】
有鉴于此,本发明提供了一种压缩时序数据以及查询时序数据的方法和装置,用于减少对所写入的时序数据的限制,提高时序数据的压缩率。
本发明为解决技术问题所采用的技术方案是提供一种压缩时序数据的方法,所述方法包括:将获取的时序数据写入临时表;根据查询时间范围从所述临时表中确定待压缩的时序数据;对所述待压缩的时序数据进行压缩后写入最终表,判断当前查询时间范围能否进行更新,如果能,在更新所述查询时间范围后,转至所述根据查询时间范围从所述临时表中确定待压缩的时序数据的步骤;否则,对写入所述最终表中的时序数据的压缩结果进行压缩。
根据本发明一优选实施例,所述查询时间范围由标记时间与浮动时间进行表征。
根据本发明一优选实施例,所述根据查询时间范围从所述临时表中确定待压缩的时序数据包括:获取写入临时表中的各时序数据的生成时间范围;将所述生成时间范围在所述查询时间范围内的时序数据作为所述待压缩的时序数据。
根据本发明一优选实施例,所述判断当前查询时间范围能否进行更新包括:判断当前查询时间范围是否为可更新的查询时间范围;或者判断根据当前查询时间范围能否获取待压缩的时序数据。
根据本发明一优选实施例,所述更新所述查询时间范围包括:利用当前查询时间范围中的标记时间加上浮动时间得到的值,更新查询时间范围中的标记时间。
根据本发明一优选实施例,该方法还包括:对写入临时表中的时序数据设置存活时间;若写入临时表中的时序数据达到存活时间,则删除该时序数据。
本发明为解决技术问题所采用的技术方案是提供一种压缩时序数据的装置,所述装置包括:写入单元,用于将获取的时序数据写入临时表;确定单元,用于根据查询时间范围从所述临时表中确定待压缩的时序数据;第一压缩单元,用于对所述待压缩的时序数据进行压缩后写入最终表,判断当前查询时间范围能否进行更新,如果能,在更新所述查询时间范围后转至确定单元,否则转至第二压缩单元;第二压缩单元,用于对写入所述最终表中的时序数据的压缩结果进行压缩。
根据本发明一优选实施例,所述查询时间范围由标记时间与浮动时间进行表征。
根据本发明一优选实施例,所述确定单元在根据查询时间范围从所述临时表中确定待压缩的时序数据时,具体执行:获取写入临时表中的各时序数据的生成时间范围;将所述生成时间范围在所述查询时间范围内的时序数据作为所述待压缩的时序数据。
根据本发明一优选实施例,所述第一压缩单元在判断当前查询时间范围能否进行更新时,具体执行:判断当前查询时间范围是否为可更新的查询时间范围;或者判断根据当前查询时间范围能否获取待压缩的时序数据。
根据本发明一优选实施例,所述第一压缩单元在更新所述查询时间范围时,具体执行:利用当前查询时间范围中的标记时间加上浮动时间得到的值,更新查询时间范围中的标记时间。
本发明还提供一种查询时序数据的方法,所述方法包括:获取待查询的时序数据的生成时间范围;将第一次压缩时所使用的查询时间范围中的标记时间与所述生成时间范围进行比较,根据比较结果确定待查询的时序数据的存储位置,所述存储位置包括临时表和/或最终表;根据所确定的存储位置获取待查询的时序数据。
根据本发明一优选实施例,所述根据比较结果确定待查询的时序数据的存储位置包括:若比较结果为所述生成时间范围在所述标记时间之后,则确定该时序数据的存储位置位于最终表;若比较结果为所述生成时间范围在所述标记时间之前,则确定该时序数据的存储位置位于临时表;若比较结果为所述标记时间在所述生成时间范围之间,则确定该时序数据的存储位置位于临时表以及最终表。
根据本发明一优选实施例,该方法还包括:对存储位置位于最终表中的时序数据进行解压缩。
根据本发明一优选实施例,若时序数据的存储位置位于临时表以及最终表中,还包括:将位于最终表中的时序数据部分进行解压缩;将所述解压缩结果与临时表中的时序数据部分按时序合并,将合并结果作为待查询的时序数据。
本发明还提供一种查询时序数据的装置,所述装置包括:获取单元,用于获取待查询的时序数据的生成时间范围;比较单元,用于将第一次压缩时所使用的查询时间范围中的标记时间与所述生成时间范围进行比较,根据比较结果确定待查询的时序数据的存储位置,所述存储位置包括临时表和/或最终表;处理单元,用于根据所确定的存储位置获取待查询的时序数据。
根据本发明一优选实施例,所述比较单元在根据比较结果确定待查询的时序数据的存储位置时,具体执行:若比较结果为所述生成时间范围在所述标记时间之后,则确定该时序数据的存储位置位于最终表;若比较结果为所述生成时间范围在所述标记时间之前,则确定该时序数据的存储位置位于临时表;若比较结果为所述标记时间在所述生成时间范围之间,则确定该时序数据的存储位置位于临时表以及最终表。
根据本发明一优选实施例,若时序数据的存储位置位于临时表以及最终表中,所述处理单元还用于执行:将位于最终表中的时序数据部分进行解压缩;将所述解压缩结果与临时表中的时序数据部分按时序合并,将合并结果作为待查询的时序数据。
由以上技术方案可以看出,本发明通过将时序数据写入临时表中,并通过查询时间范围对满足要求的时序数据进行压缩,再将压缩后的时序数据写入最终表后进行第二次压缩,从而减少对时序数据写入的限制,并提高对时序数据的压缩率。
【附图说明】
图1为本发明一实施例提供的压缩时序数据的方法流程图;
图2为本发明一实施例提供的查询时序数据的方法流程图;
图3为本发明一实施例提供的压缩时序数据的装置结构图;
图4为本发明一实施例提供的查询时序数据的装置结构图;
图5为本发明一实施例提供的计算机系统/服务器的框图。
【具体实施方式】
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
时序数据由时间序列构成,而时间序列是随着时间顺序变化的一组数据,多条时间序列就构成时序数据。时序数据有以下特点:从长期来看,时间戳是不断递增的;但从短期来看,可能存在时间上的乱序,即时序数据不是连续的。现有技术在对时序数据进行压缩时,对时序数据的写入要求较为严格,例如存在需要按时间顺序写入、所写入的时序数据的时间戳需在当前时间范围内等限制。因此本发明提供一种用于压缩时序数据的方法,将时序数据写入临时表中,通过设定的查询时间范围对满足要求的时序数据进行压缩,将压缩后的时序数据写入最终表后进行第二次压缩,从而减少对时序数据写入的限制,并能够提高对时序数据的压缩率。
图1为本发明一实施例提供的压缩时序数据的方法流程图,如图1中所示,所述方法包括:
在101中,将获取的时序数据写入临时表。
在本步骤中,在获取时序数据后,将所获取的时序数据写入临时表中。其中,所获取的时序数据为时间序列数据,时间序列数据为按时间顺序记录的数据列;临时表(temptable)是建立在系统临时文件夹中的表,在本发明中用于存放所获取的时序数据。
在获取时序数据时,可以通过用户输入的方式获取,也可以通过存储时序数据的数据库获取。可以理解的是,本步骤所获取的时序数据是按时间顺序递增的时序数据。例如用户可以输入某天气温的时序数据,则将该用户所输入的该天从早到晚的气温变化数据作为该天气温的时序数据。
另外,在将所获取的时序数据写入临时表中时,还可以对时序数据设置存活时间(TTL,time to live)。对写入临时表中的时序数据设置存活时间的意义在于:若写入临时表中的时序数据未被压缩,且达到所设置的存活时间时,则会被自动删除,从而降低对临时表造成大的存储负担。举例来说,若写入临时表中的某时序数据所设置的存活时间为7天,若该时序数据未进行压缩处理,则该时序数据在其写入临时表7天后会被自动删除。
在102中,根据查询时间范围从临时表中确定待压缩的时序数据。
在本步骤中,根据查询时间范围从临时表中获取待压缩的时序数据,即该查询时间范围用于确定所要进行压缩的时序数据。具体地,在根据查询时间范围获取待压缩的时序数据时,可以采用以下方式:获取写入临时表中的各时序数据的生成时间范围;将生成时间范围在查询时间范围内的时序数据确定为待压缩的时序数据。
其中,查询时间范围由标记时间和浮动时间表征,查询时间范围的形式可以为(标记时间,标记时间+浮动时间)。举例来说,若查询时间范围中的标记时间为2017-11-15-08:00,浮动时间为1小时,则表明进行首次压缩的时序数据为在(2017-11-15-08:00,2017-11-15-09:00)时间范围之间的时序数据。
可以理解的是,查询时间范围可以为固定的时间范围,也可以为可更新的时间范围。举例来说,若查询时间范围是固定的,即表明仅对在临时表中的在该固定的时间范围内的时序数据进行压缩,例如仅对2017年11月17日9:00至12:00之间的时序数据进行压缩;若查询时间范围是可更新的,即表明对临时表中在首次压缩的时间范围之后的时序数据全部进行压缩,例如对2017年11月17日9:00之后的时序数据进行压缩。
在103中,对所述待压缩的时序数据进行压缩后写入最终表,判断当前查询时间范围能否进行更新。
在本步骤中,首先根据步骤102所获取的待压缩的时序数据,使用时序数据的压缩算法对其进行压缩,将时序数据的压缩结果写入最终表(finally table)中;然后判断当前查询时间范围能否进行更新,若判断结果为能,则表明步骤102所使用的查询时间范围能够进行更新,则对查询时间范围进行更新后,转至执行步骤102,否则转至步骤104。其中,本步骤所使用的时序数据的压缩算法为用于压缩时序数据的算法,例如Gorilla算法、Middle-out算法等。
具体地,在判断当前查询时间范围能否进行更新时,可以采用以下方式:判断查询时间范围是否为可更新的,即确定查询时间范围是对时序数据进行一次压缩的固定的查询时间范围还是对时序数据进行多次压缩的查询时间范围;若判断该查询时间范围是可更新的查询时间范围,再判断根据当前查询时间范围能否获得待压缩的时序数据,若能,则判断当前查询时间范围是可更新的,可以执行更新查询时间范围的操作;否则,则判断当前查询时间范围不能够进行更新。
其中,在更新查询时间范围时,可以采用以下方式:利用当前查询时间范围中的标记时间加上浮动时间得到的值,更新为查询时间范围中的标记时间。举例来说,若当前查询时间范围为(8:00,9:00),其中标记时间为8:00,浮动时间为1小时;则更新后的查询时间范围为(9:00,10:00),其中更新后的查询时间范围中的标记时间变为9:00。
在本步骤中,完成对查询时间范围的更新后,步骤102利用更新后的查询时间范围再次获取待压缩的时序数据,然后步骤103将所获取的待压缩的时序数据进行压缩写入最终表,并再次更新查询时间范围,以此循环进行;若步骤103判断当前查询时间范围无法更新,则转至步骤104。
在104中,对写入最终表中的时序数据的压缩结果再进行压缩。
在本步骤中,若无法更新查询时间范围,则步骤102无法获取待压缩的时序数据时,步骤103也无法对待压缩的时序数据进行压缩,则表明对时序数据的压缩完毕。在完成时序数据的压缩后,由本步骤对写入最终表中的时序数据的压缩结果再进行一次压缩。可以理解的是,由写入最终表的多个时序数据的压缩结果可以构成一个数据文件,通过本步骤对该数据文件进行压缩,从而实现对时序数据更高的压缩率。
其中,在对时序数据的压缩结果进行压缩时,即对由多个时序数据的压缩结果构成的数据文件进行压缩时,可以采用通用的压缩算法进行压缩,例如gzip、snappy等算法,本发明对此不进行限定。
图2为本发明一实施例提供的查询时序数据的方法流程图,如图2中所示,所述方法包括:
在201中,获取待查询的时序数据的生成时间范围。
在本步骤中,根据待查询的时序数据,获取该待查询的时序数据的生成时间范围。
可以理解的是,在获取待查询的时序数据的生成时间范围时,可以通过用户的输入直接获取,例如用户直接输入所要查询的时序数据为某日上午9:00至12:00之间的气温变化数据,则某日9:00至12:00之间的时间范围为该时序数据的生成时间范围;也可以为通过用户对时序数据的选择来获取,例如用户在存储时序数据的数据库中选择某日11:00至15:00之间的气温变化数据,则将用户所选择的某日11:00至15:00之间的时间范围为该时序数据的生成时间范围。
在202中,将第一次压缩时所使用的查询时间范围中的标记时间与所述生成时间范围进行比较,根据比较结果确定待查询的时序数据的存储位置,所述存储位置包括临时表和/或最终表。
在本步骤中,由于待查询的时序数据可能未被压缩依然存储在临时表中,也有可能已被压缩存储在最终表中,因此本步骤根据待查询的时序数据的生成时间范围与首次压缩时序数据时所使用的查询时间范围中的标记时间进行比较,根据比较结果确定该待查询的时序数据的存储位置,即确定待查询的时序数据存储在临时表和/或最终表中。
具体地,若比较结果为该待查询的时序数据的生成时间范围在标记时间之后,表明该时序数据已被压缩,则确定该时序数据的存储位置位于最终表;若比较结果为该待查询的时序数据的生成时间范围在标记时间之前,表明该时序数据未被压缩,则确定该时序数据的存储位置位于临时表;若比较结果为标记时间在该待查询的时序数据的生成时间范围之间,表明该时序数据中的一部分未被压缩,另一部分已被压缩,则确定该时序数据的存储位置位于临时表以及最终表。
在203中,根据所确定的存储位置获取待查询的时序数据。
在本步骤中,根据步骤202所确定的存储位置获取待查询的时序数据。
其中,若存储位置位于临时表中,由于该时序数据未被压缩,则可以从临时表中直接获取该待查询的时序数据;若存储位置位于最终表,由于该时序数据已被压缩,则需要对已被压缩的时序数据进行解压缩,获取解压缩得到的时序数据作为该待查询的时序数据;若存储位置位于最终表以及临时表中,由于该时序数据的部分被压缩,则需要将最终表中的部分解压缩后,按照时序与临时表中该时序数据的剩余部分进行拼接,将拼接结果作为该待查询的时序数据。
另外可以理解的是,若存储于最终表中的时序数据进行了两次压缩,则需要对该时序数据进行两次解压缩操作:首先使用通用的解压缩方法,对对应该时序数据的数据文件进行解压缩,获取该时序数据的压缩结果;然后使用时序数据的解压缩方法,对该时序数据的压缩结果进行解压缩,获取该时序数据。本发明对所使用的通用的解压缩方法以及时序数据的解压缩方法不进行限定。
图3为本发明一实施例提供的压缩时序数据的装置结构图,如图3中所示,所述装置包括:写入单元31、确定单元32、第一压缩单元33以及第二压缩单元34。
写入单元31,用于将获取的时序数据写入临时表。
写入单元31在获取时序数据后,将所获取的时序数据写入临时表中。其中,写入单元31所获取的时序数据为时间序列数据,时间序列数据为按时间顺序记录的数据列;临时表(temp table)是建立在系统临时文件夹中的表,在本发明中用于存放所获取的时序数据。
写入单元31在获取时序数据时,可以通过用户输入的方式获取,也可以通过存储时序数据的数据库获取。可以理解的是,写入单元31所获取的时序数据是按时间顺序递增的时序数据。例如用户可以输入某天气温的时序数据,则写入单元31将该用户所输入的该天从早到晚的气温变化数据作为该天气温的时序数据。
另外,在写入单元31将所获取的时序数据写入临时表中时,还可以对时序数据设置存活时间(TTL,time to live)。写入单元31对写入临时表中的时序数据设置存活时间的意义在于:若写入临时表中的时序数据未被压缩,且达到所设置的存活时间时,则会被自动删除,从而降低对临时表造成大的存储负担。
确定单元32,用于根据查询时间范围从临时表中确定待压缩的时序数据。
确定单元32根据查询时间范围从临时表中获取待压缩的时序数据,即该查询时间范围用于确定所要进行压缩的时序数据。具体地,确定单元32在根据查询时间范围获取待压缩的时序数据时,可以采用以下方式:获取写入临时表中的各时序数据的生成时间范围;将生成时间范围在查询时间范围内的时序数据确定为待压缩的时序数据。
其中,查询时间范围由标记时间和浮动时间表征,查询时间范围的形式可以为(标记时间,标记时间+浮动时间)。举例来说,若查询时间范围中的标记时间为2017-11-15-08:00,浮动时间为1小时,则表明进行首次压缩的时序数据为在(2017-11-15-08:00,2017-11-15-09:00)时间范围之间的时序数据。
可以理解的是,查询时间范围可以为固定的时间范围,也可以为可更新的时间范围。举例来说,若查询时间范围是固定的,即表明仅对在该固定的时间范围内的时序数据进行一次压缩,例如仅对2017年11月17日9:00至12:00之间的时序数据进行一次压缩;若查询时间范围是可更新的,即表明对临时表中在首次压缩的时间范围之后的时序数据进行多次压缩,例如对2017年11月17日9:00之后的全部的时序数据进行压缩。
第一压缩单元33,用于对待压缩的时序数据进行压缩后写入最终表,判断当前查询时间范围能否进行更新,如果能,在更新查询时间范围后转至确定单元32,如果否,则转至第二压缩单元34。
第一压缩单元33首先根据确定单元32所获取的待压缩的时序数据,使用时序数据的压缩算法对其进行压缩,将时序数据的压缩结果写入最终表(finally table)中;然后第一压缩单元33判断当前查询时间范围能否进行更新,若判断结果为能,则表明确定单元32所使用的查询时间范围能够进行更新,在对查询时间范围进行更新后,转至确定单元32,否则转至第二压缩单元34。其中,第一压缩单元33所使用的时序数据的压缩算法为用于压缩时序数据的算法,例如Gorilla算法、Middle-out算法等。
其中,第一压缩单元33在判断当前查询时间范围能否进行更新时,可以采用以下方式:第一压缩单元33判断查询时间范围是否为可更新的,即确定查询时间范围是对时序数据进行一次压缩的固定的查询时间范围还是对时序数据进行多次压缩的查询时间范围;若第一压缩单元33判断该查询时间范围是可更新的查询时间范围,再判断根据当前查询时间范围能否获得待压缩的时序数据,若能,则第一压缩单元33判断当前查询时间范围是可更新的,可以执行更新查询时间范围的操作;否则,则第一压缩单元33判断当前查询时间范围不能够进行更新。
具体地,在第一压缩单元33更新查询时间范围时,可以采用以下方式:利用当前查询时间范围中的标记时间加上浮动时间得到的值,更新为查询时间范围中的标记时间。举例来说,若当前查询时间范围为(8:00,9:00),其中标记时间为8:00,浮动时间为1小时;则更新后的查询时间范围为(9:00,10:00),其中更新后的查询时间范围中的标记时间变为9:00。
在第一压缩单元33完成对查询时间范围的更新后,确定单元32利用更新后的查询时间范围再次获取待压缩的时序数据,然后第一压缩单元33将所获取的待压缩的时序数据进行压缩写入最终表,并再次更新查询时间范围,以此循环进行。
第二压缩单元34,用于对写入最终表中的时序数据的压缩结果进行压缩。
若第一压缩单元33判断无法更新查询时间范围,则确定单元32无法获取待压缩的时序数据时,第一压缩单元33也无法对待压缩的时序数据进行压缩,则表明时序数据的压缩完毕。在完成时序数据的压缩后,由第二压缩单元34对写入最终表中的时序数据的压缩结果再进行一次压缩。可以理解的是,由写入最终表的多个时序数据的压缩结果可以构成一个数据文件,通过第二压缩单元34对该数据文件进行压缩,实现对时序数据更高的压缩率。
其中,在第二压缩单元34对时序数据的压缩结果进行压缩时,即对由多个时序数据的压缩结果构成的数据文件进行压缩时,可以采用通用的压缩算法进行压缩,例如gzip、snappy等算法,本发明对此不进行限定。
图4为本发明一实施例提供的查询时序数据的装置结构图,如图4中所示,所述装置包括:获取单元41、比较单元42以及处理单元43。
获取单元41,用于获取待查询的时序数据的生成时间范围。
获取单元41根据待查询的时序数据,获取该待查询的时序数据的生成时间范围。
可以理解的是,在获取单元41获取待查询的时序数据的生成时间范围时,可以通过用户的输入直接获取,例如用户直接输入所要查询的时序数据为某日上午9:00至12:00之间的气温变化数据,则某日9:00至12:00之间的时间范围为该时序数据的生成时间范围;也可以为通过用户对时序数据的选择来获取,例如用户在存储时序数据的数据库中选择某日11:00至15:00之间的气温变化数据,则将用户所选择的某日11:00至15:00之间的时间范围为该时序数据的生成时间范围。
比较单元42,用于将第一次压缩时所使用的查询时间范围中的标记时间与待查询的时序数据的生成时间范围进行比较,根据比较结果确定待查询的时序数据的存储位置,所述存储位置包括临时表和/或最终表。
由于待查询的时序数据可能未被压缩依然存储在临时表中,也有可能已被压缩存储在最终表中,因此比较单元42根据待查询的时序数据的生成时间范围与首次压缩时序数据时所使用的查询时间范围中的标记时间进行比较,根据比较结果确定该待查询的时序数据的存储位置,即比较单元42确定待查询的时序数据存储在临时表和/或最终表中。
具体地,若比较结果为该待查询的时序数据的生成时间范围在标记时间之后,表明该时序数据已被压缩,则比较单元42确定该时序数据的存储位置位于最终表;若比较结果为该待查询的时序数据的生成时间范围在标记时间之前,表明该时序数据未被压缩,则比较单元42确定该时序数据的存储位置位于临时表;若比较结果为标记时间在该待查询的时序数据的生成时间范围之间,表明该时序数据中的一部分未被压缩,另一部分已被压缩,则比较单元42确定该时序数据的存储位置位于临时表以及最终表。
处理单元43,用于根据所确定的存储位置获取待查询的时序数据。
处理单元43根据比较单元42所确定的存储位置获取待查询的时序数据。
其中,若存储位置位于临时表中,由于该时序数据未被压缩,则处理单元43可以从临时表中直接获取该待查询的时序数据;若存储位置位于最终表,由于该时序数据已被压缩,则处理单元43需要对已被压缩的时序数据进行解压缩,进而将解压缩得到的时序数据作为该待查询的时序数据;若存储位置位于最终表以及临时表中,由于该时序数据的部分被压缩,则需要处理单元43将最终表中的部分解压缩后,再按照时序与临时表中该时序数据的剩余部分进行拼接,将拼接结果作为该待查询的时序数据。
另外可以理解的是,若存储于最终表中的时序数据进行了两次压缩,则处理单元43需要对该时序数据进行两次解压缩操作:首先使用通用的解压缩方法,对对应该时序数据的数据文件进行解压缩,获取该时序数据的压缩结果;然后使用时序数据的解压缩方法,对该时序数据的压缩结果进行解压缩,获取该时序数据。本发明对所使用的通用的解压缩方法以及时序数据的解压缩方法不进行限定。
图5示出了适于用来实现本发明实施方式的示例性计算机系统/服务器012的框图。图5显示的计算机系统/服务器012仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,计算机系统/服务器012以通用计算设备的形式表现。计算机系统/服务器012的组件可以包括但不限于:一个或者多个处理器或者处理单元016,系统存储器028,连接不同系统组件(包括系统存储器028和处理单元016)的总线018。
总线018表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机系统/服务器012典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器012访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器028可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)030和/或高速缓存存储器032。计算机系统/服务器012可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统034可以用于读写不可移动的、非易失性磁介质(图5未显示,通常称为“硬盘驱动器”)。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线018相连。存储器028可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块042的程序/实用工具040,可以存储在例如存储器028中,这样的程序模块042包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块042通常执行本发明所描述的实施例中的功能和/或方法。
计算机系统/服务器012也可以与一个或多个外部设备014(例如键盘、指向设备、显示器024等)通信,在本发明中,计算机系统/服务器012与外部雷达设备进行通信,还可与一个或者多个使得用户能与该计算机系统/服务器012交互的设备通信,和/或与使得该计算机系统/服务器012能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口022进行。并且,计算机系统/服务器012还可以通过网络适配器020与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器020通过总线018与计算机系统/服务器012的其它模块通信。应当明白,尽管图中未示出,可以结合计算机系统/服务器012使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元016通过运行存储在系统存储器028中的程序,从而执行各种功能应用以及数据处理,例如实现一种压缩时序数据的方法,可以包括:
将获取的时序数据写入临时表;
根据查询时间范围从所述临时表中确定待压缩的时序数据;
对所述待压缩的时序数据进行压缩后写入最终表,判断当前查询时间范围能否进行更新,如果能,在更新所述查询时间范围后,转至所述根据查询时间范围从所述临时表中确定待压缩的时序数据的步骤;
否则,对写入所述最终表中的时序数据的压缩结果进行压缩。
还可以实现一种查询时序数据的方法,包括:
获取待查询的时序数据的生成时间范围;
将第一次压缩时所使用的查询时间范围中的标记时间与所述生成时间范围进行比较,根据比较结果确定待查询的时序数据的存储位置,所述存储位置包括临时表和/或最终表;
根据所确定的存储位置获取待查询的时序数据。
上述的计算机程序可以设置于计算机存储介质中,即该计算机存储介质被编码有计算机程序,该程序在被一个或多个计算机执行时,使得一个或多个计算机执行本发明上述实施例中所示的方法流程和/或装置操作。例如,被上述一个或多个处理器执行的方法流程,可以包括:
将获取的时序数据写入临时表;
根据查询时间范围从所述临时表中确定待压缩的时序数据;
对所述待压缩的时序数据进行压缩后写入最终表,判断当前查询时间范围能否进行更新,如果能,在更新所述查询时间范围后,转至所述根据查询时间范围从所述临时表中确定待压缩的时序数据的步骤;
否则,对写入所述最终表中的时序数据的压缩结果进行压缩。
还可以包括:
获取待查询的时序数据的生成时间范围;
将第一次压缩时所使用的查询时间范围中的标记时间与所述生成时间范围进行比较,根据比较结果确定待查询的时序数据的存储位置,所述存储位置包括临时表和/或最终表;
根据所确定的存储位置获取待查询的时序数据。
随着时间、技术的发展,介质含义越来越广泛,计算机程序的传播途径不再受限于有形介质,还可以直接从网络下载等。可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
利用本发明所提供的技术方案,通过将时序数据写入临时表中,并通过查询时间范围对满足要求的时序数据进行压缩,再将压缩后的时序数据写入最终表后进行第二次压缩,从而减少对时序数据写入的限制,并提高对时序数据的压缩率。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (20)
1.一种压缩时序数据的方法,其特征在于,所述方法包括:
将获取的时序数据写入临时表;
根据查询时间范围从所述临时表中确定待压缩的时序数据;
对所述待压缩的时序数据进行压缩后写入最终表,判断当前查询时间范围能否进行更新,如果能,在更新所述查询时间范围后,转至所述根据查询时间范围从所述临时表中确定待压缩的时序数据的步骤;
否则,采用通用的压缩算法对写入所述最终表中的时序数据的压缩结果进行压缩。
2.根据权利要求1所述的方法,其特征在于,所述查询时间范围由标记时间与浮动时间进行表征。
3.根据权利要求1所述的方法,其特征在于,所述根据查询时间范围从所述临时表中确定待压缩的时序数据包括:
获取写入临时表中的各时序数据的生成时间范围;
将所述生成时间范围在所述查询时间范围内的时序数据作为所述待压缩的时序数据。
4.根据权利要求1所述的方法,其特征在于,所述判断当前查询时间范围能否进行更新包括:
判断当前查询时间范围是否为可更新的查询时间范围,若是,再判断根据当前查询时间范围能否获取待压缩的时序数据,若能,则确定当前查询时间范围能进行更新,否则不能进行更新。
5.根据权利要求2所述的方法,其特征在于,所述更新所述查询时间范围包括:
利用当前查询时间范围中的标记时间加上浮动时间得到的值,更新查询时间范围中的标记时间。
6.根据权利要求1所述的方法,其特征在于,该方法还包括:
对写入临时表中的时序数据设置存活时间;
若写入临时表中的时序数据达到存活时间,则删除该时序数据。
7.一种查询时序数据的方法,其特征在于,所述方法包括:
获取待查询的时序数据的生成时间范围;
将第一次压缩时所使用的查询时间范围中的标记时间与所述生成时间范围进行比较,根据比较结果确定待查询的时序数据的存储位置,所述存储位置包括临时表和/或最终表;
根据所确定的存储位置获取待查询的时序数据。
8.根据权利要求7所述的方法,其特征在于,所述根据比较结果确定待查询的时序数据的存储位置包括:
若比较结果为所述生成时间范围在所述标记时间之后,则确定该时序数据的存储位置位于最终表;
若比较结果为所述生成时间范围在所述标记时间之前,则确定该时序数据的存储位置位于临时表;
若比较结果为所述标记时间在所述生成时间范围之间,则确定该时序数据的存储位置位于临时表以及最终表。
9.根据权利要求8所述的方法,其特征在于,该方法还包括:
对存储位置位于最终表中的时序数据进行解压缩。
10.根据权利要求9所述的方法,其特征在于,若时序数据的存储位置位于临时表以及最终表中,还包括:
将位于最终表中的时序数据部分进行解压缩,得到解压缩结果;
将所述解压缩结果与临时表中的时序数据部分按时序合并,将合并结果作为待查询的时序数据。
11.一种压缩时序数据的装置,其特征在于,所述装置包括:
写入单元,用于将获取的时序数据写入临时表;
确定单元,用于根据查询时间范围从所述临时表中确定待压缩的时序数据;
第一压缩单元,用于对所述待压缩的时序数据进行压缩后写入最终表,判断当前查询时间范围能否进行更新,如果能,在更新所述查询时间范围后,转至确定单元,否则转至第二压缩单元;
第二压缩单元,用于采用通用的压缩算法对写入所述最终表中的时序数据的压缩结果进行压缩。
12.根据权利要求11所述的装置,其特征在于,所述查询时间范围由标记时间与浮动时间进行表征。
13.根据权利要求11所述的装置,其特征在于,所述确定单元在根据查询时间范围从所述临时表中确定待压缩的时序数据时,具体执行:
获取写入临时表中的各时序数据的生成时间范围;
将所述生成时间范围在所述查询时间范围内的时序数据作为所述待压缩的时序数据。
14.根据权利要求11所述的装置,其特征在于,所述第一压缩单元在判断当前查询时间范围能否进行更新时,具体执行:
判断当前查询时间范围是否为可更新的查询时间范围,若是,再判断根据当前查询时间范围能否获取待压缩的时序数据,若能,则确定当前查询时间范围能进行更新,否则不能进行更新。
15.根据权利要求12所述的装置,其特征在于,所述第一压缩单元在更新所述查询时间范围时,具体执行:
利用当前查询时间范围中的标记时间加上浮动时间得到的值,更新查询时间范围中的标记时间。
16.一种查询时序数据的装置,其特征在于,所述装置包括:
获取单元,用于获取待查询的时序数据的生成时间范围;
比较单元,用于将第一次压缩时所使用的查询时间范围中的标记时间与所述生成时间范围进行比较,根据比较结果确定待查询的时序数据的存储位置,所述存储位置包括临时表和/或最终表;
处理单元,用于根据所确定的存储位置获取待查询的时序数据。
17.根据权利要求16所述的装置,其特征在于,所述比较单元在根据比较结果确定待查询的时序数据的存储位置时,具体执行:
若比较结果为所述生成时间范围在所述标记时间之后,则确定该时序数据的存储位置位于最终表;
若比较结果为所述生成时间范围在所述标记时间之前,则确定该时序数据的存储位置位于临时表;
若比较结果为所述标记时间在所述生成时间范围之间,则确定该时序数据的存储位置位于临时表以及最终表。
18.根据权利要求17所述的装置,其特征在于,若时序数据的存储位置位于临时表以及最终表中,所述处理单元还用于执行:
将位于最终表中的时序数据部分进行解压缩,得到解压缩结果;
将所述解压缩结果与临时表中的时序数据部分按时序合并,将合并结果作为待查询的时序数据。
19.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-10中任一所述的方法。
20.一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-10中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711181694.3A CN108092667B (zh) | 2017-11-23 | 2017-11-23 | 压缩时序数据以及查询时序数据的方法、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711181694.3A CN108092667B (zh) | 2017-11-23 | 2017-11-23 | 压缩时序数据以及查询时序数据的方法、装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108092667A CN108092667A (zh) | 2018-05-29 |
CN108092667B true CN108092667B (zh) | 2021-05-14 |
Family
ID=62172200
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711181694.3A Active CN108092667B (zh) | 2017-11-23 | 2017-11-23 | 压缩时序数据以及查询时序数据的方法、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108092667B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108984723A (zh) * | 2018-07-10 | 2018-12-11 | 阿里巴巴集团控股有限公司 | 创建索引、数据查询方法、装置及计算机设备 |
CN111309720A (zh) * | 2018-12-11 | 2020-06-19 | 北京京东尚科信息技术有限公司 | 时序数据的存储、读取方法、装置、电子设备及存储介质 |
CN110289862B (zh) * | 2019-06-20 | 2023-04-28 | 成都有据量化科技有限公司 | 金融数据的压缩和解压方法、装置以及存储介质 |
CN110717793B (zh) * | 2019-10-18 | 2022-11-18 | 创维集团智能科技有限公司 | 定时方法、广告机及广告机系统 |
CN112632347B (zh) * | 2021-01-14 | 2024-01-23 | 加和(北京)信息科技有限公司 | 数据筛选控制方法及装置、非易失性存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102098058A (zh) * | 2010-11-12 | 2011-06-15 | 中南大学 | 时序数据实时高效线性压缩与解压缩方法 |
CN102122960A (zh) * | 2011-01-18 | 2011-07-13 | 西安理工大学 | 一种针对二进制数据的多字符组合无损数据压缩方法 |
-
2017
- 2017-11-23 CN CN201711181694.3A patent/CN108092667B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102098058A (zh) * | 2010-11-12 | 2011-06-15 | 中南大学 | 时序数据实时高效线性压缩与解压缩方法 |
CN102122960A (zh) * | 2011-01-18 | 2011-07-13 | 西安理工大学 | 一种针对二进制数据的多字符组合无损数据压缩方法 |
Non-Patent Citations (2)
Title |
---|
连分式方法在脉冲去噪、时序数据压缩及视频镜头检测中的应用研究;白天;《中国博士学位论文全文数据库(电子期刊)》;20150715;第69-77页 * |
面向油中溶解气体监测时序数据压缩的改进方法;张炜等;《电力建设》;20170531;第38卷(第5期);第98-104页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108092667A (zh) | 2018-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108092667B (zh) | 压缩时序数据以及查询时序数据的方法、装置 | |
CN111090628B (zh) | 一种数据处理方法、装置、存储介质及电子设备 | |
CN109783490B (zh) | 数据融合方法、装置、计算机设备及存储介质 | |
CN111949710B (zh) | 数据存储方法、装置、服务器及存储介质 | |
CN109471851B (zh) | 数据处理方法、装置、服务器和存储介质 | |
CN111382123B (zh) | 文件存储方法、装置、设备及存储介质 | |
CN111061740B (zh) | 一种数据同步方法、设备和存储介质 | |
CN112988753B (zh) | 一种数据搜索方法和装置 | |
CN111291882A (zh) | 一种模型转换的方法、装置、设备和计算机存储介质 | |
CN111324441A (zh) | 运行环境的切换方法、装置、计算机设备和存储介质 | |
CN110162518B (zh) | 数据分组方法、装置、电子设备及存储介质 | |
CN109582906B (zh) | 数据可靠度的确定方法、装置、设备和存储介质 | |
CN111104053B (zh) | 存储数据的方法、装置和计算机程序产品 | |
CN115344315A (zh) | 小程序页面的皮肤切换方法、装置和电子设备 | |
CN113268453A (zh) | 日志信息压缩存储方法及装置 | |
CN109376148B (zh) | 缓慢变化维表的数据处理方法、装置、电子设备 | |
CN107729347B (zh) | 同义标签的获取方法、装置、设备及计算机可读存储介质 | |
CN109783745B (zh) | 对页面进行个性化排版的方法、装置和计算机设备 | |
CN111881381A (zh) | 一种显示方法、装置、设备及存储介质 | |
CN112364268A (zh) | 资源获取方法、装置、电子设备及存储介质 | |
CN111753548A (zh) | 信息获取方法及装置、计算机存储介质、电子设备 | |
CN112035159A (zh) | 一种稽核模型的配置方法、装置、设备及存储介质 | |
CN111831620B (zh) | 用于存储管理的方法、设备和计算机程序产品 | |
CN110647519B (zh) | 对测试样本中的缺失属性值进行预测的方法及装置 | |
US11500590B2 (en) | Method, device and computer program product for data writing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |