BonsaiDb Commerce Benchmark

medium, writeheavy, 4 agent(s)

Configuration

Initial Data Set
Type Count
Products 1000
Categories 50
Customers 1000
Orders 1500
Shopping Plans

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

Operation Invocations
Load 1
LookupProduct 2721
FindProduct 2726
CreateCart 994
AddProductToCart 4911
Checkout 887
RateProduct 3927

Summary

Backend Total Time Wall Time Transport
bonsaidb-local 53.46s 13.37s None
bonsaidb-local+lz4 47.33s 11.83s TCP
bonsaidb-quic 51.84s 12.96s UDP with TLS
bonsaidb-ws 51.30s 12.82s TCP
postgresql 50.79s 12.70s 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 271.0ms 271.0ms 271.0ms 0s 0
bonsaidb-local+lz4 273.2ms 273.2ms 273.2ms 0s 0
bonsaidb-quic 290.4ms 290.4ms 290.4ms 0s 0
bonsaidb-ws 333.7ms 333.7ms 333.7ms 0s 0
postgresql 4.182s 4.182s 4.182s 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 2721 time(s) across each backend.

Backend Avg Min Max StdDev Outliers
bonsaidb-local 130.0us 64.05us 1.791ms 59.98us 25
bonsaidb-local+lz4 134.2us 66.40us 2.096ms 65.13us 22
bonsaidb-quic 580.3us 436.0us 5.531ms 159.5us 5
bonsaidb-ws 441.2us 317.8us 3.801ms 115.5us 12
postgresql 2.742ms 338.8us 44.45ms 2.754ms 11
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 2726 time(s) across each backend.

Backend Avg Min Max StdDev Outliers
bonsaidb-local 252.0us 134.9us 13.95ms 274.6us 4
bonsaidb-local+lz4 253.5us 142.4us 2.145ms 76.08us 26
bonsaidb-quic 927.7us 716.5us 5.701ms 178.6us 14
bonsaidb-ws 716.2us 539.9us 3.227ms 106.1us 24
postgresql 3.038ms 434.5us 44.38ms 3.348ms 17
CreateCart

Measures the time spent creating a shopping cart.

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

Backend Avg Min Max StdDev Outliers
bonsaidb-local 2.964ms 921.4us 7.678ms 957.1us 11
bonsaidb-local+lz4 2.627ms 849.6us 16.74ms 1.026ms 11
bonsaidb-quic 2.366ms 955.0us 13.88ms 1.013ms 14
bonsaidb-ws 2.447ms 863.7us 19.57ms 1.150ms 14
postgresql 1.010ms 608.5us 7.994ms 424.4us 13
AddProductToCart

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

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

Backend Avg Min Max StdDev Outliers
bonsaidb-local 3.138ms 715.8us 17.34ms 1.027ms 59
bonsaidb-local+lz4 2.783ms 775.3us 15.08ms 958.5us 70
bonsaidb-quic 2.764ms 1.212ms 63.31ms 1.744ms 12
bonsaidb-ws 2.713ms 1.041ms 21.82ms 1.029ms 48
postgresql 957.7us 559.6us 8.895ms 367.5us 59
Checkout

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

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

Backend Avg Min Max StdDev Outliers
bonsaidb-local 5.687ms 2.233ms 19.03ms 1.626ms 11
bonsaidb-local+lz4 4.994ms 1.959ms 17.81ms 1.587ms 9
bonsaidb-quic 5.362ms 2.859ms 15.63ms 1.427ms 17
bonsaidb-ws 5.393ms 2.504ms 26.28ms 1.533ms 7
postgresql 1.462ms 955.8us 35.03ms 1.630ms 2
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 3927 time(s) across each backend.

Backend Avg Min Max StdDev Outliers
bonsaidb-local 7.322ms 2.863ms 30.84ms 2.115ms 26
bonsaidb-local+lz4 6.440ms 2.150ms 18.93ms 1.862ms 43
bonsaidb-quic 6.814ms 2.701ms 66.12ms 2.091ms 23
bonsaidb-ws 6.946ms 2.113ms 72.09ms 2.860ms 19
postgresql 6.075ms 2.686ms 46.01ms 3.713ms 36