File System에 대하여 알아보자
발췌 : http://jmlab.tistory.com/17
File System의 종류
File System 이라고 하면 원래 OS에서 제공하는 로컬 파일 시스템들이 대부분이 었다.
하지만 현재에는 하나의 컴퓨터만 사용하는 로컬 파일 시스템과 여러 컴퓨터에서 네트웍을 통해 접속하여 사용하는 공유 파일 시스템이 두가지가 있으며
공유파일 시스템은 컴퓨터에 마치 자기에게 연결된 물리적 디스크 처럼 로컬 파일 시스템을 적용해 사용할 수 있도록 Block 기반의 Disk를 제공하는 SAN 방식과
로컬 파일 시스템과 상관없이 컴퓨터는 그저 자기가 파일을 저장하는 공간(보통 폴더)에 연결하여 그 곳을 마치 자신의 물리적 디스크에있는 폴더안의 공간처럼 사용하는 NAS 방식으로 나뉜다.
참고자료
http://en.wikipedia.org/wiki/List_of_file_systems
Disk file system (로컬 파일 시스템)
그냥 잘알려진 FAT, NTFS, EXT3, EXT4 등이다. OS 종류만큼 많은 종류가 존재한다.
그러나 보통 커야 수십 TB 정도의 디스크 볼륨을 생성할 수 있다.
File systems with built in fault-tolerance (로컬 파일 시스템)
대용량의 디스크 크기를 지원하면서도 성능도 뛰어나고 많은 부가 기능을 제공하는 로컬 파일 시스템이다.
바로 이다 대표적으로 ZFS와 Btrfs 가 있는데 ZFS는 Sun에서 Solaris용으로 많이 안정되었고 Btrfs는 Oracle에서 밀고 있고 최근 RHEL6 커널에 포함 된 것으로 이제 시작 단계이다.
(Oracle의 Sun인수로 ZFS의 기술이 Btrfs에 많이 흡수되지 않을까 한다.) 둘다 하드웨어에서 제공하는 Raid를 사용하지 않고 File System의 소프트웨어 Raid 를 사용하는 특징을 가진다.
Shared disk file systems
두가 지 방법이 있는데 모두 클라이언트에서는 자신의 로컬 디스크와 같이 디스크로 제공됨
보통 64 또는 128노드의 까지 묶을 수 있음 즉, 스토리지 크기에 한계가 있음
SAN file system – SAN에서 Disk Block을 공급 받아 이를 묶어서 Disk Block을 여러 클라이언트 에서 공유하게 함
cluster file system – 여러 스토리지로 사용될 서버들을 묶어서 여러 클라이언트에서 공유하게 함 (대표적으로 Global File System, GFS 가 있음)
Distributed file system (분산 파일 시스템)
분산파일 시스템은 network file system이라고도 하는데 이는 보통의 TCP/IP 이더넷 네트워크에 연결된 파일 서버에 연결하여 파일 공유 서비스(보통 지정된 폴더 가 공유됨)를 제공하는 시스템이기 때문이다.
잘 알려진 network file system은 Network File System(NFS), Server Message Block (SMB) = Common Internet File System(CIFS) 등이 있다.
또한 네트워크로 분산되어 있는 서버들을 클러스터링하여 Virtual File System으로 만들어 클라이언트 서버들에게 제공하는 분산 파일 시스템들이 존재하며 이들은 결국 NFS와 같은 형태의 파일 시스템들을 제공한다.
Distributed fault-tolerant file systems
분산 장애극복 파일 시스템들은 파일단위로 공유된 영역을 서버들 또는 클라이언트에 복제(replication)하여 공유된 폴더가 장애가 발생하여도 대체할 수 있는 방안을 제공한다.
Coda, Moose File System 등이 있다.
Distributed parallel file systems
분산 병렬 파일 시스템은 주로 고성능을 내기위해 Stripe 방식으로 여러 서버들을 묶어 네트워크로 파일 시스템을 제공한다.
주로 HPC에서 사용하는 시스템이다.
Distributed parallel fault-tolerant file systems
분산 병렬 장애 극복 파일 시스템은 이름 그대로 여러 서버들에 분산되어 파일이 저장되고 이들이 서버 내에서 복제되어 장애에 대비한다.
HPC 뿐만 아니라 고가용성 클러스터에서도 사용된다.
즉 최근에 클라우드 환경이 대두되면서 서버 스토리지 추가시 선형적인 성능향상이 가능한 Distributed parallel fault-tolerant file systems 이 가장 적절한 파일 시스템의 대안으로 보인다.