Not two databases. Not two APIs to keep in sync. One store, one transaction, one set of entities — reached whichever way the work in front of you needs.
One background at a time. If your stack today is SQL Server + Entity Framework + SignalR, this is the direct translation — and the clearest way to see what “one engine” actually removes.
Every component type declares its own tier. But the cost depends far more on how you reach the data than on the tier.
Durability is a separate axis from atomicity, and you pick where you sit on it. The question isn't “is my data safe” — it's how much recent work can a crash cost me?
An engine offering fewer guarantees is faster because it does less work. So: against the durable engines that carry comparable machinery, and then on the route no key-value store has at all.
You declare what each system reads and writes. The engine derives the execution graph once, runs it across every core, and refuses to build an unsafe one.
Everything is public — the engine, the docs, and the benchmark harness that produced every number in this deck.