CN106201354A - 数据存储方法及*** - Google Patents
数据存储方法及*** Download PDFInfo
- Publication number
- CN106201354A CN106201354A CN201610547843.2A CN201610547843A CN106201354A CN 106201354 A CN106201354 A CN 106201354A CN 201610547843 A CN201610547843 A CN 201610547843A CN 106201354 A CN106201354 A CN 106201354A
- Authority
- CN
- China
- Prior art keywords
- storage
- storage device
- data
- array
- data set
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2094—Redundant storage or storage space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/203—Failover techniques using migration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2033—Failover techniques switching over of hardware resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2035—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant without idle spare hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0617—Improving the reliability of storage systems in relation to availability
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/062—Securing storage systems
- G06F3/0623—Securing storage systems in relation to content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种用于分布式存储的数据存储方法,包括:将每组数据组均存储到集群中的N个存储装置上,以形成数据组对应存储阵列的映射列表和集群中的可用存储装置列表;监控集群中各存储装置的工作状态;当存在失效存储装置时,确定失效存储装置所在的至少一个存储阵列、至少一个存储阵列中剩余的存活存储装置及与至少一个存储阵列相关的全部数据组;遍历全部数据组,按照数据的优先级,生成待迁移数据的迁移序列;从可用存储装置列表中选择可用存储装置以失效存储装置;利用所确定的至少一个存储阵列中剩余的存活存储装置向替换后的新存储装置按照迁移序列迁移数据组。本发明通过将重要数据优先恢复,有效降低了数据丢失的风险。
Description
技术领域
本发明涉及计算机网络领域,尤其涉及一种数据存储方法及***。
背景技术
分布式存储***,是将数据按照一定规则切分并打散存储在多***立通用存储存储模块上。传统的网络存储***采用集中的存储存储模块存放所有数据,存储存储模块成为***性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要,而分布式存储***采用可扩展的***结构,利用多台存储存储模块分担存储负荷,利用位置存储模块定位存储信息,它不但提高了***的可靠性、可用性和存取效率,还易于扩展。存储集群的成千上万台存储模块可以将数据充分冗余,从而可以显著提高数据的安全性。
在存储领域,通常使用年故障率(AFR)来表征磁盘的可靠性,现在市场上通用的磁盘的AFR一般是4%左右,即如果一个集群中有365块磁盘,那么一年中有磁盘损害的概率为pow(0.96,365)=0.9999996619351175,即一年中几乎肯定有磁盘失效。而对于分布式存储集群,实际上磁盘个数通常都达到了上千块,因此应对磁盘损坏成为了每一个存储***都要解决的问题。
现有技术中,通过数据冗余来处理磁盘失效的问题,通常是每一份数据都可以存储于三块甚至更多块磁盘上,当某块磁盘失效时,可以依靠剩下的两个副本做数据恢复,防止在磁盘损坏或者存储模块宕机时数据丢失。但实际上,数据恢复策略必须要得到完善的设计,否则还是会遇到数据丢失的问题。企业在搭建存储集群时,通常都会同批次购买很多的存储存储模块和磁盘,同批次的磁盘往往具备类似的硬件规格和驱动固件,即可能出现同时失效的情况,在这种情况下,某一块磁盘开始失效之时,存储于此块磁盘上的数据都处于降级的状态,更坏的是,与之同批次的其他磁盘也随之失效的概率就会提高,如果此时另外一块磁盘也失效,则一部分数据将仅剩下一个存活的副本,并且降级程度进一步恶化,如果数据不能尽快修复,降级的数据可能会因最后一个副本所在的磁盘的失效而完全丢失。
处理磁盘失效问题,通常的方案是增加副本数,即由原来的三副本策略修改为四副本,这种简单粗暴的方案会严重增加企业的存储成本,另外增加副本数之后,数据的写入性能也会降低,因此不是一个好的方案。
通常而言,用户对于自己的数据都有重要性的区分。在磁盘出现故障从而产生数据丢失风险时,在同一块磁盘上的文件重要性并不相同的情况下,一般是根据文件名进行排队,再将数据从磁盘拷贝到新的磁盘中去,而一块盘的数据量可以达到8T甚至更多,如果以100MB/s左右的带宽写入,则需要大概24小时才能恢复,采用这种无差别的数据恢复模式,对于这块磁盘的某些重要数据而言,就有丢失的风险。
发明内容
本发明实施例提供一种数据存储方法及***,用以解决现有技术中存在存储装置失效时,进行无差别数据恢复时面临数据丢失的问题。
本发明实施例提供一种数据存储方法,包括:
将每组数据组均存储到集群中的N个存储装置上,以形成数据组对应存储阵列的映射列表和集群中剩余的可用存储装置列表;
监控集群中各存储装置的工作状态;
当存在失效存储装置时,确定所述失效存储装置所在的至少一个存储阵列、所述至少一个存储阵列中剩余的存活存储装置及与所述至少一个存储阵列相关的全部数据组;
遍历所述全部数据组,按照数据的优先级,生成待迁移数据的迁移序列;
从所述可用存储装置列表中选择可用存储装置以替换所述至少一个存储阵列中的失效存储装置;
利用所确定的所述至少一个存储阵列中剩余的存活存储装置向替换后的可用存储装置按照所述迁移序列迁移数据组。
本发明实施例提供一种数据存储***,包括:
映射模块,将每组数据组均存储到集群中的N个存储装置上,以形成数据组对应存储阵列的映射列表和集群中剩余的可用存储装置列表;
监控模块,用于监控集群中各存储装置的工作状态;
迁移数据确定模块,用于当存在失效存储装置时,确定所述失效存储装置所在的至少一个存储阵列、所述至少一个存储阵列中剩余的存活存储装置及与所述至少一个存储阵列相关的全部数据组;
迁移序列生成模块,用于遍历全部数据组,按照数据的优先级,生成待迁移数据的迁移序列;
存储修复模块,用于从所述可用存储装置列表中选择可用存储装置以替换所述至少一个存储阵列中的失效存储装置;
数据迁移模块,利用所确定的所述至少一个存储阵列中剩余的存活存储装置向替换后的可用存储装置按照所述迁移序列迁移数据组。
本发明实施例提供的用于分布式存储的数据存储方法及***,当***中存在存储装置失效时,按照数据的优先级,生成待迁移数据的迁移序列实现重要数据优先修复,改变了现有技术中无差别的数据恢复模式,从而显著提高数据安全性和可用性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明用于分布式存储的数据存储方法的流程图;
图2为本发明数据存储方法的一个实施例的流程图;
图3为本发明数据存储方法的另一个实施例的流程图;
图4为本发明数据存储***的结构示意图;
图5为本发明数据存储***的一个实施例结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
根据本发明提供的一种用于分布式存储的数据存储方法,如图1所示,该方法包括:
将每组数据组均存储到集群中的N个存储装置上,以形成数据组对应存储阵列的映射列表和集群中的可用存储装置列表;
监控集群中各存储装置的工作状态;
当存在失效存储装置时,确定所述失效存储装置所在的至少一个存储阵列、所述至少一个存储阵列中剩余的存活存储装置及与所述至少一个存储阵列相关的全部数据组;
遍历所述全部数据组,按照数据的优先级,生成待迁移数据的迁移序列;
从所述可用存储装置列表中选择可用存储装置以替换所述至少一个存储阵列中的失效存储装置;
利用所确定的所述至少一个存储阵列中剩余的存活存储装置向替换后的可用存储装置按照所述迁移序列迁移数据组。
在一些可选的实施例中,存储装置可以是各式存储器,如RAM、ROM等,也可以是磁盘或软盘等其他能够存储数据的存储介质。
在一些可选的实施例中,在每个存储装置上承载至少一组数据组,以便提高存储装置的利用率,降低存储成本。
在一些可选的实施例中,可用存储装置列表中既包括已经使用但还有足够的空间去承载其他数据组的存储装置,又包括没有被使用的存储装置。
在一些可选的实施例中,将每组数据组均存储到集群中的3个磁盘上,以形成数据组对应存储阵列的映射列表和集群中的可用磁盘列表,所述映射列表中的部分列表如下表1所示,所述可用磁盘列表中的部分列表如下表2所示,
表1:
表2:
可用磁盘列表 |
d110 |
d20 |
在本实施例中,“dg+常数”用于标记不同的数据组,“d+常数”用于标记不同的磁盘,本发明在此方面没有限制。
在一些可选的实施例中,存储阵列中存储装置的位置是有顺序的,一方面,在存储阵列中位置靠前的存储装置负责接收写入的数据,并转发给其所在存储阵列中剩余的存储装置,另一方面,当存在失效存储装置时,利用位置靠前的存储装置向新的存储装置进行数据迁移。
监控映射列表中磁盘的工作状态,在一些可选的实施例中,可以通过不断地对磁盘进行读写操作来监控其工作状态,也可以通过每隔20s对磁盘进行一次读写操作,还可以利用现有技术中的监控工具如smartmontools来监控磁盘的工作状态。
请参考图2,当剩余的存活存储装置的数量为两个以上时,根据剩余的各存活存储装置在存储阵列中的位置,生成存储装置恢复顺序,具体而言,存储装置恢复顺序可以为存储阵列中存储装置的位置顺序,利用位置靠前的存储装置向新的存储装置进行数据迁移。如磁盘d4失效时,确定其所在的存储阵列包括(d4,d666,d77)和(d4,d8,d666),磁盘d4的待迁移数据组包括磁盘d666和磁盘d77所共有的数据组dg1和磁盘8和磁盘d666所共有的数据组dg2,由存活磁盘d666负责迁移数据组dg1,存活磁盘d8负责迁移数据组dg2,按照数据的优先级,生成待迁移数据的序列,从可用磁盘列表中选择可用磁盘如d110替换失效磁盘d4。
本发明对存储装置恢复顺序不做限制,本领域技术人员可以根据不同需求具体设定。
在一些可选的实施例中,可以在确定磁盘d4失效之后立即从可用磁盘列表中选择新的磁盘替换磁盘d4,也可以在确定磁盘d4失效后一定时间内如15分钟内,磁盘d4没有修复,则从可用磁盘列表中选择新的磁盘替换磁盘d4。失效磁盘被替换后更新映射列表。
在一些可选的实施例中,遍历数据组dg1和数据组dg2中所有的文件,生成第一队列和第二队列,第一队列先于第二队列,队列中存储的是文件名而不是文件内容。具体而言,第一队列中的文件为大于100M的文件,第二队列中的文件为等于或小于100M的文件,文件越大在其队列中的位置越靠前,也可以是第一队列中的文件为读写大于热度阈值的文件,第二队列中的文件为等于或小于热度阈值的文件热度阈值根据用户需求而定,还可以是第一队列中的文件为特定时间段内创建的文件或读写过的文件,第二队列中的文件为其他文件。本发明对生成迁移序列的方式不做限制,本领域技术人员可以根据不同需求具体设定。
在一些可选的实施例中,可以先遍历数据组dg1中的文件,生成迁移序列并按照迁移序列的顺序进行迁移,然后再遍历数据组dg2中的文件,生成迁移序列并按照迁移序列的顺序进行迁移。
在一些可选的实施例中,数据迁移完成之后从其所在队列中将其删除。
请参考图3,当失效存储装置的数量为两个以上时,根据与所述失效存储装置对应的至少两个可用存储装置在存储阵列中的位置,生成存储装置恢复顺序,具体而言,所述存储装置恢复顺序可以为可用存储装置在存储阵列的位置顺序,位置靠前的可用存储装置先于位置靠后的可用存储装置。如存储阵列(d4,d666,d77)中磁盘d4和磁盘d666均失效后,从可用磁盘列表中选择可用磁盘d110替换失效磁盘d4,以及选择可用磁盘d20替换失效磁盘d666,可用磁盘d110在存储阵列中的位置比可用磁盘d20在存储阵列中的位置靠前,优先向可用磁盘d110迁移数据组。
在一些可选的实施中,在利用所确定的所述至少一个存储阵列中剩余的存活存储装置向替换后的新存储装置至少按照所述迁移序列迁移数据组期间,能够响应请求更改所述迁移序列。具体而言,磁盘d4失效后,在利用存活磁盘d666向可用磁盘d110按照迁移序列迁移数据组期间,用户请求优先迁移文件file1,若迁移序列中没有文件file1,通知用户文件file1已迁移完成;若文件file1在第二队列,将其转移到第一队列中,优先进行迁移;若文件文件file1在第一队列,通知用户文件文件file1已经开始优先迁移。
根据本发明提供的一种用于分布式存储的数据存储***1000,如图4所示,该***包括
映射模块100,将每组数据组均存储到集群中的N个存储装置上,以形成数据组对应存储阵列的映射列表和集群中剩余的可用存储装置列表;
监控模块101,用于监控集群中各存储装置的工作状态;
迁移数据确定模块102,用于当存在失效存储装置时,确定所述失效存储装置所在的至少一个存储阵列、所述至少一个存储阵列中剩余的存活存储装置及与所述至少一个存储阵列相关的全部数据组;
迁移序列生成模块103,用于遍历全部数据组,按照数据的优先级,生成待迁移数据的迁移序列;
存储修复模块104,用于从所述可用存储装置列表中选择可用存储装置以替换所述至少一个存储阵列中的失效存储装置;
数据迁移模块105,利用所确定的所述至少一个存储阵列中剩余的存活存储装置向替换后的可用存储装置按照所述迁移序列迁移数据组。
该数据存储***用于执行上述数据存储方法,并能达到与数据存储方法相同的技术效果。
在一些可选的实施中,所述数据存储***还包括人机交互接口,用于在数据迁移模块利用所确定的所述至少一个存储阵列中剩余的存活存储装置向替换后的新存储装置至少按照所述迁移序列迁移数据组期间,响应请求修改所述迁移序列。具体而言,磁盘d4失效后,在利用磁盘d666向磁盘d110按照迁移序列迁移数据组期间,用户通过人机交互接口请求优先迁移文件file1,若迁移序列中没有文件file1,通知用户文件file1已迁移完成;若文件file1在第二队列,将其转移到第一队列中,优先进行迁移;若文件文件file1在第一队列,通知用户文件文件file1已经开始优先迁移。
图5为本申请实施例提供的又一种数据存储***1200的结构示意图,本申请具体实施例并不对用户设备1200的具体实现做限定。如图5所示,该用户设备1200可以包括:
处理器(processor)1210、通信接口(Communications Interface)1220、存储器(memory)1230、以及通信总线1240。其中:
处理器1210、通信接口1220、以及存储器1230通过通信总线1240完成相互间的通信。
通信接口1220,用于与比如客户端等的网元通信。
处理器1210,用于执行程序1232,具体可以执行上述方法实施例中的相关步骤。
具体地,程序1232可以包括程序代码,所述程序代码包括计算机操作指令。
处理器1210可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,存储模块,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (12)
1.一种数据存储方法,包括:
将每组数据组均存储到集群中的N个存储装置上,以形成数据组对应存储阵列的映射列表和集群中的可用存储装置列表;
监控集群中各存储装置的工作状态;
当存在失效存储装置时,确定所述失效存储装置所在的至少一个存储阵列、所述至少一个存储阵列中剩余的存活存储装置及与所述至少一个存储阵列相关的全部数据组;
遍历所述全部数据组,按照数据的优先级,生成待迁移数据的迁移序列;
从所述可用存储装置列表中选择可用存储装置以替换所述至少一个存储阵列中的失效存储装置;
利用所确定的所述至少一个存储阵列中剩余的存活存储装置向替换后的可用存储装置按照所述迁移序列迁移数据组。
2.根据权利要求1所述的数据存储方法,其中,所述将每组数据组均存储到集群中的N个存储装置上包括:
在每个存储装置上承载至少一组数据组。
3.根据权利要求1所述的数据存储方法,其中,所述迁移序列包括第一队列和第二队列,第一队列先于第二队列。
4.根据权利要求1-3中任一项所述的数据存储方法,其中,在确定所述失效存储装置所在的至少一个存储阵列、所述至少一个存储阵列中剩余的存活存储装置及与所述至少一个存储阵列相关的全部数据组后,包括:
当剩余的存活存储装置的数量为两个以上时,根据剩余的各存活存储装置在存储阵列中的位置,生成存储装置恢复顺序;
利用所确定的所述至少一个存储阵列中剩余的存活存储装置向替换后的可用存储装置按照所述迁移序列迁移数据组包括:
利用所确定的所述至少一个存储阵列中剩余的存活存储装置按照所述存储装置恢复顺序向替换后的可用存储装置按照所述迁移序列迁移数据组。
5.根据权利要求1-3中任一项所述的数据存储方法,其中,在确定所述失效存储装置所在的至少一个存储阵列、所述至少一个存储阵列中剩余的存活存储装置及与所述至少一个存储阵列相关的全部数据组,包括:
当失效存储装置的数量为两个以上时,根据与所述失效存储装置对应的至少两个可用存储装置在存储阵列中的位置,生成存储装置恢复顺序;
利用所确定的所述至少一个存储阵列中剩余的存活存储装置向替换后的新存储装置按照所述迁移序列迁移数据组包括:
利用所确定的所述至少一个存储阵列中剩余的存活存储装置按照所述存储装置恢复顺序向替换后的可用存储装置按照所述迁移序列迁移数据组。
6.根据权利要求1-3中任一项所述的数据存储方法,其中,在利用所确定的所述至少一个存储阵列中剩余的存活存储装置向替换后的可用存储装置按照所述迁移序列迁移数据组期间,能够响应请求更改所述迁移序列。
7.一种数据存储***,包括:
映射模块,将每组数据组均存储到集群中的N个存储装置上,以形成数据组对应存储阵列的映射列表和集群中的可用存储装置列表;
监控模块,用于监控集群中各存储装置的工作状态;
迁移数据确定模块,用于当存在失效存储装置时,确定所述失效存储装置所在的至少一个存储阵列、所述至少一个存储阵列中剩余的存活存储装置及与所述至少一个存储阵列相关的全部数据组;
迁移序列生成模块,用于遍历全部数据组,按照数据的优先级,生成待迁移数据的迁移序列;
存储修复模块,用于从所述可用存储装置列表中选择可用存储装置以替换所述至少一个存储阵列中的失效存储装置;
数据迁移模块,利用所确定的所述至少一个存储阵列中剩余的存活存储装置向替换后的可用存储装置按照所述迁移序列迁移数据组。
8.根据权利要求7所述的数据存储***,其中,所述映射模块将每组数据组均存储到集群中的N个存储装置上包括:
在每个存储装置上承载至少一组数据组。
9.根据权利要求7所述的数据存储***,其中,所述迁移序列包括生成第一队列和第二队列,第一队列中先于第二队列。
10.根据权利要求7-9中任一项所述的数据存储***,其中,所述***还包括存储顺序确定模块,用于当剩余的存活存储装置的数量为两个以上时,根据剩余的各存活存储装置在存储阵列中的位置,生成存储装置恢复顺序;
所述数据迁移模块用于利用所确定的所述至少一个存储阵列中剩余的存活存储装置按照所述存储装置恢复顺序向替换后的可用存储装置按照所述迁移序列迁移数据组。
11.根据权利要求7-9中任一项所述的数据存储***,其中,所述***还包括存储顺序确定模块,用于当失效存储装置的数量为两个以上时,根据与所述失效存储装置对应的至少两个可用存储装置在存储阵列中的位置,生成存储装置恢复顺序;
所述数据迁移模块用于利用所确定的所述至少一个存储阵列中剩余的存活存储装置按照所述存储装置恢复顺序向替换后的可用存储装置按照所述迁移序列迁移数据组。
12.根据权利要求7-9中任一项所述的数据存储***,其中,所述数据存储***还包括人机交互接口,用于在数据迁移模块利用所确定的所述至少一个存储阵列中剩余的存活存储装置向替换后的可用存储装置至少按照所述迁移序列迁移数据组期间,响应请求修改所述迁移序列。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610547843.2A CN106201354A (zh) | 2016-07-12 | 2016-07-12 | 数据存储方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610547843.2A CN106201354A (zh) | 2016-07-12 | 2016-07-12 | 数据存储方法及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106201354A true CN106201354A (zh) | 2016-12-07 |
Family
ID=57476755
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610547843.2A Pending CN106201354A (zh) | 2016-07-12 | 2016-07-12 | 数据存储方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106201354A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107145306A (zh) * | 2017-04-27 | 2017-09-08 | 杭州哲信信息技术有限公司 | 分布式数据存储方法及*** |
CN108345516A (zh) * | 2018-01-09 | 2018-07-31 | 阿里巴巴集团控股有限公司 | 一种账户回迁方法、装置及设备 |
CN108804039A (zh) * | 2018-06-04 | 2018-11-13 | 平安科技(深圳)有限公司 | 自适应的数据恢复流控方法、装置、电子设备及存储介质 |
CN110413595A (zh) * | 2019-06-28 | 2019-11-05 | 万翼科技有限公司 | 一种应用于分布式数据库的数据迁移方法和相关装置 |
CN111736754A (zh) * | 2019-03-25 | 2020-10-02 | 杭州海康威视***技术有限公司 | 数据迁移方法和装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104932953A (zh) * | 2015-06-04 | 2015-09-23 | 华为技术有限公司 | 一种数据分发方法、数据存储方法、相关装置以及*** |
US20160054939A1 (en) * | 2014-08-21 | 2016-02-25 | Datrium, Inc. | Alternate Storage Arrangement in a Distributed Data Storage System with Key-Based Addressing |
-
2016
- 2016-07-12 CN CN201610547843.2A patent/CN106201354A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160054939A1 (en) * | 2014-08-21 | 2016-02-25 | Datrium, Inc. | Alternate Storage Arrangement in a Distributed Data Storage System with Key-Based Addressing |
CN104932953A (zh) * | 2015-06-04 | 2015-09-23 | 华为技术有限公司 | 一种数据分发方法、数据存储方法、相关装置以及*** |
Non-Patent Citations (1)
Title |
---|
杨萌萌: "基于HDFS的结构化数据存储和查询方法研究", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107145306A (zh) * | 2017-04-27 | 2017-09-08 | 杭州哲信信息技术有限公司 | 分布式数据存储方法及*** |
CN107145306B (zh) * | 2017-04-27 | 2020-08-21 | 杭州哲信信息技术有限公司 | 分布式数据存储方法及*** |
CN108345516A (zh) * | 2018-01-09 | 2018-07-31 | 阿里巴巴集团控股有限公司 | 一种账户回迁方法、装置及设备 |
CN108345516B (zh) * | 2018-01-09 | 2023-02-21 | 创新先进技术有限公司 | 一种账户回迁方法、装置及设备 |
CN108804039A (zh) * | 2018-06-04 | 2018-11-13 | 平安科技(深圳)有限公司 | 自适应的数据恢复流控方法、装置、电子设备及存储介质 |
WO2019232993A1 (zh) * | 2018-06-04 | 2019-12-12 | 平安科技(深圳)有限公司 | 自适应的数据恢复流控方法、装置、电子设备及存储介质 |
CN108804039B (zh) * | 2018-06-04 | 2021-01-29 | 平安科技(深圳)有限公司 | 自适应的数据恢复流控方法、装置、电子设备及存储介质 |
CN111736754A (zh) * | 2019-03-25 | 2020-10-02 | 杭州海康威视***技术有限公司 | 数据迁移方法和装置 |
CN110413595A (zh) * | 2019-06-28 | 2019-11-05 | 万翼科技有限公司 | 一种应用于分布式数据库的数据迁移方法和相关装置 |
CN110413595B (zh) * | 2019-06-28 | 2022-07-12 | 万翼科技有限公司 | 一种应用于分布式数据库的数据迁移方法和相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101577735B (zh) | 一种接管故障元数据服务器的方法、装置及*** | |
EP2998881B1 (en) | A computer implemented method for dynamic sharding | |
US12001295B2 (en) | Heterogeneous indexing and load balancing of backup and indexing resources | |
CN106201354A (zh) | 数据存储方法及*** | |
EP3230870B1 (en) | Elastic metadata and multiple tray allocation | |
CN104166606B (zh) | 文件备份方法和主存储设备 | |
CN101888405B (zh) | 一种云计算的文件***和数据处理方法 | |
US8090792B2 (en) | Method and system for a self managing and scalable grid storage | |
DE112019002584T5 (de) | Wechseln zwischen vermittlerdiensten für ein speichersystem | |
US20200043524A1 (en) | RAID Storage System with Logical Data Group Priority | |
US20100312979A1 (en) | Systems and Methods for Migrating Components in a Hierarchical Storage Network | |
US20110010518A1 (en) | Systems and Methods for Migrating Components in a Hierarchical Storage Network | |
CN102652423A (zh) | 用于集群选择和协作复制的集群族 | |
CN103051691B (zh) | 分区分配方法、装置以及分布式存储*** | |
CN105335251A (zh) | 一种故障恢复方法及*** | |
CN103246549B (zh) | 一种数据转存的方法及*** | |
CN103384550B (zh) | 储存数据的方法及装置 | |
US9164849B2 (en) | Backup jobs scheduling optimization | |
US20120198269A1 (en) | Method and apparatus for application recovery in a file system | |
CN103761059A (zh) | 一种用于海量数据管理的多盘位存储方法及*** | |
CN106569751A (zh) | 一种多控制器缓存镜像方法及*** | |
CN106250055A (zh) | 一种数据存储方法及*** | |
CN111587421A (zh) | 分布式存储***电源故障阻抗的方法和*** | |
CN106293509A (zh) | 数据存储方法及*** | |
CN102226892A (zh) | 一种磁盘容错处理方法及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20161207 |
|
WD01 | Invention patent application deemed withdrawn after publication |