[发明专利]数据存取方法、装置及系统在审
申请号: | 201710146261.8 | 申请日: | 2017-03-13 |
公开(公告)号: | CN108572788A | 公开(公告)日: | 2018-09-25 |
发明(设计)人: | 林正春;彭泽文 | 申请(专利权)人: | 广州市动景计算机科技有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 北京展翼知识产权代理事务所(特殊普通合伙) 11452 | 代理人: | 屠长存 |
地址: | 510627 广东省广州市天河区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据块 行位置 字段 元数据信息 多行数据 读取 装置及系统 存储 数据存取 行数据 写入 存储记录数据 数据读取性能 同一数据块 存储过程 读取条件 信息筛选 元信息 记录 | ||
本发明公开了一直数据存取方法、装置及系统,用于存储多行数据,每行数据包括多个属于不同字段的值,至少两行数据具有属于同一字段的值,存储过程如下:将多行数据中属于同一字段的值写入同一数据块,不同数据块所存储的值对应于不同的字段;针对每个数据块,在指定位置写入该数据块的第一元数据信息和行位置信息,其中,第一元数据信息用于存储记录数据块中的值的元信息,行位置信息用于记录该数据块中所存储的每个值所属的数据在多行数据中的行位置。由此,在读取过程中就可以根据数据块的第一元数据信息和行位置信息筛选出符合读取条件的数据,由此可以避免过多无意义的数据的读取,减少I/O浪费,从而可以提升数据读取性能。
技术领域
本发明涉及数据存储技术领域,特别是涉及一种数据存取方法、装置及系统。
背景技术
在分布式计算处理中(MapReduce、Hive等),经常需要从海量数据中筛选过滤出少量用户需要的数据进行计算,I/O(输入输出)量的大小是影响分布式计算处理性能的一个关键问题。例如,查询今年销量最高的前20个商品,这个查询只关心三个字段:时间(date)、商品(item)以及销售量(sales amount)。商品的其他字段,例如商品URL、商品描述、商品所属店铺等等,对该查询都是没有意义的。
为减少不必要的I/O,业界普遍采用列式存储方案对数据进行存储,以便在读取时跳过无关的列,达到减少I/O的目的。对基于现有的列式存储方案存储的数据进行读取时,虽然能够跳过无关的列,但是读取到的记录往往并非用户真正需要的数据,还需要对读取的数据进行一次筛选,以过滤掉不符合用户读取要求的记录。也就是说,基于现有的数据存储结构,在读取数据时仍有大量的I/O浪费。
由此,需要一种能够进一步减少I/O浪费的数据存取方案。
发明内容
本发明的主要目的在于提供一种数据存取方法、装置及系统,利用本发明,可以将条件筛选过程提前到数据读取阶段,由此可以减少不必要的数据读取,从而可以降低I/O浪费,提高数据读取性能。
根据本发明的一个方面,提供了一种数据存取方法,用于存储多行数据,每行数据包括多个属于不同字段的值,至少两行数据具有属于同一字段的值,该方法包括:将多行数据中属于同一字段的值写入同一数据块,不同数据块所存储的值对应于不同的字段;针对每个数据块,在指定位置写入该数据块的第一元数据信息和行位置信息,其中,第一元数据信息用于记录数据块中的值的元信息,行位置信息用于记录该数据块中所存储的每个值所属的数据在多行数据中的行位置。
由此,对于利用本发明存储的数据,在读取过程中可以根据数据块的第一元数据信息和行位置信息筛选出符合读取条件的数据,从而可以将数据筛选环节提前到数据读取阶段,避免过多无意义的数据的读取,减少I/O浪费,进而可以提升数据读取性能。
优选地,第一元数据信息可以包括:m×n位图矩阵,其中,m为预先定义的字符的个数,m个字符与自然数列m中的项一一对应,n为数据块中值的最长长度,位图矩阵中的元素aij的值为1或0,aij=1表示数据块中存在第j位字符为自然数列m中第i项所对应的字符的值,aij=0表示数据块中不存在第j位字符为自然数列m中第i项所对应的字符的值,1≤i≤m,1≤j≤n,i、j、m、n均为正整数;和/或数据块中的最小值;和/或数据块中的最大值;和/或数据块中的值在排重前的个数;和/或数据块中的值在排重后的个数;和/或数据块中的值在压缩前的大小;和/或数据块中固定值在压缩后的大小;和/或;排重压缩后的值;和/或数据块中每个值对应的行位置在行位置信息中的偏移量。
由此,可以根据第一元数据信息快速判断数据块中是否存在符合数据读取条件的值,并且还可以根据每个值对应的行位置在行位置信息中的偏移量确定符合数据读取条件的值的行位置。
优选地,行位置信息可以是通过对数据块中的值的行位置进行行程编码和zigzag编码得到的。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州市动景计算机科技有限公司,未经广州市动景计算机科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710146261.8/2.html,转载请声明来源钻瓜专利网。