SlideShare a Scribd company logo
1 of 25
Download to read offline
하둡 분산 파일 시스템
HDFS
아꿈사
차례
3.1 HDFS설계
3.2 HDFS개념
3.3 명령행 인터페이스
3.4 하둡 파일시스템
3.5 자바 인터페이스
3.6 데이터 흐름
3.7 데이터 이관을 위한 플룸과 스쿱
3.8 distcp 병렬복사
3.9 하둡 아카이브
차례
3.1 HDFS설계
3.2 HDFS개념
3.3 명령행 인터페이스
3.4 하둡 파일시스템
3.5 자바 인터페이스
3.6 데이터 흐름
3.7 데이터 이관을 위한 플룸과 스쿱
3.8 distcp 병렬복사
3.9 하둡 아카이브
3.1 HDFS설계
- HDFS(Hadoop Distributed FileSystem)
- 대용량 파일 시스템
DAS(Direct-Attached Storage) 서버에 직접 연결된 스토리지
ex) 외장하드
NAS(Network-Attached Storage) 파일써버, 별도의 운영체제위에 구동
첨부파일, 이미지 저장
SAN(Storage Area Network) 수십,수백대의 SAN스토리지를 데이터 서
버에 연결해서 총괄적으로 관리해주는 네
트워크
DBMS와 같이 안정적이고 빠른접근이 필요
한 데이터를 저장하는데 적합
3.1 HDFS기초
- 저사양 서버를 이용해 스토리지 구성이 가능
- 여러대를 묶어 하나의 스토리지 처럼 사용
- 파일저장,읽기 제어는 API통해서
- 고성능, 고가용성 -> SAN
- 안정적인 파일 저장 -> NAS
- 대규모 데이터 저장,배치 처리 -> HDFS
3.1 HDFS 설계의 특징
목적 : 범용 하드웨어로 구성된 클러스터에서 실
행되고 데이터 액세스 패턴을 스트리밍 방식으
로 지원하여 매우 커다란 파일을 저장할 수 있도
록 설계된 파일 시스템
3.1 HDFS 설계의 특징
1. 매우 커다란 파일
- 수백 MB, GB, TB파일을 저장
참고. FAT32=4GB NTFS=4~64GB
2. 스트리밍 방식, 데이터 엑세스
The utility allows you to create and run
Map/Reduce jobs with any executable or script
as the mapper and/or the reducer
3.1 HDFS 설계의 특징
3. 장애복구
- 빠른 장애 감지, 데이터 복제
4. 데이터 무결성
- 입력 변경 제한, 한번 저장한 데이터 수정 불가
(0.20)
3.1 HDFS 설계의 특징
5. 많은 수의 작은 파일
- 메타데이터 메모리 관리,
관리하는 파일의 수 증가 -> 메타데이터 증가 ->
자원낭비
3.2 HDFS개념
- 블록이란..?
한 번에 읽고 쓸 수 있는 데이터의 최대량
linux/win = 512bytes ; Block
HDFS =64M ; Chunk
…. 왜 이렇게 큰가..?
3.2 HDFS개념
HDFS블록은 왜 이렇게 큰가..?
- 탐색의 비용 최소화
- 탐색비용 최소 -> 데이터 전송에 집중
- 맵리듀스의 테스크 단위도 블록
- 계산하기 쉽다.
- 복제를 효율적으로 수행
블록 구조 파일 시스템
320M 파일
블록 구조 파일 시스템
1 2 3 4 5
320M 파일
블록 구조 파일 시스템
1 2 3 4 5
320M 파일
1
3
4
2
3
4
1
3
5
2
4
5
1
2
5
블록 구조 파일 시스템
1 2 3 4 5
320M 파일
1
3
4
2
3
4
1
3
5
2
4
5
1
2
5
블록 구조 파일 시스템
- 블록단위(64MB)로 나눈다
- 3개의 복제본을 생성
- 여러 곳에 저장
네임노드와 데이터 노드
- HDFS는 마스터-슬레이브 아키텍처로 구성
- 마스터(네임노드)
- 슬레이브(데이터 노드)
- 네임노드는 HDFS의 메타데이터 관리
- 클라이언트가 데이터 노드에 접근할 수 있게
- linux/win같은 계층형 파일 시스템
- 주기적으로 데이터 노드는 네임노드에
heartbeat/blockreport를 전송
네임노드와 데이터 노드
보조네임노드과 고가용성
- 네임노드는 메타데이터를 관리하기 위해
Editlog,FsImage
Editlog : 메타데이터의 변화를 기억,용량 제한X
네임노드의 로컬 시스템에 파일로 저장
FsImage : 네임스페이스와 파일에 대한 블록 매
핑 정보를 저장. 일종의 스냅샷
*네임스페이스(디렉토리명,파일명,상태정보)
보조네임노드과 고가용성
<로그동작 방식>
1. 네임노드가 구동되면 로컬에 저장된 FsImage와 editlog파
일을 조회
2. editlog파일에 있는 내용을 토대로 메모리에 올라와 있는
FsImage와 를 갱신
3. 메모리에 올라와있는 FsImage와 를 로컬 파일에 있는 파
일 시스템 이미지 파일에 적용
4. editlog파일을 초기화
보조네임노드과 고가용성
<단점>
- editlog파일의 크기는 무제한으로 증가
- editlog파일이 너무 크다면 FsImage갱신 시,
오랜 시간 소요
이러한 문제 점들을 해결하기 위해
보조네임노드를 사용
보조네임노드과 고가용성
HDFS에서의 파일 저장
HDFS에서의 파일 읽기

