차례:
- HDFS는 대용량 파일을
- 데이터 노드는 NameNode와 데이터 노드 간의 연결을 탐지하고 보장하기 위해 "하트 비트"메시지도 제공합니다. 하트 비트가 더 이상 존재하지 않으면 NameNode는 클러스터에서 데이터 노드의 매핑을 해제하고 아무 일도 일어나지 않은 것처럼 계속 작동합니다. 하트 비트가 반환되면 사용자 또는 응용 프로그램과 관련하여 클러스터에 투명하게 추가됩니다.
- HDFS는 복원력이 뛰어나므로 서버 오류가 발생한 경우 클러스터 전체에서 복제됩니다. HDFS는이 모든 것들을 어떻게 추적합니까? 간단한 답은 파일 시스템
비디오: 빅데이터와 하둡(Hadoop) 분산 파일 시스템 (HDFS) 안내 (2) - 쓰기와 읽기 2024
Hadoop 분산 파일 시스템은 대용량 데이터 환경에서 파일을 관리하기위한 다기능의 복원력있는 클러스터 방식입니다. HDFS는 파일의 최종 목적지가 아닙니다. 오히려 데이터 볼륨과 속도가 높을 때 필요한 고유 한 기능 세트를 제공하는 데이터 서비스입니다. 다른 파일 시스템의 지속적인 읽기 쓰기가 아니라 데이터가 한 번 기록 된 다음 여러 번 읽히기 때문에 HDFS는 대용량 데이터 분석을 지원하는 데있어 탁월한 선택입니다.
HDFS는 대용량 파일을
블록 이라는 작은 조각으로 나눔으로써 작동합니다. 블록은 데이터 노드에 저장되며, 데이터 노드의 블록이 전체 파일을 구성하는 것은 NameNode의 책임입니다. NameNode는 또한 파일에 대한 모든 액세스를 관리하는 "교통 경찰"역할을합니다.
네임 스페이스라고도합니다. 이 네임 스페이스를 관리하는 것은 NameNode의 작업입니다. NameNode와 데이터 노드 사이에는 강력한 관계가 존재하지만, 이들은 느슨하게 결합 된 방식으로 작동합니다. 이렇게하면 클러스터 요소가 동적으로 작동하여 수요가 증가함에 따라 서버가 추가됩니다. 일반적인 구성에서는 하나의 NameNode 및 가능하면 랙의 한 물리적 서버에서 실행되는 데이터 노드를 찾습니다. 다른 서버는 데이터 노드 만 실행합니다.
데이터 노드는 일반 파일 시스템 작업 중에 협력 할 수 있도록 자체간에 통신합니다. 이는 하나의 파일에 대한 블록이 여러 데이터 노드에 저장 될 가능성이 있기 때문에 필요합니다. NameNode는 클러스터의 올바른 작동에 매우 중요하기 때문에 단일 지점 오류를 방지하기 위해 복제 될 수 있고 복제되어야합니다.
큰 데이터 노드데이터 노드는 똑똑하지 않지만 탄력적입니다. HDFS 클러스터 내에서 데이터 블록은 여러 데이터 노드에 걸쳐 복제되고 NameNode에 의해 액세스가 관리됩니다. 복제 메커니즘은 클러스터의 모든 노드가 랙에 수집 될 때 최적의 효율성을 발휘하도록 설계되었습니다. 사실 NameNode는 "랙 ID"를 사용하여 클러스터의 데이터 노드를 추적합니다.
데이터 노드는 NameNode와 데이터 노드 간의 연결을 탐지하고 보장하기 위해 "하트 비트"메시지도 제공합니다. 하트 비트가 더 이상 존재하지 않으면 NameNode는 클러스터에서 데이터 노드의 매핑을 해제하고 아무 일도 일어나지 않은 것처럼 계속 작동합니다. 하트 비트가 반환되면 사용자 또는 응용 프로그램과 관련하여 클러스터에 투명하게 추가됩니다.
데이터 무결성이 핵심 기능입니다. HDFS는 데이터 무결성을 제공하도록 설계된 많은 기능을 지원합니다. 예상대로 파일을 블록으로 분할 한 다음 클러스터의 다른 서버에 분산하면 요소 작동의 변형으로 인해 데이터 무결성이 영향을받을 수 있습니다. HDFS는 트랜잭션 로그 및 체크섬 검증을 사용하여 클러스터 전체의 무결성을 보장합니다.
트랜잭션 로그는 모든 작업을 추적하며, 문제가 발생하면 파일 시스템의 감사 또는 재구성에 효과적입니다.
체크섬 검증은 HDFS의 파일 내용을 보증하는 데 사용됩니다. 클라이언트가 파일을 요청하면 체크섬을 검사하여 내용을 확인할 수 있습니다. 체크섬이 일치하면 파일 작업을 계속할 수 있습니다. 그렇지 않은 경우 오류가보고됩니다. 체크섬 파일은 함부로 변경되지 않도록 숨겨져 있습니다.
데이터 노드는 지속성을 위해 일반 서버에서 로컬 디스크를 사용합니다. 모든 데이터 블록은 주로 성능상의 이유로 로컬에 저장됩니다. 데이터 블록은 여러 데이터 노드에 걸쳐 복제되므로 한 서버의 오류로 인해 파일이 손상되지 않을 수도 있습니다. 클러스터가 구현되면 복제 정도, 데이터 노드 수 및 HDFS 네임 스페이스가 설정됩니다.
대용량 데이터 용 HDFS
HDFS는 파일을 관련성이있는 더 작은 블록 모음으로 분해하여 큰 데이터 문제를 해결합니다. 이러한 블록은 HDFS 클러스터의 데이터 노드에 분산되며 NameNode에 의해 관리됩니다. 블록 크기는 구성 할 수 있으며 일반적으로 128MB 또는 256MB입니다. 즉, 1GB 파일은 기본 저장소 요구 사항으로 8 개의 128MB 블록을 사용합니다.
HDFS는 복원력이 뛰어나므로 서버 오류가 발생한 경우 클러스터 전체에서 복제됩니다. HDFS는이 모든 것들을 어떻게 추적합니까? 간단한 답은 파일 시스템
메타 데이터
입니다. 메타 데이터는 "데이터에 관한 데이터"로 정의된다. "다음에 대한 자세한 설명을 제공하기위한 템플릿으로 HDFS 메타 데이터를 생각해보십시오. 파일 작성, 액세스, 수정, 삭제 등
파일 블록이 클러스터에 저장되는 위치 < 파일을 보거나 수정할 수있는 권한이있는 사람
-
클러스터에 저장된 파일 수
-
클러스터에있는 데이터 노드 수
-
클러스터의 트랜잭션 로그 위치
-
HDFS 메타 데이터는 NameNode에 저장되고 클러스터가 작동하는 동안 모든 메타 데이터가 NameNode 서버의 실제 메모리에로드됩니다. 예상대로 클러스터가 클수록 메타 데이터 공간이 커집니다.
-
블록 서버는 정확히 무엇을합니까? 다음 목록을 확인하십시오.
-
서버의 로컬 파일 시스템에 데이터 블록을 저장합니다. HDFS는 다양한 운영 체제에서 사용할 수 있으며 Windows, Mac OS 또는 Linux에서 동일하게 작동합니다.
NameNode의 메타 데이터 템플리트를 기반으로 로컬 파일 시스템에 블록의 메타 데이터를 저장합니다.
정기적으로 파일 체크섬을 검사합니다.
-
파일 작업에 사용할 수있는 블록에 대한 NameNode에 대한 정기적 보고서를 보냅니다.
-
고객의 요구에 따라 메타 데이터 및 데이터를 제공합니다. HDFS는 클라이언트 응용 프로그램에서 데이터 노드에 직접 액세스를 지원합니다.
-
"파이프 라이닝"모델을 기반으로 다른 데이터 노드로 데이터를 전달합니다. 데이터 노드의 블록 배치는 데이터 복제 및 데이터 파이프 라이닝 지원에 중요합니다. HDFS는 모든 블록의 복제본 하나를 로컬에 보관합니다. HDFS는 데이터 복제 및 복원력에 중점을 둡니다.