一种数据处理方法和设备技术

技术编号:10182578 阅读:108 留言:0更新日期:2014-07-03 13:10
本发明专利技术公开了一种数据处理方法和设备,所述方法包括:对存储系统中的存储设备进行分组,每个分组中的存储设备数量与数据副本数量相同,所述方法包括:接收客户端发送的用于请求数据加载地址的地址请求;根据地址请求确定目标分组以及目标分组中各存储设备上的目标数据块的地址;向客户端返回目标分组中各存储设备上的目标数据块的地址,以使客户端根据目标分组中各存储设备上的目标数据块的地址向相应分组中的存储设备发起数据加载请求。通过采用本发明专利技术提供的方法,可以减少被加锁存储设备的数量,降低存储系统出现死锁的概率。

【技术实现步骤摘要】
一种数据处理方法和设备
本专利技术涉及通信
,尤其涉及一种数据处理方法和设备。
技术介绍
事务处理(TRANSACTION)是由一个或多个SQL(StructuredQueryLanguage,结构化查询语言)语句序列结合在一起所形成的一个逻辑处理单元。事务处理中的每个语句都是完成整个任务的一部分工作,所有的语句组织在一起能够完成某一特定的任务。DBMS(DatabaseManagementSystem,数据库管理系统)在对事务处理中的语句进行处理时,是按照下面的约定来进行的,即“事务处理中的所有语句被作为一个原子工作单位,所有的语句既可成功地被执行,也可以没有任何一个语句被执行”。DBMS负责完成这种约定,即使在事务处理中应用程序异常退出,或者是硬件出现故障等各种意外情况下,也是如此。在任何意外情况下,DBMS都负责确保在系统恢复正常后,数据库内容决不会出现“部分事务处理中的语句被执行完”的情况。HDFS(HadoopDistributedFileSystem,分布式文件系统)采用主/从(master/slave)架构。一个HDFS集群是由一个命名节点(Namenode)和一定数目的数据节点(Datanode)组成。Namenode是一个中心服务器,负责管理文件系统的命名空间(namespace)和客户端对文件的访问。Datanode在集群中一般是一个节点一个,负责管理节点上附带的存储。在内部,一个文件其实分成一个或多个block(块),这些block存储在Datanode集合里。Block副本的存放是HDFS可靠性和性能的关键,在大多数情况下,副本数是3,HDFS的存放策略是将一个副本存放在本地机架上的节点,一个副本放在同一机架上的另一个节点,最后一个副本放在不同机架上的一个节点。机架的错误远远比节点的错误少,这个策略不会影响到数据的可靠性和有效性。三分之一的副本在一个节点上,三分之二在一个机架上,其他保存在剩下的机架中,这一策略改进了写的性能。现有技术中提出了多副本的分布式存储系统,数据经过分区后存储在各个数据节点上,每份数据都有多个副本,副本数量由系统参数设置。该方案的副本在各个节点分配策略与Hadoop分布式文件系统的副本分布策略一致。上述技术方案极易导致大量数据节点被锁,从而导致大量数据死锁,如图1所示,存在8个存储设备,每个存储设备即为一个节点,假设一个事务需要对数据块2进行更新,此时事务会加载表锁操作,使整个存储设备上的数据无法进行操作,数据块2位于存储设备1、2、4上,由于表锁操作,位于存储设备1上的数据块1和存储设备4上的数据块5都将被锁,以此类推,所有存储设备都会被锁,可见,现有技术会导致一个数据块被锁时,大量不相关存储设备同时被锁,从而影响分布式存储系统所能提供的服务。
技术实现思路
本专利技术实施例提供了一种数据处理方法和设备,以减少被加锁存储设备的数量,降低存储系统出现死锁的概率。为达到上述目的,本专利技术实施例提供了一种数据处理方法,对存储系统中的存储设备进行分组,每个分组中的存储设备数量与数据副本数量相同,所述方法包括:接收客户端发送的用于请求数据加载地址的地址请求;根据所述地址请求确定目标分组以及所述目标分组中各存储设备上的目标数据块的地址;向所述客户端返回所述目标分组中各存储设备上的目标数据块的地址,以使所述客户端根据所述目标分组中各存储设备上的目标数据块的地址向相应分组中的存储设备发起数据加载请求。优选的,所述对存储系统中的存储设备进行分组,具体包括:将设置在同一机架上的存储设备划分到同一分组中;或将接入同一交换机的存储设备划分到同一分组中;或将处于同一网段的存储设备划分到同一分组中。优选的,所述根据地址请求确定目标分组以及所述目标分组中各存储设备上的目标数据块的地址,具体包括:选择所有分组中负载最小的分组作为目标分组,并从所述目标分组中的存储设备上选择未写入数据的数据块作为目标数据块;或按照分组顺序确定目标分组,并从所述目标分组中的存储设备上选择未写入数据的数据块作为目标数据块。为达到上述目的,本专利技术实施例提供了一种管理设备,对存储系统中的存储设备进行分组,每个分组中的存储设备数量与数据副本数量相同,所述管理设备包括:接收单元,用于接收客户端发送的用于请求数据加载地址的地址请求;确定单元,用于根据所述接收单元接收到的地址请求确定目标分组以及所述目标分组中各存储设备上的目标数据块的地址;处理单元,用于根据所述接收单元接收到的地址请求,向所述客户端返回所述目标分组中各存储设备上的目标数据块的地址,以使所述客户端根据所述目标分组中各存储设备上的目标数据块的地址向相应分组中的存储设备发起数据加载请求。优选的,还包括:配置单元,用于对所述存储系统中的存储设备配置分组,其中,每个分组中的存储设备数量与数据副本数量相同。优选的,所述配置单元,具体用于将设置在同一机架上的存储设备配置为一个分组;或将接入同一交换机的存储设备配置为一个分组;或将处于同一网段的存储设备配置为一个分组。优选的,所述确定单元,具体用于根据所述接收单元接收到的所述地址请求,选择所有分组中负载最小的分组作为目标分组,并从所述目标分组中的存储设备上选择未写入数据的数据块作为目标数据块;或根据所述接收单元接收到的所述地址请求,按照分组顺序确定目标分组,并从所述目标分组中的存储设备上选择未写入数据的数据块作为目标数据块。本专利技术实施例中还提供了一种数据处理方法,对存储系统中的存储设备进行分组,每个分组中的存储设备数量与数据副本数量相同,所述方法包括:接收客户端发送的用于请求数据访问地址的地址请求;根据所述地址请求确定目标分组以及所述目标分组中各存储设备上的目标数据块的地址;向所述客户端返回所述目标分组中各存储设备上的目标数据块的地址,以使所述客户端根据所述目标分组中各存储设备上的目标数据块的地址向相应分组中的存储设备发起数据访问请求。优选的,所述对存储系统中的存储设备进行分组,具体包括:将设置在同一机架上的存储设备划分到同一分组中;或将接入同一交换机的存储设备划分到同一分组中;或将处于同一网段的存储设备划分到同一分组中。优选的,所述地址请求中携带了数据标识,所述根据地址请求确定目标分组以及所述目标分组中各存储设备上的目标数据块的地址,具体包括:根据所述数据标识,选择所有分组中存储相应数据的分组作为目标分组,并在所述目标分组中的存储设备上选择存储有所述相应数据的数据块作为目标数据块。本专利技术实施例中还提供了一种管理设备,对存储系统中的存储设备进行分组,每个分组中的存储设备数量与数据副本数量相同,所述管理设备包括:接收单元,用于接收客户端发送的用于请求数据访问地址的地址请求;确定单元,用于根据所述接收单元接收到的地址请求确定目标分组以及所述目标分组中各存储设备上的目标数据块的地址;处理单元,用于根据所述接收单元接收到的地址请求,向所述客户端返回所述目标分组中各存储设备上的目标数据块的地址,以使所述客户端根据所述目标分组中各存储设备上的目标数据块的地址向相应分组中的存储设备发起数据访问请求。优选的,还包括:配置单元,用于对所述存储系统中的存储设备配置分组,其中,每个分组中的存储设备数量与数据副本数量相同。优选的,所述配本文档来自技高网
...
一种数据处理方法和设备

