Simple DB insert per second
docker pull postgres:latest
docker run -it --rm postgres:latest psql -V
# psql (PostgreSQL) 17.6 (Debian 17.6-1.pgdg13+1)
Inserted 1063 rows in 1.00 seconds (1062.32 inserts/second)
CREATE TABLE impressions (
impression_id VARCHAR(100) PRIMARY KEY,
ad_id VARCHAR(100) NOT NULL,
image_url VARCHAR(4000) NOT NULL,
click_url VARCHAR(4000) NOT NULL,
impression_time TIMESTAMPTZ DEFAULT (CURRENT_TIMESTAMP AT TIME ZONE 'UTC')
);
# 23.9.0.25.07
docker pull container-registry.oracle.com/database/free:latest
Inserted 860 rows in 1.00 seconds (858.82 inserts/second)
CREATE TABLE impressions (
impression_id VARCHAR2(100) PRIMARY KEY,
ad_id VARCHAR2(100) NOT NULL,
image_url VARCHAR2(4000) NOT NULL,
click_url VARCHAR2(4000) NOT NULL,
impression_time TIMESTAMP WITH TIME ZONE DEFAULT (SYSTIMESTAMP AT TIME ZONE 'UTC')
);
Inserted 685 rows in 1.00 seconds (684.80 inserts/second)
docker pull cassandra:latest
docker run --name cassandra1 -d --network host cassandra:latest
docker logs -f cassandra1
docker exec -it cassandra1 cqlsh
CREATE KEYSPACE ks1 WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 1};
DESCRIBE ks1
CREATE TABLE ks1.impressions (
impression_id VARCHAR PRIMARY KEY,
ad_id VARCHAR,
image_url VARCHAR,
click_url VARCHAR,
impression_time TIMESTAMP
);
Inserted 587 rows in 1.00 seconds (586.98 inserts/second)
docker network ls
docker network rm scylla-network
docker network create scylla-network
docker run --name scylla-node1 --network scylla-network -d --restart unless-stopped scylladb/scylla:latest
# docker run --name scylla-node2 --network scylla-network -d --restart unless-stopped scylladb/scylla:latest --seeds=scylla-node1
# docker run --name scylla-node3 --network scylla-network -d --restart unless-stopped scylladb/scylla:latest --seeds=scylla-node1
docker ps
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' 1d1125344480
nc -zv 172.22.0.2 1521
docker stop scylla-node1
docker rm scylla-node1
docker exec -it scylla-node1 cqlsh
CREATE KEYSPACE ks1 WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 1};
DESCRIBE ks1
CREATE TABLE ks1.impressions (
impression_id VARCHAR PRIMARY KEY,
ad_id VARCHAR,
image_url VARCHAR,
click_url VARCHAR,
impression_time TIMESTAMP
);
Inserted 32784 impressions in 1.00 seconds (32783.21 inserts/second)
Inserted 437000 impressions in 1.00 seconds (436891.20 inserts/second)
Starting load test: url=http://localhost:8080/sell concurrency=8 total=1000
Load test completed. Success=1000, Failed=0, elapsed=3.796909835s, throughput=263.37 req/s