liveBook · Manning

Decomposition

As explained in Machine Learning System Design

Decomposition is a release strategy that allows different system components to be deployed and managed independently.

An ML system does not have to follow one release strategy from end to end. Decomposition lets components be deployed and managed separately: a model might receive a canary rollout, while an API layer follows a more traditional release process. The practical question is which parts need the same rollout controls and which do not. section 13.2

Start by sketching the system as a few clear blocks. Breaking a large problem into stages can make each stage easier to reason about: a search engine can quickly filter candidates, then apply a more sophisticated ranking step to the smaller set. That design breakdown helps identify components, but it does not by itself dictate how each one must be released. section 3.3 section 3.5

Choose a rollout for the component

Suppose a new model needs a cautious production rollout. A canary deployment sends a small portion of existing users to the new version while the old one continues running, making it easier to check the change and roll back. The API layer need not use that same approach. Do not mistake the canary for an A/B test: a canary checks whether a new version is ready for broader use; an A/B test compares versions’ performance. section 13.2

How Machine Learning System Design covers it

How deep it goes
Illustrates component-specific releases with a model and API layer, but gives no step-by-step decomposition procedure.
Examples
Contrasts a model released through canary deployment with an API layer released traditionally.
What you can do after
Evaluate/understand it to choose whether different ML system components need different rollout approaches.
How it connects
Connects decomposition to system design, canary deployment, and traditional release processes.

Also explained in

Compare how 10 books explain decomposition →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Machine Learning System Design. The section links point to the parts of the book it draws on.