AWS CLIでAmazon S3 Vectorsを削除する方法

AWS CLIでAmazon S3 Vectorsを削除する方法

2025年11月から課金が始まるAmazon S3 Vectors。コンソールから削除できないため、AWS CLIでVector IndexとVector Bucketを削除する方法を紹介
2025.10.24

はじめに

2025年7月にパブリックプレビューとして発表された Amazon S3 Vectors は、2025年10月23日時点では AWSコンソールからの削除に対応しておらず、 削除するにはAWS CLIまたはSDKを利用する必要があります。

2025年11月1日から課金開始に備え、AWS CLIを使って不要なAmazon S3 Vectorsを削除する方法を紹介します。

Amazon S3 Vectorsの前提知識

Amazon S3 Vectorsは、ベクトル検索のためのインデックスを管理するサービスです。
検索対象のデータそのもの(データソース)を管理するサービスではありません。

その上で、Amazon S3 Vectorsは以下の2つの主要コンポーネントで構成されています。

  • Vector Index : ベクトル検索インデックス
  • Vector Bucket : Vector Indexのコンテナ

データベースにおけるテーブルとインデックスの関係のように、 Vector BucketとVector Indexは1:多の関係 です。

Vector Bucket

削除する際は、必ず以下の順序で実行する必要があります。

  1. Vector Indexを削除
  2. Vector Bucketを削除

Vector Indexの削除

インデックスの確認

まず、s3vectors list-indexes APIを実行し、Vector Bucketに存在する Vector Index の一覧を確認します。

aws s3vectors list-indexes \
  --vector-bucket-name your-vector-bucket-name

{
    "indexes": [
        {
            "vectorBucketName": "your-vector-bucket-name",
            "indexName": "your-vector-index-name",
            "indexArn": "arn:aws:s3vectors:us-east-1:123456789012:bucket/your-vector-bucket-name/index/your-vector-index-name",
            "creationTime": "2025-10-23T10:02:44+00:00"
        }
    ]
}

インデックスの削除

次に s3vectors delete-index APIを実行し、Vector Indexを削除します。

# 成功時は何も出力されません
aws s3vectors delete-index \
  --vector-bucket-name your-vector-bucket-name \
  --index-name your-vector-index-name

$ aws s3vectors list-indexes   --vector-bucket-name  your-vector-bucket-name
{
    "indexes": []
}

Vector Bucketの削除

バケットの削除

Bucket内のすべてのIndexを削除したら、s3vectors delete-vector-bucket APIでVector Bucketを削除します。

# 成功時は何も出力されません
$ aws s3vectors delete-vector-bucket \
  --vector-bucket-name your-vector-bucket-name

削除に失敗する場合

もしIndexがひとつでも残っている状態でBucketを削除しようとすると、以下のような ConflictException エラーが発生します。

aws s3vectors delete-vector-bucket \
  --vector-bucket-name "your-vector-bucket-name"

An error occurred (ConflictException) when calling the DeleteVectorBucket operation:
  The specified vector bucket is not empty

バケットとその中のインデックスをまとめて削除するシェルスクリプト

バケットとインデックスは1:多の関係にあり、削除に依存関係もあることから、Vector Bucketの削除は少し手間です。

作業を効率化するために、Vector Bucket名を指定するだけで、まるっと削除するのが次のシェルスクリプトです。

#!/bin/bash

VECTOR_BUCKET_NAME="your-vector-bucket-name"
REGION="us-east-1"

echo "------------------------------------------------------------"
echo "The following Vector Bucket and all indexes within it will be DELETED."
echo "  Bucket: $VECTOR_BUCKET_NAME"
echo "------------------------------------------------------------"

# Bucket内のすべてのIndexを取得
INDEXES=$(aws s3vectors list-indexes \
  --vector-bucket-name "$VECTOR_BUCKET_NAME" \
  --region "$REGION" \
  --query 'indexes[].indexName' \
  --output text)

for INDEX_NAME in $INDEXES; do
    echo "Deleting index: $INDEX_NAME"
    aws s3vectors delete-index \
      --vector-bucket-name "$VECTOR_BUCKET_NAME" \
      --index-name "$INDEX_NAME" \
      --region "$REGION" && \
    echo "✓ Successfully deleted index: $INDEX_NAME"
  done

# Vector Bucketを削除
echo "Deleting vector bucket: $VECTOR_BUCKET_NAME"
aws s3vectors delete-vector-bucket \
  --vector-bucket-name "$VECTOR_BUCKET_NAME" \
  --region "$REGION" && \
echo "✓ Successfully deleted vector bucket: $VECTOR_BUCKET_NAME"

関連するAWSリソースの削除も忘れずに

Amazon S3 Vectorsは、データソースであるAmazon S3バケットやAmazon Bedrock Knowledge Basesなど、他のAWSサービスと連携して使うことが一般的でしょう。

bedrock-kb-s3

Amazon S3 Vectorsを削除する際には、これらの関連リソースも不要であれば合わせて削除しましょう。

まとめ

Amazon S3 Vectors 削除時の重要なポイントを再確認します。

  • 2025年10月23日時点では、AWSコンソールから削除できず、AWS CLIやSDKからAPIを呼び出しする必要がある
  • 削除は Index→Bucketの順で行う
  • Vector BucketとVector Indexは1:多の関係にある

この記事をシェアする

FacebookHatena blogX

関連記事