5. HDFS Write
알맞게 잘라서 저쪽에 넣어둬!
Client 서버
File 저장 부탁!
잃어 버리면 안돼!
나 이런 파일
조각 갖고 있어!
500GB 500GB 500GB
서버 서버 서버
같이 가지고
있자!
Monday, September 17, 12
6. HDFS Write
알맞게 잘라서 저쪽에 넣어둬!
Client 서버
File 저장 부탁!
Namenode
잃어 버리면 안돼!
HDFS 나 이런 파일
조각 갖고 있어!
Datanode
500GB 500GB 500GB
서버 서버 서버
같이 가지고
있자!
Monday, September 17, 12
7. HDFS Read
파일 조각들 주소 여기 있으니까 찾아서 합쳐!
Name
Client
File 좀 찾아줘! Node
순서대로
불러서
합쳐야지!
Data Data Data
Node Node Node
Monday, September 17, 12
8. HDFS Write
Name
Client
File Node 여기다 File
기본정보들
EditLog 기록해 두자!
Memory
나중에 찾을 때
여기보고 찾아주지!
나 여기!
Data Data Data
Node Node Node
Monday, September 17, 12
9. TroubleMaker Namenode
나는 무조건 혼자야!
Name
Client
Node
나는 Size에
EditLog 제한이 없어!
나는 전원
꺼지면
Memory
그냥 사라져!
Data Data Data
Node Node Node
나는 Namenode 없으면 누군지 몰라!
Monday, September 17, 12
10. Namenode Healing
Name
Node
나는 사실은
Journal Data EditLog
FSImage
내가 진짜 최후의 데이터
서버 뜰 때 EditLog 가져와야지!
Monday, September 17, 12
11. Secondary Namenode
Name Secondary
Node 너무 커지기 전에
namenode Backup도
줄여놔야겠어! 받아놓고.
나는 사실은
Journal Data EditLog EditLog
Merge
FSImage FSImage
너도 이쪽으로
내가 진짜 최후의 데이터
서버 뜰 때 EditLog 가져와야지!
너 합치는동안
EditLog는
합친거 여기 있어!
별도로 관리했어
일이 많어!
Monday, September 17, 12
38. Namenode HA
Concept
• Active / Standby
• Share EditLog
• Datanode는 반드시 Active /Standby
namenode 모두에게 block 정보를 보내야 한
다.
• Client는 namenode failover 발생시 자동으로
Active namenode로 전환이 가능해야 한다.
Monday, September 17, 12
39. Namenode HA
based on Facebook AvatarNode
Monday, September 17, 12
94. Hadoop 2.0.1-alpha HA
case Disconnected:
LOG.info(Session disconnected. Entering neutral mode...);
// ask the app to move to safe state because zookeeper connection
// is not active and we dont know our state
zkConnectionState = ConnectionState.DISCONNECTED;
enterNeutralMode();
break;
ElectorCallbacks
class
implements
ActiveStandbyElectorCallback
{
@Override
public
void
becomeActive()
{
ZKFailoverController.this.becomeActive();
}
@Override
public
void
becomeStandby()
{
ZKFailoverController.this.becomeStandby();
}
@Override
enterNeutralMode()
{
public
void
}
Monday, September 17, 12
95. Hadoop 2.0.1-alpha HA
SessionTimeout / 3
Ping
시간마다
Response
SendThread Ensemble
(Zookeeper Client) (Zookeeper Server)
DISCONNECTED
SendThread에서 Exception이 생기면 발생
Monday, September 17, 12
96. Hadoop 2.0.1-alpha HA
DISCONNECTED ReConnect
Ping Ping Ping Ping
Expired
Ensemble이
생각하는 timeout
SessionTimeout 시간
Monday, September 17, 12
97. Hadoop 2.0.1-alpha HA
HDFS-1623 Ensemble
SendThread SendThread
Fencing
Monday, September 17, 12
103. MapReduce
JobTracker TaskTracker
Monday, September 17, 12
104. JobTracker / TaskTracker
분석 프로그램 줄테니
File 분석 좀..
Client 서버
JobTracker
협력해서 분석!
다했어!
500GB 500GB 500GB
서버 서버 서버
TaskTracker
Monday, September 17, 12