The app demonstrates the performance difference between SingleStore, MySQL and PostgreSQL in real-time analytics on operational data. It is a demo application built using the SingleStore Free Dev image, a MySQL image, and a PostgreSQL image.
- Install and launch Docker Desktop.
- Open a terminal in the root directory of the project and install dependencies by running:
npm i
. - In the
./apps/db
directory, create a.env
file based on.env.example
. - Start the Docker containers by running:
make up
. - Wait 5–10 seconds, then initialize the
singlestore
image by running:make singlestore-init
. - In the
./packages/singlestore
,./packages/postgres
, and./packages/mysql
directories, create.env
files based on the corresponding.env.example
files. - From the root directory of the project, push the database schemas by running:
npm run db:push
.
- In the
./apps/data-generator
directory, create a.env
file based on.env.example
. - Generate data (10M+ records) by running:
npm run generate:start
. - Load the data by running:
npm run load:start
. - Create indexes by running:
npm run indexes:create
.
- In the
./apps/client
, and./apps/server
directories, create.env
files based on the corresponding.env.example
files. - Build and start the app by running in the root of the project:
npm run build && npm run start
. - Open http://localhost:3000 in your browser.