KR20090094594A - 저널링 파일 시스템에 따라 데이터를 기록한 정보저장매체,저널링 파일 시스템을 이용해서 데이터를 기록/복구하는방법 및 장치 - Google Patents
저널링 파일 시스템에 따라 데이터를 기록한 정보저장매체,저널링 파일 시스템을 이용해서 데이터를 기록/복구하는방법 및 장치 Download PDFInfo
- Publication number
- KR20090094594A KR20090094594A KR1020080019641A KR20080019641A KR20090094594A KR 20090094594 A KR20090094594 A KR 20090094594A KR 1020080019641 A KR1020080019641 A KR 1020080019641A KR 20080019641 A KR20080019641 A KR 20080019641A KR 20090094594 A KR20090094594 A KR 20090094594A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- area
- recorded
- log
- journal
- Prior art date
Links
Images
Classifications
-
- 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/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
-
- 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/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- 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/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/068—Hybrid storage device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
저널링 파일 시스템을 이용해서 데이터를 기록하는 방법에 관한 것으로, 상기 저장 매체에서 로그가 저장되는 저널 영역을 데이터가 기록되는 일련의 과정에 대응하여 순차적으로 복수 개의 영역으로 할당하고, 데이터가 기록되는 일련의 과정에 대하여 로그에 기록하고, 일련의 과정에 대응하는 데이터를 데이터 영역에 기록함으로써, 저널 영역과 데이터 영역을 연속적이고 순차적으로 배치함으로써 저널 영역을 찾기 위한 시간을 줄일 수 있고, 저널 영역을 분산해서 배치하였기 때문에 데이터 복구시 저널 영역을 검색하는 시간을 줄일 수 있다.
Description
본 발명은 저널링 파일 시스템에 따라 데이터를 기록한 정보저장매체, 저널링 파일 시스템을 이용해서 데이터를 기록/복구하는 방법 및 장치에 관한 것으로, 더욱 상세하게는 저널링 파일 시스템에서 저널 영역과 데이터 영역을 연속적이고 순차적으로 배치함으로써 개선된 저널링 파일 시스템에 따라 데이터를 기록한 정보저장매체, 저널링 파일 시스템을 이용해서 데이터를 기록/복구하는 방법 및 장치에 관한 것이다.
파일 시스템이란 파일의 실제 데이터와 메타데이터를 유지/저장하는 체계이다. 파일에 이름을 붙이고, 저장이나 검색을 위해 논리적으로 그것들이 어디에 위치시켜야 하는지 등을 나타내는 방법이다.
저널링 파일 시스템은 일정부분을 기록을 위해 남겨두어 백업(backup) 및 복구 능력이 있는 파일 시스템을 말한다. 저널링 파일 시스템은 사용자가 어떠한 내 용을 입력 또는 수정하면 그 내용을 바로 하드디스크에 기록하기 전에 관련 내용을 로그(log)에 기록한다. 그리하여 만약 기록 중에 가장 빈번하게 발생하는 문제인 정전이나 기타 다른 이유로 인하여 비정상적인 종료를 하게 되면 다시 부팅할 때 로그에 기록된 내용을 참고로 하여 다시 작성하거나 복구를 하게 된다.
도 1은 종래의 저널링 파일 시스템을 설명하기 위한 도면이다.
도 1을 참조하면, 일반적인 저널링 파일 시스템에서 디스크(110)에 포함된 저널 영역(111)은 미리 정해진 일정 영역이다. 예를 들어, 메타데이터(120) 기록 시 저널 영역(111)에 데이터를 먼저 기록하고(단계 ①), 후에 데이터 영역(112)에 기록한다(단계 ②). 어플리케이션데이터(130) 기록 시에도 저널 영역(111)에 데이터를 먼저 기록하고(단계 ③), 후에 데이터 영역(113)에 기록한다(단계 ④). 이 경우 추가적인 기록으로 인하여 작업 처리량(throughput)이 떨어지며, 저널 영역(111)이 미리 정해져 있어, 데이터 영역과 일정 거리가 떨어진 저널 영역에 액세스하기 위한 시간(seek time)이 소모되는 문제점이 있다. 또한, 저널 영역 안에서도 탐색(search)을 통해서 데이터를 찾음에 있어서, 영역이 큰 경우 서치 시간 소모량이 많아지는 문제점이 있다.
본 발명은 상기와 같은 문제점을 해결하기 위하여, 저널링 파일 시스템에서 저널 영역과 데이터 영역을 연속적이고 순차적으로 배치함으로써 저널 영역을 찾기 위한 시간을 줄일 수 있고, 저널 영역을 분산 배치하여 데이터 복구시 저널 영역을 검색하는 시간을 줄일 수 있도록 하는 개선된 저널링 파일 시스템에 따라 데이터를 기록한 정보저장매체, 저널링 파일 시스템을 이용해서 데이터를 기록/복구하는 방법 및 장치를 제공한다.
상기 본 발명의 목적을 달성하기 위한 본 발명의 하나의 특징은, 저널링 파일 시스템에 따라 데이터가 기록되는 정보저장매체에 있어서, 데이터가 기록되는 일련의 과정에 대하여 기록된 로그가 저장되는 저널 영역; 및 상기 일련의 과정에 대응하는 데이터가 기록되는 데이터 영역을 포함하고, 상기 저널 영역은 상기 일련의 과정에 대응하여 복수 개의 영역으로 분산되어 저장 매체에 할당되는 것이다.
상기 저널 영역은 상기 일련의 과정에 대응하여 순차적으로 할당되는 것이 바람직하다.
상기 데이터 영역은 상기 저널 영역에 연속하여 상기 저장 매체에 배치되는 것이 바람직하다.
상기 일련의 과정 중 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치 정보가 기록되는 영역을 더 포함하는 것이 바람직하다.
상기 본 발명의 목적을 달성하기 위한 본 발명의 다른 특징은, 저장 매체에 데이터를 기록하는 방법에 있어서, 상기 저장 매체에서 로그가 저장되는 저널 영역을 데이터가 기록되는 일련의 과정에 대응하여 복수 개의 영역으로 할당하는 단계; 상기 데이터가 기록되는 일련의 과정에 대하여 상기 로그에 기록하는 단계; 및 상기 일련의 과정에 대응하는 데이터를 데이터 영역에 기록하는 단계를 포함하는 것이다.
상기 복수 개의 영역으로 할당하는 단계는 상기 저널 영역을 상기 일련의 과정에 대응하여 순차적으로 할당하는 단계를 포함하는 것이 바람직하다.
상기 데이터 영역은 상기 저널 영역에 연속하여 상기 저장 매체에 배치되는 것이 바람직하다.
상기 일련의 과정 중 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치 정보를 상기 저장 매체의 소정의 영역에 기록하는 단계를 더 포함하는 것이 바람직하다.
상기 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치 정보를 비휘발성 메모리에 기록하는 단계를 더 포함하는 것이 바람직하다.
상기 본 발명의 목적을 달성하기 위한 본 발명의 다른 특징은, 저장 매체에서 데이터 복구 방법에 있어서, 상기 저장 매체에 데이터를 기록하는 중에 중단된 경우, 복수 개의 영역으로 할당된 저널 영역 중에서 상기 데이터가 기록되는 일련의 과정 중 최종 과정에 대한 로그가 기록된 저널 영역의 위치 정보가 기록된 소정의 영역에서 상기 위치 정보를 독출하는 단계; 상기 독출된 위치정보에 기초하여 상기 최종 과정에 대한 로그가 기록된 저널 영역에서 상기 로그를 독출하는 단계; 및 상기 독출된 로그에 기초하여 기록된 최종 과정 이후의 과정을 수행하여 데이터 영역에 데이터를 기록하는 것이다.
상기 위치 정보가 기록된 소정의 영역은 비휘발성 메모리에 할당되어 있는 것이 바람직하다.
상기 데이터 영역에 데이터를 기록하는 단계는, 상기 저장 매체에서 로그가 저장되어 있는 저널 영역을 상기 기록된 최종 과정 이후의 과정에 대응하여 복수 개의 영역으로 할당하는 단계; 상기 기록된 최종 과정 이후의 과정에 대하여 상기 로그에 기록하는 단계; 및 상기 기록된 최종 과정 이후의 과정에 대응하는 데이터를 데이터 영역에 기록하는 단계를 포함하는 것이 바람직하다.
상기 본 발명의 목적을 달성하기 위한 본 발명의 또 다른 특징은, 저장 매체에 데이터를 기록하는 장치에 있어서, 상기 저장 매체에 로그가 저장되는 저널 영역을 생성하여 데이터가 기록되는 일련의 과정에 대응하여 복수 개의 영역으로 할당하는 저널 영역 생성부; 상기 데이터가 기록되는 일련의 과정에 대하여 상기 로그에 기록하는 로그 기록부; 데이터가 기록될 데이터 영역을 생성하는 데이터 영역 생성부; 및 상기 생성된 데이터 영역에 상기 일련의 과정에 대응하는 데이터를 기록하는 데이터 기록부를 포함하는 것이다.
상기 본 발명의 목적을 달성하기 위한 본 발명의 또 다른 특징은, 저장 매체에서 데이터를 복구하는 장치에 있어서, 상기 저장 매체에 데이터를 기록하는 중에 중단된 경우, 복수 개의 영역으로 할당된 저널 영역 중에서 상기 데이터가 기록되 는 일련의 과정 중 최종 과정에 대한 로그가 기록된 저널 영역의 위치 정보가 기록된 소정의 영역에서 상기 위치 정보를 독출하는 위치 정보 독출부; 상기 독출된 위치정보에 기초하여 상기 최종 과정에 대한 로그가 기록된 저널 영역에서 상기 로그를 독출하는 로그 독출부; 및 상기 독출된 로그에 기초하여 기록된 중단된 이후의 과정을 수행하여 데이터 영역에 데이터를 기록하는 제어부를 포함하는 것이다.
저널 영역과 데이터 영역을 연속적이고 순차적으로 배치함으로써 저널 영역을 찾기 위한 시간을 줄일 수 있고, 저널 영역을 분산해서 배치하였기 때문에 데이터 복구시 저널 영역을 검색하는 시간을 줄일 수 있다. 또한, 비휘발성 메모리에는 저널 영역의 위치정보만 기록하므로 작은 용량만을 필요로 하며, 재기록 수명에 따른 영향을 적게 받는다.
첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다.
도 2는 본 발명의 일 실시예에 따른 저널링 파일 시스템에 따라 데이터가 기록되는 정보저장매체를 설명하기 위한 도면이다.
도 2를 참조하면 저널링 파일 시스템(journaling file system)에 따라 데이터가 기록되는 정보저장매체(210)는 저널 영역(211, 213, 215)과 일반적인 파일 시스템 영역인 데이터 영역(212, 214, 216)을 포함한다.
사용자가 어떠한 내용을 입력 또는 수정하면 그 내용을 정보저장매체(210)의 데이터 영역에 기록하기 전에 관련 내용을 로그(log)에 기록하게 된다. 데이터의 생성이나 변경과 같은 오퍼레이션(operation), 즉 데이터가 기록되는 일련의 과정이 로그에 기록되는 것이다. 데이터가 기록되는 일련의 과정이 기록된 로그는 저널 영역(211, 213, 215)에 저장된다. 저널 영역(211, 213, 215)은 상기 일련의 과정에 대응하여 복수 개의 영역으로 분산되어 정보저장매체(210)에 할당된다. 오퍼레이션 단위를 기준으로 분산되어 할당될 수도 있다. 도 2에서, 저널링 파일 시스템에 따라 데이터가 기록되는 정보저장매체(210)에 포함된 저널 영역은 3개의 영역(211, 213, 215)으로 분산되어 순차적으로 할당되었다. 일련의 과정 중에서 제 1 과정이 수행된 경우, 제 1 저널 영역(211)에 저장된 로그에 제 1 과정에 관련된 내용을 기록되고, 제 2 과정이 수행된 경우에는 제 2 저널 영역(213)에 저장된 로그에 제 2 과정에 관련된 내용이 기록된다.
저널링 파일 시스템에 따라 데이터가 기록되는 정보저장매체(210)는 일련의 과정에 대응하는 데이터가 기록되는 데이터 영역(212, 214, 216)을 포함한다. 메타데이터(220), 어플리케이션데이터(230) 및 사용자 데이터(미도시) 등이 기록될 수 있는 영역이다. 데이터 영역은 저널 영역에 연속하여 정보저장매체(210)에 배치된다.
또한, 저널링 파일 시스템에 따라 데이터가 기록되는 정보저장매체(210)는 일련의 과정 중 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치(address) 정보가 기록되는 영역을 포함할 수 있다. 이는 저널 영역(211, 213, 215) 및 데이터 영역(212, 214, 216)과 다른 영역이다. 도 2를 참조하면, 어플리케이션데이 터(230)가 제 2 데이터 영역(214)에 기록되는 과정이 최종과정이 된다. 따라서, 저널링 파일 시스템에 따라 데이터가 기록되는 정보저장매체(210)는 제 2 저널 영역(213)의 위치정보가 저장되는 영역을 포함한다.
도 3은 본 발명의 일 실시예에 따른 저장 매체에 데이터를 기록하는 방법에 관한 흐름도이다.
도 3을 참조하면, 단계 310에서, 저장 매체에서 로그가 저장되는 저널 영역을 데이터가 기록되는 일련의 과정에 대응하여 순차적으로 복수 개의 저널 영역으로 할당한다. 저널 영역은 일련의 과정에 따라 순차적으로 할당되어 생성된다. 도 2를 참조하면, 저널 영역은 제 1 저널 영역(211), 제 2 저널 영역(213) 및 제 3 저널 영역(215) 순으로 할당된다. 저널 영역은 일정한 주기 또는 오퍼레이션 단위를 기준으로 순차적으로 할당될 수도 있다.
단계 320에서, 데이터가 기록되는 일련의 과정에 대한 정보가 저널 영역에 저장되어 있는 로그에 기록된다. 예를 들어, 도 2를 참조하면, 메타데이터(220)가 저장 매체(210)에 기록되는 경우, 메타데이터(220)가 기록되는 오퍼레이션은 제 1 저널 영역(211)의 로그에 기록된다.
단계 330에서, 일련의 과정에 대응하는 데이터를 데이터 영역에 기록한다. 데이터 영역에는 일반적인 데이터들이 기록된다. 데이터 영역은 상기 저널 영역에 연속하여, 즉 인접하여 저장 매체에 배치된다. 예를 들어, 도 2를 참조하면, 메타데이터(220)가 저장 매체(210)에 기록되는 경우, 메타데이터(220)가 기록되는 오퍼레이션은 제 1 저널 영역(211)의 로그에 기록되고, 메타데이터(220)가 기록되는 제 1 데이터 영역(212)은 저널 영역(211)에 인접하고 있다. 저널 영역과 데이터 영역이 인접하여 순차적으로 배치되어 있으므로, 종래의 저널링 파일 시스템에서보다 로그를 찾는 시간(seek time) 소모를 줄일 수 있다.
단계 340에서, 일련의 과정 중 최종 과정에 대한 로그가 기록된 저널 영역의 위치 정보를 저장 매체의 소정의 영역에 기록한다. 이는 저널 영역 및 데이터 영역과 다른 영역이다. 예를 들어, 도 2를 참조하면, 어플리케이션데이터(230)가 제 2 데이터 영역(214)에 기록되는 과정이 최종과정이 된다. 따라서, 저널링 파일 시스템은 제 2 저널 영역(213)의 위치정보가 저장되는 영역을 포함한다. 이 경우, 최종 과정에 대한 로그가 기록된 저널 영역의 위치 정보는 비휘발성 메모리에 기록될 수 있다. 비휘발성 메모리는 플래시 메모리와 같이 데이터를 읽고, 쓰고, 지울 수 있는 메모리를 말한다. 비휘발성 메모리의 예로써 스마트 미디어, 메모리 스틱, CF 카드, XD 카드, SD 카드, SDHC 카드 및 멀티미디어 카드(multimedia card; MMC) 등이 있다. 다만, 비휘발성 메모리에 한정되는 것은 아니다. 메모리의 경우 최종 로그가 기록되어 있는 위치정보는 변화가 가능하여 데이터를 읽고, 쓰고, 지울 수 있어야 한다.
도 4는 본 발명의 일 실시예에 따른 저장 매체에 데이터를 복구하는 방법에 관한 흐름도이다.
도 4를 참조하면, 단계 410에서, 저장 매체에 데이터를 기록하는 중에 중단된 경우, 복수 개의 영역으로 할당된 저널 영역 중에서, 데이터가 기록되는 일련의 과정 중 최종 과정에 대한 로그가 기록된 저널 영역의 위치 정보가 기록된 소정의 영역에서 위치 정보를 독출한다. 저장 매체에 데이터를 기록하는 중에 중단된 경우란 데이터 기록 중 정전이나 기타 다른 이유로 인하여 비정상적인 종료를 한 경우를 말한다. 다시 부팅되거나, 시스템이 재가동된 경우 종료되기 직전 과정에 대한 로그가 기록된 저널 영역의 위치정보가 기록된 영역에서 위치정보를 독출한다. 위치정보가 기록된 영역은 저장매체의 영역일 수도 있고, 외부 또는 저널링 파일 시스템에 연결되어 있는 비휘발성 메모리에 있을 수도 있다.
단계 420에서, 독출된 위치정보에 기초하여 최종 과정에 대한 로그가 기록된 저널 영역에서 로그를 독출한다. 예를 들어, 도 2를 참조하면, 데이터가 제 2 데이터 영역(214)까지 기록되고 비정상적으로 종료된 경우, 최종 로그가 기록된 저널 영역은 제 2 데이터 영역(214)에 대응하는 제 2 저널 영역(213)에 저장된 로그를 독출한다.
단계 430에서, 독출된 로그에 기초하여 기록된 최종 과정 이후의 과정을 수행하여 수행되지 않은 데이터를 데이터 영역에 기록한다. 저장 매체에서 로그가 저장되어 있는 저널 영역을 중단된 이후의 과정에 대응하여 복수 개의 영역으로 할당하고, 중단된 이후의 과정에 대하여 상기 로그에 기록한다. 또한, 중단된 이후의 과정에 대응하는 데이터를 데이터 영역에 기록하여 데이터를 복구한다.
도 5는 본 발명의 일 실시예에 따른 저장 매체에 데이터를 기록하는 장치에 관한 블록다이어그램이다.
도 5를 참조하면, 데이터 기록장치(500)는 저널 영역 생성부(510), 데이터 영역 생성부(520) 및 기록부(530)를 포함한다. 또한, 데이터 기록장치(500)는 저장 장치인 디스크(540) 및 비휘발성 메모리(550)에 연결되어 있다.
저널 영역 생성부(510)는 디스크(540)에 로그가 저장되는 저널 영역을 생성하여 데이터가 기록되는 일련의 과정에 대응하여 복수 개의 영역으로 할당저장 매체에 로그가 저장되어 있는 저널 영역을 데이터가 기록되는 일련의 과정에 대응하여 순차적으로 복수 개의 저널 영역으로 할당한다.
데이터 영역 생성부(520)는 데이터가 기록될 데이터 영역을 생성하고, 데이터 영역을 저널 영역에 연속하여 상기 저장 매체에 배치하도록 생성한다.
기록부(530)는 로그 기록부(532), 데이터 기록부(534) 및 위치정보 기록부(536)를 포함할 수 있다. 로그 기록부(532)는 데이터가 기록되는 일련의 과정에 대하여 저널 영역에 있는 로그에 기록한다. 데이터 기록부(534)는 생성된 데이터 영역에 상기 일련의 과정에 대응하는 데이터를 기록한다. 위치정보 기록부(536)는 일련의 과정 중 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치 정보를 상기 디스크(540)의 소정의 영역에 기록한다. 또는, 일련의 과정 중 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치 정보를 비휘발성 메모리(550)에 기록한다.
도 6은 본 발명의 일 실시예에 따른 저장 매체에 데이터를 복구하는 장치에 관한 블록다이어그램이다.
도 6을 참조하면, 데이터 복구 장치(600)는 위치정보 독출부(610), 로그 독출부(620) 및 제어부(630)를 포함한다. 또한, 데이터 복구 장치(600)는 저장 장치인 디스크(640) 및 비휘발성 메모리(650)에 연결되어 있다.
위치정보 독출부(610)는 디스크(640)에 데이터를 기록하는 중에 중단된 경우, 복수 개의 영역으로 할당된 저널 영역 중에서 상기 데이터가 기록되는 일련의 과정 중 최종 과정에 대한 로그가 기록된 저널 영역의 위치 정보가 기록된 소정의 영역에서 상기 위치 정보를 독출한다. 위치 정보가 기록된 소정의 영역은 비휘발성 메모리(650)의 영역일 수 있다.
로그 독출부(620)는 독출된 위치정보에 기초하여 최종 과정에 대한 로그가 기록된 저널 영역에서 상기 로그를 독출한다.
제어부(630)는 독출된 로그에 기초하여 기록된 최종 과정 이후의 과정을 수행하여 데이터 영역에 데이터를 기록한다. 데이터 영역은 저널 영역에 연속하여 디스크(640)에 배치된다. 또한, 제어부(630)는 저널 영역 생성부(631), 데이터 영역 생성부(632), 로그 기록부(633), 데이터 기록부(634) 및 위치정보 기록부(635)를 포함할 수 있다. 저널 영역 생성부(631)는 저장 매체에서 로그가 저장되어 있는 저널 영역을 중단된 이후의 과정에 대응하여 복수 개의 영역으로 할당하고, 데이터 영역 생성부(632)는 데이터가 기록될 데이터 영역을 생성하고, 로그 기록부(633)는 중단된 이후의 과정에 대하여 상기 로그에 기록한다. 또한, 데이터 기록부(634)는 중단된 이후의 과정에 대응하는 데이터를 데이터 영역에 기록하여 데이터를 복구한다. 위치정보 기록부(635)는 중단된 이후의 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치 정보를 상기 디스크(640)의 소정의 영역에 기록한다
다만, 본 발명에서는 저널링 파일 시스템이 데이터를 기록하는 경우에만 한정되는 것은 아니다. 데이터의 생성이나 수정과 같은 경우에도 적용이 된다.
이상 설명한 바와 같은 프로그램 정보 표시 방법은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 매체를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상기 디스크 관리 방법을 구현하기 위한 기능적인(function) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
도 1은 종래의 저널링 파일 시스템을 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 저널링 파일 시스템에 따라 데이터가 기록되는 정보저장매체를 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른 저장 매체에 데이터를 기록하는 방법에 관한 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 저장 매체에 데이터를 복구하는 방법에 관한 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 저장 매체에 데이터를 기록하는 장치에 관한 블록다이어그램이다.
도 6은 본 발명의 일 실시예에 따른 저장 매체에 데이터를 복구하는 장치에 관한 블록다이어그램이다.
Claims (23)
- 저널링 파일 시스템에 따라 데이터가 기록되는 정보저장매체에 있어서,데이터가 기록되는 일련의 과정에 대하여 기록된 로그가 저장되는 저널 영역; 및상기 일련의 과정에 대응하는 데이터가 기록되는 데이터 영역을 포함하고,상기 저널 영역은 상기 일련의 과정에 대응하여 복수 개의 영역으로 분산되어 저장 매체에 할당되는 것을 특징으로 하는 정보저장매체.
- 제 1 항에 있어서,상기 저널 영역은 상기 일련의 과정에 대응하여 순차적으로 할당되는 것을 특징으로 하는 정보저장매체.
- 제 2 항에 있어서,상기 데이터 영역은 상기 저널 영역에 연속하여 상기 저장 매체에 배치되는 것을 특징으로 하는 정보저장매체.
- 제 3 항에 있어서,상기 일련의 과정 중 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치 정보가 기록되는 영역을 더 포함하는 것을 특징으로 하는 정보저장매체.
- 저장 매체에 데이터를 기록하는 방법에 있어서,상기 저장 매체에서 로그가 저장되는 저널 영역을 데이터가 기록되는 일련의 과정에 대응하여 복수 개의 영역으로 할당하는 단계;상기 데이터가 기록되는 일련의 과정에 대하여 상기 로그에 기록하는 단계; 및상기 일련의 과정에 대응하는 데이터를 데이터 영역에 기록하는 단계를 포함하는 것을 특징으로 하는 데이터 기록 방법.
- 제 5 항에 있어서,상기 복수 개의 영역으로 할당하는 단계는 상기 저널 영역을 상기 일련의 과정에 대응하여 순차적으로 할당하는 단계를 포함하는 것을 특징으로 하는 데이터 기록 방법.
- 제 6 항에 있어서,상기 데이터 영역은 상기 저널 영역에 연속하여 상기 저장 매체에 배치되는 것을 특징으로 하는 데이터 기록 방법.
- 제 7 항에 있어서,상기 일련의 과정 중 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위 치 정보를 상기 저장 매체의 소정의 영역에 기록하는 단계를 더 포함하는 것을 특징으로 하는 데이터 기록 방법.
- 제 7 항에 있어서,상기 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치 정보를 비휘발성 메모리에 기록하는 단계를 더 포함하는 것을 특징으로 하는 데이터 기록 방법.
- 저장 매체에서 데이터 복구 방법에 있어서,상기 저장 매체에 데이터를 기록하는 중에 중단된 경우, 복수 개의 영역으로 할당된 저널 영역 중에서 상기 데이터가 기록되는 일련의 과정 중 최종 과정에 대한 로그가 기록된 저널 영역의 위치 정보가 기록된 소정의 영역에서 상기 위치 정보를 독출하는 단계;상기 독출된 위치정보에 기초하여 상기 최종 과정에 대한 로그가 기록된 저널 영역에서 상기 로그를 독출하는 단계; 및상기 독출된 로그에 기초하여 기록된 최종 과정 이후의 과정을 수행하여 데이터 영역에 데이터를 기록하는 것을 특징으로 하는 데이터 복구 방법.
- 제 10 항에 있어서,상기 위치 정보가 기록된 소정의 영역은 비휘발성 메모리에 할당되어 있는 것을 특징으로 하는 데이터 복구 방법.
- 제 10 항에 있어서,상기 데이터 영역은 상기 저널 영역에 연속하여 상기 저장 매체에 배치되는 것을 특징으로 하는 데이터 복구 방법.
- 제 10 항에 있어서,상기 데이터 영역에 데이터를 기록하는 단계는 ,상기 저장 매체에서 로그가 저장되는 저널 영역을 상기 기록된 최종 과정 이후의 과정에 대응하여 복수 개의 영역으로 할당하는 단계;상기 기록된 최종 과정 이후의 과정에 대하여 상기 로그에 기록하는 단계; 및상기 기록된 최종 과정 이후의 과정에 대응하는 데이터를 데이터 영역에 기록하는 단계를 포함하는 것을 특징으로 하는 데이터 복구 방법.
- 제 5 항 내지 제 13 항 중 어느 한 항에 기재된 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
- 저장 매체에 데이터를 기록하는 장치에 있어서,상기 저장 매체에 로그가 저장되는 저널 영역을 생성하여 데이터가 기록되는 일련의 과정에 대응하여 복수 개의 영역으로 할당하는 저널 영역 생성부;상기 데이터가 기록되는 일련의 과정에 대하여 상기 로그에 기록하는 로그 기록부;데이터가 기록될 데이터 영역을 생성하는 데이터 영역 생성부; 및상기 생성된 데이터 영역에 상기 일련의 과정에 대응하는 데이터를 기록하는 데이터 기록부를 포함하는 것을 특징으로 하는 데이터 기록 장치.
- 제 15 항에 있어서,상기 저널 영역 생성부는 상기 저널 영역을 상기 일련의 과정에 대응하여 순차적으로 할당하는 것을 특징으로 하는 데이터 기록 장치.
- 제 16 항에 있어서,상기 데이터 영역 생성부는 상기 데이터 영역을 상기 저널 영역에 연속하여 상기 저장 매체에 배치하도록 생성하는 것을 특징으로 하는 데이터 기록 장치.
- 제 17 항에 있어서,상기 일련의 과정 중 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치 정보를 상기 저장 매체의 소정의 영역에 기록하는 위치정보 기록부를 더 포함하는 것을 특징으로 하는 데이터 기록 장치.
- 제 17 항에 있어서,상기 일련의 과정 중 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치 정보를 비휘발성 메모리에 기록하는 위치정보 기록부를 더 포함하는 것을 특징으로 하는 데이터 기록 장치.
- 저장 매체에서 데이터를 복구하는 장치에 있어서,상기 저장 매체에 데이터를 기록하는 중에 중단된 경우, 복수 개의 영역으로 할당된 저널 영역 중에서 상기 데이터가 기록되는 일련의 과정 중 최종 과정에 대한 로그가 기록된 저널 영역의 위치 정보가 기록된 소정의 영역에서 상기 위치 정보를 독출하는 위치 정보 독출부;상기 독출된 위치정보에 기초하여 상기 최종 과정에 대한 로그가 기록된 저널 영역에서 상기 로그를 독출하는 로그 독출부; 및상기 독출된 로그에 기초하여 중단된 이후의 과정을 수행하여 데이터 영역에 데이터를 기록하는 제어부를 포함하는 것을 특징으로 하는 데이터 복구 장치.
- 제 20 항에 있어서,상기 위치 정보가 기록된 소정의 영역은 비휘발성 메모리에 할당되어 있는 것을 특징으로 하는 데이터 복구 장치.
- 제 20 항에 있어서,상기 데이터 영역은 상기 저널 영역에 연속하여 상기 저장 매체에 배치되는 것을 특징으로 하는 데이터 복구 장치.
- 제 20 항에 있어서,상기 제어부는,상기 저장 매체에서 로그가 저장되는 저널 영역을 중단된 이후의 과정에 대응하여 복수 개의 영역으로 할당하는 저널 영역 생성부;상기 기록된 중단된 이후의 과정에 대하여 상기 로그에 기록하는 로그 기록부;상기 중단된 이후의 과정에 대하여 데이터가 기록될 데이터 영역을 생성하는 데이터 영역 생성부; 및상기 중단된 이후의 과정에 대응하는 데이터를 데이터 영역에 기록하는 데이터 기록부를 포함하는 것을 특징으로 하는 데이터 복구 장치.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080019641A KR101258589B1 (ko) | 2008-03-03 | 2008-03-03 | 저널링 파일 시스템에 따라 데이터를 기록한 정보저장매체,저널링 파일 시스템을 이용해서 데이터를 기록/복구하는방법 및 장치 |
PCT/KR2008/004177 WO2009110665A1 (en) | 2008-03-03 | 2008-07-17 | Information storage medium for recording data according to journaling file system, and method of and apparatus for writing/recovering data using journaling file system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080019641A KR101258589B1 (ko) | 2008-03-03 | 2008-03-03 | 저널링 파일 시스템에 따라 데이터를 기록한 정보저장매체,저널링 파일 시스템을 이용해서 데이터를 기록/복구하는방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090094594A true KR20090094594A (ko) | 2009-09-08 |
KR101258589B1 KR101258589B1 (ko) | 2013-05-02 |
Family
ID=41056206
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080019641A KR101258589B1 (ko) | 2008-03-03 | 2008-03-03 | 저널링 파일 시스템에 따라 데이터를 기록한 정보저장매체,저널링 파일 시스템을 이용해서 데이터를 기록/복구하는방법 및 장치 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR101258589B1 (ko) |
WO (1) | WO2009110665A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150123136A (ko) * | 2014-04-24 | 2015-11-03 | 한양대학교 산학협력단 | 데이터베이스 관리 장치 및 방법 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102312672B1 (ko) * | 2014-06-09 | 2021-10-15 | 삼성전자주식회사 | 데이터 처리 방법 및 전자 장치 |
CN104572978B (zh) * | 2014-12-31 | 2018-07-13 | 国家电网公司 | 基于日志的电力调度自动化***用户行为统计方法 |
US11370483B2 (en) | 2020-01-27 | 2022-06-28 | Sensata Technologies, Inc. | Steer by wire system with dynamic braking and endstop cushioning for haptic feel |
CN112667161B (zh) * | 2020-12-25 | 2023-11-10 | 北京科银京成技术有限公司 | 文件***的数据处理方法、装置、设备及介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6298345B1 (en) * | 1998-07-10 | 2001-10-02 | International Business Machines Corporation | Database journal mechanism and method that supports multiple simultaneous deposits |
US6463501B1 (en) * | 1999-10-21 | 2002-10-08 | International Business Machines Corporation | Method, system and program for maintaining data consistency among updates across groups of storage areas using update times |
KR100453228B1 (ko) * | 2002-03-21 | 2004-10-15 | 한국전자통신연구원 | 공유 디스크 파일 시스템의 저널링 및 회복 방법 |
JP4519563B2 (ja) * | 2004-08-04 | 2010-08-04 | 株式会社日立製作所 | 記憶システム及びデータ処理システム |
-
2008
- 2008-03-03 KR KR1020080019641A patent/KR101258589B1/ko not_active IP Right Cessation
- 2008-07-17 WO PCT/KR2008/004177 patent/WO2009110665A1/en active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150123136A (ko) * | 2014-04-24 | 2015-11-03 | 한양대학교 산학협력단 | 데이터베이스 관리 장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
WO2009110665A1 (en) | 2009-09-11 |
KR101258589B1 (ko) | 2013-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101115486B1 (ko) | 컴퓨터 시스템의 부팅 제어 장치 및 방법 | |
US7441085B2 (en) | Memory control method for restoring data in a cache memory | |
CN104050056A (zh) | 多存储介质设备的文件***备份 | |
JP4215746B2 (ja) | 情報処理装置および寿命監視方法 | |
CN101782875B (zh) | 存储设备和数据存储方法 | |
KR101049617B1 (ko) | 기억 장치 및 기억 시스템 | |
CN105468544B (zh) | 实现防掉电文件***的方法、装置以及防掉电文件*** | |
CN101706822B (zh) | 提高挂载日志式文件***速度的方法及设备 | |
KR101258589B1 (ko) | 저널링 파일 시스템에 따라 데이터를 기록한 정보저장매체,저널링 파일 시스템을 이용해서 데이터를 기록/복구하는방법 및 장치 | |
KR20120126678A (ko) | 내구성을 향상한 비휘발성 메모리 장치 및 그 동작방법 | |
WO2023116346A1 (zh) | 异常掉电下Trim数据的恢复方法、***及固态硬盘 | |
CN108874574B (zh) | 一种垃圾回收处理方法及相关装置 | |
US20070043968A1 (en) | Disk array rebuild disruption resumption handling method and system | |
CN117931091A (zh) | 一种异常掉电处理方法、装置、设备、介质及产品 | |
CN103699456A (zh) | 文件记录设备、文件***管理方法、和换片器驱动器 | |
US7600151B2 (en) | RAID capacity expansion interruption recovery handling method and system | |
CN113391941B (zh) | 一种raid的读写超时处理方法、装置、设备及介质 | |
CN111949212B (zh) | 基于自定义开放通道ssd的文件***及文件管理方法 | |
CN103605587A (zh) | 一种磁带库数据备份归档方法 | |
CN101176075A (zh) | 能够提高存储器使用寿命的电路和方法 | |
CN101187849A (zh) | 存储装置和存储*** | |
CN102063273B (zh) | 硬盘管理方法及管理装置 | |
JP2005149248A (ja) | メタデータ修復方式,方法および記憶装置ならびにプログラム | |
US20100037004A1 (en) | Storage system for backup data of flash memory and method for the same | |
CN100403267C (zh) | 硬盘阵列重建程序中断接续处理方法及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20160330 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20170330 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20180329 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |