当前位置: 首页 > 专利查询>清华大学专利>正文

分布式计算机存储系统中数据副本异构存储与访问方法技术方案

技术编号:17485828 阅读:100 留言:0更新日期:2018-03-17 10:16
本发明专利技术涉及一种分布式计算机存储系统中数据副本异构存储与访问方法,属于计算机数据管理技术领域。首先根据用户指定的属性优先级和数据副本数n进行属性分配,每个数据副本对应一个存储特征,并根据存储特征创建各个数据副本的存储模型,随后将数据写入到n个数据副本中;在访问请求到来时,解析访问条件,生成访问属性集,计算各个数据副本的访问优先级,找出最佳访问数据副本进行访问。本发明专利技术将不同数据副本按照用户访问特点按不同属性排序存储,从而使分布式计算机存储系统中数据的多个数据副本能够快速响应用户在数据不同属性上的访问请求,使得多副本技术在提高系统可用性的基础上,还提升了系统的访问性能。

Heterogeneous storage and access method of data copy in distributed computer storage system

【技术实现步骤摘要】
分布式计算机存储系统中数据副本异构存储与访问方法
本专利技术涉及一种分布式计算机存储系统中数据副本异构存储与访问方法,属于计算机数据管理

技术介绍
工业领域需要处理的数据通常具有多个属性,如工业领域风机传感器观测到的数据,每一条数据包含采样时间、设备编号、风速等属性;可移动设备中GPS传感器产生的每一条数据包含采样时间、设备编号、经纬度、高度等属性。用户会对这些数据进行访问,如:访问某个时间段的数据、访问某些设备的数据等。分布式计算机存储系统需根据用户的访问请求快速找到所需数据。在分布式计算机存储系统中,为了提高系统的性能以及可用性,将数据以多副本的形式进行存储已成为一种共识。多副本技术是指将一份数据复制多份,并将各数据副本分别存放在分布式计算机存储系统的不同节点上。当某个(或某些)节点宕机时,会导致相应数据副本无法访问。在此情况下,只要有一份数据副本可以正常访问,分布式计算机存储系统就可以正常使用,以此提高系统的可用性。现在流行的分布式计算机存储系统大多采用了多副本技术,如HDFS,Cassandra,MongoDB,Hbase,Dynamo等。分布式计算机存储系统通常有两种架构,P2P对等架构和中心架构,对于这两种架构,在访问请求来临时,处理请求并协调工作的节点称为协调者节点,接收协调者节点请求的为非协调者节点。在分布式计算机存储系统中,数据可以按照表结构进行管理,一个表结构是由若干列组成的。在一个节点内,表中的多行数据会以某列或者某几列的列值进行排序存储,这些列被称为排序列。用户在建表的时候通过指定排序列,就可以间接地控制数据在磁盘上的存储方式(该存储方式也被理解为数据的存储模型),从而得到不同的系统读写性能。目前,计算机的磁盘结构可以被理解为是一维的:即一个数据集在持久化到磁盘上时,会将数据按照某种方式排序,逐一地存储在磁盘上。例如对于时间序列数据,用户可以指定按照时间顺序将数据存储在磁盘上。当处理针对时间的访问时,可以快速找到对应的数据段,避免扫描全部数据。而当处理针对其他属性的访问时,需要对全部数据进行遍历。传统的解决方法是在其他属性上建立索引,以加速在其他属性的访问,但这种方法会增加额外的空间开销。对于上述问题,传统的多副本技术并没有带来访问能力的提升:多个数据副本在不同节点存储时,各数据副本均按照同一个属性进行排序存储,即具有相同的存储模型。因此,所有数据副本的访问响应能力相同。可见,多副本技术仅仅提升了系统可用性,并没有提升分布式计算机存储系统在不同属性上的访问速度。
技术实现思路
本专利技术的目的是针对现有的分布式计算机存储系统只针对单个属性访问较快的问题,提出一种分布式计算机存储系统中数据副本异构存储与访问方法,本方法将不同数据副本按照用户访问特点按不同属性排序存储,从而使分布式计算机存储系统中数据的多个数据副本能够快速响应用户在数据不同属性上的访问请求,使得多副本技术在提高系统可用性的基础上,还提升了系统的访问性能。本专利技术中,由于各个数据副本在相应节点(磁盘)上的存储模型不同,故称作数据副本异构存储。本专利技术提出的分布式计算机存储系统中数据副本异构存储与访问方法,采用如下技术方案:记分布式计算机存储系统的节点集合为S,其中A是协调者节点,其他n个节点为非协调者节点;系统中的数据由k个属性组成,记系统中各数据的数据副本数均为n,以上属性均由用户设置;该方法包括以下步骤:(1)协调者节点A接收客户端请求,判断接收的客户端请求是否为建立数据副本结构请求,若是,则执行步骤(2),否则判断接收的客户端请求是否为数据导入请求,若是,则执行步骤(3),否则执行步骤(4);(2)建立数据副本结构(2-1)协调者节点A接收用户指定的各属性的访问优先级,访问优先级范围为从1到n的正整数;访问优先级数值越高,表明对应的属性越被频繁用于做访问条件;对于用户不指定的属性,则默认访问优先级为1;(2-2)协调者节点A将k个属性按照访问优先级从高到底排序,相同优先级的属性随机排序,排好序的属性列表记为P,P=(p_1,p_2,…,p_i,…,p_k),其中p_i表示按照访问优先级从高到底排序后的第i个属性,1≤i≤k;将属性p_i分配给第(i-1)%n+1个数据副本,其中%为取模符号;将数据副本r分配到的m_r个属性按优先级从高到底排序,r=1,2,…,n,排序后的m_r个属性称为该数据副本r的存储特征,记做Y_r=(y_1,y_2,…,y_m_r);协调者节点A将各个数据副本的存储特征发送给对应的非协调者节点;(2-3)所有非协调者节点接收存储特征后,根据各自的存储特征分别建立数据副本结构,并保存各自的存储特征;(2-4)返回步骤(1);(3)数据导入(3-1)判断对应的数据副本结构是否建立,若是,则继续执行,否则返回步骤(1);(3-2)协调者节点A接收到一份数据集后,将接收的数据集按照各非协调者节点的存储模型发送给n个非协调者节点;(3-3)各非协调者节点对接收的数据集均分别做如下数据副本异构存储处理:首先将接收的数据集中的数据按照y_1属性的值进行排序,若y_1属性的值相等,则按照y_2属性排序,以此类推,直至检索到某一属性值不相等时,则按照该属性值的顺序对接收的数据集中的数据进行排序;该非协调者节点将排序后的数据集进行存储;(3-4)返回步骤(1);(4)数据访问(4-1)判断对应的数据副本结构是否建立,若是,则继续执行,否则返回步骤(1);(4-2)协调者节点A接收客户端的数据访问请求为同时对数据的多个属性进行过滤,将被同时访问的多个属性构成的集合记做集合Q;(4-3)最佳访问数据副本选择:协调者节点A计算各个数据副本的访问优先级,对于每个数据副本,协调者节点A首先将数据副本r的访问优先级W_r初始化为0;然后将该数据副本的存储特征内的每个属性y_j依次与集合Q进行判断,如果y_j∈Q,则将该数据副本的属性优先级W_r加2k-j,j=1,2,…,m_r;将访问优先级最大的数据副本作为最佳访问数据副本,如果多个数据副本访问优先级并列第一,则随机选择一个作为最佳数据副本;协调者节点A将数据访问请求发送给最佳访问数据副本所在的非协调者节点R;(4-4)非协调者节点R接收协调者节点A发送的数据访问请求后,访问自身存储数据副本内的数据并返回访问结果给协调者节点A;(4-5)协调者节点A返回访问结果给客户端;(4-6)返回步骤(1)。本专利技术提出的分布式计算机存储系统中数据副本异构存储与访问方法,其特点是:本专利技术首先根据用户指定的属性优先级和数据副本数n进行属性分配,每个数据副本对应一个存储特征,并根据存储特征创建各个数据副本的存储模型,随后将数据写入到n个数据副本中;在对数据的访问请求到来时,解析访问条件,生成访问属性集,计算各个数据副本的访问优先级,找出最佳访问数据副本进行访问后向用户返回结果。本专利技术的优点是:1、本专利技术将多副本技术的应用价值从提高系统可用性扩展到了加速系统多样化访问。与传统多副本方法相比,在不引入额外磁盘空间占用的情况下,本专利技术提供了加速系统在数据不同属性的访问性能。如在对风机传感器数据或时空数据进行访问时,可以支持时间、设备号等多个属性的快速访问,如访问某段时间的数据或者访问本文档来自技高网
...
分布式计算机存储系统中数据副本异构存储与访问方法

