S3 Express One Zone의 차이점 이해 - Amazon Simple Storage Service

S3 Express One Zone의 차이점 이해

S3 Express One Zone은 지연 시간에 가장 민감한 애플리케이션에 대해 일관되게 10밀리초 미만의 데이터 액세스를 제공하도록 특별히 설계된 고성능 단일 영역 Amazon S3 스토리지 클래스입니다. S3 Express One Zone은 객체 스토리지를 컴퓨팅 리소스와 함께 배치하는 옵션을 제공하면서 단일 가용 영역 선택이 가능한 최초의 S3 스토리지 클래스로, 최고의 액세스 속도를 제공합니다. 또한 액세스 속도를 더욱 높이고 초당 수십만 건의 요청을 지원하기 위해 S3 Express One Zone 데이터는 새로운 버킷 유형인 Amazon S3 디렉터리 버킷에 저장됩니다.

자세한 내용은 디렉터리 버킷 및 S3 Express One Zone 단원을 참조하십시오.

Amazon S3 API를 사용하여 S3 Express One Zone에서 디렉터리 버킷을 생성하고 데이터에 액세스할 수 있습니다. Amazon S3 API는 몇 가지 주목할 만한 차이점을 제외하고 S3 Express One Zone 및 디렉터리 버킷과 호환됩니다. S3 Express One Zone의 차이점에 대한 자세한 내용은 다음 주제를 참조하세요.