More Related Content

What's hot

Hadoop Introduction (1.0)
Hadoop Introduction (1.0)Hadoop Introduction (1.0)
Hadoop Introduction (1.0)Keeyong Han
 
Hive 입문 발표 자료
Hive 입문 발표 자료Hive 입문 발표 자료
Hive 입문 발표 자료beom kyun choi
 
Distributed Programming Framework, hadoop
Distributed Programming Framework, hadoopDistributed Programming Framework, hadoop
Distributed Programming Framework, hadoopLGU+
 
하둡 좋은약이지만 만병통치약은 아니다
하둡 좋은약이지만 만병통치약은 아니다하둡 좋은약이지만 만병통치약은 아니다
하둡 좋은약이지만 만병통치약은 아니다민철 정민철
 
Hadoop설명
Hadoop설명Hadoop설명
Hadoop설명Ji Hoon Lee
 
하둡 타입과 포맷
하둡 타입과 포맷하둡 타입과 포맷
하둡 타입과 포맷진호 박
 
Hadoop 제주대
Hadoop 제주대Hadoop 제주대
Hadoop 제주대DaeHeon Oh
 
Hadoop과 SQL-on-Hadoop (A short intro to Hadoop and SQL-on-Hadoop)
Hadoop과 SQL-on-Hadoop (A short intro to Hadoop and SQL-on-Hadoop)Hadoop과 SQL-on-Hadoop (A short intro to Hadoop and SQL-on-Hadoop)
Hadoop과 SQL-on-Hadoop (A short intro to Hadoop and SQL-on-Hadoop)Matthew (정재화)
 
서울 하둡 사용자 모임 발표자료
서울 하둡 사용자 모임 발표자료서울 하둡 사용자 모임 발표자료
서울 하둡 사용자 모임 발표자료Teddy Choi
 
하둡 설치(의사분산모드)
하둡 설치(의사분산모드)하둡 설치(의사분산모드)
하둡 설치(의사분산모드)Kwangyoung Jeon
 
하둡완벽가이드 Ch9
하둡완벽가이드 Ch9하둡완벽가이드 Ch9
하둡완벽가이드 Ch9HyeonSeok Choi
 
Tajo and SQL-on-Hadoop in Tech Planet 2013
Tajo and SQL-on-Hadoop in Tech Planet 2013Tajo and SQL-on-Hadoop in Tech Planet 2013
Tajo and SQL-on-Hadoop in Tech Planet 2013Gruter
 
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for HadoopSeungYong Baek
 
Expanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoExpanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoMatthew (정재화)
 

What's hot (20)

Hadoop Introduction (1.0)
Hadoop Introduction (1.0)Hadoop Introduction (1.0)
Hadoop Introduction (1.0)
 
Hive 입문 발표 자료
Hive 입문 발표 자료Hive 입문 발표 자료
Hive 입문 발표 자료
 
