분산 파일 시스템 (Distributed File System)
쉽게 풀면
분산 파일 시스템은 데이터를 한 대의 컴퓨터가 아니라 여러 대의 컴퓨터에 나누어 저장하면서도, 사용자에게는 마치 하나의 큰 저장장치처럼 보이게 해주는 기술이다. 이렇게 하면 한 서버가 담을 수 없는 아주 큰 데이터도 저장할 수 있고, 여러 대가 동시에 데이터의 각기 다른 부분을 읽고 써서 속도도 빨라지며, 일부 서버가 고장 나도 데이터를 복구할 수 있다. 대규모 데이터셋을 다루는 클러스터 환경에서 널리 쓰이며, HDFS(하둡 분산 파일 시스템)가 대표적인 예이다.
왜 중요한가
분산 파일 시스템은 빅데이터 처리와 대규모 머신러닝 학습 파이프라인의 기반 인프라이기 때문에, 데이터 공학·시스템 분야 논문에서 실험 환경을 설명할 때 빠지지 않고 등장합니다. 단일 서버로는 저장 용량과 입출력 처리량에 한계가 있는 대규모 데이터셋을 다루려면, 여러 서버에 걸쳐 데이터를 분산 저장하고 병렬로 접근하는 구조가 필수적입니다. 또한 노드 장애 시에도 데이터를 잃지 않도록 복제(replication) 전략을 함께 제공하기 때문에 시스템의 안정성과 확장성을 논의하는 연구에서 핵심적으로 다뤄집니다.
논문에서는 이렇게 쓰입니다
데이터를 여러 서버에 분산 저장해 두어, 학습에 참여하는 여러 컴퓨터가 동시에 서로 다른 부분을 읽을 수 있게 했다는 뜻이다.
생물정보학 분야에서도 대용량 시퀀싱 데이터를 다룰 때 분산 파일 시스템을 활용해 처리 속도를 높인다는 것을 보여주는 예문입니다.
연구 인프라 운영 측면에서 분산 파일 시스템이 데이터 공유와 장애 복원력을 동시에 제공한다는 점을 설명하는 예문입니다.
조금 더 깊게 보면
대부분의 분산 파일 시스템은 파일을 고정 크기의 블록(HDFS의 경우 흔히 수십~수백 메가바이트 단위)으로 나누어 여러 노드에 분산 저장하고, 메타데이터(파일이 어느 블록으로 나뉘어 어디에 있는지)를 관리하는 별도의 네임노드 또는 메타데이터 서버를 둡니다. 데이터 유실을 막기 위해 각 블록을 여러 노드에 복제해 저장하는 복제 계수(replication factor) 개념이 사용되며, 이 값이 클수록 내결함성은 높아지지만 저장 공간 사용량도 늘어납니다. 이러한 구조 때문에 대량의 순차적 읽기·쓰기에는 강하지만, 작은 파일을 아주 많이 다루거나 잦은 임의 수정이 필요한 워크로드에는 상대적으로 불리하다는 특성도 함께 논의됩니다.
주의할 점
분산 파일 시스템은 오브젝트 스토리지와 목적이 비슷해 보이지만, 내부적으로 파일과 디렉터리 구조를 유지한다는 점에서 차이가 있다.