【技术保护点】
一种分布式计算机存储系统中数据副本异构存储与访问方法,其特征在于,记分布式计算机存储系统的节点集合为S,其中A是协调者节点,其他n个节点为非协调者节点;系统中的数据由k个属性组成,记系统中各数据的数据副本数均为n,以上属性均由用户设置;该方法包括以下步骤:(1)协调者节点A接收客户端请求,判断接收的客户端请求是否为建立数据副本结构请求,若是,则执行步骤(2),否则判断接收的客户端请求是否为数据导入请求,若是,则执行步骤(3),否则执行步骤(4);(2)建立数据副本结构(2‑1)协调者节点A接收用户指定的各属性的访问优先级,访问优先级范围为从1到n的正整数;访问优先级数值越高,表明对应的属性越被频繁用于做访问条件;对于用户不指定的属性,则默认访问优先级为1;(2‑2)协调者节点A将k个属性按照访问优先级从高到底排序,相同优先级的属性随机排序,排好序的属性列表记为P,P=(p_1,p_2,…,p_i,…,p_k),其中p_i表示按照访问优先级从高到底排序后的第i个属性,1≤i≤k;将属性p_i分配给第(i‑1)%n+1个数据副本,其中%为取模符号;将数据副本r分配到的m_r个属性按优先级从高到底排序,r=1,2,…,n,排序后的m_r个属性称为该数据副本r的存储特征,记做Y_r=(y_1,y_2,…,y_m_r);协调者节点A将各个数据副本的存储特征发送给对应的非协调者节点;(2‑3)所有非协调者节点接收存储特征后,根据各自的存储特征分别建立数据副本结构,并保存各自的存储特征;(2‑4)返回步骤(1);(3)数据导入(3‑1)判断对应的数据副本结构是否建立,若是,则继续执行,否则返回步骤(1);(3‑2)协调者节点A接收到一份数据集后,将接收的数据集按照各非协调者节点的存储模型发送给n个非协调者节点;(3‑3)各非协调者节点对接收的数据集均分别做如下数据副本异构存储处理:首先将接收的数据集中的数据按照y_1属性的值进行排序,若y_1属性的值相等,则按照y_2属性排序,以此类推,直至检索到某一属性值不相等时,则按照该属性值的顺序对接收的数据集中的数据进行排序;该非协调者节点将排序后的数据集进行存储;(3‑4)返回步骤(1);(4)数据访问(4‑1)判断对应的数据副本结构是否建立,若是,则继续执行,否则返回步骤(1);(4‑2)协调者节点A接收客户端的数据访问请求为同时对数据的多个属性进行过滤,将被同时访问的多个属性构成的集合记做集合Q;(4‑3)最佳访问数据副本选择:协调者节点A计算各个数据副本的访问优先级,对于每个数据副本,协调者节点A首先将数据副本r的访问优先级W_r初始化为0;然后将该数据副本的存储特征内的每个属性y_j依次与集合Q进行判断,如果y_j∈Q,则将该数据副本的属性优先级W_r加2...