Distributed Programming Framework, hadoop
Distributed Programming Framework, hadoopDistributed Programming Framework, hadoop
Distributed Programming Framework, hadoop
 
하둡 좋은약이지만 만병통치약은 아니다
하둡 좋은약이지만 만병통치약은 아니다하둡 좋은약이지만 만병통치약은 아니다
하둡 좋은약이지만 만병통치약은 아니다
 
하둡관리
하둡관리하둡관리
하둡관리
 
Hadoop설명
Hadoop설명Hadoop설명
Hadoop설명
 
하둡 타입과 포맷
하둡 타입과 포맷하둡 타입과 포맷
하둡 타입과 포맷
 
Hadoop 제주대
Hadoop 제주대Hadoop 제주대
Hadoop 제주대
 
Hadoop과 SQL-on-Hadoop (A short intro to Hadoop and SQL-on-Hadoop)
Hadoop과 SQL-on-Hadoop (A short intro to Hadoop and SQL-on-Hadoop)Hadoop과 SQL-on-Hadoop (A short intro to Hadoop and SQL-on-Hadoop)
Hadoop과 SQL-on-Hadoop (A short intro to Hadoop and SQL-on-Hadoop)
 
HDFS Overview
HDFS OverviewHDFS Overview
HDFS Overview
 
Apache hive
Apache hiveApache hive
Apache hive
 
Hadoop overview
Hadoop overviewHadoop overview
Hadoop overview
 
서울 하둡 사용자 모임 발표자료
서울 하둡 사용자 모임 발표자료서울 하둡 사용자 모임 발표자료
서울 하둡 사용자 모임 발표자료
 
하둡 설치(의사분산모드)
하둡 설치(의사분산모드)하둡 설치(의사분산모드)
하둡 설치(의사분산모드)
 
Hive begins
Hive beginsHive begins
Hive begins
 
하둡완벽가이드 Ch9
하둡완벽가이드 Ch9하둡완벽가이드 Ch9
하둡완벽가이드 Ch9
 
Tajo and SQL-on-Hadoop in Tech Planet 2013
Tajo and SQL-on-Hadoop in Tech Planet 2013Tajo and SQL-on-Hadoop in Tech Planet 2013
Tajo and SQL-on-Hadoop in Tech Planet 2013
 
Hadoop administration
Hadoop administrationHadoop administration
Hadoop administration
 
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
하둡 알아보기(Learn about Hadoop basic), NetApp FAS NFS Connector for Hadoop
 
Expanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with TajoExpanding Your Data Warehouse with Tajo
Expanding Your Data Warehouse with Tajo
 

Similar to Hdfs

Hadoop Overview 1
Hadoop Overview 1Hadoop Overview 1
Hadoop Overview 1Kay Kim
 
log-monitoring-architecture.pdf
log-monitoring-architecture.pdflog-monitoring-architecture.pdf
log-monitoring-architecture.pdfSungkyun Kim
 
Glusterfs 파일시스템 구성_및 운영가이드_v2.0
Glusterfs 파일시스템 구성_및 운영가이드_v2.0Glusterfs 파일시스템 구성_및 운영가이드_v2.0
Glusterfs 파일시스템 구성_및 운영가이드_v2.0sprdd
 
Glusterfs 구성제안 및_운영가이드_v2.0
Glusterfs 구성제안 및_운영가이드_v2.0Glusterfs 구성제안 및_운영가이드_v2.0
Glusterfs 구성제안 및_운영가이드_v2.0sprdd
 
윤지환 Diskless
윤지환 Diskless윤지환 Diskless
윤지환 DisklessJiHwan Yoon
 
Glusterfs 구성제안서 v1.0
Glusterfs 구성제안서 v1.0Glusterfs 구성제안서 v1.0
Glusterfs 구성제안서 v1.0sprdd
 
Glusterfs 구성제안 v1.0
Glusterfs 구성제안 v1.0Glusterfs 구성제안 v1.0
Glusterfs 구성제안 v1.0sprdd
 
Glusterfs 구성제안서 v1.0
Glusterfs 구성제안서 v1.0Glusterfs 구성제안서 v1.0
Glusterfs 구성제안서 v1.0sprdd
 
