BonsaiDb Commerce Benchmark

large, writeheavy, 2 agent(s)

Configuration

Initial Data Set
Type Count
Products 5000
Categories 100
Customers 5000
Orders 5000
Shopping Plans

This run executed 1000 shopping plans across 2 worker(s). All total, the workers will execute the following breakdown of operations:

Operation Invocations
Load 1
LookupProduct 2678
FindProduct 2803
CreateCart 987
AddProductToCart 4942
Checkout 874
RateProduct 3902

Summary

Backend Total Time Wall Time Transport
bonsaidb-local 7.916s 3.958s None
bonsaidb-local+lz4 8.571s 4.286s TCP
bonsaidb-quic 14.83s 7.413s UDP with TLS
bonsaidb-ws 12.14s 6.072s TCP
postgresql 115.5s 57.76s TCP
Table of Contents:

Operation Results

Load

Measures the time spent loading the initial data set and performing any pre-cache operations that most database administrators would perform on their databases periodically to ensure good performance.

This operation was executed 1 time(s) across each backend.

Backend Avg Min Max StdDev Outliers
bonsaidb-local 462.8ms 462.8ms 462.8ms 0s 0
bonsaidb-local+lz4 483.7ms 483.7ms 483.7ms 0s 0
bonsaidb-quic 541.8ms 541.8ms 541.8ms 0s 0
bonsaidb-ws 518.2ms 518.2ms 518.2ms 0s 0
postgresql 42.28s 42.28s 42.28s 0s 0
LookupProduct

Meaures the time spent looking up a product by its id. This operation is meant to simulate the basic needs of the database to provide a product details page after a user clicked a direct link that contians the product's unique id, including the product's current rating.

This operation was executed 2678 time(s) across each backend.

Backend Avg Min Max StdDev Outliers
bonsaidb-local 154.7us 50.50us 10.22ms 276.9us 12
bonsaidb-local+lz4 161.7us 52.30us 5.956ms 184.7us 16
bonsaidb-quic 628.7us 350.6us 10.63ms 588.0us 31
bonsaidb-ws 432.8us 237.9us 8.814ms 335.2us 29
postgresql 3.012ms 509.7us 42.22ms 2.676ms 33
FindProduct

Measures the time spent looking up a product by its name (exact match, indexed). This operation is meant to simulate the basic needs of the database to provide a product details after finding a product by its name, including the product's current rating.

This operation was executed 2803 time(s) across each backend.

Backend Avg Min Max StdDev Outliers
bonsaidb-local 303.6us 78.80us 7.569ms 244.9us 27
bonsaidb-local+lz4 330.4us 89.10us 11.21ms 340.7us 22
bonsaidb-quic 760.6us 402.4us 13.62ms 497.1us 29
bonsaidb-ws 615.9us 304.3us 10.44ms 499.2us 36
postgresql 3.352ms 605.1us 63.22ms 3.302ms 21
CreateCart

Measures the time spent creating a shopping cart.

This operation was executed 987 time(s) across each backend.

Backend Avg Min Max StdDev Outliers
bonsaidb-local 246.3us 105.9us 4.445ms 173.0us 6
bonsaidb-local+lz4 281.6us 109.0us 5.920ms 263.0us 8
bonsaidb-quic 471.4us 253.8us 4.945ms 368.0us 14
bonsaidb-ws 379.4us 199.9us 5.340ms 324.5us 11
postgresql 2.182ms 994.0us 15.53ms 1.528ms 22
AddProductToCart

Measures the time spent adding a product to a shopping cart.

This operation was executed 4942 time(s) across each backend.

Backend Avg Min Max StdDev Outliers
bonsaidb-local 345.9us 136.2us 6.342ms 218.6us 54
bonsaidb-local+lz4 374.1us 144.0us 9.339ms 313.4us 44
bonsaidb-quic 783.7us 438.6us 10.53ms 522.8us 61
bonsaidb-ws 620.2us 336.4us 11.41ms 549.2us 45
postgresql 2.161ms 929.2us 47.76ms 1.808ms 95
Checkout

Measures the time spent converting a shopping cart into an order for a customer.

This operation was executed 874 time(s) across each backend.

Backend Avg Min Max StdDev Outliers
bonsaidb-local 595.4us 255.8us 7.648ms 365.3us 12
bonsaidb-local+lz4 676.9us 285.6us 11.50ms 691.3us 9
bonsaidb-quic 1.222ms 771.3us 8.723ms 632.5us 17
bonsaidb-ws 970.6us 576.4us 15.76ms 711.8us 8
postgresql 2.411ms 991.9us 18.94ms 1.583ms 16
RateProduct

Measures the time spent adding or updating a review of a product by a customer. Each customer can only have one review per product. When this operation is complete, all subsequent calls to LookupProduct and FindProduct should reflect the new rating. This simulates an 'upsert' (insert or update) operation using a unique index.

This operation was executed 3902 time(s) across each backend.

Backend Avg Min Max StdDev Outliers
bonsaidb-local 951.9us 229.9us 48.11ms 1.149ms 10
bonsaidb-local+lz4 1.028ms 509.4us 51.62ms 1.216ms 24
bonsaidb-quic 1.297ms 760.2us 49.40ms 1.233ms 32
bonsaidb-ws 1.141ms 635.3us 48.36ms 1.319ms 32
postgresql 10.47ms 4.365ms 66.15ms 4.580ms 38