Tigerbeetle
The financial transactions database designed for mission critical safety and performance.
Install / Use
/learn @tigerbeetle/TigerbeetleREADME
tigerbeetle
TigerBeetle is the financial transactions database designed for mission critical safety and performance to power the next 30 years of OLTP.
Documentation
- https://docs.tigerbeetle.com
- The Primeagen video introduction to our design decisions regarding performance, safety, and debit/credit primitives.
- Redesigning OLTP for a New Order of Magnitude (QCon SF) talk with a deeper dive into TigerBeetle’s local storage engine and global consensus protocol.
- TIGER_STYLE.md, the engineering methodology behind TigerBeetle.
- Slack, say hello!
Start
Run a single-replica cluster on Linux (or other platforms):
$ curl -Lo tigerbeetle.zip https://linux.tigerbeetle.com && unzip tigerbeetle.zip
$ ./tigerbeetle version
$ ./tigerbeetle format --cluster=0 --replica=0 --replica-count=1 --development 0_0.tigerbeetle
$ ./tigerbeetle start --addresses=3000 --development 0_0.tigerbeetle
Connect to the cluster and make a transfer:
$ ./tigerbeetle repl --cluster=0 --addresses=3000
> create_accounts id=1 code=10 ledger=700, id=2 code=10 ledger=700;
{
"timestamp": "1761605367595515148",
"status": "tigerbeetle.CreateAccountStatus.created"
}
{
"timestamp": "1761605367595515149",
"status": "tigerbeetle.CreateAccountStatus.created"
}
> create_transfers id=1 debit_account_id=1 credit_account_id=2 amount=10 ledger=700 code=10;
{
"timestamp": "1761605382476666870",
"status": "tigerbeetle.CreateTransferStatus.created"
}
> lookup_accounts id=1, id=2;
{
"id": "1",
"user_data": "0",
"ledger": "700",
"code": "10",
"flags": "",
"debits_pending": "0",
"debits_posted": "10",
"credits_pending": "0",
"credits_posted": "0"
}
{
"id": "2",
"user_data": "0",
"ledger": "700",
"code": "10",
"flags": "",
"debits_pending": "0",
"debits_posted": "0",
"credits_pending": "0",
"credits_posted": "10"
}
Want to learn more? See https://docs.tigerbeetle.com.
