1 |
1
복제 처리 장치에서 복수의 데이터 서버에 저장된 데이터 블록을 복제하는 방법으로서,상기 복수의 데이터 서버 중 적어도 두 개의 서버에서 상기 데이터 블록의 복제를 수행할 수 있는지 판단하는 단계,상기 데이터 블록의 복제를 수행할 수 있다면, 상기 적어도 두 개의 데이터 서버 중, 상기 데이터 블록이 저장되어 있는 제1 데이터 서버와 상기 데이터 블록이 저장되어 있지 않은 제2 데이터 서버를 선택하는 단계,상기 제1 데이터 서버로 상기 데이터 블록의 복제 요청을 전송하는 단계, 그리고상기 제1 데이터 서버로부터 응답 메시지를 수신하는 단계를 포함하고,상기 판단하는 단계는,상기 복제 처리 장치의 복제 요청 큐에 대기하고 있는 상기 복제 요청의 개수를 복제 가용 세마포어와 비교하는 단계, 그리고상기 복제 요청의 개수가 상기 복제 가용 세마포어보다 적다면 상기 데이터 블록의 복제를 수행할 수 있는 것으로 판단하는 단계를 포함하는, 데이터 블록 복제 방법
|
2 |
2
삭제
|
3 |
3
제1항에서,상기 복제 가용 세마포어는,상기 데이터 서버 사이의 병렬성 값과 상기 데이터 서버 내의 병렬성 값을 이용하여 계산되는 데이터 블록 복제 방법
|
4 |
4
제3항에서,상기 데이터 서버 사이의 병렬성 값은 온라인(on-line) 상태인 데이터 서버의 개수를 2로 나눈 값인 데이터 블록 복제 방법
|
5 |
5
제1항에서,상기 데이터 블록의 위치 정보를 포함하고 있는 파일 메타데이터를 검색하여, 상기 데이터 블록을 복제할 것인지 결정하는 단계를 더 포함하는 데이터 블록 복제 방법
|
6 |
6
제5항에서,상기 결정하는 단계는,상기 파일 메타데이터에 포함된 복수의 데이터 블록의 개수가 상기 복제 처리 장치에 설정된 목표 사본 개수보다 적을 때 상기 데이터 블록의 복제를 결정하는 데이터 블록 복제 방법
|
7 |
7
제1항에서,상기 선택하는 단계는,상기 제1 데이터 서버 및 상기 제2 데이터 서버의 서버 자원 세마포어를 통해 상기 제1 데이터 서버 및 상기 제2 데이터 서버가 각각 상기 데이터 블록의 복제 작업을 수행할 수 있는지 판단하는 단계, 그리고상기 제1 데이터 서버 및 상기 제2 데이터 서버에 각각 서버 자원 세마포어가 존재하는 경우 상기 제1 데이터 서버 및 상기 제2 데이터 서버를 선택하는 단계를 포함하는 데이터 블록 복제 방법
|
8 |
8
제1항에서,상기 전송하는 단계는,상기 제1 데이터 서버로 상기 복제 요청의 요청 식별자 및 상기 데이터 블록의 식별자를 전송하는 단계를 포함하는 데이터 블록 복제 방법
|
9 |
9
제1항에서,상기 수신하는 단계는,상기 제1 데이터 서버에 저장되어 있던 상기 데이터 블록이 상기 제2 데이터 서버에 성공적으로 복제되었을 때 복제 요청에 대한 성공 알림이 포함된 응답 메시지를 수신하는 단계를 포함하는 데이터 블록 복제 방법
|
10 |
10
제1항에서,상기 복제 요청을 전송하는 단계 이후에,상기 복제 요청에 대한 타임 아웃을 시작하는 단계를 더 포함하고,상기 응답 메시지를 수신하는 단계는,상기 응답 메시지를 기초로 상기 타임 아웃(time-out)을 종료할 지 결정하는 단계를 포함하는 데이터 블록 복제 방법
|
11 |
11
제10항에서,상기 타임 아웃을 종료할 지 결정하는 단계는,상기 응답 메시지에 진행 중(inprogress) 메시지가 포함되어 있고, 상기 복제 요청에 대한 타임 아웃이 종료 되기 전에 상기 응답 메시지를 수신했다면, 상기 타임 아웃을 다시 시작하는 단계를 더 포함하는 데이터 블록 복제 방법
|
12 |
12
제10항에서,상기 타임 아웃을 종료할 지 결정하는 단계는,상기 응답 메시지에 진행 중 메시지가 포함되어 있지 않거나, 상기 복제 요청에 대한 타임 아웃이 종료 된 후에 상기 응답 메시지를 수신했다면, 상기 응답 메시지에 포함된 상기 복제 요청에 대한 식별자를 인식하여 상기 복제 요청 큐에서 상기 복제 요청을 삭제하는 단계를 포함하는 데이터 블록 복제 방법
|
13 |
13
데이터 블록을 저장하고 있는 데이터 서버에서 데이터 블록을 복제하는 방법으로서,복제 처리 장치로부터 네트워크를 통해 상기 데이터 블록의 제1 복제 요청을 수신하는 단계,상기 데이터 블록 중 제1 부분을 미리 설정된 버퍼 크기만큼 읽어 들이는 단계,상기 제1 부분 중 읽어 들인 부분을 상기 데이터 블록이 저장되어 있지 않은 제1 데이터 서버로 전송하는 단계,상기 복제 요청에 대한 진행 중 메시지를 상기 복제 처리 장치로 전송하는 단계, 그리고상기 복제 처리 장치로부터 상기 진행 중 메시지에 대한 응답으로 상기 데이터 블록의 제2 복제 요청을 수신하는 단계를 포함하는 데이터 블록 복제 방법
|
14 |
14
제13항에서,상기 제1 부분 중 읽어 들인 부분을 전송하는 단계 이후에,상기 데이터 블록 중 제2 부분을 미리 설정된 버퍼 크기만큼 읽어 들이는 단계,상기 제2 부분 중 읽어 들인 부분을 상기 제1 데이터 서버로 전송하는 단계, 그리고상기 진행 중 메시지를 상기 복제 처리 장치로 전송하는 단계를 더 포함하는 데이터 블록 복제 방법
|
15 |
15
제13항에서,상기 진행 중 메시지를 전송하는 단계 이후에,미리 설정된 슬립(sleep) 시간 동안 슬립하는 단계, 그리고상기 슬립 시간이 경과한 후 상기 제1 부분의 나머지 부분을 상기 버퍼 크기만큼 읽어 들이는 단계, 그리고상기 나머지 부분 중 읽어 들인 부분을 상기 제1 데이터 서버로 전송하는 단계를 더 포함하는 데이터 블록 복제 방법
|
16 |
16
제14항에서,상기 진행 중 메시지를 전송하는 단계 이후에,미리 설정된 슬립(sleep) 시간 동안 슬립하는 단계, 그리고상기 슬립 시간이 경과한 후 상기 제2 부분의 나머지 부분을 상기 버퍼 크기만큼 읽어 들이는 단계, 그리고상기 나머지 부분 중 읽어 들인 부분을 상기 제1 데이터 서버로 전송하는 단계를 더 포함하는 데이터 블록 복제 방법
|
17 |
17
제15항 또는 제16항에서,상기 슬립 시간은 상기 복제 처리 장치로부터 할당된 복제 대역폭, 상기 데이터 서버의 서버 최대 대역폭, 그리고 상기 버퍼 크기를 이용하여 미리 설정되는 데이터 블록 복제 방법
|