Ipfs : InterPlanetary File System
Ipfs : InterPlanetary File SystemIpfs : InterPlanetary File System
Ipfs : InterPlanetary File System동현 강
 
[211] HBase 기반 검색 데이터 저장소 (공개용)
[211] HBase 기반 검색 데이터 저장소 (공개용)[211] HBase 기반 검색 데이터 저장소 (공개용)
[211] HBase 기반 검색 데이터 저장소 (공개용)NAVER D2
 
Object storage의 이해와 활용
Object storage의 이해와 활용Object storage의 이해와 활용
Object storage의 이해와 활용Seoro Kim
 
Glusterfs 소개 v1.0_난공불락세미나
Glusterfs 소개 v1.0_난공불락세미나Glusterfs 소개 v1.0_난공불락세미나
Glusterfs 소개 v1.0_난공불락세미나sprdd
 
[오픈소스컨설팅]Glster FS간단소개
[오픈소스컨설팅]Glster FS간단소개[오픈소스컨설팅]Glster FS간단소개
[오픈소스컨설팅]Glster FS간단소개Ji-Woong Choi
 
Hadoop distributed file system rev3
Hadoop distributed file system rev3Hadoop distributed file system rev3
Hadoop distributed file system rev3Sung-jae Park
 
Memcached의 확장성 개선
Memcached의 확장성 개선Memcached의 확장성 개선
Memcached의 확장성 개선NAVER D2
 
SoftLayer 서비스 설명 3차 - 스토리지
SoftLayer 서비스 설명 3차 - 스토리지SoftLayer 서비스 설명 3차 - 스토리지
SoftLayer 서비스 설명 3차 - 스토리지IBM Korea
 
포렌식 세미나.pptx
포렌식 세미나.pptx포렌식 세미나.pptx
포렌식 세미나.pptxdalonn
 

Similar to Hdfs (20)

Hadoop Overview 1
Hadoop Overview 1Hadoop Overview 1
Hadoop Overview 1
 
log-monitoring-architecture.pdf
log-monitoring-architecture.pdflog-monitoring-architecture.pdf
log-monitoring-architecture.pdf
 
Glusterfs 파일시스템 구성_및 운영가이드_v2.0
Glusterfs 파일시스템 구성_및 운영가이드_v2.0Glusterfs 파일시스템 구성_및 운영가이드_v2.0
Glusterfs 파일시스템 구성_및 운영가이드_v2.0
 
Glusterfs 구성제안 및_운영가이드_v2.0
Glusterfs 구성제안 및_운영가이드_v2.0Glusterfs 구성제안 및_운영가이드_v2.0
Glusterfs 구성제안 및_운영가이드_v2.0
 
윤지환 Diskless
윤지환 Diskless윤지환 Diskless
윤지환 Diskless
 
Glusterfs 구성제안서 v1.0
Glusterfs 구성제안서 v1.0Glusterfs 구성제안서 v1.0
Glusterfs 구성제안서 v1.0
 
Glusterfs 구성제안 v1.0
Glusterfs 구성제안 v1.0Glusterfs 구성제안 v1.0
Glusterfs 구성제안 v1.0
 
Glusterfs 구성제안서 v1.0
Glusterfs 구성제안서 v1.0Glusterfs 구성제안서 v1.0
Glusterfs 구성제안서 v1.0
 
저장장치
저장장치저장장치
저장장치
 
Ipfs : InterPlanetary File System
Ipfs : InterPlanetary File SystemIpfs : InterPlanetary File System
Ipfs : InterPlanetary File System
 
[211] HBase 기반 검색 데이터 저장소 (공개용)
[211] HBase 기반 검색 데이터 저장소 (공개용)[211] HBase 기반 검색 데이터 저장소 (공개용)
[211] HBase 기반 검색 데이터 저장소 (공개용)
 
Object storage의 이해와 활용
Object storage의 이해와 활용Object storage의 이해와 활용
Object storage의 이해와 활용
 
Gfs Kyu
Gfs KyuGfs Kyu
Gfs Kyu
 
Glusterfs 소개 v1.0_난공불락세미나
Glusterfs 소개 v1.0_난공불락세미나Glusterfs 소개 v1.0_난공불락세미나
Glusterfs 소개 v1.0_난공불락세미나
 
