KR20090094594A - Information storage medium recording data according to journaling file system, method and apparatus of writing/recovering data using journaling file system - Google Patents
Information storage medium recording data according to journaling file system, method and apparatus of writing/recovering data using journaling file system 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)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
본 발명은 저널링 파일 시스템에 따라 데이터를 기록한 정보저장매체, 저널링 파일 시스템을 이용해서 데이터를 기록/복구하는 방법 및 장치에 관한 것으로, 더욱 상세하게는 저널링 파일 시스템에서 저널 영역과 데이터 영역을 연속적이고 순차적으로 배치함으로써 개선된 저널링 파일 시스템에 따라 데이터를 기록한 정보저장매체, 저널링 파일 시스템을 이용해서 데이터를 기록/복구하는 방법 및 장치에 관한 것이다.The present invention relates to an information storage medium recording data according to a journaling file system, and a method and apparatus for recording / recovering data using a journaling file system. An information storage medium that records data according to an improved journaling file system, and a method and apparatus for recording / recovering data using a journaling file system.
파일 시스템이란 파일의 실제 데이터와 메타데이터를 유지/저장하는 체계이다. 파일에 이름을 붙이고, 저장이나 검색을 위해 논리적으로 그것들이 어디에 위치시켜야 하는지 등을 나타내는 방법이다.The file system is a system that maintains / stores actual data and metadata of a file. Name your files and logically indicate where they should be placed for storage or retrieval.
저널링 파일 시스템은 일정부분을 기록을 위해 남겨두어 백업(backup) 및 복구 능력이 있는 파일 시스템을 말한다. 저널링 파일 시스템은 사용자가 어떠한 내 용을 입력 또는 수정하면 그 내용을 바로 하드디스크에 기록하기 전에 관련 내용을 로그(log)에 기록한다. 그리하여 만약 기록 중에 가장 빈번하게 발생하는 문제인 정전이나 기타 다른 이유로 인하여 비정상적인 종료를 하게 되면 다시 부팅할 때 로그에 기록된 내용을 참고로 하여 다시 작성하거나 복구를 하게 된다.A journaling file system is a file system that has backup and recovery capabilities, leaving a portion of it for recording. When a user enters or modifies something, the journaling file system logs the contents before logging it directly to the hard disk. Thus, if an abnormal shutdown occurs due to a power failure or other reason that occurs most frequently during the recording, the contents recorded in the log will be rewritten or restored upon referring to the reboot.
도 1은 종래의 저널링 파일 시스템을 설명하기 위한 도면이다.1 is a view for explaining a conventional journaling file system.
도 1을 참조하면, 일반적인 저널링 파일 시스템에서 디스크(110)에 포함된 저널 영역(111)은 미리 정해진 일정 영역이다. 예를 들어, 메타데이터(120) 기록 시 저널 영역(111)에 데이터를 먼저 기록하고(단계 ①), 후에 데이터 영역(112)에 기록한다(단계 ②). 어플리케이션데이터(130) 기록 시에도 저널 영역(111)에 데이터를 먼저 기록하고(단계 ③), 후에 데이터 영역(113)에 기록한다(단계 ④). 이 경우 추가적인 기록으로 인하여 작업 처리량(throughput)이 떨어지며, 저널 영역(111)이 미리 정해져 있어, 데이터 영역과 일정 거리가 떨어진 저널 영역에 액세스하기 위한 시간(seek time)이 소모되는 문제점이 있다. 또한, 저널 영역 안에서도 탐색(search)을 통해서 데이터를 찾음에 있어서, 영역이 큰 경우 서치 시간 소모량이 많아지는 문제점이 있다. Referring to FIG. 1, in a general journaling file system, the
본 발명은 상기와 같은 문제점을 해결하기 위하여, 저널링 파일 시스템에서 저널 영역과 데이터 영역을 연속적이고 순차적으로 배치함으로써 저널 영역을 찾기 위한 시간을 줄일 수 있고, 저널 영역을 분산 배치하여 데이터 복구시 저널 영역을 검색하는 시간을 줄일 수 있도록 하는 개선된 저널링 파일 시스템에 따라 데이터를 기록한 정보저장매체, 저널링 파일 시스템을 이용해서 데이터를 기록/복구하는 방법 및 장치를 제공한다.In order to solve the above problems, the present invention can reduce the time for finding the journal area by arranging the journal area and the data area continuously and sequentially in the journaling file system, and distribute the journal area to distribute the journal area during data recovery. According to an improved journaling file system for reducing the time required to retrieve a file, an information storage medium recording data and a method and apparatus for recording / recovering data using a journaling file system are provided.
상기 본 발명의 목적을 달성하기 위한 본 발명의 하나의 특징은, 저널링 파일 시스템에 따라 데이터가 기록되는 정보저장매체에 있어서, 데이터가 기록되는 일련의 과정에 대하여 기록된 로그가 저장되는 저널 영역; 및 상기 일련의 과정에 대응하는 데이터가 기록되는 데이터 영역을 포함하고, 상기 저널 영역은 상기 일련의 과정에 대응하여 복수 개의 영역으로 분산되어 저장 매체에 할당되는 것이다.One feature of the present invention for achieving the object of the present invention is an information storage medium in which data is recorded according to a journaling file system, comprising: a journal area in which recorded logs are stored for a series of processes in which data is recorded; And a data area in which data corresponding to the series of processes is recorded, wherein the journal area is divided into a plurality of regions corresponding to the series of processes and allocated to a storage medium.
상기 저널 영역은 상기 일련의 과정에 대응하여 순차적으로 할당되는 것이 바람직하다.Preferably, the journal areas are sequentially assigned to correspond to the series of processes.
상기 데이터 영역은 상기 저널 영역에 연속하여 상기 저장 매체에 배치되는 것이 바람직하다.The data area is preferably arranged in the storage medium in succession to the journal area.
상기 일련의 과정 중 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치 정보가 기록되는 영역을 더 포함하는 것이 바람직하다.Preferably, the apparatus further includes an area in which position information of the journal area in which a log of a final process is recorded is recorded.
상기 본 발명의 목적을 달성하기 위한 본 발명의 다른 특징은, 저장 매체에 데이터를 기록하는 방법에 있어서, 상기 저장 매체에서 로그가 저장되는 저널 영역을 데이터가 기록되는 일련의 과정에 대응하여 복수 개의 영역으로 할당하는 단계; 상기 데이터가 기록되는 일련의 과정에 대하여 상기 로그에 기록하는 단계; 및 상기 일련의 과정에 대응하는 데이터를 데이터 영역에 기록하는 단계를 포함하는 것이다.Another aspect of the present invention for achieving the object of the present invention, in the method of recording data in a storage medium, a plurality of journal areas in which the log is stored in the storage medium corresponding to a series of processes in which data is recorded Allocating to an area; Recording in the log for a series of processes in which the data is recorded; And recording data corresponding to the series of processes in the data area.
상기 복수 개의 영역으로 할당하는 단계는 상기 저널 영역을 상기 일련의 과정에 대응하여 순차적으로 할당하는 단계를 포함하는 것이 바람직하다.The allocating to the plurality of areas preferably includes sequentially allocating the journal areas corresponding to the series of processes.
상기 데이터 영역은 상기 저널 영역에 연속하여 상기 저장 매체에 배치되는 것이 바람직하다.The data area is preferably arranged in the storage medium in succession to the journal area.
상기 일련의 과정 중 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치 정보를 상기 저장 매체의 소정의 영역에 기록하는 단계를 더 포함하는 것이 바람직하다.The method may further include recording location information of the journal area in which a log of a final process of the series is recorded in a predetermined area of the storage medium.
상기 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치 정보를 비휘발성 메모리에 기록하는 단계를 더 포함하는 것이 바람직하다.The method may further include recording location information of the journal area in which a log of the final process is recorded in a nonvolatile memory.
상기 본 발명의 목적을 달성하기 위한 본 발명의 다른 특징은, 저장 매체에서 데이터 복구 방법에 있어서, 상기 저장 매체에 데이터를 기록하는 중에 중단된 경우, 복수 개의 영역으로 할당된 저널 영역 중에서 상기 데이터가 기록되는 일련의 과정 중 최종 과정에 대한 로그가 기록된 저널 영역의 위치 정보가 기록된 소정의 영역에서 상기 위치 정보를 독출하는 단계; 상기 독출된 위치정보에 기초하여 상기 최종 과정에 대한 로그가 기록된 저널 영역에서 상기 로그를 독출하는 단계; 및 상기 독출된 로그에 기초하여 기록된 최종 과정 이후의 과정을 수행하여 데이터 영역에 데이터를 기록하는 것이다.Another aspect of the present invention for achieving the object of the present invention is a data recovery method in a storage medium, the data is stopped in the journal area allocated to a plurality of areas when interrupted while recording data on the storage medium; Reading out the location information in a predetermined area in which location information of a journal area in which a log of a final process is recorded is recorded; Reading the log in a journal area in which a log of the final process is recorded based on the read position information; And recording data in the data area by performing a process after the last process recorded based on the read log.
상기 위치 정보가 기록된 소정의 영역은 비휘발성 메모리에 할당되어 있는 것이 바람직하다.Preferably, the predetermined area in which the positional information is recorded is allocated to the nonvolatile memory.
상기 데이터 영역에 데이터를 기록하는 단계는, 상기 저장 매체에서 로그가 저장되어 있는 저널 영역을 상기 기록된 최종 과정 이후의 과정에 대응하여 복수 개의 영역으로 할당하는 단계; 상기 기록된 최종 과정 이후의 과정에 대하여 상기 로그에 기록하는 단계; 및 상기 기록된 최종 과정 이후의 과정에 대응하는 데이터를 데이터 영역에 기록하는 단계를 포함하는 것이 바람직하다.The recording of data in the data area may include: allocating a journal area in which a log is stored in the storage medium to a plurality of areas corresponding to a process after the last recorded step; Recording in the log about a process after the last recorded process; And recording the data corresponding to the process after the last process recorded in the data area.
상기 본 발명의 목적을 달성하기 위한 본 발명의 또 다른 특징은, 저장 매체에 데이터를 기록하는 장치에 있어서, 상기 저장 매체에 로그가 저장되는 저널 영역을 생성하여 데이터가 기록되는 일련의 과정에 대응하여 복수 개의 영역으로 할당하는 저널 영역 생성부; 상기 데이터가 기록되는 일련의 과정에 대하여 상기 로그에 기록하는 로그 기록부; 데이터가 기록될 데이터 영역을 생성하는 데이터 영역 생성부; 및 상기 생성된 데이터 영역에 상기 일련의 과정에 대응하는 데이터를 기록하는 데이터 기록부를 포함하는 것이다.Another feature of the present invention for achieving the object of the present invention, in the device for recording data on a storage medium, by generating a journal area in which a log is stored on the storage medium corresponding to a series of processes that data is recorded Journal area generation unit for allocating to a plurality of areas; A log recorder which records in the log a series of processes in which the data is recorded; A data area generator which generates a data area in which data is to be recorded; And a data recorder for recording data corresponding to the series of processes in the generated data area.
상기 본 발명의 목적을 달성하기 위한 본 발명의 또 다른 특징은, 저장 매체에서 데이터를 복구하는 장치에 있어서, 상기 저장 매체에 데이터를 기록하는 중에 중단된 경우, 복수 개의 영역으로 할당된 저널 영역 중에서 상기 데이터가 기록되 는 일련의 과정 중 최종 과정에 대한 로그가 기록된 저널 영역의 위치 정보가 기록된 소정의 영역에서 상기 위치 정보를 독출하는 위치 정보 독출부; 상기 독출된 위치정보에 기초하여 상기 최종 과정에 대한 로그가 기록된 저널 영역에서 상기 로그를 독출하는 로그 독출부; 및 상기 독출된 로그에 기초하여 기록된 중단된 이후의 과정을 수행하여 데이터 영역에 데이터를 기록하는 제어부를 포함하는 것이다.Another aspect of the present invention for achieving the object of the present invention is an apparatus for recovering data in a storage medium, the journal area allocated to a plurality of areas, if interrupted while writing data to the storage medium; A position information reading unit for reading the position information in a predetermined region in which position information of a journal region in which a log of a final process is recorded is recorded in the series of processes in which the data is recorded; A log reading unit that reads the log in a journal area in which a log of the final process is recorded based on the read position information; And a controller configured to record data in a data area by performing a process after the recording is stopped based on the read log.
저널 영역과 데이터 영역을 연속적이고 순차적으로 배치함으로써 저널 영역을 찾기 위한 시간을 줄일 수 있고, 저널 영역을 분산해서 배치하였기 때문에 데이터 복구시 저널 영역을 검색하는 시간을 줄일 수 있다. 또한, 비휘발성 메모리에는 저널 영역의 위치정보만 기록하므로 작은 용량만을 필요로 하며, 재기록 수명에 따른 영향을 적게 받는다.By sequentially and sequentially arranging the journal area and the data area, the time for finding the journal area can be shortened, and since the journal areas are distributed, the time for searching the journal area during data recovery can be reduced. In addition, since only the location information of the journal area is recorded in the nonvolatile memory, only a small capacity is required and the influence of the rewrite life is reduced.
첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 2는 본 발명의 일 실시예에 따른 저널링 파일 시스템에 따라 데이터가 기록되는 정보저장매체를 설명하기 위한 도면이다. 2 is a diagram illustrating an information storage medium in which data is recorded according to a journaling file system according to an exemplary embodiment of the present invention.
도 2를 참조하면 저널링 파일 시스템(journaling file system)에 따라 데이터가 기록되는 정보저장매체(210)는 저널 영역(211, 213, 215)과 일반적인 파일 시스템 영역인 데이터 영역(212, 214, 216)을 포함한다.Referring to FIG. 2, an
사용자가 어떠한 내용을 입력 또는 수정하면 그 내용을 정보저장매체(210)의 데이터 영역에 기록하기 전에 관련 내용을 로그(log)에 기록하게 된다. 데이터의 생성이나 변경과 같은 오퍼레이션(operation), 즉 데이터가 기록되는 일련의 과정이 로그에 기록되는 것이다. 데이터가 기록되는 일련의 과정이 기록된 로그는 저널 영역(211, 213, 215)에 저장된다. 저널 영역(211, 213, 215)은 상기 일련의 과정에 대응하여 복수 개의 영역으로 분산되어 정보저장매체(210)에 할당된다. 오퍼레이션 단위를 기준으로 분산되어 할당될 수도 있다. 도 2에서, 저널링 파일 시스템에 따라 데이터가 기록되는 정보저장매체(210)에 포함된 저널 영역은 3개의 영역(211, 213, 215)으로 분산되어 순차적으로 할당되었다. 일련의 과정 중에서 제 1 과정이 수행된 경우, 제 1 저널 영역(211)에 저장된 로그에 제 1 과정에 관련된 내용을 기록되고, 제 2 과정이 수행된 경우에는 제 2 저널 영역(213)에 저장된 로그에 제 2 과정에 관련된 내용이 기록된다. When a user inputs or modifies certain contents, the contents are recorded in a log before the contents are recorded in the data area of the
저널링 파일 시스템에 따라 데이터가 기록되는 정보저장매체(210)는 일련의 과정에 대응하는 데이터가 기록되는 데이터 영역(212, 214, 216)을 포함한다. 메타데이터(220), 어플리케이션데이터(230) 및 사용자 데이터(미도시) 등이 기록될 수 있는 영역이다. 데이터 영역은 저널 영역에 연속하여 정보저장매체(210)에 배치된다. The
또한, 저널링 파일 시스템에 따라 데이터가 기록되는 정보저장매체(210)는 일련의 과정 중 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치(address) 정보가 기록되는 영역을 포함할 수 있다. 이는 저널 영역(211, 213, 215) 및 데이터 영역(212, 214, 216)과 다른 영역이다. 도 2를 참조하면, 어플리케이션데이 터(230)가 제 2 데이터 영역(214)에 기록되는 과정이 최종과정이 된다. 따라서, 저널링 파일 시스템에 따라 데이터가 기록되는 정보저장매체(210)는 제 2 저널 영역(213)의 위치정보가 저장되는 영역을 포함한다.In addition, the
도 3은 본 발명의 일 실시예에 따른 저장 매체에 데이터를 기록하는 방법에 관한 흐름도이다.3 is a flowchart illustrating a method of recording data in a storage medium according to an embodiment of the present invention.
도 3을 참조하면, 단계 310에서, 저장 매체에서 로그가 저장되는 저널 영역을 데이터가 기록되는 일련의 과정에 대응하여 순차적으로 복수 개의 저널 영역으로 할당한다. 저널 영역은 일련의 과정에 따라 순차적으로 할당되어 생성된다. 도 2를 참조하면, 저널 영역은 제 1 저널 영역(211), 제 2 저널 영역(213) 및 제 3 저널 영역(215) 순으로 할당된다. 저널 영역은 일정한 주기 또는 오퍼레이션 단위를 기준으로 순차적으로 할당될 수도 있다.Referring to FIG. 3, in
단계 320에서, 데이터가 기록되는 일련의 과정에 대한 정보가 저널 영역에 저장되어 있는 로그에 기록된다. 예를 들어, 도 2를 참조하면, 메타데이터(220)가 저장 매체(210)에 기록되는 경우, 메타데이터(220)가 기록되는 오퍼레이션은 제 1 저널 영역(211)의 로그에 기록된다.In
단계 330에서, 일련의 과정에 대응하는 데이터를 데이터 영역에 기록한다. 데이터 영역에는 일반적인 데이터들이 기록된다. 데이터 영역은 상기 저널 영역에 연속하여, 즉 인접하여 저장 매체에 배치된다. 예를 들어, 도 2를 참조하면, 메타데이터(220)가 저장 매체(210)에 기록되는 경우, 메타데이터(220)가 기록되는 오퍼레이션은 제 1 저널 영역(211)의 로그에 기록되고, 메타데이터(220)가 기록되는 제 1 데이터 영역(212)은 저널 영역(211)에 인접하고 있다. 저널 영역과 데이터 영역이 인접하여 순차적으로 배치되어 있으므로, 종래의 저널링 파일 시스템에서보다 로그를 찾는 시간(seek time) 소모를 줄일 수 있다.In
단계 340에서, 일련의 과정 중 최종 과정에 대한 로그가 기록된 저널 영역의 위치 정보를 저장 매체의 소정의 영역에 기록한다. 이는 저널 영역 및 데이터 영역과 다른 영역이다. 예를 들어, 도 2를 참조하면, 어플리케이션데이터(230)가 제 2 데이터 영역(214)에 기록되는 과정이 최종과정이 된다. 따라서, 저널링 파일 시스템은 제 2 저널 영역(213)의 위치정보가 저장되는 영역을 포함한다. 이 경우, 최종 과정에 대한 로그가 기록된 저널 영역의 위치 정보는 비휘발성 메모리에 기록될 수 있다. 비휘발성 메모리는 플래시 메모리와 같이 데이터를 읽고, 쓰고, 지울 수 있는 메모리를 말한다. 비휘발성 메모리의 예로써 스마트 미디어, 메모리 스틱, CF 카드, XD 카드, SD 카드, SDHC 카드 및 멀티미디어 카드(multimedia card; MMC) 등이 있다. 다만, 비휘발성 메모리에 한정되는 것은 아니다. 메모리의 경우 최종 로그가 기록되어 있는 위치정보는 변화가 가능하여 데이터를 읽고, 쓰고, 지울 수 있어야 한다.In
도 4는 본 발명의 일 실시예에 따른 저장 매체에 데이터를 복구하는 방법에 관한 흐름도이다.4 is a flowchart illustrating a method of recovering data to a storage medium according to an embodiment of the present invention.
도 4를 참조하면, 단계 410에서, 저장 매체에 데이터를 기록하는 중에 중단된 경우, 복수 개의 영역으로 할당된 저널 영역 중에서, 데이터가 기록되는 일련의 과정 중 최종 과정에 대한 로그가 기록된 저널 영역의 위치 정보가 기록된 소정의 영역에서 위치 정보를 독출한다. 저장 매체에 데이터를 기록하는 중에 중단된 경우란 데이터 기록 중 정전이나 기타 다른 이유로 인하여 비정상적인 종료를 한 경우를 말한다. 다시 부팅되거나, 시스템이 재가동된 경우 종료되기 직전 과정에 대한 로그가 기록된 저널 영역의 위치정보가 기록된 영역에서 위치정보를 독출한다. 위치정보가 기록된 영역은 저장매체의 영역일 수도 있고, 외부 또는 저널링 파일 시스템에 연결되어 있는 비휘발성 메모리에 있을 수도 있다.Referring to FIG. 4, in
단계 420에서, 독출된 위치정보에 기초하여 최종 과정에 대한 로그가 기록된 저널 영역에서 로그를 독출한다. 예를 들어, 도 2를 참조하면, 데이터가 제 2 데이터 영역(214)까지 기록되고 비정상적으로 종료된 경우, 최종 로그가 기록된 저널 영역은 제 2 데이터 영역(214)에 대응하는 제 2 저널 영역(213)에 저장된 로그를 독출한다.In
단계 430에서, 독출된 로그에 기초하여 기록된 최종 과정 이후의 과정을 수행하여 수행되지 않은 데이터를 데이터 영역에 기록한다. 저장 매체에서 로그가 저장되어 있는 저널 영역을 중단된 이후의 과정에 대응하여 복수 개의 영역으로 할당하고, 중단된 이후의 과정에 대하여 상기 로그에 기록한다. 또한, 중단된 이후의 과정에 대응하는 데이터를 데이터 영역에 기록하여 데이터를 복구한다.In
도 5는 본 발명의 일 실시예에 따른 저장 매체에 데이터를 기록하는 장치에 관한 블록다이어그램이다.5 is a block diagram of an apparatus for recording data in a storage medium according to an embodiment of the present invention.
도 5를 참조하면, 데이터 기록장치(500)는 저널 영역 생성부(510), 데이터 영역 생성부(520) 및 기록부(530)를 포함한다. 또한, 데이터 기록장치(500)는 저장 장치인 디스크(540) 및 비휘발성 메모리(550)에 연결되어 있다. Referring to FIG. 5, the
저널 영역 생성부(510)는 디스크(540)에 로그가 저장되는 저널 영역을 생성하여 데이터가 기록되는 일련의 과정에 대응하여 복수 개의 영역으로 할당저장 매체에 로그가 저장되어 있는 저널 영역을 데이터가 기록되는 일련의 과정에 대응하여 순차적으로 복수 개의 저널 영역으로 할당한다.The journal
데이터 영역 생성부(520)는 데이터가 기록될 데이터 영역을 생성하고, 데이터 영역을 저널 영역에 연속하여 상기 저장 매체에 배치하도록 생성한다. The data
기록부(530)는 로그 기록부(532), 데이터 기록부(534) 및 위치정보 기록부(536)를 포함할 수 있다. 로그 기록부(532)는 데이터가 기록되는 일련의 과정에 대하여 저널 영역에 있는 로그에 기록한다. 데이터 기록부(534)는 생성된 데이터 영역에 상기 일련의 과정에 대응하는 데이터를 기록한다. 위치정보 기록부(536)는 일련의 과정 중 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치 정보를 상기 디스크(540)의 소정의 영역에 기록한다. 또는, 일련의 과정 중 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치 정보를 비휘발성 메모리(550)에 기록한다.The
도 6은 본 발명의 일 실시예에 따른 저장 매체에 데이터를 복구하는 장치에 관한 블록다이어그램이다.6 is a block diagram of an apparatus for recovering data in a storage medium according to an embodiment of the present invention.
도 6을 참조하면, 데이터 복구 장치(600)는 위치정보 독출부(610), 로그 독출부(620) 및 제어부(630)를 포함한다. 또한, 데이터 복구 장치(600)는 저장 장치인 디스크(640) 및 비휘발성 메모리(650)에 연결되어 있다. Referring to FIG. 6, the
위치정보 독출부(610)는 디스크(640)에 데이터를 기록하는 중에 중단된 경우, 복수 개의 영역으로 할당된 저널 영역 중에서 상기 데이터가 기록되는 일련의 과정 중 최종 과정에 대한 로그가 기록된 저널 영역의 위치 정보가 기록된 소정의 영역에서 상기 위치 정보를 독출한다. 위치 정보가 기록된 소정의 영역은 비휘발성 메모리(650)의 영역일 수 있다.If the position information reading unit 610 is interrupted while recording data on the
로그 독출부(620)는 독출된 위치정보에 기초하여 최종 과정에 대한 로그가 기록된 저널 영역에서 상기 로그를 독출한다.The log reading unit 620 reads the log from the journal area in which a log of the final process is recorded based on the read position information.
제어부(630)는 독출된 로그에 기초하여 기록된 최종 과정 이후의 과정을 수행하여 데이터 영역에 데이터를 기록한다. 데이터 영역은 저널 영역에 연속하여 디스크(640)에 배치된다. 또한, 제어부(630)는 저널 영역 생성부(631), 데이터 영역 생성부(632), 로그 기록부(633), 데이터 기록부(634) 및 위치정보 기록부(635)를 포함할 수 있다. 저널 영역 생성부(631)는 저장 매체에서 로그가 저장되어 있는 저널 영역을 중단된 이후의 과정에 대응하여 복수 개의 영역으로 할당하고, 데이터 영역 생성부(632)는 데이터가 기록될 데이터 영역을 생성하고, 로그 기록부(633)는 중단된 이후의 과정에 대하여 상기 로그에 기록한다. 또한, 데이터 기록부(634)는 중단된 이후의 과정에 대응하는 데이터를 데이터 영역에 기록하여 데이터를 복구한다. 위치정보 기록부(635)는 중단된 이후의 최종 과정에 대한 로그가 기록된 상기 저널 영역의 위치 정보를 상기 디스크(640)의 소정의 영역에 기록한다The
다만, 본 발명에서는 저널링 파일 시스템이 데이터를 기록하는 경우에만 한정되는 것은 아니다. 데이터의 생성이나 수정과 같은 경우에도 적용이 된다.However, the present invention is not limited to the case where the journaling file system records data. The same applies to the creation or modification of data.
이상 설명한 바와 같은 프로그램 정보 표시 방법은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 매체를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상기 디스크 관리 방법을 구현하기 위한 기능적인(function) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다. The program information display method as described above can also be embodied as computer readable codes on a computer readable recording medium. Computer-readable recording media include all kinds of recording media on which data that can be read by a computer system is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disks, optical data storage devices, and the like. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion. In addition, functional programs, codes, and code segments for implementing the disk management method may be easily inferred by programmers in the art to which the present invention belongs.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.So far I looked at the center of the preferred embodiment for the present invention. Those skilled in the art will appreciate that the present invention can be implemented in a modified form without departing from the essential features of the present invention. Therefore, the disclosed embodiments should be considered in descriptive sense only and not for purposes of limitation. The scope of the present invention is shown in the claims rather than the foregoing description, and all differences within the scope will be construed as being included in the present invention.
도 1은 종래의 저널링 파일 시스템을 설명하기 위한 도면이다.1 is a view for explaining a conventional journaling file system.
도 2는 본 발명의 일 실시예에 따른 저널링 파일 시스템에 따라 데이터가 기록되는 정보저장매체를 설명하기 위한 도면이다. 2 is a diagram illustrating an information storage medium in which data is recorded according to a journaling file system according to an exemplary embodiment of the present invention.
도 3은 본 발명의 일 실시예에 따른 저장 매체에 데이터를 기록하는 방법에 관한 흐름도이다.3 is a flowchart illustrating a method of recording data in a storage medium according to an embodiment of the present invention.
도 4는 본 발명의 일 실시예에 따른 저장 매체에 데이터를 복구하는 방법에 관한 흐름도이다.4 is a flowchart illustrating a method of recovering data to a storage medium according to an embodiment of the present invention.
도 5는 본 발명의 일 실시예에 따른 저장 매체에 데이터를 기록하는 장치에 관한 블록다이어그램이다.5 is a block diagram of an apparatus for recording data in a storage medium according to an embodiment of the present invention.
도 6은 본 발명의 일 실시예에 따른 저장 매체에 데이터를 복구하는 장치에 관한 블록다이어그램이다.6 is a block diagram of an apparatus for recovering data in a storage medium according to an embodiment of the present invention.
Claims (23)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080019641A KR101258589B1 (en) | 2008-03-03 | 2008-03-03 | Information storage medium recording data according to journaling file system, method and apparatus of writing/recovering data using journaling file system |
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 (en) | 2008-03-03 | 2008-03-03 | Information storage medium recording data according to journaling file system, method and apparatus of writing/recovering data using journaling file system |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090094594A true KR20090094594A (en) | 2009-09-08 |
KR101258589B1 KR101258589B1 (en) | 2013-05-02 |
Family
ID=41056206
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080019641A KR101258589B1 (en) | 2008-03-03 | 2008-03-03 | Information storage medium recording data according to journaling file system, method and apparatus of writing/recovering data using journaling file system |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR101258589B1 (en) |
WO (1) | WO2009110665A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150123136A (en) * | 2014-04-24 | 2015-11-03 | 한양대학교 산학협력단 | Database management apparatus and method |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102312672B1 (en) * | 2014-06-09 | 2021-10-15 | 삼성전자주식회사 | Method and Electronic Device for operating screen |
CN104572978B (en) * | 2014-12-31 | 2018-07-13 | 国家电网公司 | Electric power scheduling automatization system user behavior statistical method based on daily record |
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 (en) * | 2020-12-25 | 2023-11-10 | 北京科银京成技术有限公司 | File system data processing method, device, equipment and medium |
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 (en) * | 2002-03-21 | 2004-10-15 | 한국전자통신연구원 | Journaling and recovery method for shared disk file system |
JP4519563B2 (en) * | 2004-08-04 | 2010-08-04 | 株式会社日立製作所 | Storage system and data processing system |
-
2008
- 2008-03-03 KR KR1020080019641A patent/KR101258589B1/en 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 (en) * | 2014-04-24 | 2015-11-03 | 한양대학교 산학협력단 | Database management apparatus and method |
Also Published As
Publication number | Publication date |
---|---|
KR101258589B1 (en) | 2013-05-02 |
WO2009110665A1 (en) | 2009-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101115486B1 (en) | Apparatus and method for controlling booting of computer system | |
US7441085B2 (en) | Memory control method for restoring data in a cache memory | |
CN104050056A (en) | File system backup of multi-storage-medium device | |
JP4215746B2 (en) | Information processing apparatus and life monitoring method | |
CN101782875B (en) | Storage unit and data storage method | |
KR101049617B1 (en) | Memory and memory systems | |
CN105468544B (en) | Method and device for realizing power-down prevention file system and power-down prevention file system | |
KR101258589B1 (en) | Information storage medium recording data according to journaling file system, method and apparatus of writing/recovering data using journaling file system | |
KR20120126678A (en) | Nonvolatile memory device improving endurance and operating method thereof | |
WO2023116346A1 (en) | Method and system for recovering trim data under abnormal power failure, and solid-state drive | |
CN101706822A (en) | Method and device for improving speed of mounting journal file system | |
CN117931091B (en) | Abnormal power failure processing method, device, equipment, medium and product | |
US20070043968A1 (en) | Disk array rebuild disruption resumption handling method and system | |
CN103699456A (en) | File recording apparatus, file system management method, and changer drive | |
US7600151B2 (en) | RAID capacity expansion interruption recovery handling method and system | |
US20070271311A1 (en) | Disk array device and data management method for managing master data and replication data replicated from master data | |
CN113391941B (en) | RAID read-write timeout processing method, device, equipment and medium | |
CN111949212B (en) | File system and file management method based on self-defined open channel SSD | |
CN103605587A (en) | Tape library data backup and filing method | |
CN102063273B (en) | Hard disk management method and device | |
JP2005149248A (en) | Metadata restoration system, method thereof, storage device and program therefor | |
US20100037004A1 (en) | Storage system for backup data of flash memory and method for the same | |
CN100403267C (en) | Method and system of had disk array rebuilding program interrupt continuing processing | |
JP6287055B2 (en) | Information processing apparatus, information collection method, and information collection program | |
CN101176075A (en) | Circuit and method for improving service lifetime of memory device |
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 |