본문 바로가기
IT/하둡

HDFS(Hadoop Distributed File System) 기초

by 최고영회 2014. 3. 4.
728x90
반응형
SMALL

기존에도 DAS, NAS, SAN과 같은 대용량 파일시스템이 있었으며, HDFS 또한 이러한 대용량 파일 시스템과 유사하다.

가장 큰 차이점은 저사양 서버를 이용해 스토리지를 구성할 수 있다는 것이다.

HDFS 을 이용하면 수백대의 저사양 웹서버급 서버를 하나의 스토리지처럼 사용할 수 있다. 

HDFS에 저장하는 데이터는 물리적으로는 분산된 서버의 로컬 디스크에 저장되어 있지만 파일의 읽기/저장과 같은 제어는 HDFS 에서 제공하는 API 를 

이용해서 처리 된다.


HDFS 가 기존의 대용량 파일 시스템을 완전히 대체하는 것은 아니다.

DBMS처럼 고성능, 고가용성이 필요한 경우에는 SAN 을

안정적인 파일 저장이 필요한 경우에는 NAS 를 사용한다.

또한 전자상거래처럼 트랜잭션이 중요한 경우는 HDFS이 적합하지 않으며, 대규모 데이터를 저장하거나 배치러 처리를 하는 경우에 HDFS 을 이용한다.


HDFS은 다음과 같은 네 가지 목표를 가지고 설계 되었다.

1. 장애복구

 - HDFS은 장애를 빠른 시간에 감지하고, 대처할 수 있게 설계 되어 있다. HDFS은 데이터를 저장하면, 복제 데이터도 함께 저장해서 데이터 유실을 

   방지한다. 또한 분산 서버 간 주기적인 상태 체크를 통해 장애를 인지하고 대처할 수 있게 도와 준다.

2. 스트리밍 방식의 데이터 접근

 - HDFS 은 기존 파일 시스템들과 달리 배치 작업에 적합하도록 설계 되어 있고, 낮은 데이터 접근 지연 시간보다는 높은 데이터 처리량에 중점을 둔다.

3. 대용량 데이터 저장

 - HDFS은 하나의 파일이 GB, TB 이상의 사이즈로 저장될 수 있게 설계 되었다. 또한 하나의 인스턴스에는 수백만 개 이상의 파일을 지원한다.

4. 데이터 무결성

 - HDFS 은 한번 저장한 데이터는 더는 수정할 수 없고, 읽기만 가능하게 해서 데이터 무결성을 유지한다.

 - 하둡 2.0 알파버전 부터는 HDFS 에 저장된 파일에 append 가 제공 된다.



728x90
반응형
LIST

'IT > 하둡' 카테고리의 다른 글

HDFS(Hadoop Distributed File System) 아키텍처  (0) 2014.03.05
Hadoop Test (STS + Maven)  (0) 2014.03.04
Haddop 설치  (0) 2014.03.04
Hadoop Echosystem  (0) 2014.03.04
Hadoop(하둡)  (0) 2014.03.04