2 분 소요

개요

파일 시스템은 운영체제가 데이터를 저장, 관리, 검색할 수 있도록 하는 체계적인 방식입니다. 파일이 어떻게 저장되는지 이해하면 보다 효율적인 데이터 관리가 가능합니다.

블록과 섹터

  • 블록: 파일 시스템에서 데이터를 저장하는 논리적 최소 단위 (보통 4KB)
  • 섹터: 하드 디스크의 물리적 최소 저장 단위 (보통 512Byte)
  • 예시: 2KB 크기의 파일을 저장할 경우, 4KB 블록 하나가 사용되며 나머지 2KB 공간이 낭비될 수 있습니다. 이를 내부 단편화라고 합니다.

파일 할당 방식

  1. 연속 할당 (Contiguous Allocation)
    1. 데이터를 연속된 블록에 저장하는 방식
    2. 장점: 빠른 데이터 접근 속도
    3. 단점: 파일 크기 변경이 어렵고 외부 단편화 발생 가능
      1. 외부 단편화란? 남아있는 여유 공간은 충분하지만, 연속된 공간이 아니라 여러 조각으로 나뉘어 있어 새로운 파일을 저장할 수 없는 상태를 의미합니다.
  2. 연결 할당 (Linked Allocation)
    1. 각 블록이 다음 블록의 주소를 저장하는 방식
    2. 장점: 유연한 저장 구조, 외부 단편화 감소
    3. 단점: 임의 접근 속도가 느리고, 포인터 손상 시 데이터 유실 가능
  3. 인덱스 할당 (Indexed Allocation)
    1. 파일의 블록 위치를 저장하는 인덱스 블록을 사용
    2. 장점: 빠른 임의 접근, 외부 단편화 없음
    3. 단점: 인덱스 블록을 위한 추가 공간 필요

예시: FAT (File Allocation Table) 는 연결 할당 방식이며, NTFS 및 ext4는 인덱스 할당 방식을 사용합니다.

파일 시스템의 구성 요소

  • 메타데이터: 파일의 이름, 크기, 생성 및 수정시간, 권한 등 파일에 대한 정보를 담고 있는 데이터입니다.
  • 파일 할당 테이블: 파일이 저장된 물리적 위치를 추적하는 데이터 구조입니다. (예: FAT)
  • 디렉토리 구조: 파일들이 어떻게 계층적으로 조직되어 있는지 나타냅니다.
  • 저널링: 시스템 오류 발생 시 데이터 복구를 돕기 위해 변경 내역을 기록하는 기능 (일부 파일 시스템에서 사용)

대표적인 파일 시스템 종류

  • FAT (File Allocation Table): 플래시 드라이브 등 소형 저장장치에 적합한 단순한 파일 시스템
  • NTFS (New Technology File System): 보안, 압축, 대용량 파일 지원이 가능한 Windows 기본 파일 시스템
  • ext 계열 (ext2, ext3, ext4): 리눅스에서 사용되는 파일 시스템으로, ext3/ext4는 저널링(Journaling) 기능 지원
  • HFS+ / APFS: macOS에서 사용하는 파일 시스템으로, 성능과 보안이 강화됨

파일 스토리지 방식 비교

스토리지 방식 설명 대표적인 예시
블록 스토리지 (Block Storage) 데이터를 블록 단위로 저장 AWS EBS, HDD, SSD, SAN (Storage Area Network)
파일 스토리지 (File Storage) 데이터를 파일 단위로 저장하고 계층 구조로 관리 AWS EFS, NAS (Network Attached Storage), Windows 파일 서버
객체 스토리지 (Object Storage) 파일을 개별 객체로 저장하며, 메타데이터를 포함 AWS S3, Google Cloud Storage

AWS에서 제공하는 스토리지 서비스

1. S3 (Simple Storage Service)

  • 객체 스토리지 기반
  • 인터넷을 통한 대규모 데이터 저장 및 공유에 최적화
  • 비용 효율적이며 높은 내구성 제공

2. EBS (Elastic Block Store)

  • 블록 스토리지 기반
  • EC2 인스턴스에 연결되어 사용되며 고성능 데이터베이스, 애플리케이션 실행에 적합

3. EFS (Elastic File System)

  • 파일 스토리지 기반
  • 다수의 EC2 인스턴스에서 동시에 접근 가능하여 공유 스토리지로 적합

결론

파일 시스템은 데이터 저장 및 관리의 핵심 요소입니다. 각 파일 시스템과 스토리지 방식은 특정 환경과 목적에 따라 최적화되어 있으므로, 적절한 스토리지를 선택하는 것이 중요합니다.

댓글남기기