KR20080029677A - 파일 저장 시스템 및 그 시스템에서의 파일 저장 및 검색방법 - Google Patents

파일 저장 시스템 및 그 시스템에서의 파일 저장 및 검색방법 Download PDF

Info

Publication number
KR20080029677A
KR20080029677A KR1020060096562A KR20060096562A KR20080029677A KR 20080029677 A KR20080029677 A KR 20080029677A KR 1020060096562 A KR1020060096562 A KR 1020060096562A KR 20060096562 A KR20060096562 A KR 20060096562A KR 20080029677 A KR20080029677 A KR 20080029677A
Authority
KR
South Korea
Prior art keywords
file
page
stored
information
metadata
Prior art date
Application number
KR1020060096562A
Other languages
English (en)
Other versions
KR100834574B1 (ko
Inventor
차명훈
김홍연
김준
김명준
Original Assignee
한국전자통신연구원
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020060096562A priority Critical patent/KR100834574B1/ko
Priority to US11/860,652 priority patent/US7933938B2/en
Publication of KR20080029677A publication Critical patent/KR20080029677A/ko
Application granted granted Critical
Publication of KR100834574B1 publication Critical patent/KR100834574B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/40Data acquisition and logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/1737Details of further file system functions for reducing power consumption or coping with limited storage space, e.g. in mobile devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은, 네트워크로 연결된 저장 시스템 및 그 시스템에서의 파일 저장 및 검색 방법에 관한 것으로서, 저장할 하나의 파일을 적어도 하나 이상의 오브젝트 단위로 구분하고, 구분된 오브젝트를 일련의 번호를 갖는 페이지 단위로 구분하여 구성하고, 상기 파일의 저장에 대한 정보를 관리하기 위한 파일의 메타 데이터를 설정하며, 네트워크로 연결된 다수의 저장 장치들 중에서 상기 파일을 기록할 하나의 저장 장치를 선택하고, 상기 선택된 저장 장치에 할당된 오브젝트의 상기 파일을 구성하는 페이지들을 저장하고, 상기 파일을 구성하는 모든 페이지들을 저장하지 못한 경우, 새로운 저장 장치에 새 오브젝트를 할당하여 나머지 페이지를 저장함을 특징으로 하며, 이에 따라 다수의 저장 장치들에 걸쳐서 파일을 저장할 수 있으며, 파일 정보를 메타 데이터에 최소한의 자원으로 간결하게 설정할 수 있으므로 파일 저장 시스템의 전체 성능을 증가시킬 수 있는 효과가 있다.
파일 저장 시스템, 오브젝트(object), 페이지, 메타 데이터, 디스크,

Description

파일 저장 시스템 및 그 시스템에서의 파일 저장 및 검색 방법{FILE STORAGE SYSTEM AND FILE STORAGE AND FILE SEARCH METHOD IN FILE STORAGE SYSTEM}
도 1은 본 발명의 실시예에 따른 파일 저장 시스템의 구조를 도시한 구성도,
도 2는 본 발명의 실시예에 따른 파일 저장 시스템에서 다수의 디스크별로 하나의 오브젝트를 할당한 저장부의 구조를 도시한 구성도,
도 3은 본 발명의 실시예에 따른 파일 저장 시스템에서 파일을 표현하기 위한 구조를 도시한 구성도,
도 4는 본 발명의 실시예에 따라 파일 저장 시스템에서 새로운 파일을 기록하기 위한 과정을 도시한 흐름도,
도 5는 본 발명의 실시예에 따라 파일 저장 시스템에서 파일에 속한 페이지가 포함되어 있는 파일 저장 장치를 찾는 과정을 도시한 흐름도.
본 발명은 파일 저장 시스템 및 그 파일 저장 시스템에서의 파일 저장 및 검 색 방법에 관한 것으로서, 특히 네트워크로 연결된 파일 저장 시스템 및 그 시스템에서 하나의 저장장치의 용량을 초과하는 파일을 저장하고, 이미 저장된 파일을 검색하기 위한 방법에 관한 것이다.
파일을 기록하는 대상인 저장장치는 디스크, 디스켓, CD 등 그 종류가 상당히 다양하다. 그러나 대량의 데이터를 기록하는 용도로는 주로 하드 디스크를 많이 이용하고 있으며, 과거에는 하나의 단일한 디스크를 컴퓨터에 내장하여 사용하는 것이 일반적인 방식이었지만, 기록할 데이터의 절대 량이 증가함에 따라 여러 개의 디스크들을 네트워크를 이용하여 다양한 방식으로 연결하여 사용하는 방법 등으로 진화하고 있다. 특히, 각 디스크마다 별도의 메모리와 연산장치를 포함한 인텔리전트 디스크를 저장장치로서 사용할 수도 있다.
일반적으로 여러 개의 디스크들이 존재하고 이들이 네트워크로 연결되어 있을 경우, 하나의 파일은 이들 디스크 중에서 하나의 디스크에 기록된다. 이러한 환경에서는 하나의 파일이 저장되는 공간의 한계가 최초에 선택된 디스크의 크기로 제한된다. 즉, 그 파일을 기록하기 위한 목적으로 최초에 선택한 디스크의 크기를 초과하는 파일은 생성할 수 없게 된다.
만일, 하나의 파일을 여러 개의 디스크들에 저장할 수 있도록 하기 위해서는 파일을 여러 개의 조각으로 나누고 그 조각들을 여러 개의 디스크에 분배하여 저장하며, 상기 조각들의 정보를 비트맵 등의 형식으로 보관하는 방법을 사용할 수도 있다. 그러나 이러한 방법은 운영체제의 동작 형태에 따라 이러한 많은 수의 조각들이 연속적인 공간이 아닌 무작위의(random) 위치에 저장될 수도 있으며, 그 결과 입출력 성능이 저하될 수 있다. 또한, 상기 정보를 비트맵 등의 형식으로 보관하는 방법은 파일의 기록 범위가 표현 가능한 조각들의 개수에 따라 한정되며, 파일의 크기가 커질수록 이러한 조각들의 정보를 보관하는 기억 공간의 소모가 과도해지는 문제점이 있다.
한편, 종래 기술 중에 'William Bridge'가 발명하고 'Oracle International Corporation'이 2002년 5월29일자로 출원하여 2005년 4월 12일자로 등록된 미국특허 US006880102B1이 있다. 이러한 기술에서는 여러 개의 데이터 저장 장치들을 가지고 있는 파일 저장 시스템을 관리하기 위한 방법이 제시되어 있으며, 데이터를 저장하기 위한 공간을 논리 볼륨이라는 단위로 추상화하고, 논리 볼륨을 익스텐트 들로 구분하여 관리하고 있다. 특히, 상기 기술은 물리적인 디스크 드라이브를 여러 개의 조각들로 분할한 후, 한 개 이상의 디스크 드라이브들로부터 나온 조각들이 모여서 하나의 논리 볼륨을 구성한다. 이로써, 상기 기술은 RAID5와 같이 패러티를 사용하는 데이터 중복 저장의 경우와 데이터 미러링 등의 경우에도 효과적으로 응용될 수 있다. 또한, 상기 기술은 문제가 발생했을 때 저장된 파일의 복구 가능성을 높이고 하나의 오류에 여러 개의 파일이 동시에 영향을 받지 않도록 여러 개의 디스크들을 다수의 실패 그룹(failure group) 및 미러 파트너(mirror partner) 등으로 구분함으로써 저장 단위가 세분화된 상황에서 데이터의 안정적인 운용 가능성을 높이도록 하고 있다.
이와 같은 기술에서는 어떤 디스크 드라이브의 미러링된 파트너(mirrored partner)인 디스크 드라이브에서 저장 공간이 충분하지 않은 경우에 대비하여 다음 과 같은 처리 방법을 제시하고 있다.
만일, 첫 번째 익스텐트를 중복 저장하기 위해 선택되었던 디스크 드라이브에 두 번째 이하의 익스텐트들을 저장할 충분한 공간이 존재하지 않을 경우에는 첫 번째 저장되었던 익스텐트를 다시 해제한 후, 새로운 디스크 드라이브를 선택하여 첫 번째 익스텐트부터 다시 저장시킨다.
그러나 이러한 상기 기술은 미러링된 익스텐트 집합을 할당하는 방법에서 제시하고 있는 내용으로서, 파일을 저장하다가 공간이 부족할 경우에 관한 일반적인 처리 방법에 대하여는 언급하지 않고 있다.
또한, 종래 기술 중 다른 하나로서, 'Ted Kelly Bradford'가 발명하고, ' Novell, Inc.'이 1997년 4월23일자로 출원하여 1999년 9월 21일자로 등록된 미국특허 5956745에서는 한 개 혹은 다수의 디스크 드라이브 환경에서 데이터가 저장되는 장소인 볼륨에 대하여 그 구성 위인 볼륨 블록의 크기를 운영 중에 재조정함으로써 단편화 현상을 제거하기 위한 방법이 제시되어 있다. 이러한 종래의 기술에서는 볼륨과, 볼륨을 구성하는 요소인 볼륨 블록 및 이들의 정보를 보관하는 각종 테이블 등의 개념을 소개한 후, 기존 볼륨의 정보를 획득하여 분석하고, 기 저장된 파일을 새롭게 변경된 볼륨 블록 크기에 맞추어 이동 저장하며, 볼륨의 상태를 새로운 볼륨 블록 크기에 맞도록 재설정한다. 특히, 하나의 파일을 저장하기 위해서는 최소한 한 개 이상의 볼륨 블록을 할당하여야 하는데, 볼륨 블록의 크기보다 더 작은 파일에 대해서는 서브할당(suballocation)이라는 메커니즘을 도입하여 처리 가능하도록 지원한다.
따라서 운영체제가 지원할 경우에는 하나의 볼륨 블록을 다시 여러 개의 조각으로 분할하여 여러 개의 작은 파일도 저장될 수 있도록 함으로써 저장 공간의 효율적인 사용을 도모하게 된다. 이러한 서브 할당 블록(suballocation block)들은 일반적으로 하나의 볼륨 블록에 여러 개가 포함될 수 있으며, 여러 개의 서브 할당 블록들의 크기와 하나의 볼륨 블록의 크기가 정확하게 일치하지 않는 분할도 허용하고, 파일을 여러 개의 서브 할당 블록들에 걸쳐서 저장할 수도 있게 지원하고 있다.
그러나 상기 종래의 두 번째 기술은 이러한 블록들을 관리하는 자료 구조가 비트맵 형식을 취하고 있기 때문에 파일의 크기와 개수가 증가할수록 정보를 관리하기 위한 비용이 높아지게 되는 문제점이 있다.
따라서 본 발명의 목적은 네트워크로 연결된 다수의 저장 장치들을 포함하는 파일 저장 시스템에서 하나의 파일을 하나의 파일을 오브젝트(object) 단위로 관리하여 다수의 저장 장치에 저장하고, 이미 저장된 파일을 검색하기 위한 방법 및 이러한 파일 저장 시스템을 제공함에 있다.
본 발명의 다른 목적은 하나의 파일을 하나의 저장 장치에 기록하는 도중 상기 저장 장치의 용량이 초과되는 경우 파일의 남은 내용을 다른 저장 장치에 연속적으로 저장함으로써 파일 저장 용량 및 파일 정보의 관리 부담을 줄이기 위한 네트워크로 연결된 파일 저장 시스템 및 그 시스템에서의 파일 저장 및 검색 방법을 제공함에 있다.
상기 이러한 본 발명의 목적들을 달성하기 위한 파일 저장 시스템에서의 파일 저장 방법은, 저장할 하나의 파일을 적어도 하나 이상의 오브젝트 단위로 구분하고, 구분된 오브젝트를 일련의 번호를 갖는 페이지 단위로 구분하는 과정과, 네트워크로 연결된 다수의 저장 장치들 중에서 상기 파일을 기록할 하나의 저장 장치를 선택하는 과정과, 선택된 저장 장치에 하나의 오브젝트를 할당하는 과정과, 상기 선택된 저장 장치에 할당된 오브젝트의 상기 파일을 구성하는 페이지들을 저장하는 과정과, 상기 파일을 구성하는 모든 페이지들을 저장하지 못한 경우, 새로운 저장 장치에 새 오브젝트를 할당하여 나머지 페이지를 저장하는 과정과, 상기 파일의 저장에 대한 정보를 관리하기 위한 파일의 메타 데이터를 설정하는 과정을 포함하는 것을 특징으로 한다.
그리고 상기 본 발명의 목적들을 달성하기 위한 파일 저장 시스템에서의 파일 검색 방법은, 저장할 파일의 디렉터리 정보에서 파일 이름을 이용하여 이미 저장되어 있는 파일인지를 확인하는 과정과, 상기 파일이 이미 저장되어 있는 경우, 입/출력할 페이지에 대한 페이지 번호를 이용하여 상기 입/출력할 페이지가 저장된 저장 장치를 검색하는 과정과, 검색된 저장 장치로 상기 입/출력 신호를 전송하여 상기 파일을 읽기 또는 수정하는 과정을 포함하는 것을 특징으로 한다.
또한, 상기 본 발명의 목적들을 달성하기 위한 파일 저장 시스템은, 저장할 하나의 파일을 적어도 하나 이상의 오브젝트 단위로 구분하고, 구분된 오브젝트를 일련의 번호를 갖는 페이지 단위로 구분하는 파일 생성부와, 상기 하나의 이상의 오브젝트를 하나씩 할당받고, 할당받은 오브젝트의 상기 파일을 구성하는 페이지들을 저장하는 네트워크로 연결된 다수의 저장 장치들과, 상기 네트워크로 연결된 다수의 저장 장치들 중에서 상기 파일을 기록할 하나의 저장 장치를 선택하여 선택된 저장 장치에 하나의 오브젝트를 할당하는 제어부와, 상기 파일의 저장에 대한 정보를 관리하기 위한 파일의 메타 데이터를 설정하는 파일 저장 정보 관리부를 포함하는 것을 특징으로 한다.
이하, 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 우선 각 도면의 구성 요소들에 참조 부호를 부가함에 있어서, 동일한 구성 요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 그리고 본 발명을 설명함에 있어, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
본 발명은 파일 저장 시스템의 다수의 저장 장치들이 네트워크로 연결된 환경에서 이루어짐을 특징으로 하며, 본 발명의 실시예에 따른 파일 저장 시스템 내의 다수의 저장 장치들은 하드 디스크, 인텔리전트 디스크, OSD(Object Storage Device) 등 다양한 매체가 사용될 수 있으며, 이하, 본 발명의 실시예에서는 이러한 다양한 매체를 통칭하여 디스크라 칭하기로 한다.
그러면 본 발명의 실시예에 따른 하나의 파일을 다수의 디스크에 저장하기 위한 파일 저장 시스템의 구조를 첨부된 도면을 참조하여 구체적으로 설명하기로 한다.
도 1은 본 발명의 실시예에 따른 파일 저장 시스템의 구조를 도시한 구성도이고, 도 2는 본 발명의 실시예에 따른 파일 저장 시스템에서 다수의 디스크별로 하나의 오브젝트를 할당한 저장부의 구조를 도시한 구성도이다.
상기 도 1을 참조하면, 상기 파일 저장 시스템은 상기 다수의 디스크들(110, 120)을 저장부(100)와, 저장할 파일을 입력받거나 검색된 파일을 외부 장치로 출력하는 입/출력부(10)와, 파일 생성부(20)와, 제어부(30)와, 파일 저장 정보 관리부(40)를 포함한다.
상기 파일 생성부(20)는 하나의 파일을 적어도 하나 이상의 오브젝트 단위로 구분하고, 구분된 오브젝트를 일련의 번호를 갖는 페이지 단위로 구분하여 저장 가능한 파일 형태로 구성한다.
상기 제어부(30)는 상기 네트워크로 연결된 다수의 저장 장치들 중에서 상기 파일을 기록할 하나의 저장 장치를 선택하여 선택된 저장 장치에 하나의 오브젝트를 할당하고, 상기 파일을 구성하는 모든 페이지들을 저장하지 못한 경우, 새로운 저장 장치에 새 오브젝트를 할당한다. 그리고 상기 제어부(30)는 이미 저장된 파일을 검색하는 경우, 입/출력할 페이지에 대한 페이지 번호를 이용하여 상기 입/출력할 페이지가 저장된 디스크를 검색하고, 검색된 디스크로 상기 입/출력 신호를 전송하여 상기 파일을 읽기 또는 수정을 제어한다.
상기 파일 저장 정보 관리부(40)는 상기 파일의 저장에 대한 정보를 관리하기 위한 파일의 메타 데이터를 설정한다. 여기서 상기 파일의 메타 데이터 정보는 이하, 첨부된 도 3을 참조하여 구체적으로 설명하기로 한다.
상기 저장부(100)는 다수의 디스크들을 포함하며, 상기 다수의 디스크들은 오브젝트(object) 단위로 파일을 저장한다. 상기 저장되는 파일은 적어도 하나 이상의 오브젝트로 구성되는데, 하나의 오브젝트는 하나의 디스크에만 저장된다. 그리고 상기 오브젝트는 크기가 정해져 있지 않으며 하나의 파일을 구성하는 오브젝트들은 서로 간에 다양한 크기를 갖는다.
예를 들어, 상기 도 2에 도시된 바와 같이 저장할 파일(file-A)(130)이 두개의 오브젝트(obj1, obj2)로 구분되면, 첫 번째 오브젝트(obj1)(140)는 디스크(110)에 저장되고, 두 번째 오브젝트(obj2)는 디스크(120)에 저장된다. 여기서 상기 도 1에서는 설명의 편의를 위해 디스크의 개수를 2개로 하여 설명하였으나, 실제 필요에 따라 디스크의 개수는 증가할 수 있음에 유의하여야 한다.
상기 하나의 오브젝트(object)(140, 150)는 페이지(page) 단위로 구성되며, 상기 페이지는 정해진 크기를 지닌 파일의 최소 할당 단위로서 하나의 오브젝트는 최소한 하나의 페이지를 포함한다. 이러한 오브젝트에 대해 첨부된 도 3을 참조하여 보다 구체적으로 설명하기로 한다.
상기 도 3을 참조하면, 첫 번째 오브젝트(140)는 제1 디스크(110)에 예들 들어 6개의 페이지(141 내지 146)로 구분되어 저장되며, 두 번째 오브젝트(150)는 제2 디스크(120)에서 예를 들어 4개의 페이지(151 내지 154)로 구분되어 저장된다.
상기 오브젝트(140, 150)는 <disk ID, object ID, from_offset, to_offset, overflow>의 파일(file-A)에 대한 메타 데이터 구조 형태로 표현된다. 여기서 상기 disk ID는 해당 오브젝트가 저장된 디스크의 식별자이고, 상기 object ID는 해당 오브젝트의 식별자를 나타낸다. 그리고 상기 from_offset은 해당 오브젝트에 포함되는 페이지들 중 가장 낮은 페이지 번호를 나타내고, to_offset은 해당 오브젝트에 포함되는 페이지들 중 가장 높은 페이지 번호를 나타낸다. 또한, 상기 overflow는 해당 오브젝트의 직전에 기록되던 오브젝트가 미처 모든 페이지들을 기록하지 못하는 오버플로가 발생한 상황을 관리하기 위한 영역을 나타낸다.
이와 같은 메타 데이터(meta data) 구조에서 상기 from_offset에서 to_offset까지의 페이지들 사이에는 빈 공간(hole)이 존재할 수 있는데, 이러한 하나의 오브젝트에 빈 공간이 포함될 수 있지만 그 공간을 식별하기 위한 정보는 별도로 유지하지 않는다. 즉, from_offset~to_offset은 연속적인 공간을 표현하는 것이 아니라, 특정 디스크에 저장된 오브젝트에 속한 페이지들 중 가장 낮은 페이지 번호와 가장 높은 페이지를 단순히 나타낸다. 예를 들어, 상기 도 2에 도시된 바와 같이, 제1 디스크(110)에 저장된 제1 오브젝트(140)에 페이지 번호가 1, 2, 3, 8, 9번인 6개의 페이지들(141 내지 146)이 포함되면 제1 오브젝트(140)에 대한 메타 데이터(210)는 <디스크 1, 140, 1, 9, NULL>로 표현된다.
또한, 파일을 기록하기 위해 하나의 디스크(110)를 선택하고, 상기 파일을 구성하는 페이지들을 기록하는 도중 상기 디스크(110)에서는 상기 파일의 용량이 남은 용량을 초과(overflow)하는 오류가 발생할 수 있다. 예를 들어, 상기 도 2에 도시된 바와 같이, 상기 파일(file-A)(130)이 1 내지 10번의 기록할 페이지를 갖는 경우, 운영체제의 동작 특성에 따라 1, 2, 3, 7, 8, 9번의 페이지들(141 내지 146)이 제1 디스크(140)에 기록될 수 있다. 기록 직후, 상기 제1 디스크(140)에서 공간 부족 오류가 발생하면, 미처 기록하지 못한 4, 5, 6, 10번의 페이지들(151 내지 154)은 제2 디스크(120) 저장할 수 있다. 이러한 경우 제1 디스크(110)에 기록된 페이지들(141 내지 146)은 제1 오브젝트(140)로서 관리되고, 제2 디스크(120)에 기록된 페이지들(151 내지 154)은 제2 오브젝트(150)로서 관리된다. 여기서 상기 제2 오브젝트(150)의 메타 데이터(220)는 <디스크 2, 150, 10, 10, <1, (4, 6)>>로 표현된다. 여기서 상기 overflow 항목은 (overflow_count, (from1, to1), (from2, to2), ...(fromn, ton))의 형태로 표현되며, 이전 디스크에 기록되던 오브젝트의 from_offset과 to_offset의 범위 안에 포함되지만, 운영체제의 동작 특성에 따라 이전 디스크에 미처 기록되지 않았던 페이지들의 정보를 관리한다. 이러한 페이지들은 추후에 새로운 디스크를 선택하고, 선택된 디스크에 새 오브젝트를 할당한 후 기록되며, 새 오브젝트의 overflow 항목에 해당 정보가 기록된다. 단, overflow 영역에서(fromi, toi)의 쌍으로 표현되는 범위는 연속적인 페이지 공간을 의미한다. 즉, 이는 상기 도 2에 도시된 바와 같이, 4, 5, 6번 페이지들(151 내지 153)은 제1 오브젝트(140)의 메타 데이터(210)에서 (from_offset, to_offset)인 (1, 9)의 영역 안에 포함되지만, 제1 오브젝트(140)에 기록되지 못하였기 때문에 제2 오브젝트(150)의 메타 데이터(220)의 overflow 영역에 표시된다. 그리고 10번 페이 지(154)는 제1 오브젝트(140)가 표현하고 있는 범위를 벗어나기 때문에 제2 오브젝트(150)의 from_offset 영역에 기록된다.
이와 같은 구조를 갖는 파일 저장 시스템에서는 기록할 파일을 입력받으면, 상술한 바와 같은 파일 표현 형식에 따라 하나의 파일을 다수의 디스크 상에 걸쳐서 저장하는데, 이러한 파일 저장 방법에 대해 첨부된 도면을 참조하여 구체적으로 설명하기로 한다.
파일 저장 시스템은 파일 기록 명령을 수신하면, 디렉터리 정보에서 파일의 이름을 이용하여 해당 파일이 이미 저장되어 있는 파일인지 새로운 파일인지를 확인하게 된다. 그러면 우선, 확인한 결과, 새로운 파일인 경우라면, 본 발명의 제1 실시예에 따른 파일 저장 방법에 대해 설명하기로 한다.
도 3은 본 발명의 실시예에 따라 파일 저장 시스템에서 새로운 파일을 기록하기 위한 과정을 도시한 흐름도이다.
상기 도 3을 참조하면, 300단계에서 파일 저장 시스템은 파일에 대한 정보를 보관할 메타 데이터 영역을 확보한 후, 301단계에서 네트워크로 연결된 다수의 디스크들 중에서 상기 파일을 기록할 하나의 디스크를 선택한다.
그런 다음 302단계에서 파일 저장 시스템은 선택된 디스크의 오브젝트를 할당하고, 303단계에서 할당된 오브젝트를 관리하기 위해 상기 파일의 메타 데이터에 오브젝트 엔트리를 추가한다. 이에 따라 304단계에서 파일 저장 시스템은 상기 선택된 디스크에 파일을 구성하는 페이지들을 기록한다. 이때, 기록 도중 상기 페이 지들은 상기 선택된 디스크의 용량을 초과할 수 있다. 따라서 305단계에서 상기 파일 저장 시스템은 디스크의 공간부족으로 인한 페이지 기록 오류가 발생하였는지를 확인한다.
확인 결과, 기록 오류가 발생한 경우, 306단계에서 파일 저장 시스템은 새 디스크를 선택한 후 302단계로 진행하여 디스크에 빈 오브젝트를 할당하고 이후 단계들을 다시 수행한다.
반면, 기록 오류가 발생하지 않은 경우, 307단계에서 파일 저장 시스템은 디스크의 공간 부족으로 기록을 실패했던 페이지를 다시 기록할 것인지를 확인한다. 확인 결과, 다시 기록하는 경우에는 308단계에서 페이지 번호가 이전 오브젝트 엔트리와 (from_offset, to_offset) 범위에 이미 포함된 경우인지를 확인한다. 만약, 이미 포함된 경우에는 309단계에서 파일 저장 시스템은 오브젝트 엔트리의 overflow 영역에 상기 페이지 번호를 반영한 후 311단계로 진행하고, 그렇지 않은 경우에는 310단계로 진행한다.
반면, 307단계에서 확인한 결과, 다시 기록하지 않는 경우에는 310단계에서 파일 저장 시스템은 기록된 페이지에 속한 오브젝트 정보를 갱신하여 오브젝트 엔트리 중 (from_offset, to_offset) 항목에 설정한다. 예를 들어 상기 도 2의 메타 데이터(210)에서 1, 2, 3, 7, 8번 페이지(141 내지 145)가 기록되어 (from_offset, to_offset)의 기존 값이(1, 8)인 상황에서 9번 페이지(146)를 추가로 기록하면 (1, 9)로 값이 갱신된다.
그런 다음 311단계에서 파일 저장 시스템은 파일에 속한 모든 페이지를 기록 했는지를 확인하여 모든 페이지를 기록하였으면 동작을 종료한다. 반면, 그렇지 않은 경우에는 304단계로 진행하여 페이지를 디스크에 기록한 후 이후 단계들을 다시 수행한다. 이때, 다음 기록하고자 하는 페이지가 4번 페이지(151)이고, 기존에 사용 중이던 디스크(110)에 더 이상 저장 공간이 없는 경우라면, 상기 306단계와 같이 새로운 디스크(120)를 위한 메타 데이터(220)의 overflow 영역에 (1,(4, 4))라는 값이 기록된다. 다시 이어서 5, 6번 페이지(152, 153)가 상기 새로운 디스크(120)에 기록되면 오브젝트(150)의 메타 데이터(220)의 값은 <디스크 2, 150, -, -, (1,(4, 4))>에서 <디스크 2, 150, -, -, (1,(4, 5))>, <디스크 2, 150, -, -, (1,(4, 6))>으로 변화되고, 마지막 10번 페이지(154)가 기록되면 메타 데이터(220)의 값은 <디스크 2, 150, 10, 10, (1,(4, 5))>가 된다.
상술한 바와 같은 본 발명의 제1 실시예에서는 저장할 파일이 새로운 파일인 경우의 파일 저장 방법에 대해 설명하였으나, 본 발명의 제2 실시예에서는 저장할 파일이 이미 파일 저장 시스템에 저장된 경우의 파일 저장 방법에 대해 설명하기로 한다.
상기 파일 저장 시스템에 미리 저장되어 있는 파일을 읽거나 수정하는 경우, 파일 저장 시스템은 입/출력 시 페이지 번호를 이용하여 해당 페이지가 어느 디스크에 저장되어 있는지 검색한 후, 해당 디스크의 식별 번호를 찾아서 해당 디스크에 입/출력 신호를 보내게 된다. 이러한 페이지 번호를 이용하여 검색하는 구체적인 과정에 대해 첨부된 도면을 참조하여 설명하기로 한다.
도 4는 본 발명의 실시예에 따라 파일 저장 시스템에서 파일에 속한 페이지가 포함되어 있는 파일 저장 장치를 찾는 과정을 도시한 흐름도이다.
상기 도 2 및 도 4를 참조하면, 400단계에서 파일 저장 시스템은 파일에 속한 오브젝트 엔트리 개수(n)를 설정하는 등의 초기화를 수행한다.
이후, 401단계에서 파일의 메타 데이터에서 n번째 오브젝트 엔트리를 조회한다. 이때, 조회는 메타 데이터에 보관되는 오브젝트 정보의 관리 형태에 의거하여 가장 최근에 생성된 오브젝트에 대한 정보부터 먼저 검색하고, 가장 오래전에 생성된 오브젝트에 대한 정보는 가장 나중에 검색하는 순으로 처리한다.
그런 다음 402단계에서 파일 저장 시스템은 상기 조회된 오브젝트 엔트리 즉, 오브젝트의 메타 데이터의 overflow 영역에 해당 페이지 번호가 포함되었는지를 확인한다. 확인 결과, 페이지 번호가 포함된 경우에는 403단계에서 현재 조회중인 오브젝트 엔트리에서 디스크 번호를 반환하고, 동작을 종료한다.
반면, 상기 402단계에서 확인한 결과, 페이지 번호가 포함되지 않은 경우에는 404단계에서 파일 저장 시스템은 현재 조회중인 오브젝트 엔트리에서 오브젝트 메타 데이터 내 페이지 정보(from_offset, to_offset) 영역과 비교하여 405단계에서 상기 페이지 정보(from_offset, to_offset) 영역에 상기 페이지 번호가 포함되었는지를 확인한다. 확인한 결과, 상기 페이지 번호가 포함된 경우에는 406단계에서 파일 저장 시스템은 이전 오브젝트 엔트리 즉, n-1번째 엔트리의 오브젝트 메타 데이터 내 페이지 정보(from_offset, to_offset) 영역에도 페이지 번호가 포함되었는지를 확인한다. 만약, 이때에도 페이지 번호가 포함된 경우에는 407단계로 진행 하여 이전 오브젝트 엔트리를 검색하기 위한 설정을 한다. 즉, n:=n-1로 설정한 후 401단계로 진행하고, 페이지 번호가 포함되지 않은 경우에는 403단계로 진행하여 이후 단계들을 수행한다.
반면, 404단계에서 확인한 결과, 페이지 번호가 포함되지 않은 경우 408단계에서 파일 저장 시스템은 n==1 즉, 조회할 마지막 오브젝트 엔트리인지를 확인한다. 확인한 결과, n이 1이면 409단계에서 파일 저장 시스템은 원하는 페이지가 없음을 통보하고, 동작을 종료한다. 반면, n이 1이 아니면 407단계로 진행하여 그 다음 오브젝트 엔트리를 조회하도록 설정하고, 401단계로 진행하여 이후 단계들을 다시 수행한다. 이러한 검색 순서를 준수함으로써, 본 발명의 제2 실시예에서는 하나의 파일이 여러 개의 디스크들에 분산 저장되어 있는 경우에도 특정 페이지를 검색하는 것이 가능하다.
이와 같은 과정에 따라 상기 도 2에 도시된 바와 같은 3번 페이지를 조회하고자하는 경우를 예를 들어 설명하기로 한다.
상기 파일 저장 시스템은 가장 최근에 기록된 오브젝트(150)가 메타 데이터(220)인 경우 상기 메타 데이터(220)를 먼저 검색하여 overflow 영역인 (1, (4, 6))을 먼저 검사하여 401단계에서 3번 페이지(143)가 포함되어 있는지를 확인한다. 이때, 상기 메타 데이터(220)에는 3번 페이지(143)가 포함되어 있지 않으므로 파일 저장 시스템은 402단계를 수행한다.
402단계에서 파일 저장 시스템은 페이지 정보(from_offset, to_offset) 영역과 비교하게 되는데, 상기 메타 데이터(220)에서는 from_offset이 10, to_offset이 10으로 서정되어 있기 때문에 10번 페이지(154)가 디스크(120)에 기록되어 있음을 확인할 수 있다. 그러나 찾고자 하는 3번 페이지는 상기 페이지 정보(from_offset, to_offset) 영역에도 포함되어 있지 않으므로 상기 오브젝트(150)에는 원하는 페이지가 포함되어 있지 않음을 알 수 있다.
따라서 파일 저장 시스템은 407단계 및 401단계를 수행하여 제2 오브젝트 메타 데이터(210)가 기록되기 이전의 제1 오브젝트 메타 데이터(210)에 관한 정보를 읽어와 402단계에서 다시 상기 3번 페이지(143)를 조회한다. 조회 결과, overflow 영역(NULL)에는 상기 3번 페이지가 없으므로 403단계 및 404단계에서 페이지 정보 (from_offset, to_offset) 영역에 포함되어 있는지를 확인한다. 확인한 결과, 상기 영역에는 값이 (1, 9)로서, 상기 3번 페이지가 1~9 사이에 포함되며, 상기 제1 오브젝트는 최초에 생성된 오브젝트이므로 더 이상의 조회 과정을 수행하지 않고 403단계에서 상기 제1 오브젝트가 포함된 제1 디스크(110)의 번호를 반환한다. 따라서 상기 찾고자하는 3번 페이지는 제1 디스크(110)에 저장되어 있음을 알 수 있다.
상술한 바와 같은 실시예들에 따라 본 발명은 하나의 파일을 오브젝트 단위로 관리하여 하나의 오브젝트를 하나의 디스크에만 저장시키고, 상기 파일의 메타 데이터 내의 오브젝트별 메타 데이터로 관리함으로써, 여러 개의 디스크에 걸치는 대용량 파일의 저장이 가능하다.
또한, 본 발명은 메타 데이터 중 페이지 정보(from_offset, to_offset) 영역과 overflow 영역, 그리고 오브젝트를 검색하는 특정 순서를 도입함으로써 파일이 커지더라도 그 파일의 정보를 간결하게 관리할 수 있다. 예를 들어, 저장하고자 하는 페이지들의 번호가 1, 2, 3, …, 1000000일 경우, 비트맵 등을 이용하여 대응되는 전체 페이지들의 번호를 모두 기억하는 대신에 메타 데이터의 페이지 정보(from_offset, to_offset) 영역에 (1, 1000000)이라는 하나의 엔트리만으로도 모든 정보를 표현할 수 있기 때문에 메타 데이터 자체를 간결하게 유지할 수 있으며, 그 결과 시스템의 전체 성능이 증가된다.
더욱이, 본 발명은 기록하고자하는 파일이 새 파일이 아닌 이미 저장된 파일인 경우에도 상기 특정 순서에 따라 설정된 메타 데이터를 통해 오브젝트 내의 페이지를 검색함으로써 파일의 저장된 디스크를 보다 쉽고 빠르게 찾을 수 있다.
한편, 본 발명의 상세한 설명에서는 구체적인 실시 예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 안 되며 후술하는 발명청구의 범위뿐만 아니라 이 발명청구의 범위와 균등한 것들에 의해 정해져야 한다.
상술한 바와 같이 본 발명은 파일 저장 시스템에서 하나의 파일을 오브젝트 단위로 관리하여 하나의 오브젝트를 하나의 디스크에만 저장시키고, 상기 파일의 메타 데이터내의 오브젝트별 메타 데이터로 관리함으로써, 여러 개의 디스크에 걸 치는 대용량 파일의 저장할 수 있으며, 파일 정보를 오브젝트 메타 데이터에 최소한의 자원으로 간결하게 설정하므로 시스템의 전체 성능을 증가시킬 수 있는 효과가 있다.

Claims (21)

  1. 저장할 하나의 파일을 적어도 하나 이상의 오브젝트 단위로 구분하고, 구분된 오브젝트를 일련의 번호를 갖는 페이지 단위로 구분하는 과정과,
    네트워크로 연결된 다수의 저장 장치들 중에서 상기 파일을 기록할 하나의 저장 장치를 선택하는 과정과,
    선택된 저장 장치에 하나의 오브젝트를 할당하는 과정과,
    상기 선택된 저장 장치에 할당된 오브젝트의 상기 파일을 구성하는 페이지들을 저장하는 과정과,
    상기 파일을 구성하는 모든 페이지들을 저장하지 못한 경우, 새로운 저장 장치에 새 오브젝트를 할당하여 나머지 페이지를 저장하는 과정과,
    상기 파일의 저장에 대한 정보를 관리하기 위한 파일의 메타 데이터를 설정하는 과정을 포함하는 것을 특징으로 하는 파일 저장 시스템에서의 파일 저장 방법.
  2. 제1항에 있어서, 상기 파일의 저장에 대한 정보를 관리하기 위한 파일의 메타 데이터를 설정하는 과정은,
    상기 페이지들을 저장하는 저장 장치별로 할당된 오브젝트에 대한 메타 데이터를 추가하여 상기 파일의 메타 데이터를 구성하는 단계와,
    상기 페이지들을 저장하는 저장 장치별로 상기 파일을 저장하기 위해 필요한 정보들을 나타내는 영역들을 설정하는 단계와,
    하나의 페이지가 저장되면, 저장된 페이지가 속한 오브젝트에 대한 정보를 상기 오브젝트에 대한 메타 데이터에 갱신하는 단계를 포함하는 것을 특징으로 하는 파일 저장 시스템에서의 파일 저장 방법.
  3. 제2항에 있어서, 상기 오브젝트에 대한 메타 데이터에 갱신하는 단계는,
    상기 선택된 저장 장치에 페이지를 저장하는 경우, 저장되는 페이지의 번호를 상기 파일의 메타 데이터에 추가된 제1 오브젝트의 메타 데이터 내 페이지 정보 영역에 설정하는 단계와,
    상기 파일을 구성하는 모든 페이지들을 저장하지 못한 경우, 상기 나머지 페이지의 번호를 상기 파일의 메타 데이터에 다음 추가된 제2 오브젝트의 메타 데이터 내 페이지 정보 영역에 설정함을 특징으로 하는 파일 저장 시스템에서의 파일 저장 방법.
  4. 제3항에 있어서,
    상기 페이지 번호가 상기 제1 오브젝트의 메타 데이터 내 페이지 정보 영역의 표현 범위 내에 포함된 경우 상기 제2 오브젝트의 메타 데이터 내 오버플 로(overflow) 영역에 설정하는 단계를 더 포함함을 특징으로 하는 파일 저장 시스템에서의 파일 저장 방법.
  5. 제2항에 있어서,
    상기 오브젝트에 대한 메타 데이터는 저장 장치의 정보(disk ID), 오브젝트의 정보(object ID), 상기 페이지 정보(from_offset, to_offset), 상기 오버플로 정보(overflow) 영역을 포함하며, 상기 페이지 정보는 하나의 저장 장치에 저장되는 페이지들 중 가장 낮은 페이지 번호(from_offset)와 가장 높은 페이지 번호( to_offset) 영역으로 구분됨을 특징으로 하는 파일 저장 시스템에서의 파일 저장 방법.
  6. 제5항에 있어서,
    상기 오버플로(overflow) 영역은 기록되지 못한 상기 나머지 파일이 상기 페이지 정보의 범위 내에 포함되어 있는 경우 상기 나머지 파일에 대한 페이지 정보를 ((overflow_count), (from1, to1), (from2, to2),...(fromn, ton)) 형태로 표현함을 특징으로 하는 파일 저장 시스템에서의 파일 저장 방법.
  7. 저장할 파일의 디렉터리 정보에서 파일 이름을 이용하여 이미 저장되어 있는 파일인지를 확인하는 과정과,
    상기 파일이 이미 저장되어 있는 경우, 입/출력할 페이지에 대한 페이지 번호를 이용하여 상기 입/출력할 페이지가 저장된 저장 장치를 검색하는 과정과,
    검색된 저장 장치로 상기 입/출력 신호를 전송하여 상기 파일을 읽기 또는 수정하는 과정을 포함하는 것을 특징으로 하는 파일 저장 시스템에서의 파일 검색 방법.
  8. 제7항에 있어서, 상기 입/출력할 페이지가 저장된 저장 장치를 검색하는 과정은,
    저장된 파일의 정보를 관리하기 위한 파일의 메타 데이터에서 가장 최근에 설정된 오브젝트 엔트리를 조회하는 단계와,
    상기 조회된 오브젝트 엔트리에 대한 오브젝트 메타 데이터 내 오버플로 영역에서 상기 입/출력할 페이지에 대한 페이지 번호를 검색하는 단계와,
    상기 오버플로 영역에 상기 페이지 번호가 없는 경우, 상기 조회된 오브젝트 엔트리에 대한 오브젝트 메타 데이터 내 페이지 정보 영역에서 상기 페이지 번호를 검색하는 단계와,
    상기 검색 단계들에서 상기 페이지 번호를 찾은 경우, 현재 조회중인 오브젝 트 엔트리를 포함하는 저장 장치의 번호를 반환하는 단계를 포함하는 것을 특징으로 하는 파일 저장 시스템에서의 파일 검색 방법.
  9. 제8항에 있어서,
    상기 검색 단계들에서 상기 페이지 번호를 찾지 못한 경우, 이전에 설정된 오브젝트 엔트리를 조회하는 단계와,
    상기 이전 오브젝트 엔트리에 대한 오브젝트 메타 데이터에서 상기 검색 단계들과 같이 상기 페이지 번호를 검색하는 단계와,
    상기 페이지 번호를 찾은 경우, 상기 이전 오브젝트 엔트리를 포함하는 저장 장치의 번호를 반환하는 단계를 더 포함하는 것을 특징으로 하는 파일 저장 시스템에서의 파일 검색 방법.
  10. 제9항에 있어서,
    이전에 설정된 모든 오브젝트 엔트리에서 상기 페이지 번호를 찾지 못한 경우 상기 페이지가 없음을 통보하는 단계를 더 포함하는 것을 특징으로 하는 파일 저장 시스템에서의 파일 검색 방법.
  11. 제8항에 있어서,
    상기 파일의 메타 데이터는, 상기 다수의 저장 장치들에 걸쳐서 저장되는 하나의 파일에 대한 저장 정보를 표현하는 영역들로 구성되며, 상기 하나의 파일이 저장된 저장 장치들의 개수만큼의 오브젝트에 대한 메타 데이터를 포함함을 특징으로 하는 파일 저장 시스템에서의 파일 검색 방법.
  12. 제8항에 있어서,
    상기 오브젝트에 대한 메타 데이터는 저장 장치의 정보(disk ID), 오브젝트의 정보(object ID), 상기 페이지 정보(from_offset, to_offset), 상기 오버플로 정보(overflow) 영역을 포함하며, 상기 페이지 정보는 하나의 저장 장치에 저장되는 페이지들 중 가장 낮은 페이지 번호(from_offset)와 가장 높은 페이지 번호( to_offset) 영역으로 구분됨을 특징으로 하는 파일 저장 시스템에서의 파일 검색 방법.
  13. 제12항에 있어서,
    상기 오버플로(overflow) 영역은 기록되지 못한 나머지 파일이 상기 페이지 정보의 범위 내에 포함되어 있는 경우 상기 나머지 파일에 대한 페이지 정보를 ((overflow_count), (from1, to1), (from2, to2), ...(fromn, ton)) 형태로 표현함을 특징으로 하는 파일 저장 시스템에서의 파일 검색 방법.
  14. 저장할 하나의 파일을 적어도 하나 이상의 오브젝트 단위로 구분하고, 구분된 오브젝트를 일련의 번호를 갖는 페이지 단위로 구분하는 파일 생성부와,
    상기 하나의 이상의 오브젝트를 하나씩 할당받고, 할당받은 오브젝트의 상기 파일을 구성하는 페이지들을 저장하는 네트워크로 연결된 다수의 저장 장치들과,
    상기 네트워크로 연결된 다수의 저장 장치들 중에서 상기 파일을 기록할 하나의 저장 장치를 선택하여 선택된 저장 장치에 하나의 오브젝트를 할당하는 제어부와,
    상기 파일의 저장에 대한 정보를 관리하기 위한 파일의 메타 데이터를 설정하는 파일 저장 정보 관리부를 포함하는 것을 특징으로 하는 파일 저장 시스템.
  15. 제14항에 있어서,
    상기 제어부는 상기 파일을 구성하는 모든 페이지들을 저장하지 못한 경우, 새로운 저장 장치에 새 오브젝트를 할당함을 특징으로 하는 파일 저장 시스템.
  16. 제14항에 있어서,
    상기 제어부는 이미 저장된 파일을 검색하는 경우, 입/출력할 페이지에 대한 페이지 번호를 이용하여 상기 입/출력할 페이지가 저장된 저장 장치를 검색하고, 검색된 저장 장치로 상기 입/출력 신호를 전송하여 상기 파일을 읽기 또는 수정함을 특징으로 하는 파일 저장 시스템.
  17. 제16항에 있어서,
    상기 제어부는 저장된 파일의 정보를 관리하기 위한 파일의 메타 데이터에서 가장 최근에 설정된 오브젝트 엔트리에서 가장 먼저 설정된 오브젝트 엔트리 순으로 페이지 번호를 검색하며, 상기 페이지 번호 검색은 해당 오브젝트 엔트리에 대한 메타 데이터 내 오버플로 영역 및 페이지 영역에서 검색함을 특징으로 하는 파일 저장 시스템.
  18. 제14항에 있어서,
    상기 파일 저장 정보 관리부는 상기 다수의 저장 장치들에 걸쳐서 저장되는 하나의 파일에 대한 저장 정보를 표현하는 영역들을 설정하고, 상기 파일이 저장된 저장 장치들의 개수만큼의 오브젝트에 대한 메타 데이터를 포함하며, 하나의 페이 지가 저장되면, 저장된 페이지가 속한 오브젝트에 대한 정보를 상기 파일의 메타 데이터에 갱신함을 특징으로 하는 파일 저장 시스템.
  19. 제18항에 있어서,
    상기 파일 저장 정보 관리부는 상기 선택된 저장 장치에 페이지를 저장하는 경우, 저장되는 페이지의 번호를 제1 오브젝트의 메타 데이터 내 페이지 정보 영역에 설정하고, 상기 파일을 구성하는 모든 페이지들을 저장하지 못한 경우, 상기 나머지 페이지의 번호를 제2 오브젝트의 메타 데이터 내 페이지 정보 영역에 설정함을 특징으로 하는 파일 저장 시스템.
  20. 제14항 또는 제19항에 있어서,
    상기 오브젝트에 대한 메타 데이터는 저장 장치의 정보(disk ID), 오브젝트의 정보(object ID), 페이지 정보(from_offset, to_offset), 오버플로 정보(overflow) 영역을 포함하며, 상기 페이지 정보는 하나의 저장 장치에 저장되는 페이지들 중 가장 낮은 페이지 번호(from_offset)와 가장 높은 페이지 번호( to_offset) 영역으로 구분됨을 특징으로 하는 파일 저장 시스템.
  21. 제20항에 있어서,
    상기 오버플로(overflow) 영역은 기록되지 못한 상기 나머지 파일이 상기 페이지 정보의 범위 내에 포함되어 있는 경우 상기 나머지 파일에 대한 페이지 정보를 ((overflow_count), (from1, to1), (from2, to2), ...(fromn, ton)) 형태로 표현함을 특징으로 하는 파일 저장 시스템.
KR1020060096562A 2006-09-29 2006-09-29 파일 저장 시스템 및 그 시스템에서의 파일 저장 및 검색방법 KR100834574B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020060096562A KR100834574B1 (ko) 2006-09-29 2006-09-29 파일 저장 시스템 및 그 시스템에서의 파일 저장 및 검색방법
US11/860,652 US7933938B2 (en) 2006-09-29 2007-09-25 File storage system, file storing method and file searching method therein

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060096562A KR100834574B1 (ko) 2006-09-29 2006-09-29 파일 저장 시스템 및 그 시스템에서의 파일 저장 및 검색방법

Publications (2)

Publication Number Publication Date
KR20080029677A true KR20080029677A (ko) 2008-04-03
KR100834574B1 KR100834574B1 (ko) 2008-06-02

Family

ID=39262214

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060096562A KR100834574B1 (ko) 2006-09-29 2006-09-29 파일 저장 시스템 및 그 시스템에서의 파일 저장 및 검색방법

Country Status (2)

Country Link
US (1) US7933938B2 (ko)
KR (1) KR100834574B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109254733A (zh) * 2018-09-04 2019-01-22 北京百度网讯科技有限公司 用于存储数据的方法、装置和系统

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2409936T3 (es) 2003-01-31 2013-06-28 Good Technology Corporation Recuperación asíncrona de datos en tiempo real
US8214404B2 (en) * 2008-07-11 2012-07-03 Avere Systems, Inc. Media aware distributed data layout
US9323681B2 (en) 2008-09-18 2016-04-26 Avere Systems, Inc. File storage system, cache appliance, and method
JP5468620B2 (ja) * 2008-12-18 2014-04-09 コピウン,インク. コンテンツアウェア・データ分割およびデータ重複排除のための方法ならびに装置
EP3508978B1 (en) * 2010-03-12 2021-09-22 BlackBerry Limited Distributed catalog, data store, and indexing
CN102985911B (zh) 2010-03-16 2016-07-06 科派恩股份有限公司 高度可伸缩和分布式重复数据删除
WO2012027472A2 (en) 2010-08-24 2012-03-01 Copiun, Inc. Constant access gateway and de-duplicated data cache server
CN105068761B (zh) * 2015-07-31 2018-08-28 广东浩亚信息科技有限公司 一种便于检索的视频截图存储方法和系统
KR101815529B1 (ko) 2016-07-29 2018-01-30 (주)신테카바이오 휴먼 하플로타이핑 시스템 및 방법
KR102085169B1 (ko) 2016-12-15 2020-03-04 (주)신테카바이오 개인 유전체 맵 기반 맞춤의학 분석 시스템 및 이를 이용한 분석 방법
CN108009204A (zh) * 2017-11-02 2018-05-08 深圳市网心科技有限公司 基于扩展名分类并去冗余的方法及系统
CN108052284B (zh) * 2017-12-08 2020-11-06 北京奇虎科技有限公司 一种分布式数据存储方法及装置
KR102078200B1 (ko) 2018-12-20 2020-02-17 (주)신테카바이오 개인 유전체 맵 기반 맞춤의학 분석 플랫폼 및 이를 이용한 분석 방법
KR102041497B1 (ko) 2018-12-20 2019-11-27 (주)신테카바이오 개인 유전체 맵 기반 맞춤의학 분석 플랫폼 및 이를 이용한 분석 방법
KR102041504B1 (ko) 2018-12-20 2019-11-27 (주)신테카바이오 환자 계층화를 위한 맞춤의학 분석 플랫폼
CN111737161B (zh) * 2020-05-22 2024-03-26 深圳市战音科技有限公司 Flash存储器的文件传输方法、终端及存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5956745A (en) 1997-04-23 1999-09-21 Novell, Inc. System and method for automatically resizing a disk drive volume
US6530035B1 (en) 1998-10-23 2003-03-04 Oracle Corporation Method and system for managing storage systems containing redundancy data
US6981005B1 (en) * 2000-08-24 2005-12-27 Microsoft Corporation Partial migration of an object to another storage location in a computer system
KR100359423B1 (en) 2002-01-04 2002-11-07 Ncerti Co Ltd Very high speed high capacity backup system and backup method thereof
KR100892067B1 (ko) * 2002-11-22 2009-04-07 엘지전자 주식회사 파일 검색방법
KR100472207B1 (ko) * 2002-12-23 2005-03-10 한국전자통신연구원 다중 레이드 제어기를 통한 데이터 분산 공유 레이드 제어시스템
KR100612262B1 (ko) * 2004-07-28 2006-08-14 삼성전자주식회사 데이터 통신 서비스 제공 시스템의 데이터 관리 방법 및장치
JP4854973B2 (ja) * 2005-03-09 2012-01-18 富士通株式会社 記憶制御プログラム、記憶制御方法、記憶制御装置および記憶制御システム
US20070127070A1 (en) * 2005-12-07 2007-06-07 Kabushiki Kaisha Toshiba Image forming apparatus

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109254733A (zh) * 2018-09-04 2019-01-22 北京百度网讯科技有限公司 用于存储数据的方法、装置和系统
KR20200027413A (ko) * 2018-09-04 2020-03-12 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 데이터 저장 방법, 장치 및 시스템
CN109254733B (zh) * 2018-09-04 2021-10-01 北京百度网讯科技有限公司 用于存储数据的方法、装置和系统

Also Published As

Publication number Publication date
US7933938B2 (en) 2011-04-26
US20080082525A1 (en) 2008-04-03
KR100834574B1 (ko) 2008-06-02

Similar Documents

Publication Publication Date Title
KR100834574B1 (ko) 파일 저장 시스템 및 그 시스템에서의 파일 저장 및 검색방법
JP5771280B2 (ja) 計算機システム及びストレージ管理方法
US8429369B2 (en) Storage management program, storage management method, and storage management apparatus
JP5000316B2 (ja) オブジェクト・ベースのデータ記憶装置
JP4519179B2 (ja) 論理ボリューム管理プログラム、論理ボリューム管理装置、論理ボリューム管理方法、および分散ストレージシステム
WO2011033692A1 (ja) ストレージ装置及びそのスナップショット制御方法
US8032784B2 (en) Duplication combination management program, duplication combination management apparatus, and duplication combination management method
US7603337B2 (en) Storage system operation management method and storage system
US20060212495A1 (en) Method and system for storing data into a database
US20140075240A1 (en) Storage apparatus, computer product, and storage control method
KR100757168B1 (ko) 데이터 관리 방법 및 장치 및 계층형 기억 장치
US20070061540A1 (en) Data storage system using segmentable virtual volumes
JP2008015769A (ja) ストレージシステム及び書き込み分散方法
TW201214270A (en) Preserving an existing volume map in re-initializing a data storage volume
CN101976181A (zh) 一种存储资源的管理方法及管理装置
US8880794B2 (en) Populating a sparsely allocated memory in a storage array
JP5129269B2 (ja) インテリジェントディジタルディスクレコーダにおけるシンメトリックストレージアクセス
US20160350005A1 (en) Data recording and reproducing system
JP7389337B2 (ja) ストレージ制御システム
JP6022116B1 (ja) 階層化ストレージシステム、ストレージコントローラ及びレプリケーション初期化方法
US20140059305A1 (en) Management apparatus, storage device, and initialization method
US11544005B2 (en) Storage system and processing method
JP2001265626A (ja) ファイル管理方法、データ処理装置並びに記憶媒体
JP2009032144A (ja) ディスクシステム制御モジュール、ディスクシステム制御方法、ディスクシステム制御プログラム及び情報処理装置
CN112463063A (zh) 一种存储空间分配方法及装置

Legal Events

Date Code Title Description
A201 Request for examination
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: 20130424

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140430

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150427

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160427

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20180426

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20190425

Year of fee payment: 12