1 |
1
데이터를 분산하여 저장하도록 구성되는 복수의 데이터 서버 장치; 및상기 분산하여 저장되는 데이터와 관련되는 메타데이터를 분산하여 저장하도록 구성되는 복수의 메타데이터 서버 장치를 포함하되,상기 복수의 메타데이터 서버 장치 중에서 선택된 메타데이터 서버 장치는:클라이언트 장치로부터 수신되는 리네임 연산(Rename Operation)의 요청에 포함되는 소스(Source)의 부모 디렉토리(Parent Directory)의 완전 경로(Full Path) 및 타겟(Target)의 부모 디렉토리의 완전 경로에 관한 정보에 기초하여, 상기 리네임 연산의 수행에 의해 현수 디렉토리(Dangling Directory)가 발생하는지 여부를 검사하고;상기 현수 디렉토리가 발생하지 않는 것으로 판별되는 경우, 상기 리네임 연산이 수행되도록, 상기 분산하여 저장되는 메타데이터로 지시되는(Directed) 트랜잭션(Transaction)들을 처리하도록 구성되고,상기 현수 디렉토리가 발생하는지 여부의 검사는 상기 트랜잭션들을 처리하기 위한 트랜잭션 구간 이전에 수행되는 분산 스토리지 서버
|
2 |
2
제 1 항에 있어서,상기 선택된 메타데이터 서버 장치는 상기 리네임 연산의 상기 요청을 배타적으로 처리하도록 더 구성되고, 상기 선택된 메타데이터 서버 장치 외의 나머지 메타데이터 서버 장치들은 상기 리네임 연산의 상기 요청을 처리하지 않도록 구성되는 분산 스토리지 서버
|
3 |
3
제 1 항에 있어서,상기 선택된 메타데이터 서버 장치는 상기 분산하여 저장되는 데이터를 위한 네임스페이스(Namespace)의 루트 디렉토리(Root Directory)와 관련되는 메타데이터를 저장하도록 더 구성되는 분산 스토리지 서버
|
4 |
4
제 1 항에 있어서,상기 복수의 메타데이터 서버 장치는 상기 소스와 관련되는 제 1 메타데이터 서버 장치 및 상기 타겟과 관련되는 제 2 메타데이터 서버 장치를 포함하고,상기 현수 디렉토리가 발생하지 않는 것으로 판별되는 경우, 상기 선택된 메타데이터 서버 장치는 상기 클라이언트 장치를 위해, 상기 트랜잭션들의 처리의 결과로서 상기 제 1 및 제 2 메타데이터 서버 장치들로 지시되는 응답을 출력하도록 더 구성되고,상기 제 1 및 제 2 메타데이터 서버 장치들은, 상기 리네임 연산이 수행되도록, 상기 출력된 응답에 기초하여 상기 클라이언트 장치에 의해 액세스되는 분산 스토리지 서버
|
5 |
5
제 1 항에 있어서,상기 현수 디렉토리가 발생하는 것으로 판별되는 경우, 상기 선택된 메타데이터 서버 장치는 상기 클라이언트 장치를 위해 상기 리네임 연산의 거부(Rejection)를 나타내는 응답을 출력하도록 더 구성되는 분산 스토리지 서버
|
6 |
6
분산 스토리지 서버에 분산하여 저장되는 데이터와 관련되는 메타데이터를 저장하도록 구성되는 스토리지;리네임 연산(Rename Operation)의 요청에 응답하여, 상기 리네임 연산의 수행에 의해 현수 디렉토리(Dangling Directory)가 발생하는지 여부를 검사하도록 구성되는 연산 관리기; 및상기 현수 디렉토리가 발생하지 않는 것으로 판별되는 경우, 상기 리네임 연산이 수행되도록, 적어도 상기 메타데이터로 지시되는(Directed) 트랜잭션(Transaction)들을 처리하도록 구성되는 트랜잭션 처리기를 포함하되,상기 현수 디렉토리가 발생하는지 여부의 검사는 상기 트랜잭션들을 처리하기 위한 트랜잭션 구간 이전에 수행되고,상기 리네임 연산의 상기 요청은 상기 리네임 연산의 소스(Source)의 부모 디렉토리(Parent Directory)의 제 1 완전 경로(Full Path), 및 상기 리네임 연산의 타겟(Target)의 부모 디렉토리의 제 2 완전 경로에 관한 정보를 포함하고,상기 제 1 완전 경로는 루트 디렉토리(Root Directory)부터 상기 소스의 상기 부모 디렉토리까지의 완전 경로를 포함하고,상기 제 2 완전 경로는 상기 루트 디렉토리부터 상기 타겟의 상기 부모 디렉토리까지의 완전 경로를 포함하고, 그리고상기 연산 관리기는, 상기 현수 디렉토리가 발생하는지 여부를 검사하기 위해, 상기 제 2 완전 경로가 상기 제 1 완전 경로를 포함하는지 여부를 검사하도록 구성되는 서버 장치
|
7 |
7
삭제
|
8 |
8
삭제
|
9 |
9
제 6 항에 있어서,상기 연산 관리기는, 상기 제 2 완전 경로가 상기 제 1 완전 경로를 포함하는지 여부를 검사하기 위해, 상기 제 2 완전 경로에 포함되는 부분 경로(Partial Path)가 상기 제 1 완전 경로와 동일한지 여부를 검사하도록 더 구성되고,상기 부분 경로는 상기 루트 디렉토리부터 기준 디렉토리까지의 디렉토리 경로에 대응하고,상기 기준 디렉토리는 상기 제 2 완전 경로 상에서 상기 루트 디렉토리부터 상기 타겟의 상기 부모 디렉토리까지 한 레벨의 디렉토리씩 하향(Downward)하여 변경되는 서버 장치
|
10 |
10
제 6 항에 있어서,상기 제 2 완전 경로는 제 1 디렉토리, 및 상기 제 1 디렉토리의 자식인 제 2 디렉토리를 포함하고,상기 연산 관리기는, 상기 현수 디렉토리가 발생하는지 여부를 검사하는 동안, 상기 제 1 디렉토리의 하위 레벨에 상기 제 2 디렉토리가 실제로 존재하는지 여부를 검사하도록 더 구성되는 서버 장치
|
11 |
11
제 10 항에 있어서,상기 연산 관리기는, 상기 제 1 디렉토리의 하위 레벨에 상기 제 2 디렉토리가 실제로 존재하는지 여부를 검사하기 위해, 상기 제 1 및 제 2 디렉토리들과 관련되는 메타데이터를 저장하는 다른 서버 장치와 통신하도록 더 구성되는 서버 장치
|
12 |
12
제 6 항에 있어서,상기 연산 관리기는:상기 리네임 연산의 상기 요청에 응답하여, 리네임 배타적 잠금(Rename-exclusive Lock)을 설정하고;상기 트랜잭션들의 처리의 완료에 응답하여, 상기 리네임 배타적 잠금을 해제하도록 더 구성되는 서버 장치
|
13 |
13
제 12 항에 있어서,상기 연산 관리기는 상기 리네임 배타적 잠금의 설정에 응답하여, 상기 리네임 연산 외의 다른 리네임 연산들의 처리를 보류하도록 더 구성되는 서버 장치
|
14 |
14
서버 장치를 동작시키는 방법에 있어서,상기 서버 장치의 통신 장치를 통해, 리네임 연산(Rename Operation)의 제 1 요청을 수신하는 단계;상기 서버 장치의 프로세서에 의해, 상기 제 1 요청에 응답하여 리네임 배타적 잠금(Rename-exclusive Lock)을 설정하는 단계;상기 리네임 배타적 잠금을 설정한 후, 상기 프로세서에 의해, 상기 제 1 요청에 포함되는 정보에 기초하여, 상기 리네임 연산의 수행에 의해 현수 디렉토리(Dangling Directory)가 발생하는지 여부를 검사하는 단계;상기 현수 디렉토리가 발생하지 않는 것으로 판별되는 경우, 상기 프로세서에 의해, 상기 리네임 연산의 소스(Source) 및 타겟(Target)과 관련되는 제 1 잠금들을 획득하는 단계;상기 제 1 잠금들을 획득한 후, 상기 프로세서에 의해, 상기 소스 및 상기 타겟에 대해 상기 리네임 연산이 수행되도록, 상기 서버 장치에 저장된 메타데이터로 지시되는(Directed) 트랜잭션(Transaction)들을 처리하는 단계;상기 통신 장치를 통해, 리네임 연산과 상이한 유형의 연산의 제 2 요청을 수신하는 단계; 및상기 프로세서에 의해, 상기 상이한 유형의 연산과 관련되는 제 2 잠금들을 획득하는 단계를 포함하는 방법
|
15 |
15
삭제
|
16 |
16
제 14 항에 있어서,상기 제 1 및 제 2 잠금들을 획득하는 단계에서, 부모 레벨의 디렉토리에 대한 잠금이 자식 레벨의 디렉토리에 대한 잠금을 획득하기 전에 획득되는 방법
|
17 |
17
제 14 항에 있어서,상기 제 1 및 제 2 잠금들을 획득하는 단계에서, 제 1 디렉토리에 대한 잠금이 상기 제 1 디렉토리보다 늦게 생성된 제 2 디렉토리에 대한 잠금을 획득하기 전에 획득되는 방법
|
18 |
18
제 14 항에 있어서,상기 통신 장치를 통해, 리네임 연산의 제 3 요청을 수신하는 단계;상기 프로세서에 의해, 상기 트랜잭션들의 처리의 완료에 응답하여 상기 리네임 배타적 잠금을 해제하는 단계; 및상기 리네임 배타적 잠금을 해제한 후, 상기 프로세서에 의해, 상기 제 3 요청과 관련되는 동작을 수행하는 단계를 더 포함하는 방법
|
19 |
19
제 14 항에 있어서,상기 프로세서에 의해, 상기 트랜잭션들의 처리의 완료에 응답하여 상기 리네임 배타적 잠금을 해제하는 단계; 및상기 통신 장치를 통해, 상기 트랜잭션들의 처리의 결과를 출력하는 단계를 더 포함하는 방법
|