【技术保护点】
一种数据处理方法,其特征在于,对存储系统中的存储设备进行分组,每个分组中的存储设备数量与数据副本数量相同,所述方法包括:接收客户端发送的用于请求数据加载地址的地址请求;根据所述地址请求确定目标分组以及所述目标分组中各存储设备上的目标数据块的地址;向所述客户端返回所述目标分组中各存储设备上的目标数据块的地址,以使所述客户端根据所述目标分组中各存储设备上的目标数据块的地址向相应分组中的存储设备发起数据加载请求。

【技术特征摘要】
1.一种数据处理方法,其特征在于,对存储系统中的存储设备进行分组,每个分组中的存储设备数量与数据副本数量相同,同一数据块的各副本,分别存储于同一分组中的各存储设备上,所述方法包括:接收客户端发送的用于请求数据加载地址的地址请求;根据所述地址请求确定目标分组以及所述目标分组中各存储设备上的目标数据块的地址;向所述客户端返回所述目标分组中各存储设备上的目标数据块的地址,以使所述客户端根据所述目标分组中各存储设备上的目标数据块的地址向相应分组中的存储设备发起数据加载请求。2.如权利要求1所述的方法,其特征在于,所述对存储系统中的存储设备进行分组,具体包括:将设置在同一机架上的存储设备划分到同一分组中;或将接入同一交换机的存储设备划分到同一分组中;或将处于同一网段的存储设备划分到同一分组中。3.如权利要求1所述的方法,其特征在于,所述根据地址请求确定目标分组以及所述目标分组中各存储设备上的目标数据块的地址,具体包括:选择所有分组中负载最小的分组作为目标分组,并从所述目标分组中的存储设备上选择未写入数据的数据块作为目标数据块;或按照分组顺序确定目标分组,并从所述目标分组中的存储设备上选择未写入数据的数据块作为目标数据块。4.一种管理设备,其特征在于,对存储系统中的存储设备进行分组,每个分组中的存储设备数量与数据副本数量相同,同一数据块的各副本,分别存储于同一分组中的各存储设备上,所述管理设备包括:接收单元,用于接收客户端发送的用于请求数据加载地址的地址请求;确定单元,用于根据所述接收单元接收到的地址请求确定目标分组以及所述目标分组中各存储设备上的目标数据块的地址;处理单元,用于根据所述接收单元接收到的地址请求,向所述客户端返回所述目标分组中各存储设备上的目标数据块的地址,以使所述客户端根据所述目标分组中各存储设备上的目标数据块的地址向相应分组中的存储设备发起数据加载请求。5.如权利要求4所述的管理设备,其特征在于,还包括:配置单元,用于对所述存储系统中的存储设备配置分组,其中,每个分组中的存储设备数量与数据副本数量相同。6.如权利要求5所述的管理设备,其特征在于,所述配置单元,具体用于将设置在同一机架上的存储设备配置为一个分组;或将接入同一交换机的存储设备配置为一个分组;或将处于同一网段的存储设备配置为一个分组。7.如权利要求4所述的管理设备,其特征在于,所述确定单元,具体用于根据所述接收单元接收到的所述地址请求,选择所有分组中负载最小的分组作为目标分组,并从所述目标分组中的存储设备上选择未写入数据的数据块作为目标数据块;或根据所述接收单元接收到的所述地址请求,按照分组顺序确定目标分组,并...

【专利技术属性】
技术研发人员:周大钱岭梁智超
申请(专利权)人:中国移动通信集团公司
类型:发明
国别省市:北京;11

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

1