Designing Data Storage Architecture

1. Choosing Object Storage

PropertyObject Storage
ExamplesS3, GCS, Azure Blob, MinIO
APIHTTP REST (PUT/GET/DELETE)
Durability11 nines (S3 standard)
ThroughputMassively parallel
LimitsNo partial updates; eventual list
Best forBackups, media, data lake, large blobs

2. Designing Block Storage Architecture

PropertyDetail
ExamplesEBS, GCE PD, Azure Disk, iSCSI
AccessMount as block device, format FS
IOPSProvisioned (gp3, io2)
Best forDatabases, OS volumes
SnapshotsIncremental, copy-on-write

3. Designing File Storage Systems

TypeExamplesUse Case
NFSEFS, GCP FilestoreShared POSIX
SMBFSx for WindowsWindows shares
Parallel FSLustre, GPFSHPC
Local FSext4, xfs, zfsSingle-node

4. Designing Distributed File Systems

SystemModel
HDFSMaster (NameNode) + DataNodes; 3× replication
CephCRUSH map; object/block/file
GlusterFSNo metadata server, elastic hashing
JuiceFS / AlluxioPOSIX over object storage

5. Designing Data Lake Architecture

LayerComponent
StorageS3 / GCS / ADLS
FormatParquet, ORC, Avro
CatalogGlue, Hive Metastore, Unity Catalog
ComputeSpark, Trino, Presto, Athena
ZonesRaw / Cleansed / Curated (medallion)

6. Designing Data Lakehouse Architecture

CapabilityTech
ACID on lakeDelta Lake, Iceberg, Hudi
Time travelSnapshot versions, AS OF queries
Schema evolutionAdd/rename columns safely
Streaming ingestStructured Streaming, Flink
EngineSpark, Trino, DuckDB

7. Designing Cold vs Hot Storage Strategy

TierCostAccess LatencyUse
Hot (SSD/standard)$$$msActive data
Warm (IA, Nearline)$$msInfrequent
Cold (Glacier, Coldline)$min–hoursBackups
Archive (Deep)¢hours–12hCompliance

8. Designing Data Archival Strategy

ElementRecommendation
Retention policyPer data class; compliance-driven
Lifecycle rulesS3 lifecycle: hot → IA → Glacier
FormatCompressed Parquet/Avro
EncryptionSSE-KMS at rest
Restore SLADocument expected RTO

9. Designing Blob Storage Patterns

PatternDescription
Pre-signed URLsDirect upload/download from client
Multipart uploadFiles >100MB; parallel parts
Resumable uploadNetwork-tolerant uploads
Content-addressedSHA-256 as key for dedup
Server-side processingS3 Object Lambda, GCS triggers

10. Designing Storage Tiering

StrategyTrigger
Time-basedMove after N days unaccessed
Access patternS3 Intelligent-Tiering moves automatically
ManualLifecycle rules per prefix
Tag-basedMove based on object tags

11. Designing Storage Replication Strategy

TypeDescription
Same-region3+ AZs, durability
Cross-regionS3 CRR; DR + low-latency reads
Cross-accountCompliance, isolation
Replication metricsReplication lag monitor

12. Designing Object Versioning Strategy

FeatureNotes
Versioning enabledEach PUT creates new version
Object LockWORM compliance (governance/compliance mode)
LifecycleExpire noncurrent versions after N days
MFA deleteProtects against accidental delete