注釈の管理
AWS マネジメントコンソール、AWS CLI、または AWS SDK を使用して、Amazon S3 オブジェクトの注釈を追加、取得、削除できます。次のセクションでは、各操作を実行する方法について説明します。
注釈の追加または更新
オブジェクトに新しい注釈を追加するか、ペイロードを置き換えて既存の注釈を更新できます。
S3 コンソールの使用
オブジェクトに注釈を追加するには
-
AWS マネジメントコンソール にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/
) を開きます。 -
[バケット] リストで、オブジェクトが含まれるバケットの名前を選択します。
-
[オブジェクト] リストで、注釈を付けるオブジェクトの名前を選択します。
-
[プロパティ] タブを選択します。
-
[注釈] セクションまでスクロールし、[注釈を追加] を選択します。
-
[名前] に、注釈の名前を入力します (例:
ml.sentiment)。名前は 1~512 バイトで、Unicode 文字、数字、アンダースコア、ピリオド、およびハイフンを含めることができます。名前の先頭をawsまたはs3にすることはできません。 -
[ファイルの選択] を選択して、注釈コンテンツをアップロードします。ファイルは UTF-8 エンコード可能で、最大サイズは 1 MB である必要があります。
注釈を完了するには
-
(オプション) [チェックサム] で、チェックサムアルゴリズムを選択します。
-
[注釈を追加] を選択します。
注記
作成後に注釈の内容を表示するには、注釈をダウンロードする必要があります。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 コンソールの使用
注釈を取得するには
-
AWS マネジメントコンソール にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/
) を開きます。 -
[Buckets] (バケット) リストで、オブジェクトが含まれるバケットの名前を選択します。
-
オブジェクト一覧から、オブジェクトの名前を選択します。
-
[プロパティ] タブを選択し、[注釈] セクションまでスクロールします。
-
注釈コンテンツを表示するには、注釈名の横にある [ダウンロード] を選択します。
の使用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 コンソールの使用
注釈を削除するには
-
AWS マネジメントコンソール にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/
) を開きます。 -
[Buckets] (バケット) リストで、オブジェクトが含まれるバケットの名前を選択します。
-
オブジェクト一覧から、オブジェクトの名前を選択します。
-
[プロパティ] タブを選択し、[注釈] セクションまでスクロールします。
-
削除する注釈を選択します。
-
[削除] を選択し、削除を確認します。
の使用AWS CLI
特定の注釈を削除するには、delete-object-annotation コマンドを使用します。
aws s3api delete-object-annotation \ --bucket amzn-s3-demo-bucket \ --key myDocument.pdf \ --annotation-name "ml.sentiment"
AWS SDK の使用
次の例では、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' )