# TigerBeetle Authors - TigerBeetle Design Document (Highlights)

## Metadata
**Review**:: [readwise.io](https://readwise.io/bookreview/25867337)
**Source**:: #from/readwise
**Zettel**:: #zettel/fleeting
**Status**:: #x
**Authors**:: [[TigerBeetle Authors]]
**Full Title**:: TigerBeetle Design Document
**Category**:: #articles #readwise/articles
**Category Icon**:: 📰
**URL**:: [github.com](https://github.com/tigerbeetledb/tigerbeetle/blob/fe09404d465df46b2bdfc017633eff37b4ab2343/docs/DESIGN.md)
**Host**:: [[github.com]]
**Highlighted**:: [[2023-04-04]]
**Created**:: [[2023-04-04]]
## Note
TigerBeetle is a highly-available, fault-tolerant database designed to exceed the safety and performance standards of general-purpose relational databases and in-memory databases. It uses a combination of CRCs, crash safety, disk corruption detection, cryptographic checksums, synchronous replication, and cluster-based timestamping to guarantee durability and low latency. It also uses fixed-size data structures, zero-copy Direct I/O, and thread-per-core design to optimize performance. Additionally, it has a strict single-threaded control flow, an OOM safety system, and is protocol-aware for recovery from consensus-based storage.
## Highlights
- TigerBeetle **performs synchronous replication** to a quorum of TigerBeetle servers using the pioneering [Viewstamped Replication](http://pmg.csail.mit.edu/papers/vr-revisited.pdf) and consensus protocol for low-latency automated leader election and to eliminate the risk of split-brain associated with manual failover. ([View Highlight](https://read.readwise.io/read/01gx55gxeq5pkf9x2kzpeyr557)) ^502938802
- TigerBeetle does not depend on synchronized system clocks, does not use leader leases, and **performs leader-based timestamping** so that your application can deal only with safe relative quantities of time with respect to transfer timeouts. ([View Highlight](https://read.readwise.io/read/01gx55ggphzar7e6yp1myerx8g)) ^502938783
- In practice, TigerBeetle is based on the [LMAX Exchange Architecture](https://skillsmatter.com/skillscasts/5247-the-lmax-exchange-architecture-high-throughput-low-latency-and-plain-old-java) and makes a few improvements. ([View Highlight](https://read.readwise.io/read/01gx55eg5qxjn10j0y6fv2fg4q)) ^502938732
- delete the local journalling step entirely ([View Highlight](https://read.readwise.io/read/01gx55e8y84p2jyfqy4hwndw0w)) ^502938717