株式会社オブライト
Network&Infra2026-04-07

Amazon S3 Vectors Complete Guide — Reduce AI/RAG Costs by 90% with Native Vector Search Storage [2026]

Complete guide to Amazon S3 Vectors (GA since December 2025). Covers up to 90% cost reduction vs dedicated vector DBs, 2-billion vectors per index, RAG with Bedrock Knowledge Bases, and Python code examples.


What Is Amazon S3 Vectors? — Key Points in 30 Seconds

Amazon S3 Vectors is the first cloud object storage service capable of storing and querying vector embeddings, reaching general availability (GA) in December 2025. It delivers up to 90% cost reduction compared to dedicated vector databases and scales to 2 billion vectors per index. AI applications such as RAG and semantic search can be built directly on S3 without provisioning additional database infrastructure.

Scale and Performance Overview

MetricSpecification
Max vectors per index2 billion
Max vectors per vector bucket20 trillion (10,000 indexes)
Frequent query latency~100 ms
Infrequent query latencyUnder 1 second
Max results per query100
Available regions (as of April 2026)14 regions

RAG Workflow Architecture

Loading diagram...

Pricing

S3 Vectors pricing (us-east-1 reference values, as of April 2026):

ItemPrice
Storage$0.05 / GB-month (4 bytes × dimensions × vector count)
Query (QueryVectors)$2.50 / 1M API calls
Write (InsertVectors)$0.50 / 1M API calls
Data processing$0.01 / GB (intra-region transfer is free)

Cost estimate example: Storing 1 million vectors at 1,536 dimensions costs approximately $0.30/month in storage (4 bytes × 1,536 dims × 1M vectors ≈ 5.86 GB × $0.05). Equivalent plans on dedicated vector DBs typically exceed $30/month, making the cost advantage clear.

API Reference

S3 Vectors supports REST API, AWS SDKs (Python, Java, Node.js, and more), and CLI.

APIPurpose
InsertVectorsWrite vectors with optional metadata
QueryVectorsApproximate nearest-neighbor (k-NN) search
ListVectorsList vectors in an index
GetVectorsRetrieve specific vectors by ID
DeleteVectorsDelete vectors
CreateIndexCreate a vector index
DescribeIndexRetrieve index metadata

Comparison with Dedicated Vector Databases

ProductStorage costQuery costMax scaleManagedS3 integration
S3 Vectors$0.05/GB-month$2.50/1M calls20 trillionFullyNative
Pinecone (Serverless)$0.08/GB-month$8/1M callsBillionsFullyRequires ETL
Weaviate Cloud$0.095/GB-month$10/1M callsBillionsFullyRequires ETL
Milvus (self-hosted)Infra costInfra costTrillionsSelf-managedRequires ETL
Qdrant Cloud$0.07/GB-month$7/1M callsBillionsFullyRequires ETL

S3 Vectors advantages: Native S3 integration allows seamless embedding into existing AWS workflows. No ETL pipeline is needed — data already on S3 can be vectorized and queried directly.

Building RAG with Bedrock Knowledge Bases

Combining Amazon Bedrock Knowledge Bases with S3 Vectors enables a fully managed RAG pipeline with minimal setup. 1. Prepare S3 bucket: Upload source documents (PDFs, text files, etc.) to an S3 bucket 2. Create S3 Vectors index: Create a vector index via the AWS Console or CLI 3. Configure Bedrock Knowledge Base: Specify your S3 bucket as the data source and S3 Vectors as the vector store 4. Select embedding model: Choose from Amazon Titan Embeddings V2 (1,536 dimensions), Cohere Embed, or others 5. Run sync: Bedrock Knowledge Base automatically chunks documents and stores embeddings in S3 Vectors 6. Execute RAG queries: Use Bedrock's RetrieveAndGenerate API for combined retrieval and generation

Python boto3 Code Examples

python
import boto3

s3vectors = boto3.client('s3vectors', region_name='us-east-1')

# Insert vectors
def insert_vectors(bucket_name, index_name, vectors):
    response = s3vectors.insert_vectors(
        vectorBucketName=bucket_name,
        indexName=index_name,
        vectors=[
            {
                'key': str(v['id']),
                'data': {'float32': v['embedding']},
                'metadata': {'source': v['source'], 'text': v['text']}
            }
            for v in vectors
        ]
    )
    return response