[오픈소스컨설팅]Glster FS간단소개
[오픈소스컨설팅]Glster FS간단소개[오픈소스컨설팅]Glster FS간단소개
[오픈소스컨설팅]Glster FS간단소개
 
Hadoop distributed file system rev3
Hadoop distributed file system rev3Hadoop distributed file system rev3
Hadoop distributed file system rev3
 
Memcached의 확장성 개선
Memcached의 확장성 개선Memcached의 확장성 개선
Memcached의 확장성 개선
 
SoftLayer 서비스 설명 3차 - 스토리지
SoftLayer 서비스 설명 3차 - 스토리지SoftLayer 서비스 설명 3차 - 스토리지
SoftLayer 서비스 설명 3차 - 스토리지
 
Git
Git Git
Git
 
포렌식 세미나.pptx
포렌식 세미나.pptx포렌식 세미나.pptx
포렌식 세미나.pptx
 

More from Mungyu Choi

HTTP 완벽가이드 - ch15. 엔터티, 인코딩 (Entities and Encoding)
HTTP 완벽가이드 - ch15. 엔터티, 인코딩 (Entities and Encoding)HTTP 완벽가이드 - ch15. 엔터티, 인코딩 (Entities and Encoding)
HTTP 완벽가이드 - ch15. 엔터티, 인코딩 (Entities and Encoding)Mungyu Choi
 
HTTP 완벽가이드 - ch5. web server
HTTP 완벽가이드 - ch5. web serverHTTP 완벽가이드 - ch5. web server
HTTP 완벽가이드 - ch5. web serverMungyu Choi
 
learning spark - Chatper8. Tuning and Debugging
learning spark - Chatper8. Tuning and Debugginglearning spark - Chatper8. Tuning and Debugging
learning spark - Chatper8. Tuning and DebuggingMungyu Choi
 
Chapter3 - learning spark
Chapter3 - learning sparkChapter3 - learning spark
Chapter3 - learning sparkMungyu Choi
 
Elasticsearch server Chapter5
Elasticsearch server Chapter5Elasticsearch server Chapter5
Elasticsearch server Chapter5Mungyu Choi
 
JVM과 톰캣 튜닝
JVM과 톰캣 튜닝JVM과 톰캣 튜닝
JVM과 톰캣 튜닝Mungyu Choi
 
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝Mungyu Choi
 
Nodejs 트래픽 라우팅, 파일 서비스, 미들웨어
Nodejs 트래픽 라우팅, 파일 서비스, 미들웨어Nodejs 트래픽 라우팅, 파일 서비스, 미들웨어
Nodejs 트래픽 라우팅, 파일 서비스, 미들웨어Mungyu Choi
 
nodejs websocket & SOCKET.IO
nodejs websocket & SOCKET.IOnodejs websocket & SOCKET.IO
nodejs websocket & SOCKET.IOMungyu Choi
 
정렬(버블정렬,선택정렬,삽입정렬)
정렬(버블정렬,선택정렬,삽입정렬)정렬(버블정렬,선택정렬,삽입정렬)
정렬(버블정렬,선택정렬,삽입정렬)Mungyu Choi
 
c++ API디자인 ch9. 발표자료
c++ API디자인 ch9. 발표자료c++ API디자인 ch9. 발표자료
c++ API디자인 ch9. 발표자료Mungyu Choi
 
Ch11. server infra
Ch11. server infraCh11. server infra
Ch11. server infraMungyu Choi
 
대규모 서비스를 지탱하는 기술 ch6
대규모 서비스를 지탱하는 기술 ch6대규모 서비스를 지탱하는 기술 ch6
대규모 서비스를 지탱하는 기술 ch6Mungyu Choi
 
4.1 단일호스트의 부하
4.1 단일호스트의 부하4.1 단일호스트의 부하
4.1 단일호스트의 부하Mungyu Choi
 

More from Mungyu Choi (17)

