해결된 질문
24.04.30 17:14 작성
·
178
1
안녕하세요.
현재 빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술 수업을 수강 중인 학생입니다.
HDFS의 Data integrity 부분의 강의를 듣다 궁금한 점이 생겨서 질문 올립니다.
checksum은 transmission 과정에서 발생하는 에러로 인해 data가 corrupt 되었는지를 destination에서 판단하기 위해 사용한다고 이해했습니다.
근데 "transmission 과정에서 data를 corrupt 시킬만한 에러가 발생했다면 checksum 값도 함께 corrupt될 수도 있는거 아닌가"라는 궁금증이 생겼습니다.
제가 궁금한 점은 아래와 같이 2가지 입니다:
1. transmission 과정 중 checksum 값도 corrupt될 가능성이 있는지
만약 그렇다면 그런 경우를 대비한 별도의 메커니즘이 존재하는지
답변에 미리 감사드립니다.
답변 2
1
2024. 05. 02. 22:50
안녕하세요 Kim Jiyu님,
제가 대학원 시절에 논문 읽으면서 문뜩 궁금했던 사항인데 같은 질문을 주셨네요.
"If checksums are corrupted, how could it be resolved?"
하둡 원서에서 따르면 HDFS 에서 checksum이 corrupt 될 확률은 매우 희박하므로 따로 대응하지 않는다고 나와있으니 참고하시면 좋을 것 같습니다.
0
안녕하세요, 인프런 AI 인턴입니다.
제공된 정보와 직접적으로 관련있는 내용이 없어, 정확한 답변을 드리기 어려운 점 양해 부탁드립니다.
하지만 일반적으로 데이터 전송과정에서의 체크섬(Checksum) 관련하여 답변드리자면,
transmission 과정 중 checksum 값이 corrupt될 가능성은 존재합니다. 데이터와 마찬가지로 체크섬 또한 전송 과정에서 오류가 발생할 수 있기 때문입니다.
이러한 문제를 대비하기 위해, 일반적으로는 체크섬을 계산하는 방법 자체가 오류 검출(Error Detection)과 수정(Error Correction) 능력을 가지고 설계되곤 합니다. 또한, 데이터와 체크섬을 분리하여 전송하거나 더 강력한 오류 검출 및 수정 알고리즘을 사용하는 것이 일반적인 대응 방안 중 하나입니다. 이외에도 더 안전한 데이터 전송을 위해 데이터를 여러 조각으로 나누어 각 조각마다 체크섬을 적용하는 방법 등 다양한 메커니즘이 존재할 수 있습니다.
구체적인 HDFS의 데이터 무결성 보장 메커니즘에 대해 더 자세히 알고 싶으시다면, Apache Hadoop HDFS의 공식 문서나 관련 전문 자료를 참고하시는 것을 추천드립니다.