Labs โ€บ product catalogue with search on AWS0 / 9

Step 1 of 9 ยท Intro

Design a product catalogue with search on AWS

Keep one source of truth, and add a search index and a cache that can fail without taking lookups down.

How it works

  • โ€บAurora is the system of record. Lookups by id go to ElastiCache first and fall through to Aurora on a miss (cache-aside).
  • โ€บOpenSearch answers text queries and filters. It is a derived copy, filled by an indexing pipeline, so it is eventually consistent and can be rebuilt from Aurora.
  • โ€บRequests here split evenly between the two paths, since the model sends traffic to every connected component in proportion to its size.
  • โ€บLimits come from AWS documentation (default quotas in us-east-1). Where AWS publishes no figure, such as how many requests a container or database handles, the lab states its assumption on the component.

What you'll build

  1. Cache-aside lookups at 2,000 requests a second
  2. A search index alongside, at 5,000
  3. A plan to keep the index fresh
  4. A design where losing the index leaves lookups working
  5. A search tier that carries twice the traffic
  6. Cache stampedes, invalidation and degraded mode