HTTP 완벽가이드 - ch15. 엔터티, 인코딩 (Entities and Encoding)
HTTP 완벽가이드 - ch15. 엔터티, 인코딩 (Entities and Encoding)HTTP 완벽가이드 - ch15. 엔터티, 인코딩 (Entities and Encoding)
HTTP 완벽가이드 - ch15. 엔터티, 인코딩 (Entities and Encoding)
 
HTTP 완벽가이드 - ch5. web server
HTTP 완벽가이드 - ch5. web serverHTTP 완벽가이드 - ch5. web server
HTTP 완벽가이드 - ch5. web server
 
learning spark - Chatper8. Tuning and Debugging
learning spark - Chatper8. Tuning and Debugginglearning spark - Chatper8. Tuning and Debugging
learning spark - Chatper8. Tuning and Debugging
 
Chapter3 - learning spark
Chapter3 - learning sparkChapter3 - learning spark
Chapter3 - learning spark
 
Elasticsearch server Chapter5
Elasticsearch server Chapter5Elasticsearch server Chapter5
Elasticsearch server Chapter5
 
JVM과 톰캣 튜닝
JVM과 톰캣 튜닝JVM과 톰캣 튜닝
JVM과 톰캣 튜닝
 
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝
조대협의 서버 사이드 - 대용량 아키텍처와 성능튜닝
 
Nodejs 트래픽 라우팅, 파일 서비스, 미들웨어
Nodejs 트래픽 라우팅, 파일 서비스, 미들웨어Nodejs 트래픽 라우팅, 파일 서비스, 미들웨어
Nodejs 트래픽 라우팅, 파일 서비스, 미들웨어
 
nodejs websocket & SOCKET.IO
nodejs websocket & SOCKET.IOnodejs websocket & SOCKET.IO
nodejs websocket & SOCKET.IO
 
정렬(버블정렬,선택정렬,삽입정렬)
정렬(버블정렬,선택정렬,삽입정렬)정렬(버블정렬,선택정렬,삽입정렬)
정렬(버블정렬,선택정렬,삽입정렬)
 
c++ API디자인 ch9. 발표자료
c++ API디자인 ch9. 발표자료c++ API디자인 ch9. 발표자료
c++ API디자인 ch9. 발표자료
 
b+tree
b+treeb+tree
b+tree
 
A tour of go
A tour of goA tour of go
A tour of go
 
Ch11. server infra
Ch11. server infraCh11. server infra
Ch11. server infra
 
대규모 서비스를 지탱하는 기술 ch6
대규모 서비스를 지탱하는 기술 ch6대규모 서비스를 지탱하는 기술 ch6
대규모 서비스를 지탱하는 기술 ch6
 
4.1 단일호스트의 부하
4.1 단일호스트의 부하4.1 단일호스트의 부하
4.1 단일호스트의 부하
 
Chap4_2
Chap4_2Chap4_2
Chap4_2
 

