KR101318420B1 - 메타데이터의 위치를 검색하기 위한 방법, 시스템 및 컴퓨터 판독 가능 기록 매체 - Google Patents

메타데이터의 위치를 검색하기 위한 방법, 시스템 및 컴퓨터 판독 가능 기록 매체 Download PDF

Info

Publication number
KR101318420B1
KR101318420B1 KR1020120014205A KR20120014205A KR101318420B1 KR 101318420 B1 KR101318420 B1 KR 101318420B1 KR 1020120014205 A KR1020120014205 A KR 1020120014205A KR 20120014205 A KR20120014205 A KR 20120014205A KR 101318420 B1 KR101318420 B1 KR 101318420B1
Authority
KR
South Korea
Prior art keywords
file
metadata
address
hashing
hash key
Prior art date
Application number
KR1020120014205A
Other languages
English (en)
Other versions
KR20130092737A (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 KR1020120014205A priority Critical patent/KR101318420B1/ko
Publication of KR20130092737A publication Critical patent/KR20130092737A/ko
Application granted granted Critical
Publication of KR101318420B1 publication Critical patent/KR101318420B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명의 실시예는, 특정 파일의 파일명 또는 파일 경로 중 적어도 하나를 기초로 해싱을 수행하여 상기 파일의 메타데이터에 대한 어드레스를 획득하는 단계; 및 메타데이터 영역의 상기 어드레스에 해당하는 위치에서 상기 파일의 메타데이터에 대한 판독 또는 쓰기를 수행하는 단계를 포함하는 메타데이터 위치 검색 방법을 제공한다.

Description

메타데이터의 위치를 검색하기 위한 방법, 시스템 및 컴퓨터 판독 가능 기록 매체{METHOD, SYSTEM AND COMPUTER-READABLE RECORDING MEDIUM FOR SEARCHING POSITION OF METADATA}
본 발명은 다중 경로를 통해 데이터 입출력을 수행하기 위한 방법, 시스템 및 컴퓨터 판독 가능 기록 매체에 관한 것으로, 보다 상세하게는 파일명 또는 파일 경로를 기초로 해싱을 수행하여 메타데이터의 어드레스를 얻을 수 있도록 함으로써, 한 번의 접근만으로 특정 파일에 대한 메타데이터의 위치 정보를 얻을 수 있는 방법, 시스템 및 컴퓨터 판독 가능 기록 매체에 관한 것이다.
최근 고속 저장 매체에 데이터를 저장하고, 저장된 데이터를 실행하는 기기들이 상용화되고 있다. 저장 매체에서 특정 데이터에 대한 판독 또는 쓰기를 수행하기 위해서는 상기 특정 데이터에 대한 논리적 위치를 파악하여야 한다.
파일 시스템은 파일마다 고유의 이름을 붙이고, 상기 파일의 저장 또는 검색을 위해 해당 파일들의 위치를 결정한다. 특히, 플래쉬 메모리 등을 저장 매체로 이용하는 경우에는 파일 시스템을 통해 파일과 파일 안에 포함된 데이터를 저장하고, 파일 및 데이터를 용이하게 검색할 수 있도록 관리한다.
현재 데이터의 검색을 신속하게 하기 위한 다양한 방법이 소개되어 있다. 특히 메타데이터를 이용하여 데이터의 검색 속도를 향상시키는 기술이 발전하고 있다. 메타데이터는 특정 파일에 대한 정보로서, 그 파일의 속성을 설명하는 데이터이다. 즉, 메타 데이터는 실제로 실행되는 데이터는 아니지만, 데이터와 직접 혹은 간접적으로 연관된 정보를 제공한다. 이러한 메타데이터를 이용하여 파일 시스템을 구축하는 경우에는 데이터 관리 효율성이 향상된다.
그러나, 이러한 메타데이터를 이용하여 파일에 대한 관리의 효율성이 향상될 수 있다 하더라도, 특정 파일에 대한 판독 또는 쓰기 요청이 발생하는 경우 해당 메타데이터의 위치를 찾아야한다.
기존에는 디렉토리 구조를 이용하여, 특정 파일의 메타데이터를 검색하는 방법이 널리 이용되었었다. 그러나, 하위 디렉토리에 존재하는 파일의 판독을 위해서는 저장 매체에의 접근 횟수가 증가하게 된다. 따라서, 고성능 저장 매체의 성능을 최대한으로 사용할 수 없는 문제가 있었다.
한국특허공개공보 제10-2004-0010314호 (공개일: 2004년01월31일)
본 발명은 상술한 종래 기술의 문제점을 모두 해결하는 것을 그 목적으로 한다.
본 발명의 목적은 저장 디바이스에의 한 번의 접근만으로도 특정 파일의 메타데이터 위치를 찾을 수 있도록 하는 것이다.
본 발명의 실시예에 따르면, 특정 파일의 파일명 또는 파일 경로 중 적어도 하나를 기초로 해싱을 수행하여 상기 파일의 메타데이터에 대한 어드레스를 획득하는 단계; 및 메타데이터 영역의 상기 어드레스에 해당하는 위치에서 상기 파일의 메타데이터에 대한 판독 또는 쓰기를 수행하는 단계를 포함하는 메타데이터 위치 검색 방법이 제공된다.
상기 어드레스 획득 단계는, 상기 파일명 또는 파일 경로를 입력으로 하여 해시 키(hash-key)를 출력하는 제1 해싱 단계; 및 상기 해시 키를 입력으로 하여 상기 어드레스를 출력하는 제2 해싱 단계를 포함할 수 있다.
상기 어드레스 획득 단계는, 상기 제2 해싱 결과 충돌(collision)이 발생하는 경우, 이중 해싱(double hashing) 또는 선형 탐사(linear probing) 중 적어도 하나를 수행하여 상기 충돌을 회피하는 단계를 더 포함할 수 있다.
상기 메타데이터 위치 검색 방법은, 상기 어드레스 획득 단계 이전에, 시스템에 존재하는 일 이상의 파일에 대해 파일명 또는 파일 경로 중 적어도 하나를 기초로 해싱을 수행하여 각 파일의 메타데이터가 저장될 어드레스를 지정하는 단계; 및 메타데이터 영역의 상기 지정된 어드레스 위치에 상기 각 파일의 메타데이터를 저장하는 단계를 더 포함할 수 있다.
한편, 본 발명의 다른 실시예에 따르면, 특정 파일의 파일명 또는 파일 경로 중 적어도 하나를 기초로 해싱을 수행하여 해시 키를 획득하는 단계; 및 상기 파일의 메타데이터가 저장된 어드레스와 해시 키 간의 대응관계가 저장된 테이블을 기초로, 상기 특정 파일의 메타데이터에 대한 어드레스를 파악하는 단계를 포함하는 메타데이터 위치 검색 방법이 제공된다.
상기 메타데이터 위치 검색 방법은, 상기 해시 키 획득 단계 이전에, 시스템에 존재하는 일 이상의 파일에 대한 해시 키를 얻는 단계; 및 상기 일 이상의 파일의 메타데이터 어드레스와 상기 해시 키 간 대응 관계를 저장하는 상기 테이블을 작성하는 단계를 더 포함할 수 있다.
또한, 본 발명의 또 다른 실시예에 따르면, 임의의 파일의 메타데이터를 저장하기 위한 메타데이터 영역을 갖는 저장 디바이스; 및 특정 파일의 파일명 또는 파일 경로 중 적어도 하나를 기초로 해싱을 수행하여 상기 특정 파일의 메타데이터에 대한 어드레스를 획득하고, 상기 메타데이터 영역의 상기 어드레스 위치에서 상기 특정 파일의 메타데이터에 대한 판독 또는 쓰기를 수행하는 파일 시스템을 포함하는 메타데이터 위치 검색 시스템이 제공된다.
상기 파일 시스템은, 상기 파일명 또는 파일 경로를 입력으로 하여 해시 키(hash-key)를 출력하는 제1 해싱, 및 상기 해시 키를 입력으로 하여 상기 어드레스를 출력하는 제2 해싱을 수행할 수 있다.
상기 파일 시스템은, 상기 제2 해싱 결과 충돌(collision)이 발생하는 경우, 이중 해싱(double hashing) 또는 선형 탐사(linear probing) 중 적어도 하나를 더 수행할 수 있다.
상기 파일 시스템은, 시스템에 존재하는 일 이상의 파일에 대해 파일명 또는 파일 경로 중 적어도 하나를 기초로 해싱을 수행하여 각 파일의 메타데이터가 저장될 어드레스를 지정할 수 있다.
본 발명의 또 다른 실시예에 따르면, 임의의 파일의 메타데이터를 저장하기 위한 메타데이터 영역을 갖는 저장 디바이스; 및 특정 파일의 파일명 또는 파일 경로 중 적어도 하나를 기초로 해싱을 수행하여 해시 키를 획득하고, 상기 파일의 메타데이터가 저장된 어드레스와 해시 키 간의 대응관계가 저장된 테이블을 기초로, 상기 특정 파일의 메타데이터에 대한 어드레스를 파악하는 파일 시스템을 포함하는 메타데이터 위치 검색 시스템이 제공된다.
상기 파일 시스템은, 시스템에 존재하는 일 이상의 파일에 대한 해시 키를 얻고, 상기 일 이상의 파일의 메타데이터 어드레스와 상기 해시 키 간 대응 관계를 저장하는 상기 테이블을 작성할 수 있다.
본 발명의 또 다른 실시예에 따르면, 해시 키 생성 방법을 통해 한 번의 접근만으로도 메타데이터의 위치를 파악해낼 수 있도록 하는 다른 방법 및 이러한 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 제공된다.
본 발명에 따르면, 해싱 과정을 이용하여 메타데이터 영역에서의 메타데이터 위치를 파악해내거나, 해싱 과정에 의해 획득된 해싱 키와 메타데이터의 어드레스의 대응 관계에 대한 테이블을 관리함으로써, 저장 매체에의 한 번의 접근만으로도 메타데이터 위치를 찾아낼 수 있게 되며, 이에 따라, 고속 저장 매체의 성능을 최대로 활용할 수 있게 된다.
도 1은 일반적인 메타데이터 검색 방법을 설명하기 위한 도면이다.
도 2a 내지 도 2c는 본 발명의 제1 실시예에 따른 메타데이터 위치 검색방법을 설명하기 위한 흐름도이다.
도 3a 및 도 3b는 본 발명의 제2 실시예에 따른 메타데이터 위치 검색방법을 설명하기 위한 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 메타데이터 위치 검색을 수행하기 위한 시스템의 구성을 나타내는 도면이다.
도 5는 본 발명의 실시예에 따라 특정 파일에 대한 메타데이터를 검색하는 방법을 도식적으로 나타내는 도면이다.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.
이하에서는, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
[본 발명의 바람직한 실시예]
도 1은 일반적인 파일 시스템에서 특정 파일의 메타데이터 위치를 찾아내는 방법을 설명하기 위한 도면이다.
도 1을 참조하면, 일반적인 파일 시스템에 있어서는 디렉토리 구조를 이용하여 메타데이터 위치를 찾아낸다.
예를 들어, "A/B/C/D/E"의 파일명 또는 파일 경로를 갖는 특정 파일의 메타데이터 위치를 찾기 위해서는 "A"라는 디렉토리 하에서 "B"라는 디렉토리를 찾아내고, 그 아래 계층에서 다시 "C", "D"의 디렉토리를 순차적으로 찾아낸 후, "D"라는 디렉토리 하에서 "E"의 메타데이터를 찾아낸다.
이러한 디렉토리 구조를 이용한 메타데이터 검색법은 대상이 되는 저장 디바이스에 대한 접근 횟수를 증가시키게 된다.
도 2a 내지 도 2c는 본 발명의 제1 실시예에 따른 메타데이터 위치 검색방법을 설명하기 위한 흐름도이다.
도 2a를 참조하면, 먼저 각 파일의 메타데이터에 대한 어드레스를 지정한다(S210).
도 2b는 도 2a의 단계 S210에서 수행되는 동작을 설명하는 흐름도이다. 전술한 바와 같이, 단계 S210에서는 각 파일의 메타데이터의 어드레스를 지정하는 동작이 행해진다.
도 2b를 참조하면, 특정 파일의 이름 또는 해당 파일의 물리적 위치 중 적어도 하나를 기초로 해시 키(hash-key)를 생성해낸다(S211). 이하에서는, 단계 S211에서 수행되는 해싱을 제1 해싱이라고 칭한다. 파일의 물리적 위치라는 것은 디렉토리 구조에서의 해당 파일 위치 또는 파일 검색에 있어서의 경로가 될 수 있다. 통상적인 운영 체제(예를 들면, 리눅스 등)의 파일 시스템에서 특정 파일의 이름 또는 해당 파일의 물리적 위치는 특정 파일에 대해 유일하게 정해져 있다. 따라서, 각 파일에 대한 해시 키는 서로 다르게 형성될 수 있다. 해시 키 생성을 위해서는 해시 함수가 이용될 수 있는데, 여기서의 해시 함수는 통상적인 해시 함수가 사용될 수 있다. 예를 들면, SHA-1(Secure Hash Algorithm-1) 등의 해시 함수가 사용될 수 있으나, 이와는 다른 해시 함수가 사용될 수도 있다. 만약 해시 함수로서 SHA-1가 사용된다면, 각 파일에 대한 해시 키로서는 160비트의 길이를 갖는 스트링이 얻어지게 된다.
해시 키가 얻어지면, 해당 해시 키에 대해 한번 더 해싱을 수행하여 메타데이터 영역에서의 어드레스를 지정한다(S212). 단계 S212에서 수행되는 해싱을 제2 해싱이라고 칭할 수 있다.
메타데이터 영역은 적어도 파일 개수만큼의 어드레스 영역을 가질 수 있다. 예를 들면, 0에서 N까지의 어드레스 영역을 가질 수 있다. 해시 키를 메타데이터 영역에 할당하기 위해 추가적인 해싱을 수행할 수 있다. 단계 S211에서 얻어진 해시 키를 기초로 하여 제2 해싱을 수행하여 메타데이터 영역에서의 어드레스 값을 얻어낸다. 메타데이터 영역이 0에서 N까지의 어드레스 값을 가질 수 있다고 가정하면, 상기 제2 해싱에 의해 얻어지는 값은 0에서 N 사이의 값일 수 있다. 그러나, 해싱 결과 0에서 N까지의 값 중 동일한 값이 결과로서 출력되거나, 어느 한 위치에 군집되는 경우, 즉, 충돌(collision)이 발생할 수 있다. 이 때, 이러한 충돌을 피하기 위한 방법을 사용할 수 있다. 예를 들면, 이중 해싱(double hashing) 또는 선형 탐사(linear probing) 방법을 이용할 수 있다.
이중 해싱은 충돌이 발생했을 경우, 다른 해시 함수를 이용하여 추가적인 해싱을 진행하는 방법이며, 선형 탐사는 충돌 발생 시 현재 어드레스에서 소정 폭으로 다음 주소로 이동하는 방식이다.
이러한 과정에 따라 메타데이터 영역에서 어드레스가 지정되면, 그 어드레스에 해당 파일의 메타데이터가 위치하게 된다.
다시 도 2a를 참조하면, 특정 파일에 대한 판독 또는 쓰기 요청이 발생하는 경우(S220), 단계 S210에서 지정된 어드레스를 기초로 하여 메타데이터의 위치를 찾아낸다(S230).
도 2c는 단계 S230에서 수행되는 동작을 설명하기 위한 흐름도이다.
도 2c를 참조하면, 해당 파일에 대한 파일명 또는 파일 경로 중 어느 하나를 기초로 제1 해싱을 수행하여 해시 키를 얻어낸다(S231). 이 때 사용되는 해시 함수는 단계 S211에서 사용된 해시 함수와 동일한 것일 수 있다. 다음으로, 제1 해싱의 결과 얻어진 해시 키를 기초로 제2 해싱을 수행하여 메타데이터 영역에서의 어드레스에 해당하는 값을 얻어낸다(S232). 이렇게 함으로써, 해당 파일의 메타데이터 위치를 파악할 수 있게 된다. 해당 메타데이터로부터 대상 파일의 위치를 찾아낼 수 있다.
만약 현재 명령이 특정 파일에 대한 쓰기 명령인 경우에는, 다음과 같은 프로세스가 더 수행될 수 있다. 단계 S232의 수행 결과 얻어진 어드레스가 이미 점유 상태인 경우가 있을 수 있는데, 이 때, 앞서 설명한 충돌 방지 방법을 수행한다(S233). 이렇게 하여 이용하여 프리 영역을 찾아내고, 해당 위치에 쓰기 요청된 파일의 메타데이터를 입력할 수 있다(S234).
이하에서는 본 발명의 제2 실시예에 따른 메타데이터 위치 검색방법을 설명한다.
도 3a 내지 도 3b는 본 발명의 제2 실시예에 따른 메타데이터 위치 검색방법을 설명하기 위한 흐름도이다.
도 3a를 참조하면, 먼저 각 파일에 대한 해시 키와 메타데이터 영역 간의 대응관계를 나타내는 테이블을 작성한다(S310).
도 3b는 단계 S310에서 수행되는 동작을 나타내는 도면이다. 도 3b를 참조하면, 특정 파일의 이름 또는 해당 파일의 물리적 위치 중 적어도 하나를 기초로 해시 키를 생성해낸다(S311). 단계 S311의 해싱 과정은 도 2b를 참조하여 설명한 제1 해싱 과정과 동일하므로 여기서는 그 상세한 설명을 생략하기로 한다.
해시 키 생성 후, 해시 키와 해당 파일의 메타데이터가 저장된 메타데이터 영역의 어드레스 간 대응관계를 저장하는 테이블을 생성한다(S312). 각 파일에 대한 메타데이터는 메타데이터 영역에 저장되고, 메타데이터가 저장된 각 위치에는 어드레스가 할당되어 있는데, 이러한 메타데이터의 어드레스와 단계 S311에서 생성한 해시 키 간의 대응 정보를 테이블로서 저장 및 관리한다.
다시 도 3a를 참조하면, 특정 데이터에 대한 판독 또는 쓰기 요청이 발생하는 경우(S320), 단계 S310에서 생성된 테이블을 기초로 하여 해당 파일의 메타데이터 위치를 찾아낸다(S330). 각 파일의 해시 키는 유일하기 때문에, 각 파일의 해시 키에 대한 정보를 알고 있으면, 단계 S310에서 생성한 테이블을 기초로 하여 메타데이터의 어드레스를 파악할 수 있다. 이 어드레스를 기초로 메타데이터 영역에서 해당 파일의 메타데이터를 찾아내고, 이 메타데이터로부터 대상 파일의 위치를 찾아낼 수 있다.
도 4는 본 발명의 일 실시예에 따른 메타데이터 위치 검색을 수행하기 위한 시스템의 구성을 나타내는 도면이다.
도 4를 참조하면, 본 발명의 시스템은 파일 시스템(410) 및 저장 디바이스(420)를 포함하여 구성될 수 있다.
본 발명의 일 실시예에 따른 파일 시스템(410)은 시스템에 존재하는 각 파일의 메타데이터에 어드레스를 할당한다. 구체적으로, 해싱을 수행하여 메타데이터 영역에서의 어드레스 값을 얻어낸 후, 해당 어드레스에 각 파일의 메타데이터를 저장한다. 즉, 도 2a 및 도 2b를 참조하여 설명한 단계 S210의 동작을 수행한다. 또한, 본 발명의 다른 실시예에 따르면, 파일 시스템(410)은 각 패일의 파일명 또는 파일 경로 중 적어도 하나를 기초로 해싱을 수행하여 해시 키를 얻어내고 이를 해당 파일의 메타데이터 어드레스와 대응시키는 테이블을 작성한다. 즉, 도 3a 및 도 3b를 참조하여 설명한 단계 S310의 동작을 수행한다.
한편, 파일 시스템(410)은 운영 체제에서 발생하는 파일 판독 또는 쓰기 요청에 대하여 해당 파일의 위치를 찾아낸다. 본 발명의 일 실시예에 따른 파일 시스템(410)은 판독 또는 쓰기 요청된 대상 파일의 메타데이터 위치를 찾아내고, 이를 기초로 하여 해당 파일의 위치를 찾아낸다. 메타데이터 위치는 도 2a 및 도 2b를 참조하여 설명한 단계 S210에서 지정된 어드레스 또는 단계 S310에서 생성된 테이블을 기초로 파악될 수 있다. 전체적으로, 파일 시스템(410)은 도 2a 내지 도 2c, 도 3a 및 도 3b를 참조로 설명한 각 동작을 실행할 수 있다.
본 발명의 일 실시예에 따른 저장 디바이스(420)는 시스템에 존재하는 각 파일 및 해당 파일에 대응하는 메타데이터를 저장한다. 즉, 저장 디바이스(420)에는 메타데이터가 저장되는 메타데이터 영역이 존재한다. 저장 디바이스(420)는 통상적인 저장 매체, 예를 들면, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치일 수 있다. 또한, 이와는 다른 고성능 저장 매체, 예를 들면, 플레시 SSD, DRAM SSD 등의 하드웨어 장치일 수도 있다. 그러나, 이는 일례에 불과할 뿐이며, 다른 저장 장치가 본 발명의 저장 디바이스(420)로 사용될 수 있음은 물론이다.
도 5는 본 발명의 실시예에 따라 특정 파일에 대한 메타데이터를 검색하는 방법을 도식적으로 나타내는 도면이다.
예를 들어, "A/B/C/D/E"라는 파일명 또는 파일 경로를 갖는 파일의 메타데이터를 찾고자 하는 경우, 파일명 또는 파일 경로에 대한 해싱을 수행하여, 메타데이터 영역에서의 어드레스를 정보를 얻고, 이를 토대로 해당 메타데이터를 직접적으로 찾아낼 수 있다. 즉, 도 1과 비교하여 볼 때, 디렉토리 구조를 이용하지 않고, 메타데이터 영역에의 직접적인 한 번의 접근만으로 특정 파일에 대한 메타데이터의 위치를 찾아낼 수 있다.
이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.
410: 파일 시스템
420: 저장 디바이스

Claims (13)

  1. 파일 시스템이 특정 파일의 파일명 또는 파일 경로 중 적어도 하나를 기초로 저장 디바이스에 해싱을 수행하여 상기 파일의 메타데이터에 대한 어드레스를 획득하는 단계; 및
    상기 파일 시스템이 상기 저장 디바이스의 메타데이터 영역 중 상기 어드레스에 해당하는 위치에서 상기 파일의 메타데이터에 대한 판독 또는 쓰기를 수행하는 단계를 포함하는 메타데이터 위치 검색 방법.
  2. 제1항에 있어서,
    상기 어드레스 획득 단계는,
    상기 파일명 또는 파일 경로를 입력으로 하여 해시 키(hash-key)를 출력하는 제1 해싱 단계; 및
    상기 해시 키를 입력으로 하여 상기 어드레스를 출력하는 제2 해싱 단계를 포함하는 메타데이터 위치 검색 방법.
  3. 제2항에 있어서,
    상기 어드레스 획득 단계는,
    상기 제2 해싱 결과 충돌(collision)이 발생하는 경우, 이중 해싱(double hashing) 또는 선형 탐사(linear probing) 중 적어도 하나를 수행하여 상기 충돌을 회피하는 단계를 더 포함하는 메타데이터 위치 검색 방법.
  4. 제1항에 있어서,
    상기 어드레스 획득 단계 이전에,
    상기 파일 시스템이 시스템에 존재하는 일 이상의 파일에 대해 파일명 또는 파일 경로 중 적어도 하나를 기초로 상기 저장 디바이스에 대한 해싱을 수행하여 각 파일의 메타데이터가 저장될 어드레스를 지정하는 단계; 및
    상기 저장 디바이스의 메타데이터 영역 중 상기 지정된 어드레스 위치에 상기 각 파일의 메타데이터를 저장하는 단계를 더 포함하는 메타데이터 위치 검색 방법.
  5. 파일 시스템이 특정 파일의 파일명 또는 파일 경로 중 적어도 하나를 기초로 저장 디바이스에 대해 해싱을 수행하여 해시 키를 획득하는 단계; 및
    상기 파일 시스템이 상기 저장 디바이스 내에 저장된 상기 파일의 메타데이터의 어드레스와 해시 키 간의 대응관계에 대한 테이블을 기초로, 상기 특정 파일의 메타데이터에 대한 어드레스를 파악하는 단계를 포함하는 메타데이터 위치 검색 방법.
  6. 제5항에 있어서,
    상기 해시 키 획득 단계 이전에,
    상기 파일 시스템이 시스템에 존재하는 일 이상의 파일에 대한 해시 키를 얻는 단계; 및
    상기 파일 시스템이 메타데이터 어드레스와 상기 해시 키 간 대응 관계에 대한 상기 테이블을 작성하는 단계를 더 포함하는 메타데이터 위치 검색 방법.
  7. 임의의 파일의 메타데이터를 저장하기 위한 메타데이터 영역을 갖는 저장 디바이스; 및
    특정 파일의 파일명 또는 파일 경로 중 적어도 하나를 기초로 해싱을 수행하여 상기 특정 파일의 메타데이터에 대한 어드레스를 획득하고, 상기 메타데이터 영역의 상기 어드레스 위치에서 상기 특정 파일의 메타데이터에 대한 판독 또는 쓰기를 수행하는 파일 시스템을 포함하는 메타데이터 위치 검색 시스템.
  8. 제7항에 있어서,
    상기 파일 시스템은,
    상기 파일명 또는 파일 경로를 입력으로 하여 해시 키(hash-key)를 출력하는 제1 해싱, 및 상기 해시 키를 입력으로 하여 상기 어드레스를 출력하는 제2 해싱을 수행하는 메타데이터 위치 검색 시스템.
  9. 제8항에 있어서,
    상기 파일 시스템은, 상기 제2 해싱 결과 충돌(collision)이 발생하는 경우, 이중 해싱(double hashing) 또는 선형 탐사(linear probing) 중 적어도 하나를 더 수행하는 메타데이터 위치 검색 시스템.
  10. 제7항에 있어서,
    상기 파일 시스템은, 시스템에 존재하는 일 이상의 파일에 대해 파일명 또는 파일 경로 중 적어도 하나를 기초로 해싱을 수행하여 각 파일의 메타데이터가 저장될 어드레스를 지정하는 메타데이터 위치 검색 시스템.
  11. 임의의 파일의 메타데이터를 저장하기 위한 메타데이터 영역을 갖는 저장 디바이스; 및
    특정 파일의 파일명 또는 파일 경로 중 적어도 하나를 기초로 해싱을 수행하여 해시 키를 획득하고, 상기 파일의 메타데이터가 저장된 어드레스와 해시 키 간의 대응관계가 저장된 테이블을 기초로, 상기 특정 파일의 메타데이터에 대한 어드레스를 파악하는 파일 시스템을 포함하는 메타데이터 위치 검색 시스템.
  12. 제11항에 있어서,
    상기 파일 시스템은, 시스템에 존재하는 일 이상의 파일에 대한 해시 키를 얻고, 상기 일 이상의 파일의 메타데이터 어드레스와 상기 해시 키 간 대응 관계를 저장하는 상기 테이블을 작성하는 메타데이터 위치 검색 시스템.
  13. 제1항 내지 제6항 중 어느 한 항에 따른 방법을 실행하기 위한 컴퓨터 프로그램을 기록하기 위한 컴퓨터 판독 가능한 기록 매체.
KR1020120014205A 2012-02-13 2012-02-13 메타데이터의 위치를 검색하기 위한 방법, 시스템 및 컴퓨터 판독 가능 기록 매체 KR101318420B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120014205A KR101318420B1 (ko) 2012-02-13 2012-02-13 메타데이터의 위치를 검색하기 위한 방법, 시스템 및 컴퓨터 판독 가능 기록 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120014205A KR101318420B1 (ko) 2012-02-13 2012-02-13 메타데이터의 위치를 검색하기 위한 방법, 시스템 및 컴퓨터 판독 가능 기록 매체

Publications (2)

Publication Number Publication Date
KR20130092737A KR20130092737A (ko) 2013-08-21
KR101318420B1 true KR101318420B1 (ko) 2013-10-15

Family

ID=49217341

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120014205A KR101318420B1 (ko) 2012-02-13 2012-02-13 메타데이터의 위치를 검색하기 위한 방법, 시스템 및 컴퓨터 판독 가능 기록 매체

Country Status (1)

Country Link
KR (1) KR101318420B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109598131B (zh) * 2018-09-30 2021-07-30 北京乐我无限科技有限责任公司 一种文件上传、下载方法、装置、电子设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070283093A1 (en) * 2003-07-15 2007-12-06 Xiv Ltd. Data storage system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070283093A1 (en) * 2003-07-15 2007-12-06 Xiv Ltd. Data storage system

Also Published As

Publication number Publication date
KR20130092737A (ko) 2013-08-21

Similar Documents

Publication Publication Date Title
JP6205650B2 (ja) 不均等アクセス・メモリにレコードを配置するために不均等ハッシュ機能を利用する方法および装置
JP5996088B2 (ja) 暗号ハッシュ・データベース
JP5524144B2 (ja) key−valueストア方式を有するメモリシステム
KR101289931B1 (ko) 다양한 블록 크기를 지원하는 주소 사상을 사용하여 플래시 메모리 내에 데이터를 저장하는 방법 및 장치
US9875183B2 (en) Method and apparatus for content derived data placement in memory
WO2020076580A1 (en) Key-value store tree data block spill with compaction
JP2015515047A5 (ko)
JP2007012056A (ja) データ保全の先送りされた認証を有するファイルシステム
JP2007012054A (ja) ファイルシステム保全の最適化されたスタートアップ認証
CN111782656B (zh) 数据读写方法及装置
CN110888837B (zh) 对象存储小文件归并方法及装置
JP4825719B2 (ja) 高速ファイル属性検索
US20170083537A1 (en) Mapping logical identifiers using multiple identifier spaces
JP2007220107A (ja) 不揮発性メモリのマッピング情報管理装置及び方法
CN113094336B (zh) 基于Cuckoo哈希的文件系统目录管理方法及系统
JP5646775B2 (ja) key−valueストア方式を有するメモリシステム
JP6258436B2 (ja) メモリシステムのローカルコントローラ
KR101318420B1 (ko) 메타데이터의 위치를 검색하기 위한 방법, 시스템 및 컴퓨터 판독 가능 기록 매체
CN111930684A (zh) 基于hdfs的小文件处理方法、装置、设备及存储介质
JP5833212B2 (ja) key−valueストア方式を有するメモリシステム
JPWO2013108745A1 (ja) ストレージ装置、その制御方法、及びプログラム
WO2016187975A1 (zh) 内存碎片整理方法及装置
CN104537023A (zh) 一种反向索引记录的存储方法及装置
KR20190123819A (ko) 데이터 저장장치의 주소 맵핑 테이블 운용 방법
EP3995972A1 (en) Metadata processing method and apparatus, and computer-readable storage medium

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: 20160217

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170925

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20181002

Year of fee payment: 6