KR100988107B1 - Distributed file system and file consistency management method using replica state matching - Google Patents
Distributed file system and file consistency management method using replica state matching Download PDFInfo
- Publication number
- KR100988107B1 KR100988107B1 KR1020080052529A KR20080052529A KR100988107B1 KR 100988107 B1 KR100988107 B1 KR 100988107B1 KR 1020080052529 A KR1020080052529 A KR 1020080052529A KR 20080052529 A KR20080052529 A KR 20080052529A KR 100988107 B1 KR100988107 B1 KR 100988107B1
- Authority
- KR
- South Korea
- Prior art keywords
- replica
- data
- server
- state
- state data
- Prior art date
Links
Images
Classifications
-
- 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/17—Details of further file system functions
- G06F16/178—Techniques for file synchronisation in file systems
-
- 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/184—Distributed file systems implemented as replicated file system
- G06F16/1844—Management specifically adapted to replicated file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
분산 파일 시스템 및 복제본 상태 매칭을 이용한 파일 일관성 관리 방법이 개시된다. 복제본 상태 매칭을 이용한 파일 일관성 관리 방법은 데이터 서버가 복제본 및 제1 복제본 상태 데이터를 저장하고 유지하는 단계, 상기 데이터 서버가 클라이언트 서버로부터 제2 복제본 상태 데이터를 포함하는 파일 연산 요청을 수신하는 단계, 상기 데이터 서버가 상기 제1 복제본 상태 데이터와 상기 제2 복제본 상태 데이터가 매칭하는 지 여부를 판단하는 단계 및 상기 제1 복제본 상태 데이터와 상기 제2 복제본 상태 데이터가 매칭하는 경우, 상기 데이터 서버가 파일 연산을 수행하는 단계를 포함할 수 있다.Disclosed are a file consistency management method using a distributed file system and replica state matching. A method of managing file consistency using replica state matching may include storing and maintaining a replica and first replica status data by a data server, receiving a file operation request including second replica status data from a client server by the data server; Determining, by the data server, whether the first replica status data and the second replica status data match, and when the first replica status data and the second replica status data match, the data server files. It may include performing an operation.
분산 파일 시스템, 복제본, 복제본 상태 매칭, 오너, 메타데이터 Distributed File System, Replicas, Replica State Matching, Owner, Metadata
Description
본 발명은 분산 파일 시스템 및 복제본 상태 매칭을 이용한 파일 일관성 관리 방법에 관한 것으로, 보다 자세하게는, 분산 파일 시스템을 구성하는 서버들이 관리하는 복제본 상태를 매칭시킴으로써, 파일 연산을 수행하는 분산 파일 시스템 및 복제본 상태 매칭을 이용한 파일 일관성 관리 방법에 관한 것이다.The present invention relates to a file consistency management method using a distributed file system and replica state matching. More specifically, a distributed file system and a replica that perform file operations by matching copy states managed by servers constituting the distributed file system. A file consistency management method using state matching.
최근, 대량의 파일 데이터를 저장하기 위해 다수의 저가(low price)의 서버를 이용하여 분산 파일 시스템을 구축하는 방법이 제시되고 있다. 이러한 분산 파일 시스템은 다수의 저가의 서버가 파일 데이터를 분산하여 처리하기 때문에, 비용과 성능 면에서 탁월한 효과를 발휘한다.Recently, a method of building a distributed file system using a plurality of low price servers to store a large amount of file data has been proposed. This distributed file system has excellent cost and performance benefits because many low cost servers distribute and process file data.
다만, 저가의 서버를 이용하는 경우, 파일 데이터에 장애가 빈번하게 발생된다. 즉, 저가의 서버를 이용하면, 분산 파일 시스템을 구성하기 위한 하드웨어 비용을 줄일 수 있는 장점이 있지만, 동시에 저가의 서버에 따른 높은 장애 발생 빈도 때문에 시스템의 연산 능력이 저하되는 단점도 동시에 존재한다.However, in the case of using a low-cost server, a failure occurs frequently in file data. In other words, using a low-cost server has the advantage of reducing the hardware cost for constructing a distributed file system, but at the same time, there is a disadvantage that the computational power of the system is degraded due to the high frequency of failure caused by the low-cost server.
상기 단점을 극복하기 위해, 분산 파일 시스템은 파일에 대한 복제본을 이용할 수 있다. 그러나, 분산 파일 시스템은 다수의 서버로 구성되어 있어, 동일한 복제본에 대해 상기 서버들 각각이 인식하고 있는 복제본 상태가 다를 수 있다. 이러한 문제점으로 인해, 분산 파일 시스템이 파일 연산을 수행하는 경우, 동일한 복제본에 대한 내용이 서버마다 달라질 수 있기 때문에, 시스템 전체의 파일 일관성을 저하시키는 원인이 될 수 있다.To overcome this drawback, distributed file systems may use replicas of files. However, the distributed file system is composed of a plurality of servers, so that the replica state recognized by each of the servers for the same replica may be different. Due to this problem, when a distributed file system performs a file operation, the contents of the same replica may vary from server to server, which may cause a reduction in file consistency of the entire system.
따라서, 시스템 전체의 파일 일관성을 유지하면서 파일 연산을 수행할 수 있는 방법이 요구된다.Thus, there is a need for a method that can perform file operations while maintaining file consistency throughout the system.
본 발명은 분산 파일 시스템을 구성하는 모든 구성 요소들이 저장하고 있는 복제본 상태 데이터들이 동일하게 매칭되는 경우, 파일 연산이 수행되도록 함으로써, 시스템 전체의 파일 일관성을 유지할 수 있는 분산 파일 시스템 및 복제본 상태 매칭을 이용한 파일 일관성 관리 방법을 제공한다.The present invention provides a distributed file system and a replica state matching that can maintain file consistency throughout the system by performing a file operation when the replica state data stored by all components of the distributed file system are identically matched. Provides a file consistency management method.
본 발명은 데이터 서버가 자신이 관리하는 복제본 상태 및 다른 데이터 서버의 서버 상태를 저장하고 유지함으로써, 데이터 서버의 장애 발생시 발생하는 오버 헤드를 줄일 수 있는 분산 파일 시스템 및 복제본 상태 매칭을 이용한 파일 일관성 관리 방법을 제공한다.The present invention provides a file coherency management using distributed file system and replica state matching, which reduces the overhead incurred when a data server fails by storing and maintaining a replica state managed by a data server and a server state of another data server. Provide a method.
본 발명의 일실시예에 따른 복제본 상태 매칭을 이용한 파일 일관성 관리 방법은 데이터 서버가 복제본(replica) 및 제1 복제본 상태 데이터를 저장하고 유지하는 단계, 상기 데이터 서버가 클라이언트 서버로부터 제2 복제본 상태 데이터를 포함하는 파일 연산 요청을 수신하는 단계, 상기 데이터 서버가 상기 제1 복제본 상태 데이터와 상기 제2 복제본 상태 데이터가 매칭하는 지 여부를 판단하는 단계 및 상기 제1 복제본 상태 데이터와 상기 제2 복제본 상태 데이터가 매칭하는 경우, 상기 데이터 서버가 파일 연산을 수행하는 단계를 포함할 수 있다.In the file consistency management method using replica state matching according to an embodiment of the present invention, a data server stores and maintains replica and first replica state data, and the data server stores second replica state data from a client server. Receiving a file operation request including; the data server determining whether the first replica state data and the second replica state data match and the first replica state data and the second replica state If the data matches, the data server may include performing a file operation.
본 발명의 일실시예에 따른 복제본 상태 매칭을 이용한 파일 일관성 관리 방법은 클라이언트 서버가 제1 복제본 상태 데이터를 저장하고 유지하는 단계, 상기 클라이언트 서버가 데이터 서버에 상기 제1 복제본 상태 데이터를 포함하는 파일 연산 요청을 전송하는 단계 및 상기 제1 복제본 상태 데이터와 상기 데이터 서버가 저장하고 있는 제2 복제본 상태 데이터가 매칭하는 경우, 상기 데이터 서버로부터 파일 연산 결과를 수신하는 단계를 포함할 수 있다.In the file consistency management method using replica status matching according to an embodiment of the present invention, a method in which a client server stores and maintains first replica status data, and the client server includes a file including the first replica status data in a data server The method may include transmitting an operation request and receiving a file operation result from the data server when the first replica state data and the second replica state data stored in the data server match.
본 발명의 일실시예에 따른 데이터 서버는 복제본 및 제1 복제본 상태 데이터를 저장하고 유지하는 데이터 저장부, 클라이언트 서버로부터 제2 복제본 상태 데이터를 포함하는 파일 연산 요청을 수신하는 파일 연산 요청 수신부, 상기 제1 복제본 상태 데이터와 상기 제2 복제본 상태 데이터가 매칭하는 지 여부를 판단하는 데이터 매칭 판단부 및 상기 제1 복제본 상태 데이터와 상기 제2 복제본 상태 데이터가 매칭하는 경우, 상기 데이터 서버가 파일 연산을 수행하는 파일 연산 수행부를 포함할 수 있다.Data server according to an embodiment of the present invention is a data storage unit for storing and maintaining the replica and the first replica status data, a file operation request receiver for receiving a file operation request including the second replica status data from the client server, the A data matching determination unit determining whether the first replica state data and the second replica state data match, and when the first replica state data and the second replica state data match, the data server performs a file operation. It may include a file operation execution unit to perform.
본 발명의 일실시예에 따른 클라이언트 서버는 제1 복제본 상태 데이터를 저장하고 유지하는 데이터 저장부, 상기 제1 복제본 상태 데이터를 포함하는 파일 연산 요청을 데이터 서버에 전송하는 파일 연산 요청 전송부 및 상기 제1 복제본 상태 데이터와 상기 데이터 서버가 저장하고 있는 제2 복제본 상태 데이터가 매칭하는 경우, 상기 데이터 서버로부터 파일 연산 결과를 수신하는 파일 연산 결과 수신부를 포함할 수 있다.The client server according to an embodiment of the present invention is a data storage unit for storing and maintaining first replica status data, a file operation request transmitter for transmitting a file operation request including the first replica status data to a data server and the When the first replica state data and the second replica state data stored in the data server match, it may include a file operation result receiving unit for receiving a file operation result from the data server.
본 발명에 따르면, 분산 파일 시스템을 구성하는 모든 구성 요소들이 저장하고 있는 복제본 상태 데이터들이 동일하게 매칭되는 경우, 파일 연산이 수행되도록 함으로써, 시스템 전체의 파일 일관성을 유지할 수 있는 분산 파일 시스템 및 복제본 상태 매칭을 이용한 파일 일관성 관리 방법이 제공된다.According to the present invention, if the replica state data stored by all the components constituting the distributed file system are identically matched, the file operation is performed so that the distributed file system and the replica state can maintain file consistency throughout the system. A file consistency management method using matching is provided.
본 발명에 따르면, 데이터 서버가 자신이 관리하는 복제본 상태 및 다른 데이터 서버의 서버 상태를 저장하고 유지함으로써, 데이터 서버의 장애 발생시 발생하는 오버 헤드를 줄일 수 있는 분산 파일 시스템 및 복제본 상태 매칭을 이용한 파일 일관성 관리 방법이 제공된다.According to the present invention, a file using a distributed file system and replica state matching can reduce the overhead incurred when a data server fails by storing and maintaining a replica state managed by the data server and a server state of another data server. Consistency management methods are provided.
이하, 첨부된 도면들에 기재된 내용들을 참조하여 본 발명에 따른 실시예를 상세하게 설명한다. 다만, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다. 본 발명의 일실시예에 따른 복제본 상태 매칭을 이용한 파일 일관성 관리 방법은 분산 파일 시스템에 의해 수행될 수 있다.Hereinafter, with reference to the contents described in the accompanying drawings will be described in detail an embodiment according to the present invention. However, the present invention is not limited to or limited by the embodiments. Like reference numerals in the drawings denote like elements. The file consistency management method using replica state matching according to an embodiment of the present invention may be performed by a distributed file system.
도 1은 본 발명의 일실시예에 따른 분산 파일 시스템의 전체 구성을 도시한 도면이다.1 is a view showing the overall configuration of a distributed file system according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 일실시예에 따른 분산 파일 시스템은 클라이언트 서버(101), 메타데이터 서버(102) 및 복수의 데이터 서버(103)를 포함할 수 있다. 본 발명의 일실시예에 따른 데이터 서버의 개수는 제한이 없다.Referring to FIG. 1, a distributed file system according to an embodiment of the present invention may include a
본 발명의 일실시예에 따른 분산 파일 시스템에 있어 클라이언트 서버(101)는 복수일 수 있다. 일례로, 메타데이터 서버(102)와 복수의 데이터 서버(103)가 하나의 클러스터를 구성할 수 있다. 이 때, 분산 파일 시스템은 적어도 하나의 클 러스터를 포함할 수 있다.In the distributed file system according to an embodiment of the present invention, the
데이터 서버(103)는 오너(owner) 별 복제본(replica)을 저장할 수 있다. 일례로, 오너는 데이터 서버(103)에 저장된 파일을 그룹화하는 단위로, 상기 파일의 디렉토리에 기초하여 결정될 수 있다. 다시 말해, 오너 별 복제본은 오너 별로 그룹화된 파일의 집합을 의미한다. 오너에 대해서 도 2에서 구체적으로 설명된다.The
메타데이터 서버(102)는 오너 별 복제본의 저장 위치 정보로 구성된 상기 오너 별 메타데이터를 저장할 수 있다. 이 때, 오너 별 복제본의 저장 위치 정보는 상기 오너 별 복제본이 저장된 데이터 서버(103)의 리스트를 의미한다.The
클라이언트 서버(101)는 메타데이터 서버(102)에 소정의 오너에 대한 메타데이터를 요청하여 메타데이터를 반환 받을 수 있다. 이 때, 소정의 오너는 클라이언트 서버(101)가 처리하고자 하는 파일이 속한 오너를 의미한다. 그러면, 클라이언트 서버(101)는 메타데이터를 통해 상기 소정의 오너의 복제본 저장 위치인 데이터 서버(103)를 확인할 수 있다.The
이 때, 클라이언트 서버(101), 메타데이터 서버(102), 복수의 데이터 서버(103) 각각은 특정 복제본에 대한 복제본 상태 데이터를 저장할 수 있다. 이 때, 메타데이터 서버(102)는 복수의 데이터 서버(103) 각각이 관리하는 복제본 상태를 주기적으로 반영하여 최신 상태의 복제본 상태 데이터를 저장하고 유지할 수 있다. 이 때, 복제본 상태 데이터는 복제본이 정상 상태(Normal: N), 장애 상태(Failure: F), 복구 상태(Recovery: R) 또는 이동 상태(Migration: M)인지 여부를 나타낸다.In this case, each of the
클라이언트 서버(101)는 사용자 레벨에 해당하는 서버이기 때문에, 메타데이터 서버(102)의 복제본 상태 데이터를 즉각적으로 반영하기 어려우므로 시스템 전체의 파일 일관성이 보장되지 않을 수 있다. 이러한 문제를 해결하기 위해, 본 발명의 일실시예에 따른 분산 파일 시스템은 파일 연산 과정 중의 복제본 상태 매칭(replica state matching)을 통해 클라이언트 서버(101), 메타데이터 서버(102) 및 복수의 데이터 서버(103) 각각이 관리하는 복제본 상태 데이터가 서로 동일하도록 제어함으로써, 시스템 전체의 파일 일관성이 유지되도록 할 수 있다.Since the
도 1에서 볼 수 있듯이, 클라이언트 서버(101)는 오너의 복제본이 저장된 데이터 서버(103)에 파일 연산 요청을 전송할 수 있다. 이 때, 파일 연산의 내용에 따라 클라이언트 서버(101)가 데이터 서버(103)에 파일 연산 요청하는 방식이 달라질 수 있다. 예를 들면, 파일 쓰기 연산 또는 파일 삭제 연산의 경우, 복제본의 내용을 변경시키는 파일 연산 요청에 해당한다. 이 때, 클라이언트 서버(101)는 분산 파일 시스템 전체의 파일 일관성 유지를 위해 동일한 오너에 대한 복제본을 저장하는 모든 데이터 서버(103)에 복제본의 내용을 변경시키는 파일 연산 요청을 전송할 수 있다.As shown in FIG. 1, the
이 때, 클라이언트 서버(101)는 파일 연산 요청에 자신이 관리하는 복제본 상태 데이터를 포함시켜, 데이터 서버(103)에 파일 연산 요청을 전송할 수 있다. 일례로, 데이터 서버(103)는 자신이 저장하고 있는 복제본 상태 데이터와 클라이언트 서버(101)가 포함시킨 복제본 상태 데이터 간에 서로 매칭하는 지 여부를 판단할 수 있다. 이 때, 복제본 상태 데이터의 매칭 결과에 따라 데이터 서버(103)는 파일 연산을 수행할 지 여부를 결정할 수 있다. 만약, 복제본 상태 데이터가 매칭하는 경우, 데이터 서버(103)는 파일 연산을 수행하고, 복제본 상태 데이터가 매칭하지 않는 경우, 데이터 서버(103)는 파일 연산 요청을 거절할 수 있다.At this time, the
이 경우, 클라이언트 서버(101)는 자신의 복제본 상태 데이터를 메타데이터 서버(102)의 복제본 상태 데이터를 참고하여 업데이트 할 수 있다. 클라이언트 서버(101)는 업데이트된 복제본 상태 데이터를 포함하는 파일 연산 요청을 데이터 서버(103)에 재전송 할 수 있다. 그러면, 데이터 서버(103)는 재전송된 파일 연산 요청에 포함된 복제본 상태 데이터를 이용하여 복제본 상태 데이터의 매칭 여부를 재차 판단할 수 있다.In this case, the
최종적으로, 복제본 상태 데이터가 매칭될 때까지 복제본 상태 데이터를 업데이트하는 과정 및 업데이트된 복제본 상태 데이터를 이용하여 파일 연산 요청을 전송하는 과정이 반복될 수 있다. 복제본 상태 매칭에 대해서는 도 3 내지 도 8에서 좀더 구체적으로 설명된다.Finally, the process of updating the copy state data and transmitting the file operation request using the updated copy state data may be repeated until the copy state data is matched. Replica state matching is described in more detail with reference to FIGS. 3 to 8.
도 2는 본 발명의 일실시예에 따라 디렉토리에 기초한 오너 단위로 파일을 그룹화하고, 오너의 복제본이 데이터 서버에 저장되는 일례를 도시한 도면이다.2 is a diagram illustrating an example in which files are grouped in units of owners based on directories according to an embodiment of the present invention, and copies of owners are stored in a data server.
도 2를 참고하면, 데이터 서버에 저장된 파일 디렉토리(201)가 도시되어 있다. 이 때, 파일 디렉토리(201)는 서브 디렉토리인 dir1로 구성되어 있다. 이 때, 서브 디렉토리 dir1에 file 1, file 2, file 3이 저장되어 있다. 본 발명의 일실시예에 따르면, 오너(owner)는 파일의 디렉토리에 기초하여 결정될 수 있다. 다시 말해서, 오너는 데이터 서버에 실제 저장된 파일의 디렉토리와 대응될 수 있 다.Referring to FIG. 2, a
결국, 데이터 서버의 파일은 오너 단위에 따라 관리될 수 있다. 즉, 본 발명의 일실시예에 따른 분산 파일 시스템은 파일 각각에 대해 관리하는 것이 아니라 파일의 디렉토리(즉, 오너 단위)별로 관리하여 파일을 효율적으로 관리할 수 있다. 그리고, 파일이 디렉토리 단위인 오너로 관리되기 때문에, 적은 용량의 파일의 개수가 기하급수적으로 증가하더라도 분산 파일 시스템이 처리하는 메타데이터의 양은 상대적으로 덜 증가하게 된다.As a result, the files of the data server can be managed according to the owner unit. That is, the distributed file system according to an exemplary embodiment of the present invention may manage the files efficiently by managing each file directory (that is, owner unit) rather than managing each file. Since the file is managed by the owner, which is a directory unit, even if the number of small files increases exponentially, the amount of metadata processed by the distributed file system is relatively less increased.
이 때, 도 2를 참고하면, 파일의 디렉토리인 dir/dir1는 오너 1로 결정될 수 있다. 그리고, dir 디렉토리에 대해서도 오너 1과 다른 오너가 결정될 수 있다. 만약, 파일 디렉토리(201)에 dir/dir2, dir/dir3인 디렉토리가 존재한다면, 상기 디렉토리 각각은 오너 1과 다른 오너 2, 오너 3으로 결정될 수 있다. 즉, 데이터 서버에 저장된 파일은 오너 단위에 따라 그룹화될 수 있다.In this case, referring to FIG. 2, the directory dir / dir1 of the file may be determined as
본 발명의 일실시예에 따르면, 분산 파일 시스템은 오너 별 복제본을 생성할 수 있다. 이 때, 오너 별로 생성되는 복제본의 개수는 제한이 없다. 도 2를 참고하면, dir/dir1인 디렉토리가 오너 1으로 결정되는 경우, 오너 1에 대한 3개의 복제본 X(202-1, 202-2, 202-3)가 생성되는 것을 알 수 있다. 이 때, 오너 별로 생성되는 복제본의 개수는 제한이 없다.According to an embodiment of the present invention, the distributed file system may create a replica for each owner. At this time, the number of replicas created for each owner is not limited. Referring to FIG. 2, when the directory dir / dir1 is determined to be
그러면, 데이터 서버는 오너 별로 생성된 복제본 중 어느 하나를 저장할 수 있다. 예를 들어, 오너 1에 대해 복수의 복제본 X가 생성되고, 오너 2에 대해 복수의 복제본 Y가 생성되는 경우, 데이터 서버 각각은 복제본 X 하나 또는 복제본 Y 하나를 저장할 수 있다. 결국, 데이터 서버는 하나의 복제본을 저장함으로써 복수의 파일을 관리할 수 있다.Then, the data server may store any one of the replicas created for each owner. For example, when a plurality of replicas X are created for
도 2에서 볼 수 있듯이, 오너 1에 대해 복제본 X가 3개가 생성되는 경우, 복제본 X(202-1)는 데이터 서버 1(103-1)에 저장되고, 복제본 X(202-2)는 데이터 서버 2(103-2)에 저장될 수 있다. 또한, 오너 1에 대한 복제본 X(202-3)는 데이터 서버 3(103-3)에 저장될 수 있다. 이 때, 데이터 서버 1(103-1), 데이터 서버 2(103-2) 또는 데이터 서버 3(103-3)은 오너 1과 다른 오너에 대한 복제본도 저장할 수 있다. 즉, 데이터 서버 각각에 저장되는 오너 별 복제본의 개수는 제한이 없다.As can be seen in FIG. 2, when three replicas X are created for
따라서, 빈번한 장애를 효과적으로 처리하기 위해 본 발명의 일실시예에 따른 분산 파일 시스템은 하나의 오너에 대한 복수 개의 복제본을 물리적으로 다른 데이터 서버(103)에 저장할 수 있다. 결국, 특정 데이터 서버에 오류가 발생하여 어느 하나의 복제본에 장애가 발생하더라도 분산 파일 시스템은 장애가 없는 복제본을 이용하여 장애가 발생한 복제본을 복구할 수 있다.Thus, in order to effectively handle frequent failures, the distributed file system according to an embodiment of the present invention may physically store a plurality of copies of one owner in another
그리고, 분산 파일 시스템을 구성하는 데이터 서버 1(103-1), 데이터 서버 2(103-2) 또는 데이터 서버 3(103-3) 각각은 복제본 상태 데이터를 관리할 수 있다. 그리고, 분산 파일 시스템을 구성하는 클라이언트 서버(101) 및 메타데이터 서버(102)도 복제본 상태 데이터를 관리할 수 있다.Each of the
이 때, 데이터 서버 1(103-1), 데이터 서버 2(103-2) 또는 데이터 서버 3(103-3) 각각이 별도로 복제본을 저장하고 있기 때문에, 분산 파일 시스템은 구성 요소들이 각자 관리하는 복제본 상태 데이터를 서로 동일하도록 매칭시킴으로써, 복제본이 그룹화하여 관리하는 파일의 일관성을 유지할 수 있다. 파일 일관성을 유지하는 과정은 파일 연산 과정 중의 클라이언트 서버(101)와 메타데이터 서버(102) 간의 복제본 상태 매칭을 통해 이루어 질 수 있다.At this time, since each of Data Server 1 (103-1), Data Server 2 (103-2), or Data Server 3 (103-3) stores a separate copy, the distributed file system is a replica managed by each component. By matching state data to be identical to each other, it is possible to maintain consistency of the files the replicas group and manage. The process of maintaining file consistency may be performed through copy state matching between the
도 3은 본 발명의 일실시예에 따라 복제본 상태가 전환되는 과정을 도시한 도면이다.3 is a diagram illustrating a process of switching a replica state according to an embodiment of the present invention.
본 발명의 일실시예에 따른 분산 파일 시스템은 데이터 서버(103)에 발생된 장애를 일시적 장애와 영구적 장애로 구분하여 처리할 수 있다. 이 때, 메타데이터 서버(102)는 분산 파일 시스템을 구성하는 데이터 서버들(103)의 상태를 감시하여, 장애의 유형을 일시적 장애 또는 영구적 장애로 판정할 수 있다.The distributed file system according to an embodiment of the present invention may divide and handle a failure occurring in the
이 때, 일시적 장애는 데이터 서버 자체의 결함보다는 외부적인 요인(예, 네트워크상 순간 장애)에 의해 발생한 후 짧은 시간 내에 정상으로 돌아오는 장애를 의미한다. 이와 달리, 영구적 장애는 데이터 서버 자체의 결함(예. 전원 공급부 고장)으로 인해 발생하여 정상적인 동작을 할 수 없는 장애를 의미한다.In this case, the temporary failure refers to a failure that returns to normal within a short time after being caused by an external factor (for example, a network failure) rather than a defect of the data server itself. In contrast, a permanent failure is a failure that occurs because of a fault in the data server itself (eg, a power supply failure) that prevents normal operation.
도 3을 참고하면, 복제본 상태가 N(Normal)인 경우, 데이터 서버(103)는 장애가 없는 정상 상태를 의미한다. 데이터 서버(103)에 장애 발생이 감지되면, 복제본 상태는 F(Failure)가 된다. Referring to FIG. 3, when the replica state is N (Normal), the
이 후, 일시적 장애가 해소되어 데이터 서버(103)가 복제본 복구를 수행하는 경우, 복제본 상태는 R(Recovery)이 된다. 이 때, 데이터 서버(103)에 재차 일시적 장애가 발생되면, 복제본 상태는 F로 되돌아간다. 그리고, 복제본의 복구가 완 료되면, 복제본 상태는 R에서 N으로 전환될 수 있다.After that, when the temporary failure is eliminated and the
복제본 상태가 F에서, 영구적 장애의 발생이 감지되면, 복제본 이동이 시작되면서 복제본 상태는 M(Migration)으로 전환된다. 만약, 복제본의 이동이 실패되면, 복제본 상태는 M에서 F로 전환될 수 있다. 그리고, 복제본의 이동이 완료되면, 복제본 상태는 M에서 N으로 전환될 수 있다.If the replica status is F, and the occurrence of a permanent failure is detected, the replica move begins and the replica status switches to M (Migration). If the replica fails, the replica status can be switched from M to F. And, when the movement of the replica is completed, the replica status can be switched from M to N.
이 때, 복제본이 F 상태인 경우, 파일 연산에 대한 MO(Missed Operation) 로그가 생성될 수 있다. 이 때, MO 로그는 일시적 장애 발생 시점부터 일시적 장애 해소 시점까지의 장애 기간 동안 클라이언트 서버(101)가 데이터 서버(103)에 요청한 파일 연산 내용이 기록된 로그를 의미할 수 있다.At this time, when the replica is in the F state, a Missed Operation (MO) log for a file operation may be generated. In this case, the MO log may refer to a log in which a file operation content requested by the
그리고, 복제본이 R 상태이거나 또는 M 상태인 경우, 파일 연산에 대한 DO(Delayed Operation) 로그가 생성될 수 있다. 이 때, DO 로그는 복제본이 복구 중이거나 복제본이 이동 중일 때, 클라이언트 서버(101)가 데이터 서버(103)에 요청한 파일 연산 내용이 기록된 로그를 의미할 수 있다.In addition, when the replica is in the R state or the M state, a delayed operation (DO) log for a file operation may be generated. In this case, the DO log may mean a log in which a file operation content requested by the
일시적 장애의 경우, 데이터 서버(103)는 MO 로그를 재연하여 복제본을 복구하고, 복제본 복구 종료 후 DO 로그를 재연하여 지연된 파일 연산을 수행함으로써 최종적으로 장애를 처리할 수 있다. 그리고, 영구적 장애의 경우, 데이터 서버(103)는 복제본을 이동시키고, 복제본 이동 완료 후 DO 로그를 재연하여 지연된 파일 연산을 수행함으로써 최종적으로 장애를 처리할 수 있다.In the case of a temporary failure, the
일례로, 분산 파일 시스템을 구성하는 클라이언트 서버(101), 메타데이터 서버(102) 및 복수의 데이터 서버(103) 각각은 자신들이 인식하는 복제본 상태 데이 터를 저장하고 유지할 수 있다. 이 때, 데이터 서버(103)가 자신이 관리하는 복제본의 복제본 상태와 다른 데이터 서버들이 관리하는 상기 복제본과 동일한 복제본의 복제본 상태를 나타내는 복제본 상태 데이터를 유지한다고 가정할 수 있다. 만약, 데이터 서버(103)에 장애가 발생하는 경우, 장애 처리를 위해 복수의 데이터 서버(103)가 관리하는 모든 복제본을 검색해야 하므로, 상당한 오버헤드가 발생할 수 있다.For example, each of the
따라서, 본 발명의 일실시예에 따르면, 데이터 서버 각각은 자신이 관리하는 복제본의 복제본 상태와 상기 복제본과 동일한 복제본을 저장하는 다른 데이터 서버들의 서버 상태를 나타내는 복제본 상태 데이터를 저장하고 유지할 수 있다. 이 때, 서버 상태는 상기 다른 데이터 서버들이 저장하는 복제본의 복제본 상태가 대체된 것을 의미할 수 있다. 또한, 메타데이터 서버(102)도 복제본을 저장하고 있는 모든 데이터 서버(103)의 서버 상태를 나타내는 복제본 상태 데이터를 저장하고 유지할 수 있다.Accordingly, according to an embodiment of the present invention, each data server may store and maintain replica state data indicating a replica state of a replica managed by itself and a server state of other data servers storing the same replica as the replica. At this time, the server state may mean that the replica state of the replicas stored by the other data servers is replaced. In addition, the
본 발명의 일실시예에 따르면, 분산 파일 시스템은 복제본의 상태가 전환될 때, 복제본 상태 데이터를 업데이트하여 시스템 전체의 파일 일관성을 유지할 수 있다. 즉, 복제본 상태 데이터를 참고하여 복제본에 대한 파일 연산 요청이 전송되기 때문에, 분산 파일 시스템의 구성 요소가 관리하는 복제본 상태 데이터가 서로 다른 경우 동일한 복제본을 저장하는 데이터 서버 간에 파일 일관성이 유지되지 않는 문제점이 발생될 수 있다.According to an embodiment of the present invention, the distributed file system may update the replica state data when the state of the replica is switched to maintain file consistency throughout the system. In other words, since file operation requests for a replica are sent by referring to the replica status data, file consistency is not maintained between data servers storing the same replica when the replica status data managed by the components of the distributed file system is different. This may occur.
이러한 문제점은 클라이언트 서버(101)는 사용자 수준의 서버이기 때문에, 복제본의 상태가 전환되는 것을 즉각적으로 업데이트 하기 어렵기 때문에 발생될 수 있다. 따라서, 분산 파일 시스템은 파일 연산 과정 중의 복제본 상태 매칭을 통해 파일 일관성을 유지할 수 있다.This problem may occur because the
도 4는 본 발명의 일실시예에 따른 분산 파일 시스템이 복제본 상태 매칭을 이용하여 파일 연산을 수행하는 과정을 설명하기 위한 도면이다.4 is a diagram illustrating a process of performing a file operation by using a copy state matching in a distributed file system according to an exemplary embodiment of the present invention.
도 4를 참고하면, 데이터 서버 1(103-1), 데이터 서버 2(103-2) 및 데이터 서버 3(103-3)은 동일한 오너 별 복제본(X)을 저장할 수 있다. 그리고, 클라이언트 서버(101)는 복제본 상태 데이터(401)를, 메타데이터 서버(102)는 복제본 상태 데이터(402)를 저장하고 유지할 수 있다. 또한, 데이터 서버 1(103-1)는 복제본 상태 데이터(403)를, 데이터 서버 2(103-2)는 복제본 상태 데이터(404)를, 그리고 데이터 서버 3(103-3)은 복제본 상태 데이터(405)를 저장하고 유지할 수 있다.Referring to FIG. 4, the
일례로, 데이터 서버는 자신이 저장하는 복제본의 복제본 상태 및 상기 복제본과 동일한 복제본을 저장하는 데이터 서버의 서버 상태를 나타내는 복제본 상태 데이터를 저장하고 관리할 수 있다. 도 4를 참고하면, 복제본 상태 데이터(401)의 경우, 데이터 서버 1(103-1)는 자신이 관리하는 복제본의 상태는 정상 상태이고, 데이터 서버 2(103-2)의 서버 상태는 정상 상태이며, 데이터 서버 3(103-3)의 서버 상태는 복구 상태라고 인식할 수 있다.In one example, the data server may store and manage replica status data indicating the replica status of the replica it stores and the server status of the data server storing the same replica as the replica. Referring to FIG. 4, in the case of the
도 4는 복제본 상태 매칭에 의해 파일 연산이 거절되는 일례를 나타낸다. 구체적으로, 도 4는 데이터 서버 3(103-3)에 일시적 장애가 발생하여 데이터 서버 3(103-3)에 저장된 복제본이 F 상태가 되었다가, 일시적 장애가 해소되어 복제본이 복구되고 있는 상태를 나타낸다. 이 때, 도 4는 데이터 서버 3(103-3)이 일시적 장애가 해소된 후 다시 정상 상태로 돌아와 메타데이터 서버 (102)와 데이터 서버들(103-1, 103-2, 103-3)에게 복제본이 F 상태에서 R 상태로 바뀌었음을 통지한 이후의 상황을 도시하고 있다. 이 때, 클라이언트 서버(101)는 복제본이 R 상태로 바뀐 이후에 파일 연산 요청을 전송하지 않았기 때문에, 클라이언트 서버(101)가 인식하는 복제본 상태 데이터(401)는 여전히 (N, N, F)이다. 4 shows an example in which a file operation is rejected by copy state matching. Specifically, FIG. 4 illustrates a state in which a temporary failure occurs in the
구체적으로 보면, 클라이언트 서버(101)는 사용자 레벨의 서버에 해당하여 데이터 서버들(103-1, 103-2, 103-3)의 서버 상태가 변경되는 것을 즉각적으로 파악하기 힘들 수 있다. 즉, 클라이언트 서버(101)는 데이터 서버들(103-1, 103-2, 103-3)의 상태 변경을 복제본 상태 데이터(403)에 신속하게 업데이트 하지 못할 수 있다.Specifically, it may be difficult for the
그러면, 클라이언트 서버(101)는 복제본 상태 데이터(401)에 따라 F 상태인 데이터 서버 3(103-3)을 제외한 데이터 서버 1(103-1) 및 데이터 서버 2(103-2)에 복제본을 변경하는 파일 연산 요청을 전송할 수 있다. 결과적으로, 데이터 서버 1(103-1)와 데이터 서버 2(103-2)는 파일 연산 요청에 따라 변경된 복제본을 저장하나, 데이터 서버 3(103-3)은 변경되지 않은 복제본을 저장한다. 이 경우, 분산 파일 시스템 전체적으로 파일 일관성이 유지되지 않는다.Then, the
따라서, 본 발명의 일실시예에 따른 분산 파일 시스템은 파일 연산 과정 중 복제본 상태 매칭을 통해 시스템 전체의 파일 일관성을 유지할 수 있다. 이하에서, 복제본 상태 매칭을 통해 파일 일관성을 유지하는 과정이 설명된다.Therefore, the distributed file system according to an embodiment of the present invention can maintain the file consistency of the entire system through matching the replica state during the file operation. Hereinafter, a process of maintaining file consistency through replica state matching will be described.
도 4를 참고하면, 클라이언트 서버(101)는 복제본 상태 데이터(401)에 따라 F 상태인 데이터 서버 3(103-3)을 제외한 데이터 서버 1(103-1) 및 데이터 서버 2(103-2)에 복제본을 변경하는 파일 연산 요청을 전송할 수 있다. 이 때, 클라이언트 서버(101)는 복제본 상태 데이터(401)를 파일 연산 요청에 포함시킬 수 있다.Referring to FIG. 4, the
그러면, 데이터 서버 1(103-1)은 복제본 상태 데이터(401)와 복제본 상태 데이터(403)가 매칭하는 지 여부를 판단할 수 있다. 또한, 데이터 서버 2(103-2)도 복제본 상태 데이터(401)와 복제본 상태 데이터(404)가 매칭하는 지 여부를 판단할 수 있다. 그러나, 복제본 상태 데이터(401)인 (N, N, F)와 복제본 상태 데이터(403)인 (N, N, R)은 매칭하지 않기 때문에, 데이터 서버 1(103-1)은 클라이언트 서버(101)의 파일 연산 요청을 거절할 수 있다. 데이터 서버 2(103-2)도 마찬가지다.Then, the
그러면, 클라이언트 서버(101)는 복제본 상태 데이터(401)를 메타데이터 서버(102)에 저장된 복제본 상태 데이터(402)와 동일하도록 업데이트 할 수 있다. 즉, 클라이언트 서버(101)는 복제본 상태 데이터(401)인 (N, N, F)를 복제본 상태 데이터(402)인 (N, N, R)과 동일하도록 변경할 수 있다.The
여기서, 메타데이터 서버(102)는 데이터 서버 1(103-1), 데이터 서버 2(103-2) 및 데이터 서버 3(103-3) 각각이 관리하는 복제본 상태를 복제본 상태 데이터(402)에 주기적으로 반영할 수 있다.Here, the
구체적으로, 메타데이터 서버(102)는 데이터 서버 1(103-1), 데이터 서버 2(103-2) 및 데이터 서버 3(103-3) 각각이 관리하는 복제본 상태가 대체된 서버 상 태를 복제본 상태 데이터(402)로 구성할 수 있다. 이 때, 메타데이터 서버(102)는 데이터 서버들의 상태를 실시간으로 감지하여, 현재 데이터 서버의 상태를 복제본 상태 데이터(402)에 반영할 수 있다.Specifically, the
그 후, 클라이언트 서버(101)는 업데이트된 복제본 상태 데이터(401)인 (N, N, R)를 포함하는 파일 연산 요청을 데이터 서버들(103-1, 103-2, 103-3) 모두에게 다시 전송할 수 있다. 이 때, 데이터 서버들(103-1, 103-2, 103-3)은 복제본 상태 데이터가 매칭하는 지 여부를 다시 판단할 수 있다.The
이 때, 복제본 상태 데이터가 서로 매칭하면 데이터 서버들(103-1, 103-2, 103-3) 각각은 파일 연산을 수행하고, 매칭하지 않는 경우, 또 다시 파일 연산 요청에 대해 거절할 수 있다. 상기 과정은 복제본 상태 데이터가 서로 매칭할 때까지 반복될 수 있다.At this time, if the replica status data match each other, each of the data servers 103-1, 103-2, and 103-3 may perform a file operation, and if it does not match, may reject the file operation request again. . The process can be repeated until the replica status data matches each other.
따라서, 본 발명의 일실시예에 따른 분산 파일 시스템은 파일 연산 과정 중의 복제본 상태 매칭을 통해 시스템 전체의 파일 일관성을 유지할 수 있다.Therefore, the distributed file system according to an embodiment of the present invention can maintain the file consistency of the entire system through matching the replica state during the file operation process.
도 5는 본 발명의 일실시예에 따른 복제본 상태 매칭을 이용한 파일 일관성 관리 방법을 데이터 서버의 입장에서 설명하는 플로우차트이다.5 is a flowchart illustrating a file consistency management method using copy state matching according to an embodiment of the present invention from the perspective of a data server.
도 5에서 설명되는 데이터 서버(103)는 본 발명의 일실시예에 따른 분산 파일 시스템을 구성하는 복수의 데이터 서버(103) 중 어느 하나의 데이터 서버(103)를 의미한다.The
단계 S501에서, 데이터 서버(103)는 복제본 및 제1 복제본 상태 데이터를 저장하고 유지할 수 있다. 이 때, 복제본은 오너 별로 그룹화된 파일의 집합을 의미 할 수 있다. 그리고, 오너는 파일이 속한 디렉토리에 대응될 수 있다.In step S501, the
일례로, 제1 복제본 상태 데이터는 복제본의 복제본 상태 및 상기 복제본과 동일한 복제본을 저장하는 다른 데이터 서버(103)들 각각의 서버 상태를 나타낼 수 있다. 이 때, 서버 상태는 상기 다른 데이터 서버(103)들 각각이 저장하는 복제본에 대한 복제본 상태가 대체된 것을 의미할 수 있다.In one example, the first replica status data may represent a replica status of a replica and a server status of each of the
도 4를 참고하여 예를 들면, 데이터 서버 1(103-1)은 복제본 X에 대한 복제본 상태(N)와 데이터 서버 2(103-2) 및 데이터 서버 3(103-3)의 서버 상태(N)를 나타내는 복제본 상태 데이터(403)를 저장할 수 있다. 이 때, 데이터 서버 2(103-2) 및 데이터 서버 3(103-3)의 서버 상태(N)는 데이터 서버 2(103-2) 및 데이터 서버 3(103-3)이 저장하는 복제본 X의 복제본 상태가 대체된 것을 의미한다.For example, referring to FIG. 4,
단계 S502에서, 데이터 서버(103)는 클라이언트 서버(101)로부터 제2 복제본 상태 데이터를 포함하는 파일 연산 요청을 수신할 수 있다. 제2 복제본 상태 데이터는 클라이언트 서버(101)가 저장하는 복제본 상태 데이터를 의미한다.In step S502, the
단계 S503에서, 데이터 서버(103)는 제1 복제본 상태 데이터와 제2 복제본 상태 데이터가 매칭하는 지 여부를 판단할 수 있다. 이 때, 제1 복제본 상태 데이터와 제2 복제본 상태 데이터가 매칭하는 경우, 단계 S504에서, 데이터 서버(103)는 파일 연산 요청에 응답하여 파일 연산을 수행할 수 있다. In operation S503, the
반면에, 제1 복제본 상태 데이터와 제2 복제본 상태 데이터가 매칭하지 않는 경우, 단계 S505에서, 데이터 서버(103)는 파일 연산 요청을 거절할 수 있다. 단계 S506에서, 데이터 서버(103)는 클라이언트 서버(101)로부터 업데이트된 제2 복 제본 상태 데이터를 포함하는 파일 연산 요청을 재수신할 수 있다.On the other hand, when the first replica state data and the second replica state data do not match, in step S505, the
이 때, 클라이언트 서버(101)는 제2 복제본 상태 데이터를 메타데이터 서버(102)에 저장된 제3 복제본 상태 데이터와 동일하도록 업데이트할 수 있다. 여기서, 제3 복제본 상태 데이터는 메타데이터 서버(102)와 연결된 데이터 서버(103)들의 현재 서버 상태로 구성될 수 있다. 즉, 메타데이터 서버(102)는 데이터 서버(103)들의 최신 상태를 반영하는 제3 복제본 상태 데이터를 저장할 수 있다. 이 때, 메타데이터 서버(102)와 연결된 데이터 서버(103)들의 현재 서버 상태는 상기 데이터 서버(103)들이 저장하고 있는 복제본 상태가 대체된 것일 수 있다.At this time, the
그러면, 다시 단계 S503에서, 데이터 서버(103)는 제1 복제본 상태 데이터와 업데이트된 제2 복제본 상태 데이터가 매칭하는 지 다시 판단할 수 있다. 이 때, 제1 복제본 상태 데이터와 업데이트된 제2 복제본 상태 데이터가 매칭하는 경우, 단계 S504가 진행되고, 그렇지 않는 경우 단계 S505, 단계 506이 반복적으로 수행된다.Then, in step S503, the
도 6은 본 발명의 일실시예에 따른 복제본 상태 매칭을 이용한 파일 일관성 관리 방법을 클라이언트 서버(101)의 입장에서 설명하는 플로우차트이다. 참고로, 도 5에서 설명되는 제1 복제본 상태 데이터와 제2 복제본 상태 데이터는 도 6의 설명과 별개이다.6 is a flowchart illustrating a file consistency management method using copy state matching according to an embodiment of the present invention from the perspective of the
단계 S601에서, 클라이언트 서버(101)는 제1 복제본 상태 데이터를 저장하고 유지할 수 있다.In step S601, the
단계 S602에서, 클라이언트 서버(101)는 제1 복제본 상태 데이터를 포함하는 파인 연산 요청을 데이터 서버(103)에 전송할 수 있다.In operation S602, the
단계 S603에서, 제1 복제본 상태 데이터와 데이터 서버(103)가 저장하고 있는 제2 복제본 상태 데이터가 매칭하는 경우, 클라이언트 서버(101)는 데이터 서버(103)로부터 파일 연산 결과를 수신할 수 있다. 이 때, 데이터 서버(103)는 오너 별 복제본 및 상기 복제본의 상태를 나타내는 제2 복제본 상태 데이터를 저장하고 유지할 수 있다. 이 때, 복제본은 오너 별로 그룹화된 파일의 집합을 의미할 수 있다. 그리고, 오너는 파일이 속한 디렉토리에 대응될 수 있다. 일례로, 데이터 서버(103)는 제1 복제본 상태와 제2 복제본 상태 데이터가 매칭하는 지 여부를 판단할 수 있다. 제1 복제본 상태와 제2 복제본 상태가 매칭하는 경우 데이터 서버(103)는 파일 연산을 수행하여 파일 연산 결과를 클라이언트 서버(101)에 반환할 수 있다. In operation S603, when the first replica status data and the second replica status data stored in the
일례로, 제2 복제본 상태 데이터는 오너 별 복제본의 복제본 상태 및 상기 오너 별 복제본과 동일한 복제본을 저장하는 다른 데이터 서버(103)들 각각의 서버 상태를 나타낼 수 있다. 이 때, 서버 상태는 오너 별 복제본과 동일한 복제본을 저장하는 다른 데이터 서버(103)들 각각이 저장하는 복제본의 복제본 상태가 대체된 것을 의미할 수 있다.In one example, the second replica status data may represent a replica status of a replica per owner and a server status of each of the
단계 S604에서, 제1 복제본 상태 데이터와 제2 복제본 상태 데이터가 매칭하지 않는 경우, 클라이언트 서버(101)는 데이터 서버(103)로부터 파일 연산 요청에 대한 거절 응답을 수신할 수 있다. 그리고, 단계 S605에서, 클라이언트 서버(101)는 제1 복제본 상태 데이터를 업데이트 할 수 있다.In operation S604, when the first replica state data and the second replica state data do not match, the
구체적으로, 단계 S605에서, 클라이언트 서버(101)는 제1 복제본 상태 데이터를 메타데이터 서버(102)에 저장된 제3 복제본 상태 데이터와 동일하도록 업데이트 할 수 있다. 이 때, 제3 복제본 상태 데이터는 메타데이터 서버(102)와 연결된 데이터 서버(103)의 현재 서버 상태로 구성될 수 있다. 즉, 메타데이터 서버(102)는 제3 복제본 상태 데이터를 데이터 서버(103)의 최신 서버 상태로 갱신할 수 있다.In detail, in operation S605, the
그러면, 다시 단계 S602에서, 클라이언트 서버(101)는 업데이트된 제1 복제본 상태 데이터를 포함하는 파일 연산 요청을 데이터 서버(103)에 재전송할 수 있다. 그리고, 제1 복제본 상태 데이터와 제2 복제본 상태 데이터 사이의 매칭 결과에 따라 단계 S603 또는 단계 S604로 진행될 수 있다. 즉, 1 복제본 상태 데이터와 제2 복제본 상태 데이터가 매칭될 때까지 단계 S604와 단계 S605는 반복적으로 수행될 수 있다.Then, in step S602, the
도 7은 본 발명의 일실시예에 따른 복제본 상태 매칭을 이용한 파일 일관성 관리 방법을 수행하는 데이터 서버의 전체 구성을 도시한 블록 다이어그램이다.7 is a block diagram showing the overall configuration of a data server performing a file consistency management method using replica state matching according to an embodiment of the present invention.
도 7을 참고하면, 데이터 서버(103)는 데이터 저장부(701), 파일 연산 요청 수신부(702), 데이터 매칭 판단부(703) 및 파일 연산 수행부(704)를 포함할 수 있다.Referring to FIG. 7, the
데이터 저장부(701)는 복제본 및 제1 복제본 상태 데이터를 저장하고 유지할 수 있다. 이 때, 복제본은 오너 별로 그룹화된 파일의 집합을 의미할 수 있다. 그리고, 오너는 파일이 속한 디렉토리에 대응될 수 있다.The
일례로, 제1 복제본 상태 데이터는 복제본의 복제본 상태 및 복제본과 동일한 복제본을 저장하는 다른 데이터 서버들 각각의 서버 상태를 나타낼 수 있다. 이 때, 서버 상태는 다른 데이터 서버들 각각이 저장하는 복제본에 대한 복제본 상태가 대체된 것을 의미할 수 있다.In one example, the first replica status data may represent the replica status of the replica and the server status of each of the other data servers storing the same replica as the replica. At this time, the server state may mean that the replica state for the replica stored in each of the other data servers is replaced.
파일 연산 요청 수신부(702)는 클라이언트 서버(101)로부터 제2 복제본 상태 데이터를 포함하는 파일 연산 요청을 수신할 수 있다. The file
데이터 매칭 판단부(703)는 제1 복제본 상태 데이터와 제2 복제본 상태 데이터가 매칭하는 지 여부를 판단할 수 있다.The data matching
파일 연산 수행부(704)는 제1 복제본 상태 데이터와 제2 복제본 상태 데이터가 매칭하는 경우, 파일 연산을 수행할 수 있다. 일례로, 파일 연산 수행부(704)는 제1 복제본 상태 데이터와 제2 복제본 상태 데이터가 매칭하지 않는 경우, 클라이언트 서버(101)의 파일 연산 요청을 거절할 수 있다.The file
그러면, 클라이언트 서버(101)는 제2 복제본 상태 데이터를 메타데이터 서버(102)에 저장된 제3 복제본 상태 데이터와 동일하도록 업데이트할 수 있다. 이 때, 제3 복제본 상태 데이터는 메타데이터 서버(102)와 연결된 데이터 서버의 현재 서버 상태로 구성될 수 있다. 그리고, Then, the
일례로, 파일 연산 요청 수신부(702)는 클라이언트 서버(101)로부터 업데이트된 제2 복제본 상태 데이터를 포함하는 파일 연산 요청을 재수신할 수 있다. 이에 따라, 데이터 매칭 판단부(703)는 제1 복제본 상태 데이터와 업데이트된 제2 복제본 상태 데이터가 매칭하는 지 여부를 판단할 수 있다.In one example, the file
도 8은 본 발명의 일실시예에 따른 복제본 상태 매칭을 이용한 파일 일관성 관리 방법을 수행하는 클라이언트 서버(101)의 전체 구성을 도시한 블록 다이어그램이다.8 is a block diagram showing the overall configuration of a
도 8을 참고하면, 클라이언트 서버(101)는 데이터 저장부(801), 파일 연산 요청 전송부(802), 데이터 업데이트부(803) 및 파일 연산 결과 수신부(804)를 포함할 수 있다.Referring to FIG. 8, the
데이터 저장부(801)는 제1 복제본 상태 데이터를 저장하고 유지할 수 있다.The
파일 연산 요청 전송부(802)는 제1 복제본 상태 데이터를 포함하는 파일 연산 요청을 데이터 서버(103)에 전송할 수 있다. 이 때, 파일 연산 내용이 복제본을 변경하는 경우, 파일 연산 요청 전송부(802)는 상기 복제본을 저장하는 모든 데이터 서버(103)에 파일 연산 요청을 전송할 수 있다.The file
일례로, 데이터 서버(103)는 오너 별로 그룹화된 파일의 집합인 복제본 및 상기 복제본의 상태를 나타내는 제2 복제본 상태 데이터를 저장하고 유지할 수 있다. 이 때, 제2 복제본 상태 데이터는 복제본의 복제본 상태 및 복제본과 동일한 복제본을 저장하는 다른 데이터 서버들 각각의 서버 상태를 나타낼 수 있다. 서버 상태는 동일한 복제본을 저장하는 다른 데이터 서버들이 저장하는 복제본 상태가 대체된 것을 의미한다.As an example, the
데이터 업데이트부(803)는 제1 복제본 상태 데이터를 메타데이터 서버에 저장된 제3 복제본 상태 데이터와 동일하도록 업데이트 할 수 있다. 일례로, 데이터 업데이트부(803)는 제1 복제본 상태 데이터와 제2 복제본 상태 데이터가 매칭하지 않는 경우, 제1 복제본 상태 데이터를 제3 복제본 상태 데이터와 동일하도록 업데이트 할 수 있다. 이 때, 제3 복제본 상태 데이터는 메타데이터 서버(103)와 연결된 데이터 서버(103)의 현재 서버 상태로 구성될 수 있다.The data updater 803 may update the first replica state data to be the same as the third replica state data stored in the metadata server. For example, if the first replica state data and the second replica state data do not match, the
파일 연산 결과 수신부(804)는 제1 복제본 상태 데이터와 데이터 서버(103)가 저장하고 있는 제2 복제본 상태 데이터가 매칭하는 경우, 데이터 서버(803)로부터 파일 연산 결과를 수신할 수 있다. 이 때, 파일 연산 결과 수신부(804)는 제1 복제본 상태 데이터와 제2 복제본 상태 데이터가 매칭하지 않는 경우, 데이터 서버(103)로부터 파일 연산 요청에 대한 거절 응답을 수신할 수 있다.The file
앞에서 이미 언급했듯이, 데이터 업데이트부(803)는 거절 응답에 따라 제1 복제본 상태 데이터를 메타데이터 서버(102)의 제3 복제본 상태 데이터와 동일하도록 업데이트할 수 있다. 그러면, 파일 연산 요청 전송부(801)는 업데이트된 제1 복제본 상태 데이터를 포함하는 파일 연산 요청을 데이터 서버(103)에 재전송할 수 있다.As mentioned above, the
또한 본 발명의 일실시예에 따른 복제본 상태 매칭을 이용한 파일 일관성 관리 방법은 다양한 컴퓨터로 구현되는 동작을 수행하기 위한 프로그램 명령을 포함하는 컴퓨터 판독 가능 매체를 포함한다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.In addition, the method of managing file consistency using copy state matching according to an embodiment of the present invention includes a computer readable medium including program instructions for performing various computer-implemented operations. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. The media may be program instructions that are specially designed and constructed for the present invention or may be available to those skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이의 균등 또는 등가적 변형 모두는 본 발명 사상의 범주에 속한다고 할 것이다.As described above, the present invention has been described by way of limited embodiments and drawings, but the present invention is not limited to the above-described embodiments, which can be variously modified and modified by those skilled in the art to which the present invention pertains. Modifications are possible. Accordingly, the spirit of the present invention should be understood only by the claims set forth below, and all equivalent or equivalent modifications thereof will belong to the scope of the present invention.
도 1은 본 발명의 일실시예에 따른 분산 파일 시스템의 전체 구성을 도시한 도면이다.1 is a view showing the overall configuration of a distributed file system according to an embodiment of the present invention.
도 2는 본 발명의 일실시예에 따라 디렉토리에 기초한 오너 단위로 파일을 그룹화하고, 오너의 복제본이 데이터 서버에 저장되는 일례를 도시한 도면이다.2 is a diagram illustrating an example in which files are grouped in units of owners based on directories according to an embodiment of the present invention, and copies of owners are stored in a data server.
도 3은 본 발명의 일실시예에 따라 복제본 상태가 전환되는 과정을 도시한 도면이다.3 is a diagram illustrating a process of switching a replica state according to an embodiment of the present invention.
도 4는 본 발명의 일실시예에 따른 분산 파일 시스템이 복제본 상태 매칭을 이용하여 파일 연산을 수행하는 과정을 설명하기 위한 도면이다.4 is a diagram illustrating a process of performing a file operation by using a copy state matching in a distributed file system according to an exemplary embodiment of the present invention.
도 5는 본 발명의 일실시예에 따른 복제본 상태 매칭을 이용한 파일 일관성 관리 방법을 데이터 서버의 입장에서 설명하는 플로우차트이다.5 is a flowchart illustrating a file consistency management method using copy state matching according to an embodiment of the present invention from the perspective of a data server.
도 6은 본 발명의 일실시예에 따른 복제본 상태 매칭을 이용한 파일 일관성 관리 방법을 클라이언트 서버의 입장에서 설명하는 플로우차트이다.6 is a flowchart illustrating a file consistency management method using replica state matching according to an embodiment of the present invention from the perspective of a client server.
도 7은 본 발명의 일실시예에 따른 복제본 상태 매칭을 이용한 파일 일관성 관리 방법을 수행하는 데이터 서버의 전체 구성을 도시한 블록 다이어그램이다.7 is a block diagram showing the overall configuration of a data server performing a file consistency management method using replica state matching according to an embodiment of the present invention.
도 8은 본 발명의 일실시예에 따른 복제본 상태 매칭을 이용한 파일 일관성 관리 방법을 수행하는 클라이언트 서버의 전체 구성을 도시한 블록 다이어그램이다.8 is a block diagram showing the overall configuration of a client server performing a file consistency management method using replica state matching according to an embodiment of the present invention.
<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>
101: 클라이언트 서버101: client server
102: 메타데이터 서버102: metadata server
103: 데이터 서버103: data server
Claims (32)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080052529A KR100988107B1 (en) | 2008-06-04 | 2008-06-04 | Distributed file system and file consistency management method using replica state matching |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080052529A KR100988107B1 (en) | 2008-06-04 | 2008-06-04 | Distributed file system and file consistency management method using replica state matching |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090126444A KR20090126444A (en) | 2009-12-09 |
KR100988107B1 true KR100988107B1 (en) | 2010-10-18 |
Family
ID=41687566
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080052529A KR100988107B1 (en) | 2008-06-04 | 2008-06-04 | Distributed file system and file consistency management method using replica state matching |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100988107B1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06139208A (en) * | 1992-10-30 | 1994-05-20 | Toshiba Corp | Shared data control system |
KR20020065977A (en) * | 2001-02-08 | 2002-08-14 | 주식회사 루틸러스테크놀러지 | Method for data backup to distributed file group virtually aggregated |
KR20090059859A (en) * | 2007-12-07 | 2009-06-11 | 한국전자통신연구원 | Method for asynchronous data replication in distributed file system and system thereof |
KR20090065131A (en) * | 2007-12-17 | 2009-06-22 | 한국전자통신연구원 | Distributed file system and method for guaranteeing consistency of metadata |
-
2008
- 2008-06-04 KR KR1020080052529A patent/KR100988107B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06139208A (en) * | 1992-10-30 | 1994-05-20 | Toshiba Corp | Shared data control system |
KR20020065977A (en) * | 2001-02-08 | 2002-08-14 | 주식회사 루틸러스테크놀러지 | Method for data backup to distributed file group virtually aggregated |
KR20090059859A (en) * | 2007-12-07 | 2009-06-11 | 한국전자통신연구원 | Method for asynchronous data replication in distributed file system and system thereof |
KR20090065131A (en) * | 2007-12-17 | 2009-06-22 | 한국전자통신연구원 | Distributed file system and method for guaranteeing consistency of metadata |
Also Published As
Publication number | Publication date |
---|---|
KR20090126444A (en) | 2009-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109074306B (en) | Hybrid garbage collection in a distributed storage system | |
US9697092B2 (en) | File-based cluster-to-cluster replication recovery | |
KR100983300B1 (en) | Recovery from failures within data processing systems | |
US9081841B2 (en) | Asynchronous distributed garbage collection for replicated storage clusters | |
CN107870829B (en) | Distributed data recovery method, server, related equipment and system | |
US20090204650A1 (en) | File Deduplication using Copy-on-Write Storage Tiers | |
US20180101558A1 (en) | Log-shipping data replication with early log record fetching | |
JP2016524750A5 (en) | ||
CN102349047A (en) | Data insertion system | |
US10095415B2 (en) | Performance during playback of logged data storage operations | |
JP5292351B2 (en) | Message queue management system, lock server, message queue management method, and message queue management program | |
CN104794119A (en) | Middleware message storage and transmission method and system | |
KR100922584B1 (en) | Distributed object-sharing system and method thereof | |
CN113010496A (en) | Data migration method, device, equipment and storage medium | |
Stutsman | Durability and crash recovery in distributed in-memory storage systems | |
JP5292350B2 (en) | Message queue management system, lock server, message queue management method, and message queue management program | |
US20240028486A1 (en) | Use of cluster-level redundancy within a cluster of a distributed storage management system to address node-level errors | |
CN106951443B (en) | Method, equipment and system for synchronizing copies based on distributed system | |
CN113946471A (en) | Distributed file-level backup method and system based on object storage | |
US11194501B2 (en) | Standby copies withstand cascading fails | |
KR100988107B1 (en) | Distributed file system and file consistency management method using replica state matching | |
KR100994342B1 (en) | Distributed file system and method for replica-based fault treatment | |
KR101009149B1 (en) | Distributed file system and method for operating file using owner-based file grouping | |
US11645333B1 (en) | Garbage collection integrated with physical file verification | |
US11983080B2 (en) | Use of cluster-level redundancy within a cluster of a distributed storage management system to address node-level errors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
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: 20130926 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20140925 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20151002 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20181008 Year of fee payment: 9 |