KR100434932B1 - Raid시스템의결함데이터를관리하는방법및장치 - Google Patents
Raid시스템의결함데이터를관리하는방법및장치 Download PDFInfo
- Publication number
- KR100434932B1 KR100434932B1 KR10-1998-0704500A KR19980704500A KR100434932B1 KR 100434932 B1 KR100434932 B1 KR 100434932B1 KR 19980704500 A KR19980704500 A KR 19980704500A KR 100434932 B1 KR100434932 B1 KR 100434932B1
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- block
- data
- bdt
- memory module
- Prior art date
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/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
- G06F11/1092—Rebuilding, e.g. when physically replacing a failing disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/1088—Scrubbing in RAID systems with parity
Abstract
결함 디스크 데이터의 재구성동안 판독 에러가 발생할 때, 에러 블록에 따른 블록은 대응하는 결함 디스크 블록의 재구성을 가능하게 하지 않는다. 2개의 데이터 블록의 오용을 방지하기 위해, 배드 데이터 테이블[BDT](23)이 구성되며 블록의 어드레스 목록은 판독하며 그 블록은 재구성될 것이다. 표준 필러 블록(106)은 2개의 결함 블록으로 기록되며 새로운 패리티 블록이 생성된다. 메모리 어레이(200)에 대한 모든 액세스 요구의 어드레스는 BDT(109)와 비교되며, 리스트되지 않는다면, 그 액세스는 진행된다(200). 어드레스가 리스트되면, 에러 신호(204)는 복귀된다. 리스트된 기록 요구(203)에 있어서, 결함 블록 어드레스는 BDT(205)에서 삭제되고, 새로운 데이터가 블록으로 기록(206)되며 새로운 패리티 블록이 계산되어 저장된다.
Description
본 발명은 값싼 디스크의 리던던트 어레이(RAID; Redundant Arrays of Inexpensive Disks)라고 불리는 하드 디스크의 결함 허용 한계 어레이에 관한 것이다. 좀더 상세하게는, 본 발명은 디스크 결함으로 인해 미검출된 판독 에러를 포함하는 디스크 이외의 디스크의 교체 및 구축이 필요할 때 발견되는 RAID 시스템에서 미검출된 판독 에러의 관리 및 수정에 관한 것이다.
발명의 요약
본 발명은, 어레이의 한 채널에서 디스크 기록 매체 에러, 및 다른 채널에서 디스크 드라이브의 결함, 교체 및 구축 때문에 동일한 RAID 데이터 그룹내에 2개의 결함 데이터 블록이 존재할 때, 의사 데이터의 잠재적 생성을 회피하는 결함 데이터 관리 서브시스템을 제공한다. 본 발명의 결함 데이터 관리 서브시스템은:
a) 결함 디스크에서 데이터를 재구성하기 위해 사용되는 채널 중 배드 데이터 블록을 검사하는 결함 드라이브를 재구축하고, 결함이 발생하면, 그 블록 및 재구축되고 있는 대응하는 디스크의 블록에 필러(filler) 코드를 기록함으로써 배드 데이터 블록을 스크럽(scrub)하기 위한 디스크 구축 루틴;
b) 필러 코드를 갖춘 채널을 포함하는 모든 채널을 사용함으로써 배드 데이터 블록에 대응하는 새로운 패리티 블록을 계산하는 것;
c) 모든 배드 데이터 블록을 리스트하는 배드 데이터 테이블을 갱신하는 것; 및
d) 디스크 어레이 액세스 요구의 데이터 어드레스가 배드 데이터 테이블에 리스트되어 있는지를 결정하기 위해 각 디스크 어레이 액세스 요구를 검사하고, 리스트되어 있지 않다면 액세스가 진행될 수 있게 하고, 그렇지 않다면 액세스 요구가 기록을 위한 것인지를 검사하며, 기록을 위한 것이라면 기록을 가능하게 하며 배드 데이터 테이블의 블록 어드레스를 삭제하고 새로운 패리티 블록을 생성하며, 기록을 위한 것이 아니라면 에러 신호를 생성하는 것을 포함한다.
본 발명은 상기 설명된 잠재적인 문제를 초래하지 않고 RAID 시스템에서 결함 데이터를 관리하는 수단을 제공한다.
바이트 스트라이프가 단일 어드레스 블록이기에, RAID-3 및 RAID-4 시스템이 블록 길이를 제외하고 동일하다고 볼 수 있다. 이에 따라, 이하에서 블록을 참조하는 것은 다른 지시 사항이 없다면 모두 RAID-3 바이트 스트라이프를 포함하는 것으로 이해될 것이다.
또한, "RAID 시스템"은 다른 지시 사항이 없다면 RAID-3, 4, 5 시스템을 나타내는 데 사용될 것이다.
개인용 컴퓨터를 위해 개발된 자기 디스크 기술에 기초한 RAID 시스템은 개선된 성능, 신뢰성, 전력 소비를 제공함으로써 단일 대형의 고가의 디스크 메모리에 대하여 주목할 만한 대안을 제시한다. 소형 디스크의 제조자는 ANSI X3.131-1986 소형 컴퓨터 동기 인터페이스(SCSI)와 같은 더 높은 수준의 주변기기 인터페이스를 나타내는 표준화 노력으로 그런 성능을 제시할 수 있다. 이것은 데이터의 대규모 블록 전송을 위해 인터리브된 방식으로 구성된, 또는 소규모 트랜잭션 프로세싱을 위해 독립 병렬 액세스로 정렬된 값싼 디스크의 어레이의 발전을 초래했다.
대규모 디스크 어레이의 형성은 전기 기계 디바이스의 대규모 중복 사용으로 인해 발생되는 신뢰성 문제를 초래한다. 어레이의 평균 고장 시간(MTTF)은 어레이에 있어서 디스크 수와 함께 증가되는 것으로 판단되어 왔다(Patterson, D.A., Gibson, G. 및 Katz, R.H., "A Case for Redundant Arrays of Inexpensive Disks(RAID)", 보고서 번호 UCB/CSD 87/391, 1987년 12월, 캘리포니아주 94720 버클리에 있는 캘리포니아 대학 컴퓨터과학과(EECS)).
본 발명은 아래 주어진 상세한 설명 및 발명의 바람직한 실시예의 첨부된 도면으로부터 완전히 이해될 수 있으나, 특정 실시예에 따른 발명을 제한하도록 취급되선 안되며 설명 및 이해하기 위해서이다.
도 1은 디스크 어레이 컨트롤러를 포함하여 종래 기술 MxN 디스크 어레이의 블록도이다.
도 2는 도 1의 어레이에 기초한 종래 기술 논리 디스크 영역 구성을 도시한다.
도 3a는 종래 기술 RAID-1 시스템의 메모리 맵을 도시한다.
도 3b는 종래 기술 RAID-3 시스템의 메모리 맵을 도시한다.
도 3c는 종래 기술 RAID-4 시스템의 메모리 맵을 도시한다.
도 3d는 종래 기술 RAID-5 시스템의 메모리 맵을 도시한다.
도 4a, 4b 및 4c는 종래 기술에 따라, 각각 초기 RAID-1 메모리 맵, 이중 결함 메모리 RAID-1 메모리 맵 및 구축된 이중 결함 RAID-1 메모리 맵을 도시한다.
도 5a, 5b 및 5c는 종래 기술에 따라, 각각 초기 RAID-5 메모리 맵, 이중 결함 RAID-5 메모리 맵 및 구축된 이중 결함 RAID-5 메모리 맵을 도시한다.
도 6은 본 발명의 디스크 구축 및 재구성 방법의 흐름도이다.
도 7은 어레이를 액세스하는 본 발명의 방법의 흐름도이다.
도 8은 RAID 결함 데이터 관리 시스템을 위한 본 발명의 하드웨어 구성을 도시한다.
도 6은, 다른 채널에서 대응하는 데이터 블록을 재구성하는 동안 디스크 판독 결함이 RAID 시스템의 채널에서 발생하였기 때문에 의사(spurious) 데이터가 생성되는 문제를 회피하는 데 사용되는 디스크 구축 및 재구성 방법(100)을 도시하는 흐름도이다. 데이터 블록의 재구성 또는 디스크 드라이브의 구축은 공통 패리티 블록을 공유하는 같은 그룹에 속하는 나머지 블록의 대응하는 비트를 비트 대 비트로 EXOR 논리비교함으로써 완성된다.
디스크 구축 및 재구성 방법(100)은 재구성의 EXOR 방법으로 시작하는 단계(101)에서 시작된다. 재구성동안, 단계(104)는 재구성을 위해 필요한 블록 중 하나가 배드 블록이라는 표시를 검사한다. 배드 블록이 검출되지 않고 재구성이 완료되면, 프로세스는 단계(111)에서 종료된다. 그렇지 않다면, 단계(105)는 재구성을 위해 필요한 배드 데이터 블록이 패리티 블록인지를 검사한다. 패리티 블록이라면, 단계(107)는 재구성되는 블록에 필러 블록을 기록하고 단계(109)는 그 데이터 블록이 복구 불능(배드)이라고 기록함으로써 배드 데이터 테이블(BDT)을 갱신한다. (필러 블록은 임의의 편리한 영문자, 숫자 코드를 포함할 수 있다) 단계(104)의 배드 데이터 블록이 패리티 블록이 아니라면, 단계(106)는 이 배드 데이터 블록을 교체하기 위해 필러 블록을 기록함으로써 배드 데이터 블록을 스크럽(scrub)하며, 단계(107)에서, 재구성되었을 대응하는 블록에 필러 블록을 또한 기록한다. 단계(109)는 단계(104)의 블록 및 재구성되고 있는 채널의 대응하는 블록 모두 배드 블록임을 기록함으로써 BDT를 갱신한다. BDT의 각 엔트리는 인공(artificial) 데이터 및 복구 불능 데이터를 포함하는 블록을 식별한다. 단계(108)는 필러 블록을 포함하여 모든 데이터 채널 블록을 EXOR 논리비교함으로써 새로운 패리티 데이터를 계산하고, 새로운 패리티 블록을 기록하며 단계(110)는 단계(104)로 복귀하여 재구성 프로세스를 재개한다.
도 6의 프로시저는
(1) 데이터 블록중 하나에서 재구성동안 판독 에러가 발생한다면, 모든 잔류하는 "양호한" 데이터 블록은 회복가능하고,
(2) 필러 블록의 인공 데이터는 실제 데이터와 혼돈될 수 없다는 것을 보장할 수 있게 해준다.
단계(109)는 배드 데이터 테이블, 즉 BDT를 갱신하는데, BDT는 디스크 컨트롤러(12)에 위치하고, 각 디스크의 예약 구간에도 위치할 수 있다. BDT는 모든 배드 데이터 블록(필러 블록)의 리스트를 포함하고, 디스크 어레이에 대한 어떠한 판독 요구라도 먼저 목적지 어드레스를 BDT에 리스트된 어드레스와 비교하고, 어드레스가 리스트되어 있다면 적절한 에러 신호를 요구 에이전트에 보내준다. BDT가 갱신된 후, 재구성 프로세스는 단계(110)에서 계속되며, 단계(104)에서의 모니터링은 완료될 때까지 계속된다. 추가적인 배드 데이터 블록이 단계(104)에서 발견된다면, 단계(105-110)는 필요한 만큼 반복된다.
도 7의 흐름도에 도시된 바와 같이, 어레이 액세스(200)를 검사하는 비교기를 동작시키기 위한 방법은 RAID 메모리 시스템과 함께 BDT 사용을 관리하는데 이용된다. 이 방법은 액세스가 요구될 때마다 호출되며, 액세스 요구가 어드레스가 BDT에 어드레스가 리스트되어 있는 배드 데이터 블록에 대한 것인지를 검사함으로써 단계(201)에서 시작되고, 그렇지 않다면 정상 동작 모드로 액세스를 진행한다. 만일 어드레스가 BDT에 리스트되어 있다면, 단계(203)는 액세스가 기록 동작을 위한 것인지를 결정하고, 그렇지 않다면, 단계(204)에서 에러 플래그가 생성된다. 에러 플래그는 판독 요구가 복구 불가능한 데이터 블록에 대한 것임을 호스트 시스템에게 알려준다. 만일 요구가 기록 액세스를 위한 것이라면, 단계(205)는 BDT로부터 이 블록 어드레스를 삭제하고 단계(206)에서 기록 회로가 새로운 데이터를 이 블록 어드레스에 기록하도록 허용하며, 이렇게 해서 배드 데이터 블록 상태를 스크럽한다. 단계(207)는 새로운 블록 패리티를 계산하고, 액세스된 데이터 그룹과 연관된 대응하는 패리티 블록에 새로운 블록 패리티를 기록하기 위한 것이다.
도 8은 도 6 및 7에 개시된 방법을 이용하는 본 발명의 RAID 시스템의 아키텍쳐를 도시하는 블록도이다. 일반적으로, 상기 설명된 종류의 결함 데이터 관리를 갖춘 RAID 시스템(20)은 그 컨트롤러(22)를 통해 SCSI 버스(21)로부터 인터페이스된다. (SCSI는 미국 규격 X3T9.2/86-109 "소형 컴퓨터 시스템 인터페이스-2"에 설명된 것처럼 잘 알려진 업계 표준의 버스를 나타낸다.) 버스(21)는 RAID 시스템(20)을 호스트 컴퓨터에 연결한다. 디스크 어레이 컨트롤러(22)는, 메모리 액세스와 연관된 임의의 논리 어드레스를 대응하는 물리적 어드레스로 매핑하고, 데이터 트래픽을 관리하고, 각 디스크 드라이브의 동작을 제어하고, 상태 정보를 호스트에 제공하기 위해 필요한 논리를 제공한다. BDT(23)는 컨트롤러(22)에 결합되어 도시되지만 집적 칩 디스크 어레이 컨트롤러와 일체적 부분이 될 수 있다. 또한, 액세스 어드레스가 디스크 컨트롤러(22)의 어레이 레벨보다는 디스크 레벨에서 검사될 수 있도록 각 디스크의 배드 데이터 정보가 선택적으로 저장되는, 로컬 BDT(24)를 갖는 어레이의 각 디스크(11)가 도시된다.
당업자들이 이해하는 바와 같이, 상기 설명한 방법 및 장치의 많은 변화는 본 발명의 정신 및 범위를 벗어나지 않고 당업자에 인해 행해질 수 있으며, 다음에 따르는 청구항으로만 제한되어야 한다.
Claims (16)
- 메모리 어레이 컨트롤러를 구비하고, 적어도 세 개의 메모리 채널을 구비하며, 상기 메모리 어레이 컨트롤러를 액세스할 수 있는 다중 채널 메모리 시스템에 있어 결함 있는 데이터를 관리하는 장치로서,상기 메모리 어레이 컨트롤러는 상기 메모리 시스템에 대한 액세스를 제어하고 메모리 결함을 검출하고 메모리 에러를 검출하며 결함 있는 메모리 채널을 재구성하고,상기 메모리 채널 각각은 하나 이상의 모듈을 포함하고, 각 모듈은 결함 및 판독 에러 검출 수단을 포함하고 결함시 독립적으로 대체될 수 있는 것인,상기 결함 데이터 관리 장치에 있어서,a) 교체 메모리 모듈 내의 복구 불가능한 데이터 블록들의 어드레스를 저장하고, 상기 메모리 시스템의 다른 메모리 모듈들과 관련된 다른 복구 불가능한 데이터 블록들의 어드레스를 저장하는 배드 데이터 테이블(BDT)로서,상기 교체 메모리 모듈은 상기 메모리 시스템의 결함 있는 제1 메모리 모듈로부터 재구성되는 데이터를 저장하고,상기 복구 불가능한 데이터 블록들은 상기 교체 메모리 모듈에 데이터를 재구성하여 저장하는 것을 완료하기 전에, 상기 메모리 시스템의 제2 메모리 모듈에 결함이 발생할 때 생기는 것인, 상기 BDT;b) 상기 제1 메모리 모듈 내에 저장된 데이터를 재구성하는 동안 상기 제2메모리 모듈내에서 결함이 검출될 때, 상기 제2 메모리 모듈 내의 배드 블록 위치에 필러 데이터를 기록하고,상기 교체 메모리 모듈 내의 관련된 위치에 필러 데이터를 기록하며,복구 불가능한 데이터를 나타내는 배드 데이터 블록들의 어드레스를 상기 BDT에 기록하며,결함 있는 제1 메모리 모듈의 재구성의 개시 후에 작동가능한 기록 회로; 및c) 상기 BDT에 저장된 어드레스에 대한 메모리 액세스 요구를 검출하고,상기 액세스 요구가 판독 요구라면 복구 불가능한 데이터 에러 신호를 호스트 시스템에 되돌려주고,상기 액세스 요구가 기록 요구라면 상기 BDT에 리스트된 어드레스에 대한 기록을 허용하고 상기 BDT로부터 상기 리스트된 어드레스를 삭제할 수 있게 하는 검출 회로를 포함하는 결함 데이터 관리 장치.
- 제 1 항에 있어서, 상기 다중 채널 메모리 시스템이 RAID-3 메모리 어레이인 것을 특징으로 하는 결함 데이터 관리 장치.
- 제 1 항에 있어서, 상기 다중 채널 메모리 시스템이 RAID-4 메모리 어레이인 것을 특징으로 하는 결함 데이터 관리 장치.
- 제 1 항에 있어서, 상기 다중 채널 메모리 시스템이 RAID-5 메모리 어레이인것을 특징으로 하는 결함 데이터 관리 장치.
- 제 1 항에 있어서, 상기 BDT가 상기 메모리 어레이 컨트롤러의 일부인 것을 특징으로 하는 결함 데이터 관리 장치.
- 제 1 항에 있어서, 상기 BDT가 각 메모리 모듈의 예약 부분(reserved section)에 저장되는 것을 특징으로 하는 결함 데이터 관리 장치.
- 제 1 항에 있어서, 상기 BDT가 상기 메모리 어레이 컨트롤러의 메모리 및 각 메모리 모듈의 예약 부분에 저장되는 것을 특징으로 하는 결함 데이터 관리 장치.
- 메모리 에러 검출 및 단일 메모리 모듈 정정 수단을 구비하고, 결함 및 판독 에러를 검출할 수 있는 적어도 세 개의 메모리 모듈-각 메모리 모듈은 결함시 독립적으로 교체가능함-을 구비하는 메모리 시스템에서, 결함 데이터를 관리하는 방법에 있어서,a) 메모리 모듈의 제1 판독 에러를 검출하는 단계;b) 상기 제1 판독 에러가 상기 메모리 모듈의 결함으로 인한 것인지를 결정하고, 만약 그렇다면, 상기 결함 있는 메모리 모들을 교체하고, 상기 단일 메모리 모듈 정정 수단을 사용하여 데이터를 재구성하고, 상기 재구성된 데이터를 교체 메모리 모듈에 저장하는 단계;c) 상기 재구성 과정 동안 상기 교체 메모리 모듈에서 제1 블록에 대하여 데이터를 재구성하는 것을 못하게 할 제2 판독 에러-제2 메모리 모듈의 제2 블록과 관련되어 있음-가 있는지 다른 모든 메모리 모듈을 모니터링하고,만일 상기 교체 메모리 모듈에서 제1 블록을 재구성하는 동안 상기 메모리 시스템의 제2 메모리 모듈의 제2 블록에서 이러한 제2 판독 에러가 검출된다면, 그리고, 상기 제1 블록과 상기 제2 블록 모두 패리티 블록이 아니라면,i) 상기 제1 블록의 어드레스와 상기 제2 블록의 어드레스를 배드 데이터 테이블(BDT)로 입력하고,ii) 상기 제1 블록과 상기 제2 블록 모두에 필러(filler) 블록을 기록하며,iii) 상기 메모리 시스템의 관련된 스트라이프내의 대응하는 모든 데이터 블록과 함께 상기 제1 블록 및 상기 제2 블록을 사용하여, 상기 메모리 시스템의 관련된 스트라이프내의 대응하는 패리티 블록을 계산하고 교체하며,그렇지 않으면,1) 상기 제1 블록과 상기 제2 블록 중 데이터 블록인 것에 필러 블록을 기록하고,ii) 대응하는 모든 데이터 블록과 함께 필러 블록을 사용하여, 패리티 정보를 포함하도록 지정된 상기 제1 블록과 상기 제2 블록 중 나머지 블록에, 대응하는 패리티 블록을 계산하여 기록하며,그 후, 종료될 때까지 상기 교체 메모리 모듈에서 데이터를 재구성하는 것을 계속하는 단계; 및d) 요구된 어드레스를 상기 BDT에 리스트된 어드레스와 비교함으로써 상기 메모리 시스템에 대한 모든 메모리 액세스 요구를 모니터링하고,만일 상기 어드레스가 상기 BDT에 리스트되어 있지 않다면 상기 액세스 요구가 처리되도록 하며, 그렇지 않으면, 상기 요구가 기록 요구인지 검사하고,만일 기록 요구가 아니라면, 복구 불가능한 데이터 에러 신호를 되돌려주며, 만일 기록 요구라면, 어드레스가 지정된 필러 블록이 유효한 데이터 블록에 의해 교체되도록 상기 기록 요구가 처리되도록 하고,그 후, 새로운 대응하는 패리티 데이터 블록을 계산하여 입력하는 단계를 포함하고,이에 따라, 만일 상기 메모리 시스템의 임의의 모듈에 후속적으로 하나의 결함이 발생한다면, 상기 계산된 패리티 정보, 필러 데이터, 나머지 그룹 데이터를 사용하여 상기 제1 블록 및 상기 제2 블록과 동일한 그룹의 블록들에 저장된 데이터가 복구될 수 있는 것을 특징으로 하는 결함 데이터 관리 방법.
- 제 8 항에 있어서, 상기 메모리 시스템이 RAID-3 메모리인 것을 특징으로 하는 결함 데이터 관리 방법.
- 제 8 항에 있어서, 상기 메모리 시스템이 RAID-4 메모리 어레이인 것을 특징으로 하는 결함 데이터 관리 방법.
- 제 8 항에 있어서, 상기 메모리 시스템이 RAID-5 메모리 어레이인 것을 특징으로 하는 결함 데이터 관리 방법.
- 다수개의 결함을 처리하는 결함 데이터 관리 시스템을 갖춘 메모리 어레이 시스템에 있어서,a) 적어도 세 개의 메모리 모듈을 포함하는 메모리 어레이로서, 상기 각 메모리 모듈은 결함시에 독립적으로 교체될 수 있고 결함 및 판독 에러 검출기를 갖는, 상기 메모리 어레이; 및b) 상기 메모리 어레이를 메모리 버스에 연결하고, 상기 메모리 어레이에 대한 액세스를 제어하고, 메모리 어레이 결함을 검출하고, 단일 메모리 모듈을 정정하며, 상기 메모리 버스를 통해 메모리 상태에 대하여 알리는, 메모리 어레이 컨트롤러를 포함하고,상기 메모리 어레이 컨트롤러는,i) 제1 메모리 모듈의 재구성 동안 검출되는 복구 불가능한 데이터 블록들의 어드레스를 저장하고, 상기 제1 메모리 모듈에 저장된 데이터를 재구성하는 것을 완료하기 전에 제2 메모리 모듈에서 후속적인 결함이 검출된 이후에 발생하는 복구 불가능한 데이터 블록들의 어드레스를 저장하는 배드 데이터 테이블(BDT)로서, 상기 재구성은 제1 메모리 모듈에 결함이 발생하여 제1 메모리 모듈의 교체를 필요로 하기 때문인 것인, 상기 BDT;ii) 교체된 제1 메모리 모듈 및 제2 메모리 모듈내의 복구 불가능한 데이터블록들에 대응하는 블록들에 필러 데이터 블록들을 기록하고, 복구불가능한 데이터 블록 어드레스를 상기 BDT에 기록하는 기록 회로; 및iii) 상기 BDT에 저장된 어드레스와 메모리 액세스 요구 어드레스를 비교함으로써, 배드 데이터 블록들에 대한 메모리 액세스 요구를 검출하고,만일 상기 액세스 요구가 판독 요구이고 상기 어드레스가 상기 BDT 내에 저장되어 있다면, 요구하는 에이전트에게 복구 불가능 에러 신호를 되돌려주고,만일 상기 액세스 요구가 기록 액세스에 대한 것이라면 상기 액세스 요구가 진행되도록 하는, 비교기를 더 포함하는 것을 특징으로 하는 메모리 어레이 시스템.
- 제 12 항에 있어서, 각 메모리 모듈이 상기 BDT를 저장하기 위한 예약된 메모리 영역을 갖는 것을 특징으로 하는 메모리 어레이 시스템.
- 제 12 항에 있어서, 상기 메모리 어레이 시스템이 RAID-3 메모리 시스템인 것을 특징으로 하는 메모리 어레이 시스템.
- 제 12 항에 있어서, 상기 메모리 어레이 시스템이 RAID-4 메모리 시스템인 것을 특징으로 하는 메모리 어레이 시스템.
- 제 12 항에 있어서, 상기 메모리 어레이 시스템이 RAID-5 메모리 시스템인것을 특징으로 하는 메모리 어레이 시스템.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/573,127 US5913927A (en) | 1995-12-15 | 1995-12-15 | Method and apparatus for management of faulty data in a raid system |
US8/573,127 | 1995-12-15 | ||
US08/573,127 | 1995-12-15 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20000064410A KR20000064410A (ko) | 2000-11-06 |
KR100434932B1 true KR100434932B1 (ko) | 2004-08-27 |
Family
ID=24290758
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-1998-0704500A KR100434932B1 (ko) | 1995-12-15 | 1996-12-11 | Raid시스템의결함데이터를관리하는방법및장치 |
Country Status (8)
Country | Link |
---|---|
US (1) | US5913927A (ko) |
EP (1) | EP0954786A4 (ko) |
JP (1) | JPH11510292A (ko) |
KR (1) | KR100434932B1 (ko) |
AU (1) | AU713181B2 (ko) |
MX (1) | MX9804792A (ko) |
TW (1) | TW469368B (ko) |
WO (1) | WO1997022931A1 (ko) |
Families Citing this family (54)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09288888A (ja) * | 1996-04-22 | 1997-11-04 | Mitsubishi Electric Corp | 半導体記憶装置 |
JP3290365B2 (ja) * | 1996-11-19 | 2002-06-10 | インターナショナル・ビジネス・マシーンズ・コーポレーション | エラー回復プロシージャを実行する方法 |
US6571324B1 (en) * | 1997-06-26 | 2003-05-27 | Hewlett-Packard Development Company, L.P. | Warmswap of failed memory modules and data reconstruction in a mirrored writeback cache system |
JP3618529B2 (ja) * | 1997-11-04 | 2005-02-09 | 富士通株式会社 | ディスクアレイ装置 |
JP3196726B2 (ja) * | 1998-06-10 | 2001-08-06 | 日本電気株式会社 | ディスクアレイ接続システム及びその障害発生装置検出方法並びにその制御プログラムを記録した記録媒体 |
US6775791B2 (en) * | 2001-01-26 | 2004-08-10 | Dell Products L.P. | Replaceable memory modules with parity-based data recovery |
US6766491B2 (en) * | 2001-05-09 | 2004-07-20 | Dot Hill Systems Corp. | Parity mirroring between controllers in an active-active controller pair |
US6854071B2 (en) | 2001-05-14 | 2005-02-08 | International Business Machines Corporation | Method and apparatus for providing write recovery of faulty data in a non-redundant raid system |
US6718435B2 (en) | 2001-08-14 | 2004-04-06 | International Business Machines Corporation | Method and system for migrating data in a raid logical drive migration |
US6959399B2 (en) * | 2001-09-24 | 2005-10-25 | International Business Machines Corporation | Selective automated power cycling of faulty disk in intelligent disk array enclosure for error recovery |
KR20030073982A (ko) * | 2002-03-14 | 2003-09-19 | 한국전자통신연구원 | 레이드 서브 시스템에서 중복 데이터의 일관성 유지 방법 |
US6959413B2 (en) * | 2002-06-18 | 2005-10-25 | Lsi Logic Corporation | Method of handling unreadable blocks during rebuilding of a RAID device |
US6944791B2 (en) * | 2002-07-18 | 2005-09-13 | Lsi Logic Corporation | Method of handling unreadable blocks during write of a RAID device |
US7210004B2 (en) * | 2003-06-26 | 2007-04-24 | Copan Systems | Method and system for background processing of data in a storage system |
US7210005B2 (en) * | 2002-09-03 | 2007-04-24 | Copan Systems, Inc. | Method and apparatus for power-efficient high-capacity scalable storage system |
US6957301B2 (en) * | 2002-09-18 | 2005-10-18 | International Business Machines Corporation | System and method for detecting data integrity problems on a data storage device |
US20040128582A1 (en) * | 2002-11-06 | 2004-07-01 | Ching-Hai Chou | Method and apparatus for dynamic bad disk sector recovery |
KR20040066638A (ko) | 2003-01-20 | 2004-07-27 | 삼성전자주식회사 | 외부 저장 서브 시스템에서의 패리티 저장 방법 및에러블록 복구 방법 |
US7278053B2 (en) * | 2003-05-06 | 2007-10-02 | International Business Machines Corporation | Self healing storage system |
US7434097B2 (en) * | 2003-06-05 | 2008-10-07 | Copan System, Inc. | Method and apparatus for efficient fault-tolerant disk drive replacement in raid storage systems |
US20050210304A1 (en) * | 2003-06-26 | 2005-09-22 | Copan Systems | Method and apparatus for power-efficient high-capacity scalable storage system |
US20060090098A1 (en) * | 2003-09-11 | 2006-04-27 | Copan Systems, Inc. | Proactive data reliability in a power-managed storage system |
US7373559B2 (en) * | 2003-09-11 | 2008-05-13 | Copan Systems, Inc. | Method and system for proactive drive replacement for high availability storage systems |
JP2005107676A (ja) * | 2003-09-29 | 2005-04-21 | Toshiba Corp | アレイコントローラ及びディスクアレイ再構築方法 |
US20050091449A1 (en) * | 2003-10-23 | 2005-04-28 | Dell Products L.P. | System, method and software for faster parity based raid creation |
US7200770B2 (en) * | 2003-12-31 | 2007-04-03 | Hewlett-Packard Development Company, L.P. | Restoring access to a failed data storage device in a redundant memory system |
US7434090B2 (en) * | 2004-09-30 | 2008-10-07 | Copan System, Inc. | Method and apparatus for just in time RAID spare drive pool management |
US7454686B2 (en) * | 2004-11-23 | 2008-11-18 | International Business Machines Corporation | Apparatus and method to check data integrity when handling data |
TWI295021B (en) * | 2004-12-10 | 2008-03-21 | Infortrend Technology Inc | Storage system and method for handling bad storage device data therefor |
US7490263B2 (en) * | 2006-01-17 | 2009-02-10 | Allen King | Apparatus, system, and method for a storage device's enforcing write recovery of erroneous data |
US7721146B2 (en) * | 2006-05-04 | 2010-05-18 | Dell Products L.P. | Method and system for bad block management in RAID arrays |
US7506201B2 (en) * | 2006-08-28 | 2009-03-17 | International Business Machines Corporation | System and method of repair management for RAID arrays |
US7814361B2 (en) * | 2007-10-12 | 2010-10-12 | Dell Products L.P. | System and method for synchronizing redundant data in a storage array |
US20100037091A1 (en) * | 2008-08-06 | 2010-02-11 | Anant Baderdinni | Logical drive bad block management of redundant array of independent disks |
US8301942B2 (en) * | 2009-04-10 | 2012-10-30 | International Business Machines Corporation | Managing possibly logically bad blocks in storage devices |
JP4740354B2 (ja) | 2009-06-19 | 2011-08-03 | 富士通株式会社 | ディスク制御装置およびディスク制御方法 |
US8229901B2 (en) * | 2010-09-04 | 2012-07-24 | International Business Machines Corporation | Disk scrubbing |
US8578208B2 (en) | 2011-01-13 | 2013-11-05 | Micron Technology, Inc. | Determining location of error detection data |
US8954670B1 (en) * | 2011-04-18 | 2015-02-10 | American Megatrends, Inc. | Systems and methods for improved fault tolerance in RAID configurations |
CN102207895B (zh) * | 2011-05-27 | 2012-11-14 | 杭州华三通信技术有限公司 | 一种独立磁盘冗余阵列数据重建方法和装置 |
WO2013145617A1 (ja) * | 2012-03-29 | 2013-10-03 | パナソニック株式会社 | 情報処理装置、情報処理方法及び情報記憶媒体 |
CN103064803B (zh) * | 2012-12-10 | 2015-11-25 | 华为技术有限公司 | 一种NAND Flash存储设备的数据读写方法和装置 |
US9104604B2 (en) * | 2013-02-26 | 2015-08-11 | International Business Machines Corporation | Preventing unrecoverable errors during a disk regeneration in a disk array |
CN103530069A (zh) * | 2013-11-05 | 2014-01-22 | 浪潮(北京)电子信息产业有限公司 | 一种raid5磁盘阵列坏扇区处理方法 |
CN103647804B (zh) | 2013-11-22 | 2017-04-26 | 华为技术有限公司 | 一种存储单元的数据处理方法、设备及系统 |
US9268640B1 (en) * | 2013-12-20 | 2016-02-23 | Emc Corporation | Limiting data loss on parity RAID groups |
CN104007936B (zh) * | 2014-01-07 | 2017-09-29 | 华为技术有限公司 | 访问数据的方法及装置 |
CN104035840B (zh) * | 2014-06-12 | 2017-10-31 | 浙江宇视科技有限公司 | 一种恢复条带读错误的方法和装置 |
CN106294357B (zh) * | 2015-05-14 | 2019-07-09 | 阿里巴巴集团控股有限公司 | 数据处理方法和流计算系统 |
US9952927B2 (en) | 2016-01-27 | 2018-04-24 | Futurewei Technologies, Inc. | Data protection for cold storage system |
US10120769B2 (en) | 2016-04-13 | 2018-11-06 | Dell Products L.P. | Raid rebuild algorithm with low I/O impact |
KR20180087494A (ko) * | 2017-01-23 | 2018-08-02 | 에스케이하이닉스 주식회사 | 메모리 장치, 메모리 시스템 및 메모리 시스템의 동작 방법 |
CN111381997B (zh) * | 2018-12-28 | 2024-03-01 | 杭州宏杉科技股份有限公司 | 一种raid重建方法及装置 |
US11886295B2 (en) | 2022-01-31 | 2024-01-30 | Pure Storage, Inc. | Intra-block error correction |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5457791A (en) * | 1992-05-07 | 1995-10-10 | Hitachi, Ltd. | Storage system and method of control |
US5463643A (en) * | 1994-03-07 | 1995-10-31 | Dell Usa, L.P. | Redundant memory channel array configuration with data striping and error correction capabilities |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5083264A (en) * | 1989-04-24 | 1992-01-21 | Xerox Corporation | Process and apparatus for saving and restoring critical files on the disk memory of an electrostatographic reproduction machine |
US5088081A (en) * | 1990-03-28 | 1992-02-11 | Prime Computer, Inc. | Method and apparatus for improved disk access |
US5522065A (en) * | 1991-08-30 | 1996-05-28 | Compaq Computer Corporation | Method for performing write operations in a parity fault tolerant disk array |
US5313626A (en) * | 1991-12-17 | 1994-05-17 | Jones Craig S | Disk drive array with efficient background rebuilding |
JP3058743B2 (ja) * | 1992-01-21 | 2000-07-04 | 株式会社日立製作所 | ディスクアレイ制御装置 |
US5341381A (en) * | 1992-01-21 | 1994-08-23 | Tandem Computers, Incorporated | Redundant array parity caching system |
US5572660A (en) * | 1993-10-27 | 1996-11-05 | Dell Usa, L.P. | System and method for selective write-back caching within a disk array subsystem |
US5572661A (en) * | 1994-10-05 | 1996-11-05 | Hewlett-Packard Company | Methods and system for detecting data loss in a hierarchic data storage system |
-
1995
- 1995-12-15 US US08/573,127 patent/US5913927A/en not_active Expired - Lifetime
-
1996
- 1996-12-11 EP EP96944338A patent/EP0954786A4/en not_active Withdrawn
- 1996-12-11 KR KR10-1998-0704500A patent/KR100434932B1/ko not_active IP Right Cessation
- 1996-12-11 AU AU14170/97A patent/AU713181B2/en not_active Ceased
- 1996-12-11 WO PCT/US1996/019810 patent/WO1997022931A1/en active IP Right Grant
- 1996-12-11 JP JP9522906A patent/JPH11510292A/ja active Pending
- 1996-12-14 TW TW085115539A patent/TW469368B/zh active
-
1998
- 1998-06-15 MX MX9804792A patent/MX9804792A/es unknown
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5457791A (en) * | 1992-05-07 | 1995-10-10 | Hitachi, Ltd. | Storage system and method of control |
US5463643A (en) * | 1994-03-07 | 1995-10-31 | Dell Usa, L.P. | Redundant memory channel array configuration with data striping and error correction capabilities |
Also Published As
Publication number | Publication date |
---|---|
WO1997022931A1 (en) | 1997-06-26 |
US5913927A (en) | 1999-06-22 |
MX9804792A (es) | 1998-11-30 |
AU1417097A (en) | 1997-07-14 |
KR20000064410A (ko) | 2000-11-06 |
TW469368B (en) | 2001-12-21 |
AU713181B2 (en) | 1999-11-25 |
EP0954786A1 (en) | 1999-11-10 |
JPH11510292A (ja) | 1999-09-07 |
EP0954786A4 (en) | 2009-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100434932B1 (ko) | Raid시스템의결함데이터를관리하는방법및장치 | |
US7328392B2 (en) | Disk array system | |
US6282670B1 (en) | Managing defective media in a RAID system | |
US6467023B1 (en) | Method for logical unit creation with immediate availability in a raid storage environment | |
US5566316A (en) | Method and apparatus for hierarchical management of data storage elements in an array storage device | |
US7984328B1 (en) | System and method for reducing unrecoverable media errors | |
US5950230A (en) | RAID array configuration synchronization at power on | |
US7788541B2 (en) | Apparatus and method for identifying disk drives with unreported data corruption | |
US5504858A (en) | Method and apparatus for preserving data integrity in a multiple disk raid organized storage system | |
JP3269552B2 (ja) | ディスクドライブメモリ | |
US5790773A (en) | Method and apparatus for generating snapshot copies for data backup in a raid subsystem | |
US5233618A (en) | Data correcting applicable to redundant arrays of independent disks | |
JP2981245B2 (ja) | アレイ型ディスク駆動機構システム及び方法 | |
US6243827B1 (en) | Multiple-channel failure detection in raid systems | |
US5951691A (en) | Method and system for detection and reconstruction of corrupted data in a data storage subsystem | |
US7523257B2 (en) | Method of managing raid level bad blocks in a networked storage system | |
JP2942079B2 (ja) | 記憶システム | |
EP1895414A1 (en) | Storage control apparatus and failure recovery method for storage control apparatus | |
JP2000207136A (ja) | 複数ドライブ故障トレラントraidアルゴリズム | |
US20100131706A1 (en) | Data reliability bit storage qualifier and logical unit metadata | |
EP0517816A1 (en) | Non-volatile memory storage of write operation identifier in data storage device | |
JPH09305328A (ja) | ディスクアレイ装置 | |
US10896088B2 (en) | Metadata recovery mechanism for page storage | |
US7730370B2 (en) | Apparatus and method for disk read checking | |
US20030229820A1 (en) | Method, apparatus, and program for data mirroring with striped hotspare |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20080324 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |