[发明专利]一种分布式数据存储结构及数据存储方法和数据查询方法有效
申请号: | 201610678434.6 | 申请日: | 2016-08-17 |
公开(公告)号: | CN106326387B | 公开(公告)日: | 2019-06-04 |
发明(设计)人: | 段翰聪;闵革勇;张建;钟红霞;詹文翰 | 申请(专利权)人: | 电子科技大学 |
主分类号: | G06F16/22 | 分类号: | G06F16/22 |
代理公司: | 成都行之专利代理事务所(普通合伙) 51220 | 代理人: | 李朝虎 |
地址: | 610000 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 存储单元 分布式数据存储 数据存储单元 存储节点 生成数据 数据存储 缓存 查询 查询功能 存储数据 全局负载 数据查询 外部数据 物理机器 映射关系 主控节点 管理器 统计 | ||
1.一种分布式数据存储结构,其特征在于,包括:
主控节点:用于建立数据存储单元Block到所在的物理机器的映射关系、统计全局负载情况以及生成数据存储单元Block的ID;
数据导入管理器:用于对外部数据进行缓冲,将外部数据按照数据值排序,生成索引Groupkey和数据,然后生成数据存储单元Block存储索引Groupkey和数据,最后导入数据存储单元Block到存储节点;
存储节点:存储数据存储单元Block,对查询者提供查询功能;
存储节点包括子元数据管理器、数据存储单元Block、数据读取器模块;
子元数据管理器:用于维护存储节点内部由数据库名、表名、列名唯一确定的列到数据存储单元Block的映射、维护数据存储单元Block的生命周期;
数据存储单元Block:用于存储索引Groupkey和数据;
数据读取器模块:用于按照存储的索引Groupkey提供范围查询和等值查询接口,为外部提供了数据访问,具有指向真实数据的指针。
2.根据权利要求1所述的一种分布式数据存储结构,其特征在于:所述主控节点的元数据组织为由数据库名、表名、列名唯一确定的列以及每个存储节点存储的数据中包含的列的列值范围到存储节点的地址的映射,主控节点的元数据组织的结构为:<数据库名、表名字、列名、列值范围、存储节点的地址>。
3.根据权利要求1所述的一种分布式数据存储结构,其特征在于:存储节点的元数据组织为由数据库名、表名、列名唯一确定的列到数据存储单元Block的映射,存储节点的元数据组织的结构为:<数据库名、表名字、列名、列值范围、数据存储单元Block的ID>。
4.根据权利要求1所述的一种分布式数据存储结构,其特征在于:数据存储单元Block存储数据的方式为:以索引Groupkey加数据的方式存储在数据存储单元Block当中,一个数据存储单元Block包含一张表的若干列或全部的列,每张表的所有的列都会在数据存储单元Block中存储,在数据导入管理器生成这个数据存储单元Block的时候,生成这个数据存储单元Block对应的元数据,在存储节点存储数据存储单元的时候,记录元数据到子元数据管理器;
数据存储单元Block的头部结构分为定长结构和变长两个部分:
定长部分包括:block_id、begin_rowid、rows;
block_id:表示数据存储单元block的编号,由数据导入管理器生成,全局唯一:每个数据存储单元Block对应着一个全局唯一的block_id;
begin_rowid:指明了这个数据存储单元Block中所存储的数据的起始的rowid;
rows:表明这个数据存储单元Block中一共有多少行的数据;
变长部分包括column_offset;
column_offset:column_offset为一个数组,第i个值表示这个数据存储单元Block中的第i个列的物理位置相对于数据存储单元Block起始头部的偏移量,i为自然数。
5.根据权利要求4所述的一种分布式数据存储结构,其特征在于:所述column_offset的内部逻辑结构包括column_type部分和其余约定部分,column_type是头部信息,其余约定部分是根据column_type部分由使用人员根据具体的需求具体约定。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610678434.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:显示终端及其串行接口信号传输方法、装置
- 下一篇:一种鞋印新类别检测方法