Managed Storage

Managed storage is selected by access pattern: object storage for immutable blobs and datasets, block storage for attached disks, file storage for POSIX-like shared paths, warehouses for analytical tables, databases for serving state, and caches for repeated low-latency reads. The wrong abstraction creates both performance and cost management problems.

Storage service types

Each type is defined by its access pattern, and mismatches are the usual source of cost and latency surprises:

TypeAccess patternGood fitPoor fit
Objectkey-addressed blob GET/PUTdatasets, model artifacts, backupslow-latency mutation, POSIX I/O
Blockattached disk, random R/Wdatabase volumes, boot disksshared multi-host access
FilePOSIX shared pathshared home dirs, legacy appsmassive object throughput
Warehouseanalytical SQL over columnsfacts and dimensions, BI queriestransactional row serving
Databaseindexed row or key servingapplication state, low-latency readslarge analytical scans
Cachein-memory key lookuphot repeated readsdurable storage of record

Object stores such as S3 and Cloud Storage expose buckets, object keys, metadata, IAM, lifecycle rules, and storage classes. They are excellent for cloud storage, model artifacts, and distributed data processing inputs. They are not low-latency mutable filesystems. A practical storage contract should state:

flowchart LR
  Shape[Data shape] --> Pattern[Read and write pattern]
  Pattern --> Consistency[Consistency need]
  Consistency --> Retention[Retention]
  Retention --> Recovery[Recovery target]
  Recovery --> Class[Storage class]

Lifecycle policy is part of the mechanism, not cleanup afterthought. For example, training checkpoints might stay in frequent-access storage for 14 days, transition to cold storage for 90 days, then expire after model governance requirements are met.

Worked small-object check

Some infrequent-access object classes have minimum billable object sizes. For 50 million feature fragments of 32 KiB each, the physical payload is

If each object is billed as at least 128 KiB, the billable storage becomes

which is a multiplier. The fix is architectural: compact small records into Parquet/Avro shards or a table format before moving them to colder classes. Otherwise storage and decoding bottlenecks show up as slow listing, excess requests, and poor scan throughput.

Caveats

Durability and availability are different. Archive classes can be durable but have minimum durations, retrieval fees, or lower availability. Replication improves recovery but adds write amplification and egress. Backups are only reliable after restore tests prove that credentials, schemas, and dependencies still work.

References