【技术实现步骤摘要】
一种多源时间序列数据压缩存储方法
本专利技术涉及一种数据压缩存储方法,尤其涉及一种多源时间序列数据压缩存储方法。
技术介绍
对于电力、石油和连锁经营等大型企业,其分站或经营场所分布在全国、甚至全球各地,它们的每个分站或经营场所又包含许多的量测点,这些大型企业的数据中心,随时随刻都要对这些量测点产生的数据进行存储,需要的时候,还要从存储的众多数据中读取所需的数据。而这些工业数据有一个共同点:数据量比较大、数据来源比较广泛。通常,工业数据是各个量测点一段连续的量,其存储的数据都带有时间戳。工业数据具有明显的时间特性,其结构可以用VQT(Value、Quality、Timestamp,数据值、质量码、时间戳)来表示。同时工业数据是不断产生的,从而具有海量数据、以及来源广泛的特点。针对这些特点,怎样更快速地对数据进行存储,而且有效地利用存储空间是需要亟待解决的问题。在实时数据库中,索引策略决定数据库快速定位数据的效率,索引可以提高数据存储和查询的效率。索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。当表中有大量记录时,若要对表进行查询,第一种搜索信息方式是全表搜索,是将所有记录一一取出,和查询条件进行一一对比,然后返回满足条件的记录,这样做会消耗大量数据库系统时间,并造成大量磁盘I/O操作;第二种就是在表中建立索引,然后在索引中找到符合查询条件的索引值,最后通过保存在索引中的ROWID(相当于页码)快速找到表中对应的记录。高效的索引不仅取决于索引策略,还取决于数据的存储方式,以及待存储的数据的特性。对于数量大、来源范围广的工业数据,采用通用的存 ...
【技术保护点】
一种多源时间序列数据压缩存储方法,所述多源时间序列数据来自不同部署对象的不同量测点,其特征在于,包含以下步骤:根据各部署对象所包含的量测点数量,对所述各部署对象分组,将所包含量测点数量总和小于预设值的至少两个部署对象分为一组,将其余的每个部署对象分别分为一组;对各部署对象组进行组内划分,以所述预设值为界限,每达到预设值数量的量测点划分为一内部组,对应一组内标识,其余不足预设值数量的量测点划分为一内部组;在内存中为每个部署对象组中的每个内部组分配一个用于缓存的内存文件,并进行内存镜像处理;在收到来自一部署对象辖下量测点的时间序列数据时,对该数据进行第一级有损压缩,并根据该量测点所属的部署对象组和内部组,找到该量测点对应的内存文件,将该压缩后的时间序列数据缓存到该内存文件中;在所述内存文件写满或达到预设的时间限制时,对该内存文件进行第二级无损压缩,将压缩后的数据块存储到关系型数据库中。
【技术特征摘要】
1.一种多源时间序列数据压缩存储方法,所述多源时间序列数据来自不同部署对象的不同量测点,其特征在于,包含以下步骤:根据各部署对象所包含的量测点数量,对所述各部署对象分组,将所包含量测点数量总和小于预设值的至少两个部署对象分为一组,将其余的每个部署对象分别分为一组;对各部署对象组进行组内划分,以所述预设值为界限,每达到预设值数量的量测点划分为一内部组,对应一组内标识,其余不足预设值数量的量测点划分为一内部组;在内存中为每个部署对象组中的每个内部组分配一个用于缓存的内存文件,并进行内存镜像处理;在收到来自一部署对象辖下量测点的时间序列数据时,对该数据进行第一级有损压缩,并根据该量测点所属的部署对象组和内部组,找到该量测点对应的内存文件,将该压缩后的时间序列数据缓存到该内存文件中;在所述内存文件写满或达到预设的时间限制时,对该内存文件进行第二级无损压缩,将压缩后的数据块存储到关系型数据库中。2.根据权利要求1所述的多源时间序列数据压缩存储方法,其特征在于,所述第二级无损压缩为LZW压缩;和/或所述内存文件对应的存储空间为512K至2M之间;和/或所述预设的时间限制为30分钟。3.根据权利要求1所述的多源时间序列数据压缩存储方法,其特征在于,所述内存文件的文件体由固定大小、连续的数据片组成,包含索引区和数据区,所述索引区中保存每个所述量测点在该内存文件中存储位置的索引,所述数据区中各连续的数据片对应不同的量测点,单个数据片保存同一量测点的数据。4.根据权利要求3所述的多源时间序列数据压缩存储方法,其特征在于,所述将压缩后的时间序列数据缓存到内存文件中的步骤中,包含以下子步骤:根据该数据所属量测点的本地标识找到该量测点对应的存储位置索引,如果该索引表示当前未在数据区中为该量测点分配数据片、或所分配的数据片已存满,则在所述数据区中为该量测点分配一空白数据片,所分配的数据片与该数据区中已分配的数据片连续,将所述量测点数据存储在该新分配的数据片中;反之,则将所述量测点的数据存储在该索引指示的数据片的相应位置;如果在存储过程中,当前数据片已存满,则为该量测点新分配一数据片进行存储,所分配的数据片与该数据区中已分配的数据片连续。5.根据权利要求4所述的多源时间序列数据压缩存储方法,其特征在于,还包含以下步骤:在接收到来自部署对象辖下量测点的时间序列数据之前,在所述内存文件的数据区中为该内存文件对应的内部组的所有量测点预分配一数据片进行数据缓存,在所述索引区中保存各量测点对应的数据片的...
【专利技术属性】
技术研发人员:俞高宇,张晓华,梁俊,
申请(专利权)人:上海可鲁系统软件有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。