# Query (approximate nearest-neighbor search)
def query_vectors(bucket_name, index_name, query_embedding, top_k=5):
    response = s3vectors.query_vectors(
        vectorBucketName=bucket_name,
        indexName=index_name,
        queryVector={'float32': query_embedding},
        topK=top_k,
        returnMetadata=True
    )
    return response['vectors']

# Example usage
results = query_vectors(
    bucket_name='my-vector-bucket',
    index_name='documents-index',
    query_embedding=[0.1, 0.2, ...],  # 1536-dimension query vector
    top_k=10
)
for r in results:
    print(r['key'], r['score'], r['metadata']['text'])

Integration with SageMaker Unified Studio

S3 Vectors integrates natively with Amazon SageMaker Unified Studio (formerly SageMaker Studio) for end-to-end ML workflows. - Data preparation: Process data with SageMaker Data Wrangler and store directly in S3 Vectors - Experiment tracking: Use SageMaker Experiments to compare RAG accuracy across different embedding models - Model deployment: Build patterns where SageMaker real-time inference endpoints query S3 Vectors - Pipeline automation: Automate document ingestion → embedding generation → S3 Vectors index updates with SageMaker Pipelines

Recommended Use Cases

S3 Vectors excels in the following scenarios:

Use CaseDetails
RAG (Retrieval-Augmented Generation)Vectorize internal documents to improve LLM answer accuracy
Semantic searchSearch by meaning rather than keyword matching
Conversational AISemantically retrieve past conversation history to maintain context
Recommendation systemsRecommend similar items using product or content embeddings
Multi-agent workflowsShare vectorized knowledge across multiple AI agents
Duplicate detectionDetect semantic duplicates across documents or images at scale

Limitations and Constraints

Key constraints to understand before adopting S3 Vectors: - Real-time update frequency: Throttling may occur when updating large volumes of vectors in a short period. Batch updates are recommended - Maximum dimensions: Up to 4,096 dimensions per vector. Some cutting-edge embedding models (e.g., 8,192+ dimensions) may not be supported - Metadata filtering: Metadata filtering is limited to specific fields. Complex compound filter conditions favor dedicated vector DBs - Region availability: 14 regions as of April 2026, expanded from 5 at preview. Some regions remain unavailable - VPC endpoints: Public internet access is possible, but VPC endpoints are strongly recommended for production - Backup: Stored as S3 objects, so enabling S3 versioning provides automatic version management

Frequently Asked Questions (FAQ)

Q1. How easy is it to migrate from Pinecone or Weaviate? You will need to export your vector data and re-ingest it via the InsertVectors API, which may also involve metadata format conversion. AWS is building migration tooling, with a migration wizard expected in 2026. Q2. Is it suitable for use cases requiring frequent real-time vector updates? Hundreds of updates per second are well supported. If you require thousands of real-time updates per second, consider Amazon OpenSearch Service. Q3. How is security managed? Fine-grained access control via IAM policies, private access via VPC endpoints, and S3 standard encryption (SSE-S3 / SSE-KMS) all apply natively. Q4. Can I use embedding models other than Bedrock? Yes. Vectors generated by any embedding model — OpenAI, Cohere, HuggingFace, or others — can be stored via the InsertVectors API. The storage layer is model-agnostic. Q5. How do I estimate costs? Calculate GB as (vector count × dimensions × 4 bytes / 1,073,741,824). Multiply by $0.05 for storage cost. For queries, divide monthly query count by 1,000,000 and multiply by $2.50. Q6. Can I query directly from Lambda? Yes. You can call the QueryVectors API directly from Lambda using boto3. VPC endpoint access is recommended for production environments. Q7. What happens when I exceed 2 billion vectors per index? The 2-billion limit applies per index. You can split data across multiple indexes. A single bucket supports up to 10,000 indexes, scaling to a maximum of 20 trillion vectors.

AI/RAG Infrastructure Support by Oflight

Amazon S3 Vectors dramatically lowers the cost of building AI/RAG systems, but successful adoption requires expertise in embedding model selection, index design, and Bedrock integration. Oflight provides end-to-end support for designing and implementing RAG systems on S3 Vectors, as well as migrating from existing vector DB environments. We help you achieve cost reduction and performance improvements simultaneously with an architecture tailored to your needs. Learn more about our AI/ML infrastructure services

Feel free to contact us

Contact Us