Design of a Blob Store

Lesson 82 of 25610 min readPremium lesson preview
In this lesson3 sections

Design of a Blob Store

The blob store separates metadata decisions from bulk data transfer. Follow one upload through chunk placement and commit, then use that distinction to reason about reads, retries, and deletion.

High-level design

A blob store system consists of three core components: clients, frontend servers, and storage disks.

The high-level design of a blob store
The high-level design of a blob store

Frontend servers receive client requests and store blobs on attached storage disks.

API design

These logical operations assume an authenticated account. Check authorization for the named container or blob on each request; a valid account is not permission to access every object. Public reads are a separate access-policy case.

Create container

The createContainer operation creates a new container under the current user’s account.

createContainer(containerName)

The rest of this lesson is for Premium members

Premium opens every lesson in this course, along with all questions and solutions on PracHub.