KR101092658B1 - 분산 파일 시스템 및 그의 메타데이터 서버 선택 방법 - Google Patents
분산 파일 시스템 및 그의 메타데이터 서버 선택 방법 Download PDFInfo
- Publication number
- KR101092658B1 KR101092658B1 KR1020080131276A KR20080131276A KR101092658B1 KR 101092658 B1 KR101092658 B1 KR 101092658B1 KR 1020080131276 A KR1020080131276 A KR 1020080131276A KR 20080131276 A KR20080131276 A KR 20080131276A KR 101092658 B1 KR101092658 B1 KR 101092658B1
- Authority
- KR
- South Korea
- Prior art keywords
- server
- metadata
- hash value
- metadata server
- servers
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
- H04L45/7453—Address table lookup; Address filtering using hashing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
-
- 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/182—Distributed file systems
- G06F16/1824—Distributed file systems implemented using Network-attached Storage [NAS] architecture
- G06F16/183—Provision of network file services by network file servers, e.g. by using NFS, CIFS
Abstract
본 발명은 분산 파일 시스템에서 클러스터 메타데이터 서버의 캐시 효율을 높일 수 있는 메타데이터 서버 선택 방법을 제공하는 것으로, 본 발명의 분산 파일 시스템에서 메타데이터 서버 선택 방법은, 메타데이터 서버 정보의 항목들과 제 1 해시 값을 설정하는 단계, 상기 메타데이터 서버 정보의 특정 항목들에 따라 상기 제 1 해시 값에 대한 연산을 수행하여 연산 결과값에 해당하는 제 1 메타데이터 서버를 선택하는 단계, 상기 메타데이터 서버 정보의 특정 항목들에 따라 제 2 해시 값을 설정하고, 상기 제 2 해시 값에 따라 상기 제 1 메타데이터 서버나 제 2 메타데이터 서버를 선택하는 단계, 및 상기 특정 항목들 중 어느 한 항목에 따라 제 3 해시 값을 설정하고, 상기 제 3 해시 값에 따라 제 3 메타데이터 서버, 제 4 메타데이터 서버 또는 제 5 메타데이터 서버를 선택하는 단계를 포함하는 것을 특징으로 한다.
분산파일, 메타데이터, 서버, 클라이언트, 선택
Description
본 발명은 분산 파일 시스템 및 그의 메타데이터 서버 선택 방법에 관한 것으로, 특히 분산 파일 시스템에서 클러스터 메타데이터 서버의 캐시 효율을 높일 수 있는 메타데이터 서버 선택 방법에 관한 것이다.
본 발명은 지식경제부 및 정보통신연구진흥원의 IT성장동력기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2007-S-016-02, 과제명: 저비용 대규모 글로벌 인터넷 서비스 솔루션 개발].
다수 클라이언트의 요청에 의해 단일 메타데이터 서버가 처리할 수 있는 메타데이터 관련 연산의 수는 한정되어 있다. 이러한 메타데이터 처리 성능을 향상시키기 위해 다수의 메타데이터 서버를 클러스터로 구성할 수 있다. 이러한 클러스터 메타데이터 서버는 처리 성능 향상과 더불어 고장에 대처할 수 있는 가용성을 가진다는 점에서 커다란 장점을 가진다.
클라이언트의 요청에 대해 해당 메타데이터 서버는 메타데이터를 디스크로부터 읽어서 메모리에 적재하고 클라이언트에 응답한다. 여기서, 클라이언트의 요청에 대해 해당 메타데이터 서버가 메타데이터를 디스크로부터 읽지 않고 메모리에 유지하고 있다면 훨씬 빠르게 응답할 수 있을 것이다.
메타데이터 서버는 클라이언트가 어떤 메타데이터를 요청할지 미리 예측할 수 없기 때문에 메모리 캐시의 효율을 높이기 위해서는 클라이언트가 특정 메타데이터는 특정 메타데이터 서버로 요청할 수 있도록 해야 한다.
클러스터 메타데이터 서버를 구성하는 메타데이터 서버들에 고장이 발생하거나 필요에 의해 메타데이터 서버가 추가되는 상황이 있을 수 있다. 이러한 상황에서 메모리 캐시에 적재된 메타데이터의 변경을 최소화해서 급격한 성능의 저하를 방지할 수 있어야 한다.
Phil Schwan이 2003년 7월에 리눅스 심포지움 2003에서 발표한 "Lustre: Building a file system for 1000-node clusters"에서는 클라이언트가 주어진 파일이나 디렉토리 경로에 대해 다수의 데이터 서버 중에 특정 데이터 서버를 매핑하기 위해 단일 메타데이터 서버와 해시 함수를 활용한 방법을 제안하였다. 매핑을 위한 해시 함수가 균등하게 클라이언트의 요청을 다수의 데이터 서버들에 분배한다면, 클라이언트는 해시 함수를 통해 얻은 값을 매핑하여 상응하는 데이터 서버에 곧바로 접근할 수 있으며, 균등한 서버의 선택으로 인해 다수의 클라이언트들이 데이터 서버들을 선택할 때 부하를 균등하게 분배할 수 있는 효과를 가진다. 하지만 단일 메타데이터 서버로 인해 메타데이터에 대한 확장성과 가용성이 좋지 못하다.
본 발명은 상기와 같은 문제점을 해결하기 위한 것으로, 본 발명의 목적은 메타데이터 서버들의 고장 및 추가가 발생할 수 있는 상황에서도 클라이언트가 특정 메타데이터를 특정 메타데이터 서버로 요청하도록 최대한 보장함으로써 메타데이터 서버들의 메모리 캐시 효율을 높일 수 있는 분산 파일 시스템 및 그의 메타데이터 서버 선택 방법을 제공하는 데 있다.
이와 같은 목적을 달성하기 위한 본 발명의 분산 파일 시스템에서 메타데이터 서버 선택 방법은, 메타데이터 서버 정보의 항목들과 제 1 해시 값을 설정하는 단계; 상기 메타데이터 서버 정보의 특정 항목들에 따라 상기 제 1 해시 값에 대한 연산을 수행하여 연산 결과값에 해당하는 제 1 메타데이터 서버를 선택하는 단계; 상기 메타데이터 서버 정보의 특정 항목들에 따라 제 2 해시 값을 설정하고, 상기 제 2 해시 값에 따라 상기 제 1 메타데이터 서버나 제 2 메타데이터 서버를 선택하는 단계; 및 상기 특정 항목들 중 어느 한 항목에 따라 제 3 해시 값을 설정하고, 상기 제 3 해시 값에 따라 제 3 메타데이터 서버, 제 4 메타데이터 서버 또는 제 5 메타데이터 서버를 선택하는 단계를 포함하는 것을 특징으로 한다.
본 발명은, 다수의 메타데이터 서버들을 구비한 분산 파일 시스템의 클라이언트에 있어서, 상기 메타데이터 서버들에 관한 메타데이터 서버 정보를 저장하는 저장소; 및 상기 클라이언트가 접근하려는 메타데이터 경로를 입력 값으로 하는 해시 함수의 결과값과 상기 메타데이터 서버 정보를 참조하여 메타데이터 서버를 선택하는 메타데이터 서버 선택기를 포함하는 것을 특징으로 한다.
본 발명의 실시예들은 다수의 메타데이터 서버를 클러스터로 구성한 클러스터 메타데이터 서버 환경에서 클라이언트가 메타데이터 서버의 메모리 캐시 효율을 고려하여 적절한 메타데이터 서버를 선택함으로써 클러스터 메타데이터 서버의 메타데이터 처리 성능과 응답 성능을 향상시킬 수 있다.
본 발명의 실시예들은 메타데이터 서버의 메모리 캐시 효율을 고려하여 클라이언트가 적절한 메타데이터 서버에 요청하게 되면 해당 메타데이터 서버는 요청되는 메타데이터를 제공해주기 위해 디스크의 접근을 최소화할 수 있으며 메모리 캐시를 최대한 활용할 수 있어서 클라이언트의 요청에 대해 보다 빨리 응답할 수 있다.
본 발명의 실시예들은 메타데이터를 관리하는 메타데이터 서버들이 클러스터로 구성되어 있는 분산 파일 시스템에서 다수의 클라이언트들이 메타데이터로 접근할 때, 메타데이터 서버들의 메모리 캐시 효율을 높일 수 있다.
본 발명의 실시예들은 클라이언트가 고장이 발생한 메타데이터 서버에 대한 접근을 방지하며, 고장이 발생한 메타데이터 서버로의 접근을 다른 메타데이터 서버들로 고르게 분배하여 특정 서버로 접근이 집중되는 것을 방지하고 메모리 캐시 효율을 최대로 유지할 수 있도록 한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세하게 설명한다.
도 1은 본 발명의 일실시예에 따른 분산 파일 시스템의 구성도이다.
도 1을 참조하면, 본 발명의 일실시예에 따른 분산 파일 시스템(100)은, 다수의 클라이언트들(110-1 내지 110-n)(n은 2 이상의 자연수), 클러스터 메타데이터 서버(120), 그리고 다수의 클라이언트들(110-1 내지 110-n)과 클러스터 메타데이터 서버(120)를 접속시키는 네트워크(130)를 구비한다.
여기서, 클러스터 메타데이터 서버(120)는 다수의 메타데이터 서버들(121-1 내지 121-m)(m은 2 이상의 자연수)을 구비한다. 메타데이터 서버들(121-1 내지 121-m)은 각각 네트워크(130)를 통해 클라이언트들(110-1 내지 110-n)과 접속한다.
메타데이터 서버들(121-1 내지 121-m) 각각은 모든 메타데이터 서버들(121-1 내지 121-m)의 정보를 유지하며, 각 메타데이터 서버의 고장이나 추가를 감지하여 정보에 반영한다. 클라이언트들(110-1 내지 110-n) 각각은 마운트될 때 메타데이터 서버들(121-1 내지 121-m) 중 특정 메타데이터 서버로부터 모든 메타데이터 서버들(121-1 내지 121-m)에 대한 정보를 얻는다.
예를 들어, 클라이언트들(110-1 내지 110-n) 각각은 메타데이터 서버들(121-1 내지 121-m) 중 특정 메타데이터 서버에 접속이 실패하면 다음 메타데이터 서버 에 접속하여 메타데이터 서버들(121-1 내지 121-m)에 대한 정보를 얻어온다.
클라이언트들(110-1 내지 110-n)이 각각 메타데이터 서버들(121-1 내지 121-m) 중 어느 하나의 메타데이터 서버를 선택할 때, 메타데이터 서버 정보는 잠금을 통해 갱신이 지연된다.
클러스터 메타데이터 서버(120)에 추가된 메타데이터 서버는 자신의 메모리 캐시 상황을 고려하여 메타데이터 서버 정보의 추가 서버들의 번호를 변경함으로써, 메타데이터 서버의 메모리 캐시 효율 저하를 최소화할 수 있도록 클라이언트의 단계적 메타데이터 서버 선택을 지원한다.
도 2는 본 발명의 일실시예에 따른 클라이언트의 구성도이다. 도 2에서, 클라이언트(110)는 도 1의 클라이언트들(110-1 내지 110-n)과 동일한 클라이언트이다.
도 2를 참조하면, 클라이언트(110)가 접근하려는 메타데이터 경로(111)에 해당하는 메타데이터 서버의 선택은 최종적으로 메타데이터 서버 선택기(112)에 의해 수행되며, 메타데이터 서버 선택기(112)는 메타데이터 경로(111)를 입력 값으로 하는 해시 함수(112)의 결과값과 메타데이터 서버 정보(114)를 참조하여 메타데이터 서버들(121-1 내지 121-m) 중에 해당 메타데이터 서버를 선택한다.
해시 함수(112)는 메타데이터 경로(111)를 입력 값으로 이용하여 자신의 결과값을 생성한다.
메타데이터 서버 정보(114)는 저장소(미도시)에 저장되며, 도 3에 도시된 항목들을 포함한다.
도 3은 도 2의 메타데이터 서버 정보의 세부 항목들을 나타낸 도면이다.
도 3에 도시된 바와 같이, 메타데이터 서버 정보(114)는, 전체 서버 수(114-1), 고장 서버 수(114-2), 추가 서버 수(114-3), 서버 리스트(114-4), 고장 서버 번호(114-6), 및 추가 서버 번호(114-6)를 구비한다.
전체 서버 수(114-1)는 메타데이터 서버의 추가가 발생하지 않은 상태의 전체 메타데이터 서버의 수를 나타낸다.
고장 서버 수(114-2)는 고장이 발생한 메타데이터 서버의 수를 나타낸다.
추가 서버 수(114-3)는 추가된 메타데이터 서버의 수를 나타낸다.
서버 리스트(114-4)는 클러스터 메타데이터 서버에 구비된 모든 메타데이터 서버들의 인터넷 프로토콜(IP) 정보를 나타낸다.
고장 서버 번호(114-5)는 서버 리스트(114-4)에 포함된 모든 메타데이터 서버들 중 고장이 발생한 서버의 리스트 번호를 나타낸다.
추가 서버 번호(114-6)는 서버 리스트(114-4)에 추가되거나 재조직 중인 서버의 번호를 나타낸다.
도 4는 본 발명의 일실시예에 따른 분사 파일 시스템에서 메타데이터 서버 선택 방법을 나타낸 흐름도이다. 이하에서, 클라이언트는 도 1의 클라이언트들(110-1 내지 110-n) 중 어느 하나의 클라이언트이다.
도 4를 참조하면, 클라이언트는 메타데이터 서버 정보(114)를 유지하는 데이터 구조로부터 얻을 수 있는 전체 서버 수를 제 1 변수 A, 고장 서버 수를 제 2 변수 B, 추가 서버 수를 제 3 변수 C, 고장 서버 번호를 제 4 변수 L1, 그리고 추가 서버 번호를 제 5 변수 L2로 설정한다(S301). 그리고, 상기 클라이언트는 경로(111)에 대한 해시 함수(112)의 결과값을 해시 값 hvalue로 설정한다(S302).
이러한 설정이 완료되면, 상기 클라이언트는 설정한 제 3 변수 C가 0 인지를 판단한다(S303).
판단결과 설정한 제 3 변수 C가 0이면, 상기 클라이언트는 설정한 제 2 변수 B가 0인지를 판단하여(S304), 판단결과 0이 아니면, 상기 클라이언트는 설정된 해시 값 hvalue를 설정한 제 1 변수 A로 나눈(hvalue % A) 결과값을 산출하고 산출한 결과값과 일치하는 서버 리스트(114-4)의 번호에 해당하는 메타데이터 서버를 선택한다(S305).
판단 과정(S303)에서의 판단결과 설정한 제 3 변수 C가 0이 아니면, 상기 클라이언트는 설정한 해시 값 hvalue를 설정한 제 1 변수 A와 설정한 제 3 변수 C의 합으로 나눈(hvalue % (A + C)) 결과값을 산출하고 산출한 결과값을 해시 값 hvalue로 설정한다(S306). 그리고, 상기 클라이언트는 설정한 해시 값 hvalue가 제 5 변수 L2에 포함되는 지를 판단하여(S307), 판단결과 포함되면, 상기 클라이언트는 설정한 해시 값 hvalue와 일치하는 서버 리스트(114-4)의 번호에 해당하는 메타데이터 서버를 선택한다(S308).
판단 과정(S307)에서의 판단결과 설정한 해시 값 hvalue가 설정한 제 5 변수 L2에 포함되지 않으면, 상기 클라이언트는 경로(111)에 대한 해시 함수(112)의 결과값을 해시 값 hvalue로 설정하고(S309), 이어 설정한 해시 값 hvalue를 설정한 제 1 변수 A로 나눈(hvalue % A) 결과값을 산출하고 산출한 결과값을 해시 값 hvalue로 설정한다(S310).
설정 과정(S310)을 통해 해시 값 hvalue가 설정되면, 상기 클라이언트는 설정한 해시 값 hvalue가 설정한 제 5 변수 L2에 포함되는 지를 판단하여(S311), 판단결과 포함되면, 상기 클라이언트는 경로(111)에 대한 해시 함수(112)의 결과값을 해시 값 hvalue로 설정하고(S312), 이어 상기 클라이언트는 설정한 해시 값 hvalue를 설정한 제 1 변수 A와 설정한 제 3 변수 C의 합으로 나눈(hvalue % (A + C)) 결과값을 산출하고 산출한 결과값과 일치하는 서버 리스트(114-4)의 번호에 해당하는 메타데이터 서버를 선택한다(S313).
판단 과정(S311)에서의 판단결과 설정한 해시 값 hvalue가 설정한 제 5 변수 L2에 포함되지 않으면, 상기 클라이언트는 설정한 해시 값 hvalue와 일치하는 서버 리스트(114-4)의 번호에 해당하는 메타데이터 서버를 선택한다(S314).
판단 과정(S304)에서의 판단결과 설정한 제 2 변수 B가 0이 아니면, 상기 클라이언트는 설정한 해시 값 hvalue를 설정한 제 1 변수 A로 나눈(hvalue % A) 결과값을 산출하고 산출한 결과값을 해시 값 hvalue로 설정한다(S315). 그리고, 상기 클라이언트는 설정한 해시 값 hvalue가 제 4 변수 L1에 포함되는 지를 판단하여(S316), 판단결과 포함되지 않으면, 선택 과정(S305)으로 넘어간다.
판단 과정(S316)에서의 판단결과 설정한 해시 값 hvalue가 설정한 제 4 변수 L1에 포함되면, 상기 클라이언트는 경로(111)에 대한 해시 함수(112)의 결과값을 해시 값 hvalue로 설정하고(S317), 이어 상기 클라이언트는 설정한 해시 값 hvalue를 설정한 제 1 변수 A로부터 설정한 제 3 변수 C를 감산한 값으로 나눈(hvalue % (A - C)) 결과값을 산출하고 산출한 결과값을 해시 값 hvalue로 설정한다(S318). 그리고, 상기 클라이언트는 설정한 해시 값 hvalue와 제 4 변수 L1을 비교하여, 비교 결과를 통해 고장난 서버의 위치를 확인하고, 확인된 고장난 서버의 위치에 따라 해시 값 hvalue을 증가시켜 증가된 해시 값 hvalue와 일치하는 서버 리스트(114-4)의 번호에 해당하는 메타데이터 서버를 선택한다(S319).
선택 과정(S319)에서, 제 4 변수 L1에 1과 3이 포함될 때 해시 값 hvalue로 0, 1 및 2가 주어진다면, 해시 값 hvalue가 0일 경우는 그대로 0에 해당하는 메타데이터 서버가 선택되며, 해시 값 hvalue가 1일 경우는 제 4 변수 L1의 1보다 작지 않으므로 1이 증가해서 2에 해당하는 메타데이터 서버가 선택된다. 해시 값 hvalue가 2일 경우는 제 4 변수 L1의 1보다 작지 않으므로 1이 증가하고, 또한 증가한 값이 3보다 작지 않으므로 다시 1이 증가하여 결과적으로 4에 해당하는 메타데이터 서버가 선택된다.
전술한 바와 같이, 본 발명의 실시예들은 다수의 메타데이터 서버를 클러스터로 구성한 클러스터 메타데이터 서버 환경에서 클라이언트가 메타데이터 서버의 메모리 캐시 효율을 고려하여 적절한 메타데이터 서버를 선택함으로써 클러스터 메타데이터 서버의 메타데이터 처리 성능과 응답 성능을 향상시킬 수 있다. 그리고 본 발명의 실시예들은 메타데이터 서버의 메모리 캐시 효율을 고려하여 클라이언트가 적절한 메타데이터 서버에 요청하게 되면 해당 메타데이터 서버는 요청되는 메타데이터를 제공해주기 위해 디스크의 접근을 최소화할 수 있으며 메모리 캐시를 최대한 활용할 수 있어서 클라이언트의 요청에 대해 보다 빨리 응답할 수 있다.
본 발명의 기술사상은 상기 바람직한 실시예에 따라 구체적으로 기술되었으나, 상기한 실시예는 그 설명을 위한 것이며, 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명의 기술분야의 통상의 전문가라면 본 발명의 기술사상의 범위에서 다양한 실시예가 가능함을 이해할 수 있을 것이다.
도 1은 본 발명의 일실시예에 따른 분산 파일 시스템의 구성도.
도 2는 본 발명의 일실시예에 따른 클라이언트의 구성도.
도 3은 도 2의 메타데이터 서버 정보의 세부 항목들을 나타낸 도면.
도 4는 본 발명의 일실시예에 따른 분사 파일 시스템에서 메타데이터 서버 선택 방법을 나타낸 흐름도.
Claims (10)
- 메타데이터 서버 정보의 항목들과 제 1 해시 값을 설정하는 단계;상기 메타데이터 서버 정보의 특정 항목들에 따라 상기 제 1 해시 값에 대한 연산을 수행하여 연산 결과값에 해당하는 제 1 메타데이터 서버를 선택하는 단계;상기 메타데이터 서버 정보의 특정 항목들에 따라 제 2 해시 값을 설정하고, 상기 제 2 해시 값에 따라 상기 제 1 메타데이터 서버나 제 2 메타데이터 서버를 선택하는 단계; 및상기 특정 항목들 중 어느 한 항목에 따라 제 3 해시 값을 설정하고, 상기 제 3 해시 값에 따라 제 3 메타데이터 서버, 제 4 메타데이터 서버 또는 제 5 메타데이터 서버를 선택하는 단계를 포함하는 것을 특징으로 하는 분산 파일 시스템에서 메타데이터 서버 선택 방법.
- 제 1 항에 있어서, 상기 메타데이터 서버 정보의 항목들과 제 1 해시 값을 설정하는 단계는,상기 메타데이터 서버 정보의 전체 서버 수, 고장 서버 수, 추가 서버 수, 고장 서버 번호, 및 추가 서버 번호를 설정하는 단계; 및클라이언트가 접근하려는 메타데이터 서버의 경로를 입력 값으로 하는 해시 함수의 결과값을 상기 제 1 해시 값으로 설정하는 단계를 포함하는 것을 특징으로 하는 분산 파일 시스템에서 메타데이터 서버 선택 방법.
- 제 2 항에 있어서, 상기 제 1 메타데이터 서버를 선택하는 단계는,상기 추가 서버 수가 0이고 상기 고장 서버 수가 0이면, 상기 제 1 해시 값을 상기 전체 서버 수로 나눈 결과값을 산출하는 단계; 및상기 산출한 결과값과 일치하는 소정의 서버 리스트의 번호에 해당하는 상기 제 1 메타데이터 서버를 선택하는 단계를 포함하는 것을 특징으로 하는 분산 파일 시스템에서 메타데이터 서버 선택 방법.
- 제 2 항에 있어서, 상기 제 2 메타데이터 서버를 선택하는 단계는,상기 제 1 해시 값을 상기 전체 서버 수로 나눈 결과치를 상기 제 2 해시 값으로 설정하는 단계;상기 제 2 해시 값이 상기 고장 서버 번호에 포함되면, 상기 클라이언트가 접근하려는 메타데이터 서버의 경로에 대한 상기 해시 함수의 결과값을 상기 제 3 해시 값으로 설정하는 단계;상기 제 3 해시 값을 상기 전체 서버 수로부터 상기 추가 서버 수를 감산한 값으로 나눈 제 4 해시 값을 설정하는 단계; 및상기 제 4 해시 값과 상기 고장 서버 번호를 비교하여 비교 결과에 따라 상기 제 2 메타데이터 서버를 선택하는 단계를 포함하는 것을 특징으로 하는 분산 파일 시스템에서 메타데이터 서버 선택 방법.
- 제 4 항에 있어서, 상기 제 2 메타데이터 서버의 선택 단계는,상기 제 4 해시 값과 상기 고장 서버 번호를 비교하는 단계;비교 결과를 통해 고장난 서버의 위치를 확인하는 단계;상기 확인된 고장난 서버의 위치에 따라 상기 제 4 해시 값을 증가시키는 단계; 및상기 증가된 제 4 해시 값과 일치하는 소정의 서버 리스트의 번호에 해당하는 상기 제 2 메타데이터 서버를 선택하는 단계를 포함하는 것을 특징으로 하는 분산 파일 시스템에서 메타데이터 서버 선택 방법.
- 제 2 항에 있어서, 상기 제 3 메타데이터 서버의 선택 단계는,상기 추가 서버 수가 0이 아니면, 상기 제 1 해시 값을 상기 전체 서버 수와 상기 추가 서버 수의 합으로 나눈 결과치를 제 5 해시 값으로 설정하는 단계;상기 제 5 해시 값이 상기 추가 서버 번호에 포함되면, 상기 제 5 해시 값과 일치하는 소정의 서버 리스트의 번호에 해당하는 상기 제 3 메타데이터 서버를 선택하는 단계를 포함하는 것을 특징으로 하는 분산 파일 시스템에서 메타데이터 서버 선택 방법.
- 제 6 항에 있어서,상기 제 5 해시 값이 상기 추가 서버 번호에 포함되지 않으면, 상기 클라이언트가 접근하려는 메타데이터 서버의 경로에 대한 상기 해시 함수의 결과값을 제 6 해시 값으로 설정하는 단계;상기 제 6 해시 값을 상기 전체 서버 수로 나눈 결과치를 제 7 해시 값으로 설정하는 단계;상기 제 7 해시 값이 상기 추가 서버 번호에 포함되면, 상기 클라이언트가 접근하려는 메타데이터 서버의 경로에 대한 상기 해시 함수의 결과값을 제 8 해시 값으로 설정하는 단계; 및상기 제 8 해시 값을 상기 전체 서버 수와 상기 추가 서버 수의 합으로 나눈 결과치와 일치하는 소정의 서버 리스트의 번호에 해당하는 상기 제 4 메타데이터 서버를 선택하는 단계를 더 포함하는 것을 특징으로 하는 분산 파일 시스템에서 메타데이터 서버 선택 방법.
- 제 7 항에 있어서,상기 제 7 해시 값이 상기 추가 서버 번호에 포함되지 않으면, 상기 제 7 해시 값과 일치하는 상기 소정의 서버 리스트의 번호에 해당하는 상기 제 5 메타데이터 서버를 선택하는 단계를 더 포함하는 것을 특징으로 하는 분산 파일 시스템에서 메타데이터 서버 선택 방법.
- 다수의 메타데이터 서버를 구비한 분산 파일 시스템에 있어서,상기 메타데이터 서버들에 관한 메타데이터 서버 정보를 저장하는 저장소; 및클라이언트가 접근하려는 메타데이터 경로를 입력 값으로 하는 해시 함수의 결과값과 상기 메타데이터 서버 정보를 참조하여 메타데이터 서버를 선택하는 메타데이터 서버 선택기를 포함하는 것을 특징으로 하는 분산 파일 시스템.
- 제 9 항에 있어서, 상기 메타데이터 서버 정보는,메타데이터 서버의 추가가 발생하지 않은 상태의 전체 메타데이터 서버의 수를 나타내는 전체 서버 수, 고장이 발생한 메타데이터 서버의 수를 나타내는 고장 서버 수, 추가된 메타데이터 서버의 수를 나타내는 추가 서버 수, 클러스터 메타데이터 서버에 구비된 모든 메타데이터 서버들의 인터넷 프로토콜 정보를 나타내는 서버 리스트, 상기 서버 리스트에 포함된 모든 메타데이터 서버들 중 고장이 발생한 서버의 리스트 번호를 나타내는 고장 서버 번호, 및 상기 서버 리스트에 추가되거나 재조직 중인 서버의 번호를 나타내는 추가 서버 번호를 포함하는 것을 특징으로 하는 분산 파일 시스템.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080131276A KR101092658B1 (ko) | 2008-12-22 | 2008-12-22 | 분산 파일 시스템 및 그의 메타데이터 서버 선택 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080131276A KR101092658B1 (ko) | 2008-12-22 | 2008-12-22 | 분산 파일 시스템 및 그의 메타데이터 서버 선택 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100072769A KR20100072769A (ko) | 2010-07-01 |
KR101092658B1 true KR101092658B1 (ko) | 2011-12-13 |
Family
ID=42635881
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080131276A KR101092658B1 (ko) | 2008-12-22 | 2008-12-22 | 분산 파일 시스템 및 그의 메타데이터 서버 선택 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101092658B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101371202B1 (ko) | 2012-04-19 | 2014-03-10 | 케이티하이텔 주식회사 | 멀티 메타데이터 서버 구조를 갖는 분산 파일 시스템 및 이를 이용한 데이터 처리 방법 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102154653B1 (ko) * | 2017-01-18 | 2020-09-10 | 한국전자통신연구원 | 토러스 네트워크 기반의 분산 파일 시스템을 위한 파일 접근 경로 설정 방법 및 이를 위한 장치 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007134918A1 (en) | 2006-05-23 | 2007-11-29 | Noryan Holding Corporation | Distributed storage |
-
2008
- 2008-12-22 KR KR1020080131276A patent/KR101092658B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007134918A1 (en) | 2006-05-23 | 2007-11-29 | Noryan Holding Corporation | Distributed storage |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101371202B1 (ko) | 2012-04-19 | 2014-03-10 | 케이티하이텔 주식회사 | 멀티 메타데이터 서버 구조를 갖는 분산 파일 시스템 및 이를 이용한 데이터 처리 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20100072769A (ko) | 2010-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11620187B2 (en) | Distributing data on distributed storage systems | |
Konstantinou et al. | On the elasticity of NoSQL databases over cloud management platforms | |
CN102591970B (zh) | 一种分布式键-值查询方法和查询引擎系统 | |
Zhang et al. | A distributed cache for hadoop distributed file system in real-time cloud services | |
US9244958B1 (en) | Detecting and reconciling system resource metadata anomolies in a distributed storage system | |
CN103218175B (zh) | 多租户的云存储平台访问控制系统 | |
CN110213352B (zh) | 名字空间统一的分散自治存储资源聚合方法 | |
US9378218B2 (en) | Apparatus and method for enabling clients to participate in data storage in distributed file system | |
Minhas et al. | Elastic scale-out for partition-based database systems | |
US8924513B2 (en) | Storage system | |
Malkhi et al. | From paxos to corfu: a flash-speed shared log | |
KR20130118088A (ko) | 멀티 메타데이터 서버 구조를 갖는 분산 파일 시스템 및 이를 이용한 데이터 처리 방법 | |
KR101092658B1 (ko) | 분산 파일 시스템 및 그의 메타데이터 서버 선택 방법 | |
Zhang et al. | Minimum‐cost virtual machine migration strategy in datacenter | |
US20220391411A1 (en) | Dynamic adaptive partition splitting | |
Bin et al. | An efficient distributed B-tree index method in cloud computing | |
Sanchez et al. | EclipseMR: distributed and parallel task processing with consistent hashing | |
Wei et al. | Global virtual data space for unified data access across supercomputing centers | |
Aye | Data Consistency on Private Cloud Storage System | |
Mohammad et al. | Clustering the Cloud-A Model for (Self-) Tuning of Cloud Data Management Systems. | |
CN116303769A (zh) | 一种分布式数据库分区方法及系统、电子设备、存储介质 | |
Wang et al. | A load-aware data placement policy on cluster file system | |
Memaripour et al. | An adaptive storage and retrieval mechanism to reduce response-time in high performance computing clusters | |
Ueno et al. | Cagra dependable distributed storage system for 3D computer graphics rendering | |
Myint et al. | Improving Data Availability in Cloud Storage with Efficient Replication |
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: 20151127 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20161121 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20181025 Year of fee payment: 8 |