Apache Hadoop — HDFS 와 YARN 을 한 파드에 세우고 운영한다 · 블록과 복제 · 퀴즈
퀴즈: 블록과 복제
6문항. 정답과 해설은 풀어 본 뒤에 보여 드립니다.
12MiB 파일을 dfs.blocksize=4MiB 로 올렸다. 같은 파일을 기본값으로 올렸을 때와 견준 블록 수로 맞는 것은?
- 4MiB 로는 3개, 기본값으로는 1개
- 4MiB 로는 3개, 기본값으로도 3개
- 4MiB 로는 4개, 기본값으로는 1개
- 4MiB 로는 3개, 기본값으로는 0개
DataNode 가 하나뿐인 클러스터에서 setrep 3 을 실행했다. 이후의 모습으로 맞는 것은?
- 명령이 즉시 실패하고 복제 계수는 1 로 남아 있다
- 같은 DataNode 에 사본 세 개가 만들어져 디스크를 세 배 쓴다
- 명령은 성공하지만 사본은 하나라 fsck 가 복제 부족으로 보고한다
- NameNode 가 DataNode 를 두 개 더 띄울 때까지 쓰기를 막는다
DataNode 의 dfs.datanode.data.dir 아래에서 찾을 수 있는 것은?
- HDFS 경로 이름을 그대로 딴 디렉터리와 원래 이름의 파일들
- 블록들을 압축해 한데 묶은 전용 형식의 큰 저장 파일 하나
- NameNode 의 fsimage 사본과 블록 위치를 적은 색인 파일
- blk_ 로 시작하는 블록 파일과 .meta 로 끝나는 체크섬 짝
내용이 똑같은 두 파일의 hadoop fs -checksum 값이 다르게 나왔다. 가장 그럴듯한 이유는?
- 블록 크기가 달라 기본 MD5MD5CRC 조합의 계산이 달라졌다
- 두 파일의 복제 계수가 달라 사본마다 값이 따로 섞였다
- 한 파일이 휴지통을 거쳐 복원되면서 메타데이터가 바뀌었다
- 두 파일의 소유자가 달라 체크섬 계산에 사용자 이름이 들어갔다
HDFS 블록이 로컬 파일 시스템 블록보다 훨씬 큰 128MB 를 기본으로 하는 이유로 가장 알맞은 것은?
- 큰 블록일수록 압축률이 높아져 디스크를 덜 쓰기 때문이다
- 큰 파일의 순차 처리량을 얻고 NameNode 의 블록 객체 수를 줄이려고
- 블록이 커야 DataNode 끼리의 하트비트 간격을 늘릴 수 있어서
- 블록 하나가 디스크 트랙 하나와 크기를 맞춰야 하기 때문이다
NameNode 가 dfs.namenode.fs-limits.min-block-size 로 블록 크기의 하한을 강제하는 이유는?
- 블록이 작으면 체크섬 512바이트 단위를 나눌 수 없어서
- DataNode 디스크가 1MB 보다 작은 파일을 만들지 못해서
- 작은 블록 크기로 블록이 폭증해 성능이 나빠지는 것을 막으려고
- 복제 파이프라인이 1MB 단위로만 조각을 넘길 수 있어서