Visualizers

Learn by moving things

Interactive explainers for the ideas behind retrieval, embeddings, and agents. A formula tells you what is true; dragging a vector shows you why. Each one also appears inside the article it belongs to, and runs entirely in your browser, so drag, poke, and break it.

Portrait of Sachin Gupta rendered in binary

Split the log, keep each key in order

From: The Log: One Record Everyone Can Replay

A topic is split into partitions so many can read and write at once. Records with the same key (a customer id) always land in the same partition, so that customer's events stay in order, though there is no single order across partitions.

Split the log, keep each key in orderinteractive
producerkey = idpartition 0order keptpartition 1order keptpartition 2order kept

Order events arrive, each with a customer id as its key.

Split the work, or each take it all

From: The Log: One Record Everyone Can Replay

Within one consumer group each partition goes to exactly one consumer, so the group shares the load like a queue. A second, separate group reads every record for itself, like pub/sub. One log gives you both patterns.

One team splits the work, many teams each get it allinteractive
topic: 3 partitionsP0P1P2billing group (splits the work)consumer 1consumer 2consumer 3analytics group (reads them all)consumer

The topic has 3 partitions. The billing group has 3 consumers.

The sender fires one message and never retries. Most of the time it arrives; if the network drops it, it is lost and the sender never finds out. Fast and simple, and never duplicated, for data you can afford to miss.

Send it and hopeinteractive
senderno retryreceiverwaiting

The sender fires one message and does not wait for any reply.

Visualizers — Sachin Gupta