S3 Express One Zone의 차이점

  • 지원되는 버킷 유형 - S3 Express One Zone 스토리지 클래스의 객체는 디렉터리 버킷에만 저장할 수 있습니다. 자세한 내용은 디렉터리 버킷 개요 단원을 참조하십시오.

  • 내구성 - S3 Express One Zone 스토리지 클래스를 사용하면 단일 가용 영역 내의 여러 디바이스에 데이터가 중복으로 저장됩니다. S3 Express One Zone은 단일 가용 영역 내에서 99.95%의 가용성을 제공하도록 설계되었으며 Amazon S3 서비스 수준 계약의 지원을 받습니다. 자세한 내용은 단일 가용 영역 단원을 참조하십시오.

  • ListObjectsV2 동작

    • 디렉터리 버킷의 경우 ListObjectsV2는 객체를 사전순(알파벳순)으로 반환하지 않습니다. 또한 접두사는 구분 기호로 끝나야 하며 '/'만 구분 기호로 지정할 수 있습니다.

    • 디렉터리 버킷의 경우 ListObjectsV2 응답에는 진행 중인 멀티파트 업로드에만 관련된 접두사가 포함됩니다.

  • 삭제 동작 - 디렉터리 버킷에서 객체를 삭제하면 Amazon S3는 객체 경로에 있는 빈 디렉터리를 재귀적으로 삭제합니다. 예를 들어 dir1/dir2/file1.txt 객체 키를 삭제할 경우 Amazon S3는 file1.txt를 삭제합니다. dir1/dir2/ 디렉터리가 비어 있고 다른 객체가 없는 경우 Amazon S3는 해당 디렉터리도 삭제합니다.

  • ETag와 체크섬 - S3 Express One Zone의 엔터티 태그(ETag)는 임의의 영숫자 문자열이며 MD5 체크섬이 아닙니다. S3 Express One Zone에서 추가 체크섬을 사용하는 방법에 대한 자세한 내용은 S3 추가 체크섬 모범 사례 섹션을 참조하세요.

  • DeleteObjects 요청의 객체 키

    • DeleteObjects 요청의 객체 키는 공백이 아닌 문자를 하나 이상 포함해야 합니다. 공백 문자로만 구성된 문자열은 DeleteObjects 요청에서 지원되지 않습니다.

    • DeleteObjects 요청의 객체 키에는 유니코드 제어 문자를 포함할 수 없습니다. 단, 줄바꿈(\n), 탭(\t) 및 캐리지 리턴(\r) 문자는 예외입니다.

  • 리전 및 영역 엔드포인트 - S3 Express One Zone을 사용하는 경우 모든 클라이언트 요청에서 리전을 지정해야 합니다. 리전 엔드포인트의 경우 리전을 지정합니다(예: s3express-control.us-west-2.amazonaws.com). 영역 엔드포인트의 경우 리전과 가용 영역을 모두 지정합니다(예: s3express-usw2-az1.us-west-2.amazonaws.com). 자세한 내용은 리전 및 영역 엔드포인트 단원을 참조하십시오.

  • 멀티파트 업로드 - Amazon S3에 저장된 다른 객체와 마찬가지로 멀티파트 업로드 프로세스를 사용하여 S3 Express One Zone 스토리지 클래스에 저장된 대규모 객체를 업로드하고 복사할 수 있습니다. 하지만 S3 Express One Zone에 저장된 객체에 멀티파트 업로드 프로세스를 사용할 경우 다음과 같은 몇 가지 차이점이 있습니다. 자세한 내용은 디렉터리 버킷에 멀티파트 업로드 사용 단원을 참조하십시오.

    • 객체 생성 날짜는 멀티파트 업로드 완료 날짜입니다.

    • 멀티파트의 파트 번호에는 연속된 번호를 사용해야 합니다. 연속되지 않는 파트 번호로 멀티파트 업로드 요청을 완료하려고 하면 Amazon S3에서 HTTP 400 (Bad Request) 오류가 생성됩니다.

    • 멀티파트 업로드 작업을 시작한 사용자는 s3express:CreateSession 권한을 통해 AbortMultipartUpload에 대한 명시적 허용 액세스 권한을 부여받은 경우에만 멀티파트 업로드 요청을 중단할 수 있습니다. 자세한 내용은 IAM을 사용한 리전 엔드포인트 API 권한 부여 단원을 참조하십시오.

  • 디렉터리 버킷 비우기 - AWS Command Line Interface(CLI)를 통한 s3 rm 명령, Mountpoint를 통한 delete 작업 그리고 AWS Management Console을 통한 버킷 옵션 버튼으로는 디렉터리 버킷에서 진행 중인 멀티파트 업로드를 삭제할 수 없습니다. 진행 중인 멀티파트 업로드를 삭제하려면 ListMultipartUploads 작업을 사용하여 버킷에서 진행 중인 멀티파트 업로드를 나열하고 AbortMultipartUpload 작업을 사용하여 진행 중인 멀티파트 업로드를 모두 중단하세요.

  • 서버 측 암호화

    • 디렉터리 버킷의 경우 서버 측 암호화로 데이터를 암호화하려면 Amazon S3 관리형 키(SSE-S3)(기본값)를 사용하는 서버 측 암호화 또는 AWS Key Management Service(AWS KMS) 키를 사용하는 서버 측 암호화(SSE-KMS)를 사용할 수 있습니다. 버킷의 기본 암호화는 원하는 암호화 구성을 사용하고 CreateSession 요청 또는 PUT 객체 요청에서 버킷 기본 암호화를 재정의하지 않는 것이 좋습니다. 그러면 새 객체가 원하는 암호화 설정으로 자동 암호화됩니다. 디렉터리 버킷의 암호화 재정의 동작에 대한 자세한 내용은 Specifying server-side encryption with AWS KMS for new object uploads를 참조하세요.

    • SSE-KMS 구성은 버킷 수명 기간 동안 디렉터리 버킷당 고객 관리형 키 1개만 지원할 수 있습니다. AWS 관리형 키(aws/s3)는 지원되지 않습니다. 또한, SSE-KMS에 고객 관리형 키를 지정한 후에는 버킷의 SSE-KMS 구성을 위한 고객 관리형 키를 재정의할 수 없습니다.

      다음과 같은 방법으로 버킷의 SSE-KMS 구성에 대해 지정한 고객 관리형 키를 식별할 수 있습니다.

      • 응답에서 x-amz-server-side-encryption-aws-kms-key-id의 값을 찾기 위해 HeadObject API 작업을 요청합니다.

      데이터에 새 고객 관리형 키를 사용하려면 최신 고객 관리형 키가 있는 새 디렉터리 버킷에 기존 객체를 복사하는 것이 좋습니다.

    • CopyObjectUploadPartCopy를 제외한 영역 엔드포인트(객체 수준) API 작업의 경우 지연 시간이 짧도록 CreateSession을 통해 요청을 인증하고 권한을 부여합니다. 버킷의 기본 암호화는 원하는 암호화 구성을 사용하고 CreateSession 요청 또는 PUT 객체 요청에서 버킷 기본 암호화를 재정의하지 않는 것이 좋습니다. 그러면 새 객체가 원하는 암호화 설정으로 자동 암호화됩니다. SSE-KMS로 디렉터리 버킷의 새 객체를 암호화하려면 KMS 키(특히 고객 관리형 키)를 사용하여 디렉터리 버킷의 기본 암호화 구성으로 SSE-KMS를 지정해야 합니다. 그런 다음 영역 엔드포인트 API 작업을 위한 세션이 생성되면 세션 중에 SSE-KMS 및 S3 버킷 키를 사용하여 새 객체가 자동으로 암호화되고 해독됩니다. 디렉터리 버킷의 암호화 재정의 동작에 대한 자세한 내용은 Specifying server-side encryption with AWS KMS for new object uploads를 참조하세요.

    • CopyObject의 경우 SSE-KMS로 디렉터리 버킷의 새 객체 사본을 암호화하려면 KMS 키(특히 고객 관리형 키)를 사용하여 디렉터리 버킷의 기본 암호화 구성으로 SSE-KMS를 지정해야 합니다. 그런 다음 SSE-KMS를 사용하여 새 객체 사본의 서버 측 암호화 설정을 지정할 때는 암호화 키가 디렉터리 버킷의 기본 암호화 구성에 지정한 것과 동일한 고객 관리형 키인지 확인해야 합니다. UploadPartCopy의 경우 SSE-KMS로 디렉터리 버킷의 새 객체 부분 사본을 암호화하려면 KMS 키(특히 고객 관리형 키)를 사용하여 디렉터리 버킷의 기본 암호화 구성으로 SSE-KMS를 지정해야 합니다. UploadPartCopy 요청 헤더에서 SSE-KMS를 사용하여 새 객체 부분 사본에 대한 서버 측 암호화 설정을 지정할 수 없습니다. 또한, CreateMultipartUpload 요청에서 제공하는 암호화 설정은 대상 버킷의 기본 암호화 구성과 일치해야 합니다.

    • S3 버킷 키는 디렉터리 버킷의 GETPUT 작업에 대해 항상 활성화되며 비활성화할 수 없습니다. CopyObject, UploadPartCopy, 배치 운영의 Copy 작업 또는 import 작업을 통해 SSE-KMS로 암호화된 객체를 범용 버킷에서 디렉터리 버킷으로, 디렉터리 버킷에서 범용 버킷으로 또는 디렉터리 버킷 간에 복사하는 경우 S3 버킷 키는 지원되지 않습니다. 이 경우 Amazon S3는 KMS 암호화 개체에 대한 사본 요청이 있을 때마다 AWS KMS를 직접적으로 호출합니다.

    • 디렉터리 버킷에서 암호화를 위한 AWS KMS 고객 관리형 키를 지정할 때는 키 ID 또는 키 ARN만 사용하세요. KMS 키의 키 별칭 형식은 지원되지 않습니다.

