병렬, 분산, 기존 파일 시스템

병렬, 분산, 기존 파일 시스템

나는 아주 기본적인 수준에서 이 세 가지 파일 시스템의 차이점을 이해하려고 노력하고 있습니다.

  • 분산 파일 시스템: HDFS
  • 병렬 FS: 광택
  • 기존 파일 시스템: ext4/ext3/NTFS/FAT 등

이 세 가지 파일 시스템 간의 기본 개념적 차이점이 무엇인지 알고 싶습니다. 내 지식의 대부분은 전통적인 파일 시스템, 즉 ext3/4에 있습니다.슈퍼블록, 인덱스노드 등.

  • MPI 기반 프로세스(np=8)가 파일 시스템에서 파일을 읽거나 파일 A에 쓰려고 시도하는 경우 이러한 컨텍스트에서 파일 액세스 메커니즘은 어떻게 다릅니까?
  • 이 환경에서는 파일이 어떻게 저장됩니까? 즉, 파일 A가 여러 디스크로 분할되거나 파일 A가 저장소에 중복 복사본을 갖게 됩니다. 또는 더 간단한 시나리오는 여러 사용자가 Word 문서를 열고 저장하는 것입니다. 그렇다면 이 3가지 시나리오에서 쓰기 저장/동기화의 차이점은 무엇입니까?

지금까지 나는 몇 가지 개념을 형성했습니다.

  • 로컬 파일 시스템에서는 스토리지가 서버/노드에 물리적으로 설치됩니다.
  • 병렬 파일 시스템에서는 디스크가 여러 노드에 걸쳐 공유(마운트)됩니다.
  • 분산 파일 시스템에서는 여러 노드에 여러 로컬 저장소가 있지만 모두 일부 메커니즘을 통해 동기화됩니다.

A, B가 워크스테이션이고 C, D가 디스크인 경우:

  1. C가물리적A에 설치되고 ext4로 포맷되면 전통적인 파일 시스템입니다.
  2. C가 스토리지 서버 Z에 물리적으로 설치되어 있고 C가 A와 B에 네트워크 설치(NFS)인 경우 이는 클러스터링된 FS입니다.
  3. C가 A에 물리적으로 설치되고 네트워크가 B에 설치되고, D가 B에 물리적으로 설치되고 네트워크가 A에 설치된 경우. 그런 다음 분산 FS가 생성됩니다.

하지만몇 가지 답변메타데이터와 데이터가 병렬 파일 시스템에서 별도의 서버에 있다고 나와 있는데, 여기서도 분산 파일 시스템에서 메타데이터가 어떻게 관리되는지 알고 싶습니다.

답변1

"병렬 파일 시스템"이라는 용어인 AFAICS는 BS를 마케팅하는 것입니다. 이는 여러 프로세스가 동시에 파일에 쓸 수 있다는 점을 이해하여 파일 시스템 드라이버가 구축되었으므로 파일이 다음을 사용하여 다른 파일에 연속적으로 기록된다는 의미입니다. 적절한 블록 할당 전략 디스크의 개별 부분을 함께 조각화하는 대신 파일로 정리하십시오. 이는 지난 20년 동안 UNIX 시스템에서 거의 표준 관행이었습니다.

클러스터 파일 시스템은 SAN의 저장을 위해 설계된 파일 시스템으로, "디스크"(실제로는 SAN 디스크 인클로저의 하드웨어에 구현된 RAID 배열일 수 있음)가 공유 SCSI 연결을 통해 여러 호스트에 직접 액세스할 수 있습니다. ) 파일 시스템 드라이버가 서로 간섭하지 않도록 특별한 주의를 기울이기 때문에 여러 호스트에서 동시에 설치할 수 있습니다. 이는 NFS 또는 CIFS를 사용하여 네트워크를 통해 일반 파일 시스템을 공유하는 것과 완전히 다릅니다.

분산 파일 시스템은 네트워크 파일 시스템과 비슷하지만 내부적으로는많은 종류의서버는 사용자에게 거의 투명한 방식으로 부하를 분산합니다. 그 예로 afs가 있습니다.

답변2

NAS및 사이의 차이점이 SAN제거되었습니다. 현재 논의가 진행 중입니다. 나는 그들의 편이고 그들 사이에는 차이가 없습니다.

설치 방법은 더 이상 다르지 않습니다. 기능적 이점에 초점을 맞추는 것은 기존 파일 시스템이 분산되어 있습니까, 아니면 클러스터되어 있습니까?와 같은 질문을 하면 더 쉽게 이해할 수 있습니다. 분산 및 클러스터 파일 시스템에 대해서도 동일한 질문을 할 수 있으며 분산 클러스터 파일 시스템이 있습니다.

파일 시스템을 분산 또는 클러스터링하는 것이 중요하므로 짧은 이름이 복잡해지지 않도록 할 수 있습니다. 클러스터형 시스템에서 기대하는 것은 세션 공유와 동기화입니다. 이것은 현재 클러스터 파일 시스템에서 얻는 것이 아니며 CAP 제한으로 인해 더 비동기적입니다.

관련 정보