스토리지 및 파일 시스템 작업 - 아마존 EMR

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

스토리지 및 파일 시스템 작업

EMRAmazon과 Hadoop은 클러스터 단계를 처리할 때 사용할 수 있는 다양한 파일 시스템을 제공합니다. 데이터에 액세스하는 URI 데 사용되는 파일 시스템의 접두사를 기준으로 사용할 파일 시스템을 지정합니다. 예를 들어 s3://amzn-s3-demo-bucket1/path 를 사용하여 Amazon S3 버킷을 EMRFS 참조합니다. 다음 표에서는 사용 가능한 파일 시스템과 언제 각 파일 시스템을 가장 적합하게 사용할 수 있는지에 대한 권장 사항이 나열됩니다.

EMRAmazon과 Hadoop은 일반적으로 클러스터를 처리할 때 다음 파일 시스템 중 둘 이상을 사용합니다. HDFS및 EMRFS 은 Amazon에서 사용되는 두 가지 주요 파일 시스템입니다EMR.

중요

Amazon EMR 릴리스 5.22.0부터 EMR Amazon은 AWS 서명 버전 4를 독점적으로 사용하여 Amazon S3에 대한 요청을 인증합니다. 이전 Amazon EMR 릴리스에서는 경우에 따라 AWS 서명 버전 2를 사용합니다. 단, 릴리스 노트에 서명 버전 4만 사용한다고 명시되어 있는 경우는 예외입니다. 자세한 내용은 Amazon Simple Storage Service 개발자 안내서의 요청 인증 (AWSAWS 서명 버전 4) 및 요청 인증 (서명 버전 2) 을 참조하십시오.

파일 시스템 접두사  설명
HDFS hdfs://(또는 접두사 없음)

HDFS확장 가능하고 이식 가능한 하둡용 분산 파일 시스템입니다. 의 HDFS 장점은 클러스터를 관리하는 Hadoop 클러스터 노드와 개별 단계를 관리하는 Hadoop 클러스터 노드 간의 데이터 인식입니다. 자세한 내용은 Hadoop 설명서를 참조하십시오.

HDFS마스터 노드와 코어 노드에서 사용됩니다. 한 가지 장점은 빠르다는 것이고, 단점은 클러스터가 종료될 때 회수되는 휘발성 스토리지라는 것입니다. 이 스토리지는 중간 작업 흐름 단계에서 생성된 결과를 캐시하는 데 가장 적합합니다.

EMRFS s3://

EMRFSAmazon에서 Amazon S3로 EMR 직접 일반 파일을 읽고 쓰는 데 사용되는 하둡 파일 시스템의 구현입니다. EMRFS는 Amazon S3 서버 측 암호화, read-after-write 일관성 및 목록 일관성과 같은 기능을 제공하는 동시에 하둡과 함께 사용할 영구 데이터를 Amazon S3에 저장하는 편리함을 제공합니다.

참고

이전에 Amazon은 s3ns3a 파일 시스템을 EMR 사용했습니다. 둘 다 여전히 작동하지만 최상의 성능, 보안 및 안정성을 위해 이 s3 URI 체계를 사용하는 것이 좋습니다.

로컬 파일 시스템

로컬 파일 시스템은 로컬로 연결된 디스크를 참조합니다. 하둡 클러스터를 생성할 때 각 노드는 EC2 인스턴스 스토어라고 하는 사전 구성된 사전 연결된 디스크 스토리지 블록과 함께 제공되는 인스턴스에서 생성됩니다. 인스턴스 스토어 볼륨의 데이터는 인스턴스의 수명 기간 동안만 지속됩니다. EC2 인스턴스 스토어 볼륨은 버퍼, 캐시, 스크래치 데이터 및 기타 임시 콘텐츠와 같이 지속적으로 변경되는 임시 데이터를 저장하는 데 적합합니다. 자세한 내용은 Amazon EC2 인스턴스 스토리지를 참조하십시오.

에서 로컬 파일 시스템을 사용하지만 Python은 로컬 파일 시스템에서도 실행되므로 인스턴스 스토어 볼륨에 추가 애플리케이션 파일을 저장하도록 선택할 수 있습니다. HDFS

(레거시) Amazon S3 블록 파일 시스템 s3bfs://

Amazon S3 블록 파일 시스템은 레거시 파일 스토리지 시스템입니다. 이 시스템은 사용하지 않는 것이 좋습니다.

중요

클러스터 장애의 원인이 될 수 있는 경합 상태를 트리거할 수 있으므로 이 파일 시스템을 사용하지 않는 것이 좋습니다. 하지만 이 시스템은 레거시 애플리케이션에서 필요할 수 있습니다.

파일 시스템에 액세스

데이터에 액세스하는 데 사용되는 유니폼 리소스 식별자 (URI) 의 접두사를 사용하여 사용할 파일 시스템을 지정합니다. 다음 절차에서는 다양한 유형의 파일 시스템을 참조하는 방법을 설명합니다.

로컬에 액세스하려면 HDFS
  • 에서 hdfs:/// 접두사를 지정합니다. URI Amazon은 로컬에 접두사를 지정하지 않은 경로를 EMR 확인합니다. URI HDFS 예를 들어, 다음 URIs 두 경우 모두 의 동일한 위치로 확인됩니다. HDFS

    hdfs:///path-to-data /path-to-data
리모컨에 액세스하려면 HDFS
  • 다음 예와 같이 마스터 노드의 URI IP 주소를 에 포함하십시오.

    hdfs://master-ip-address/path-to-data master-ip-address/path-to-data
Amazon S3에 액세스하는 방법
  • s3:// 접두사를 사용합니다.

    s3://bucket-name/path-to-file-in-bucket
Amazon S3 블록 파일 시스템에 액세스하는 방법
  • Amazon S3 블록 파일 시스템이 필요한 레거시 애플리케이션에만 사용합니다. 이 파일 시스템으로 데이터에 액세스하거나 데이터를 s3bfs:// 저장하려면 에서 접두사를 사용합니다. URI

    Amazon S3 블록 파일 시스템은 크기가 5GB를 초과하는 파일을 Amazon S3에 업로드할 수 있도록 지원하기 위해 사용되었던 레거시 파일 시스템입니다. Amazon이 AWS SDK Java를 통해 EMR 제공하는 멀티파트 업로드 기능을 사용하면 최대 5TB 크기의 파일을 Amazon S3 네이티브 파일 시스템에 업로드할 수 있으며 Amazon S3 블록 파일 시스템은 더 이상 사용되지 않습니다.

    주의

    이 레거시 파일 시스템은 파일 시스템을 손상시킬 수 있는 경쟁 조건을 만들 수 있으므로 이 형식을 사용하지 말고 대신 사용해야 합니다. EMRFS

    s3bfs://bucket-name/path-to-file-in-bucket