object-store-best-practices

Enforce retry, error handling, and streaming patterns for object_store cloud storage operations.

2|1|Updated Oct 31, 2025
One-click install
npx skills add https://github.com/EmilLindfors/claude-marketplace --skill object-store-best-practices
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: object-store-best-practices
Source: https://github.com/EmilLindfors/claude-marketplace/tree/main/plugins/rust-data-engineering/skills/object-store-best-practices
Command: npx skills add https://github.com/EmilLindfors/claude-marketplace --skill object-store-best-practices

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill ensures robust cloud storage operations with the object_store crate, focusing on resilience, proper error handling, streaming of large objects, and efficient I/O patterns when working with S3, Azure Blob, or Google Cloud Storage.

Core Features & Use Cases

  • Retry-ready operations: Add retry configurations to handle transient cloud errors.
  • Error handling and context: Structured error types and context-rich messages.
  • Streaming large objects: Use streaming to process big files without loading all data into memory.
  • Multipart uploads for large files: Use multipart upload patterns for reliability.
  • Efficient listing and prefix-based scans: Optimize LIST operations with prefixes and pagination.

Quick Start

Configure an AmazonS3Builder with a RetryConfig and perform a read of a large object from a test bucket or local simulation.

Frequently Asked Questions about object-store-best-practices

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add retry logic to S3 operations with the object_store crate?

Retry logic in object_store is configured through RetryConfig on builders like AmazonS3Builder. Set retry policies to automatically handle transient cloud errors during uploads, downloads, and listings, improving resilience without manual error handling in your application code.

What's the best way to upload large files to cloud storage without loading everything into memory?

Multipart upload patterns in object_store break large files into chunks for reliable transfer. Streaming large objects avoids loading entire files into memory, making this approach essential for production workloads handling gigabyte-scale data on S3, Azure, or GCS.

How do I efficiently list objects in S3 or cloud storage with prefix filtering?

Prefix-based scans with pagination in object_store optimize LIST operations by filtering results server-side before retrieving them. This reduces API calls and bandwidth, critical for applications scanning large buckets or performing discovery at scale.

Can I use object_store with multiple cloud providers like S3, Azure, and Google Cloud?

Yes. object_store abstracts S3, Azure Blob, and Google Cloud Storage through unified builders—AmazonS3Builder, MicrosoftAzureBuilder, and GoogleCloudStorageBuilder. The same retry, streaming, and error-handling patterns apply across all providers.

What error handling patterns does object_store provide for cloud storage failures?

object_store enforces structured error types with context-rich messages, enabling applications to distinguish transient failures from permanent ones. Combined with retry configuration, this supports production resilience requirements and observability.

When should I use streaming versus multipart uploads for cloud storage?

Streaming handles memory efficiency for reading or processing large objects; multipart uploads handle reliability for writing large files. Both are complementary patterns in object_store—use multipart for uploads and streaming for downloads or iterative processing.