4

"master"리눅스 시스템의 localy 마운트 된 hdd 파일 시스템에서 똑같이 실행되는 프로세스의 가상 주소 공간에 1 TB 데이터 파일 mmapped 읽기/쓰기가 있다고 가정 해보십시오. "마스터"시스템.리눅스에서 머신간에 큰 mmaped 데이터 파일 공유하기

"마스터"시스템에 기가비트 스위치를 통해 연결된 20 개의 전용 "슬레이브"Linux 서버가 있습니다. 이 "슬레이브"서버에서이 1TB에 대한 임의의 읽기 액세스 권한을 프로세스 주소 공간에 읽기 전용으로 mmaping하여 부여하려고합니다.

제 질문은 데이터 시스템을 마스터 시스템에서 슬레이브 시스템으로 동기화하는 가장 효율적인 방법은 무엇입니까? (예를 들어, NFS를 통해 파일을 마운트 한 다음 거기에서 mmap 할 수 있습니까? 예, 이것이 최선의 해결책입니까? 아니요, 솔루션은 무엇입니까?)

답변

2

저는 최근 직장에서 (이것은 파일 크기가 현저히 작음). 나는 NFS가 읽기에는 괜찮을 것이라고 생각하지만 동시 쓰기에 문제가 발생할 수 있습니다. 단 하나의 "작가"만 있으면 아이디어가 합리적으로 잘 작동해야합니다. 데이터 파일이 구조화 된 경우 일부 설명의 분산 캐시를 사용하고 중복성을 위해 클러스터에 분산 된 데이터의 여러 복사본을 허용하는 것이 좋습니다.

결국 우리는 SAN 및 클러스터 된 파일 시스템 솔루션 (우리의 경우 Symantec VCS이지만 일반 클러스터 파일 시스템이라면)으로갔습니다. 우리가이 작업을 수행 한 이유는 순수한 NFS를 사용할 때 필요한 성능을 얻을 수 없었기 때문입니다. 선택한 클러스터 된 파일 시스템은 mmap 및 분산 캐시를 올바르게 지원해야합니다.

관련 문제