diff options
| author | eunhhu <[email protected]> | 2026-09-27 23:39:29 +0100 |
|---|---|---|
| committer | eunhhu <[email protected]> | 2026-09-27 23:39:29 +0100 |
| commit | 44740eb93a69a052ee7b4c46f2ccac384c9d4f36 (patch) | |
| tree | ce7ebe995625a2621c0a9289fae06f069b8d9e80 /.github/workflows/native-linux-4k-page-store.yml | |
| parent | ad27f1f5a4fc7a53d116feb9b1e2352239147fe0 (diff) | |
| download | pure-44740eb93a69a052ee7b4c46f2ccac384c9d4f36.tar.gz pure-44740eb93a69a052ee7b4c46f2ccac384c9d4f36.zip | |
Run pgbench's transaction on a bank of 100,000 accounts, beside SQLite (090)
benchmarks/bank/bank.aup keeps accounts, tellers and branches as keyed
lists and a history list; a transfer changes a row of each and appends a
history row in one event, as pgbench's TPC-B-like transaction does in
SQL. run.py makes a scale's rows and drives transfers through the load
generator's new transfer kind; sqlite-bank.c runs the same tables and
SQL on SQLite 3.46.1, a connection a thread, WAL.
With lists as trees, transfers run at 30.5k a second on 1,000 accounts
and 24.5k on 100,000 (RAM store, one connection thread, HTTP and JSON
included), where they ran at 3.2k on 30,000 before. Durable on the SD
card, Pure makes 1,339 a second and SQLite with synchronous=FULL 84 to
153. SQLite in process with no HTTP makes about 40k in RAM: recorded as
it is, with the write amplification of 100,000-row tables on the card
and ad hoc queries as what comes next.
Diffstat (limited to '.github/workflows/native-linux-4k-page-store.yml')
0 files changed, 0 insertions, 0 deletions