S3 Express One Zone에서 지원되는 API 작업

Amazon S3 Express One Zone 스토리지 클래스는 리전(버킷 수준, 즉 컨트롤 플레인) 및 영역(객체 수준, 즉 데이터 영역) 엔드포인트 API 작업을 모두 지원합니다. 자세한 내용은 S3 Express One Zone을 위한 네트워킹엔드포인트 및 게이트웨이 VPC 엔드포인트 단원을 참조하세요.

리전 엔드포인트 API 작업

S3 Express One Zone에서는 다음과 같은 리전 엔드포인트 API 작업이 지원됩니다.

영역 엔드포인트 API 작업

S3 Express One Zone에서는 다음과 같은 영역 엔드포인트 API 작업이 지원됩니다.

S3 Express One Zone에서 지원되지 않는 Amazon S3 기능

S3 Express One Zone에서는 다음 Amazon S3 기능을 지원하지 않습니다.

  • AWS 관리형 정책

  • AWS PrivateLink for S3

  • MD5 체크섬

  • 멀티 팩터 인증(MFA) 삭제

  • S3 객체 잠금

  • 요청자 지불

  • S3 Access Grants

  • S3 액세스 포인트

  • 버킷 태그

  • Amazon CloudWatch 요청 지표

  • S3 이벤트 알림

  • S3 수명 주기

  • S3 다중 리전 액세스 포인트

  • S3 객체 Lambda 액세스 포인트

  • S3 버전 관리

  • S3 인벤토리

  • S3 복제

  • 객체 태그

  • S3 Select

  • 서버 액세스 로그

  • 정적 웹 사이트 호스팅

  • S3 Storage Lens

  • S3 Storage Lens 그룹

  • S3 Transfer Acceleration

  • AWS Key Management Service(AWS KMS) 키를 사용한 이중 계층 서버 측 암호화(DSSE-KMS)

  • 고객 제공 키를 사용한 서버 측 암호화(SSE-C)

  • Amazon S3 콘솔에서 새 버킷을 생성할 때 기존 버킷 설정을 복사하는 옵션입니다.

  • 향상된 액세스 거부(HTTP 403 Forbidden) 오류 메시지