【技术特征摘要】
1.一种分布式计算机存储系统中数据副本异构存储与访问方法,其特征在于,记分布式计算机存储系统的节点集合为S,其中A是协调者节点,其他n个节点为非协调者节点;系统中的数据由k个属性组成,记系统中各数据的数据副本数均为n,以上属性均由用户设置;该方法包括以下步骤:(1)协调者节点A接收客户端请求,判断接收的客户端请求是否为建立数据副本结构请求,若是,则执行步骤(2),否则判断接收的客户端请求是否为数据导入请求,若是,则执行步骤(3),否则执行步骤(4);(2)建立数据副本结构(2-1)协调者节点A接收用户指定的各属性的访问优先级,访问优先级范围为从1到n的正整数;访问优先级数值越高,表明对应的属性越被频繁用于做访问条件;对于用户不指定的属性,则默认访问优先级为1;(2-2)协调者节点A将k个属性按照访问优先级从高到底排序,相同优先级的属性随机排序,排好序的属性列表记为P,P=(p_1,p_2,…,p_i,…,p_k),其中p_i表示按照访问优先级从高到底排序后的第i个属性,1≤i≤k;将属性p_i分配给第(i-1)%n+1个数据副本,其中%为取模符号;将数据副本r分配到的m_r个属性按优先级从高到底排序,r=1,2,…,n,排序后的m_r个属性称为该数据副本r的存储特征,记做Y_r=(y_1,y_2,…,y_m_r);协调者节点A将各个数据副本的存储特征发送给对应的非协调者节点;(2-3)所有非协调者节点接收存储特征后,根据各自的存储特征分别建立数据副本结构,并保存各自的存储特征;(2-4)返回步骤(1);(3)数据导入(3-1)判断对应的数据副本结构是...

【专利技术属性】
技术研发人员:王建民黄向东乔嘉林龙明盛
申请(专利权)人:清华大学
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1