Hdfs

  • 1. 하둡 분산 파일 시스템 HDFS 아꿈사
  • 2. 차례 3.1 HDFS설계 3.2 HDFS개념 3.3 명령행 인터페이스 3.4 하둡 파일시스템 3.5 자바 인터페이스 3.6 데이터 흐름 3.7 데이터 이관을 위한 플룸과 스쿱 3.8 distcp 병렬복사 3.9 하둡 아카이브
  • 3. 차례 3.1 HDFS설계 3.2 HDFS개념 3.3 명령행 인터페이스 3.4 하둡 파일시스템 3.5 자바 인터페이스 3.6 데이터 흐름 3.7 데이터 이관을 위한 플룸과 스쿱 3.8 distcp 병렬복사 3.9 하둡 아카이브
  • 4. 3.1 HDFS설계 - HDFS(Hadoop Distributed FileSystem) - 대용량 파일 시스템 DAS(Direct-Attached Storage) 서버에 직접 연결된 스토리지 ex) 외장하드 NAS(Network-Attached Storage) 파일써버, 별도의 운영체제위에 구동 첨부파일, 이미지 저장 SAN(Storage Area Network) 수십,수백대의 SAN스토리지를 데이터 서 버에 연결해서 총괄적으로 관리해주는 네 트워크 DBMS와 같이 안정적이고 빠른접근이 필요 한 데이터를 저장하는데 적합
  • 5. 3.1 HDFS기초 - 저사양 서버를 이용해 스토리지 구성이 가능 - 여러대를 묶어 하나의 스토리지 처럼 사용 - 파일저장,읽기 제어는 API통해서 - 고성능, 고가용성 -> SAN - 안정적인 파일 저장 -> NAS - 대규모 데이터 저장,배치 처리 -> HDFS
  • 6. 3.1 HDFS 설계의 특징 목적 : 범용 하드웨어로 구성된 클러스터에서 실 행되고 데이터 액세스 패턴을 스트리밍 방식으 로 지원하여 매우 커다란 파일을 저장할 수 있도 록 설계된 파일 시스템
  • 7. 3.1 HDFS 설계의 특징 1. 매우 커다란 파일 - 수백 MB, GB, TB파일을 저장 참고. FAT32=4GB NTFS=4~64GB 2. 스트리밍 방식, 데이터 엑세스 The utility allows you to create and run Map/Reduce jobs with any executable or script as the mapper and/or the reducer
  • 8. 3.1 HDFS 설계의 특징 3. 장애복구 - 빠른 장애 감지, 데이터 복제 4. 데이터 무결성 - 입력 변경 제한, 한번 저장한 데이터 수정 불가 (0.20)
  • 9. 3.1 HDFS 설계의 특징 5. 많은 수의 작은 파일 - 메타데이터 메모리 관리, 관리하는 파일의 수 증가 -> 메타데이터 증가 -> 자원낭비
  • 10. 3.2 HDFS개념 - 블록이란..? 한 번에 읽고 쓸 수 있는 데이터의 최대량 linux/win = 512bytes ; Block HDFS =64M ; Chunk …. 왜 이렇게 큰가..?
  • 11. 3.2 HDFS개념 HDFS블록은 왜 이렇게 큰가..? - 탐색의 비용 최소화 - 탐색비용 최소 -> 데이터 전송에 집중 - 맵리듀스의 테스크 단위도 블록 - 계산하기 쉽다. - 복제를 효율적으로 수행
  • 12. 블록 구조 파일 시스템 320M 파일
  • 13. 블록 구조 파일 시스템 1 2 3 4 5 320M 파일
  • 14. 블록 구조 파일 시스템 1 2 3 4 5 320M 파일 1 3 4 2 3 4 1 3 5 2 4 5 1 2 5
  • 15. 블록 구조 파일 시스템 1 2 3 4 5 320M 파일 1 3 4 2 3 4 1 3 5 2 4 5 1 2 5
  • 16. 블록 구조 파일 시스템 - 블록단위(64MB)로 나눈다 - 3개의 복제본을 생성 - 여러 곳에 저장
  • 17. 네임노드와 데이터 노드 - HDFS는 마스터-슬레이브 아키텍처로 구성 - 마스터(네임노드) - 슬레이브(데이터 노드) - 네임노드는 HDFS의 메타데이터 관리 - 클라이언트가 데이터 노드에 접근할 수 있게 - linux/win같은 계층형 파일 시스템 - 주기적으로 데이터 노드는 네임노드에 heartbeat/blockreport를 전송
  • 18.
  • 20. 보조네임노드과 고가용성 - 네임노드는 메타데이터를 관리하기 위해 Editlog,FsImage Editlog : 메타데이터의 변화를 기억,용량 제한X 네임노드의 로컬 시스템에 파일로 저장 FsImage : 네임스페이스와 파일에 대한 블록 매 핑 정보를 저장. 일종의 스냅샷 *네임스페이스(디렉토리명,파일명,상태정보)
  • 21. 보조네임노드과 고가용성 <로그동작 방식> 1. 네임노드가 구동되면 로컬에 저장된 FsImage와 editlog파 일을 조회 2. editlog파일에 있는 내용을 토대로 메모리에 올라와 있는 FsImage와 를 갱신 3. 메모리에 올라와있는 FsImage와 를 로컬 파일에 있는 파 일 시스템 이미지 파일에 적용 4. editlog파일을 초기화
  • 22. 보조네임노드과 고가용성 <단점> - editlog파일의 크기는 무제한으로 증가 - editlog파일이 너무 크다면 FsImage갱신 시, 오랜 시간 소요 이러한 문제 점들을 해결하기 위해 보조네임노드를 사용