View a markdown version of this page

주석 관리 - Amazon Simple Storage Service

주석 관리

AWS Management Console, AWS CLI 또는 AWS SDK를 사용하여 Amazon S3 객체에 주석을 추가, 검색 및 삭제할 수 있습니다. 다음 섹션에서는 각 작업을 수행하는 방법을 설명합니다.

주석 추가 또는 업데이트

객체에 새 주석을 추가하거나 페이로드를 대체하여 기존 주석을 업데이트할 수 있습니다.

S3 콘솔 사용

객체에 주석을 추가하려면
  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/s3/에서 Amazon S3 콘솔을 엽니다.

  2. 버킷(Buckets) 목록에서 객체가 포함된 버킷의 이름을 선택합니다.

  3. 객체 목록에서 주석을 쓰려는 객체의 이름을 선택합니다.

  4. 속성 탭을 선택합니다.

  5. 주석 섹션으로 스크롤하여 주석 추가를 선택합니다.

  6. 이름에 주석의 이름을 입력합니다(예: ml.sentiment). 이름은 1~512바이트여야 하며 유니코드 문자, 숫자, 밑줄, 마침표 및 하이픈을 포함할 수 있습니다. aws 또는 s3로 시작하는 이름을 사용할 수 없습니다.

  7. 파일 선택을 선택하여 주석 콘텐츠를 업로드합니다. 파일은 UTF-8 인코딩 가능해야 하며 최대 1MB 크기여야 합니다.

주석을 완료하려면
  1. (선택 사항) 체크섬에서 체크섬 알고리즘을 선택합니다.

  2. 주석 추가를 선택합니다.

참고

주석이 생성된 후 주석의 콘텐츠를 보려면 주석을 다운로드해야 합니다. S3 콘솔에는 주석 콘텐츠가 인라인으로 표시되지 않습니다.

AWS CLI 사용

객체에 주석을 추가하거나 업데이트하려면 put-object-annotation 명령을 사용합니다. --annotation-payload 파라미터는 파일 경로를 허용합니다.

aws s3api put-object-annotation \ --bucket amzn-s3-demo-bucket \ --key myDocument.pdf \ --annotation-name "ml.sentiment" \ --annotation-payload /tmp/sentiment.json

마지막으로 읽은 이후 객체를 덮어쓰지 않은 경우에만 주석을 작성하려면 객체의 현재 ETag로 --object-if-match 파라미터를 지정합니다.

aws s3api put-object-annotation \ --bucket amzn-s3-demo-bucket \ --key myDocument.pdf \ --annotation-name "ml.sentiment" \ --annotation-payload /tmp/sentiment.json \ --object-if-match "\"d6eb32081c822ed572b70567826d9d9d\""

AWS SDK 사용

다음 예제에서는 AWS SDK for Python(Boto3)을 사용하여 객체에 주석을 추가합니다.

import boto3 import json s3 = boto3.client('s3') s3.put_object_annotation( Bucket='amzn-s3-demo-bucket', Key='myDocument.pdf', AnnotationName='ml.sentiment', AnnotationPayload=json.dumps({ 'score': 0.95, 'label': 'positive', 'model': 'sentiment-v3' }).encode('utf-8') )

주석 검색

특정 주석을 검색하거나 객체의 모든 주석을 나열할 수 있습니다.

S3 콘솔 사용

주석을 검색하려면
  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/s3/에서 Amazon S3 콘솔을 엽니다.

  2. 버킷 목록에서 객체가 포함된 버킷의 이름을 선택합니다.

  3. 객체 목록에서 객체의 이름을 선택합니다.

  4. 속성 탭을 선택하고 주석 섹션으로 스크롤합니다.

  5. 주석의 콘텐츠를 보려면 주석 이름 옆의 다운로드를 선택합니다.

AWS CLI 사용

특정 주석을 검색하려면 get-object-annotation 명령을 사용합니다.

aws s3api get-object-annotation \ --bucket amzn-s3-demo-bucket \ --key myDocument.pdf \ --annotation-name "ml.sentiment" \ output.json

객체의 모든 주석을 나열하려면 list-object-annotations 명령을 사용합니다.

aws s3api list-object-annotations \ --bucket amzn-s3-demo-bucket \ --key myDocument.pdf

AWS SDK 사용

다음 예제에서는 AWS SDK for Python(Boto3)을 사용하여 주석을 검색 및 나열합니다.

import boto3 import json s3 = boto3.client('s3') # Retrieve a specific annotation response = s3.get_object_annotation( Bucket='amzn-s3-demo-bucket', Key='myDocument.pdf', AnnotationName='ml.sentiment' ) content = json.loads(response['AnnotationPayload'].read()) # List all annotations on an object response = s3.list_object_annotations( Bucket='amzn-s3-demo-bucket', Key='myDocument.pdf' ) for annotation in response['Annotations']: print(f"{annotation['AnnotationName']} - {annotation['Size']} bytes")

주석 삭제

객체에서 특정 주석을 삭제할 수 있습니다. 주석 삭제 작업은 영구적이며 취소할 수 없습니다.

S3 콘솔 사용

주석을 삭제하는 방법
  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/s3/에서 Amazon S3 콘솔을 엽니다.

  2. 버킷 목록에서 객체가 포함된 버킷의 이름을 선택합니다.

  3. 객체 목록에서 객체의 이름을 선택합니다.

  4. 속성 탭을 선택하고 주석 섹션으로 스크롤합니다.

  5. 삭제할 주석을 선택합니다.

  6. 삭제를 선택하고 삭제를 확인합니다.

AWS CLI 사용

특정 주석을 삭제하려면 delete-object-annotation 명령을 사용합니다.

aws s3api delete-object-annotation \ --bucket amzn-s3-demo-bucket \ --key myDocument.pdf \ --annotation-name "ml.sentiment"

AWS SDK 사용

다음 예제에서는 AWS SDK for Python(Boto3)을 사용하여 주석을 삭제합니다.

import boto3 s3 = boto3.client('s3') s3.delete_object_annotation( Bucket='amzn-s3-demo-bucket', Key='myDocument.pdf', AnnotationName='ml.sentiment' )