Skip to content

Commit 0ed6fd4

Browse files
Commit from GitHub Actions (ORM Benchmark)
1 parent e6bda00 commit 0ed6fd4

18 files changed

+483
-483
lines changed

bun.lockb

-409 Bytes
Binary file not shown.

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,22 +12,22 @@
1212
"typescript": "^5.0.0"
1313
},
1414
"dependencies": {
15-
"@faker-js/faker": "^9.8.0",
15+
"@faker-js/faker": "^9.9.0",
1616
"@mikro-orm/core": "^6.4.16",
1717
"@mikro-orm/mysql": "^6.4.16",
1818
"@mikro-orm/postgresql": "^6.4.16",
1919
"@pgtyped/runtime": "^2.4.2",
20-
"@prisma/client": "^6.10.1",
20+
"@prisma/client": "^6.11.1",
2121
"drizzle-orm": "^0.44.2",
2222
"knex": "^3.1.0",
2323
"kysely": "^0.28.2",
24-
"mariadb": "^3.4.2",
24+
"mariadb": "^3.4.4",
2525
"mitata": "^1.0.34",
2626
"mysql2": "^3.14.1",
2727
"pg": "^8.16.3",
2828
"pg-pool": "^3.10.1",
2929
"postgres": "~3.4.7",
30-
"prisma": "^6.10.1",
30+
"prisma": "^6.11.1",
3131
"reflect-metadata": "^0.2.2",
3232
"sequelize": "^6.37.7",
3333
"ts-node": "^10.9.2",

results/bun-mysql-cpu-count.txt

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,43 @@
1-
clk: ~3.07 GHz
1+
clk: ~3.08 GHz
22
cpu: AMD EPYC 7763 64-Core Processor
3-
runtime: bun 1.2.17 (x64-linux)
3+
runtime: bun 1.2.18 (x64-linux)
44

55
benchmark avg (min … max) p75 / p99 (min … top 1%)
66
------------------------------------------- -------------------------------
77
• MySQL
88
------------------------------------------- -------------------------------
9-
DrizzleORM 515.40 µs/iter 504.14 µs █
10-
(356.03 µs … 2.93 ms) 2.00 ms █
11-
( 0.00 b … 1.88 mb) 28.22 kb ███▄▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
9+
DrizzleORM 525.59 µs/iter 519.23 µs █
10+
(367.51 µs … 3.35 ms) 1.78 ms █
11+
( 0.00 b … 4.63 mb) 26.97 kb ▇██▅▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
1212

13-
KnexJS 342.29 µs/iter 333.10 µs █
14-
(261.86 µs … 1.87 ms) 1.26 ms ▂█
15-
( 0.00 b … 256.00 kb) 2.27 kb ██▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
13+
KnexJS 349.04 µs/iter 347.27 µs █
14+
(263.38 µs … 1.84 ms) 1.36 ms ▇█▂
15+
( 0.00 b … 256.00 kb) 2.20 kb ██▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
1616

17-
Kysely 311.01 µs/iter 305.90 µs
18-
(248.60 µs … 1.76 ms) 1.18 ms
19-
( 0.00 b … 512.00 kb) 3.42 kb ██▆▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
17+
Kysely 310.70 µs/iter 306.62 µs
18+
(250.76 µs … 1.42 ms) 1.20 ms
19+
( 0.00 b … 384.00 kb) 3.11 kb ██▆▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
2020

21-
Mariadb 243.16 µs/iter 242.50 µs █
22-
(185.63 µs … 1.37 ms) 1.06 ms
23-
( 0.00 b … 256.00 kb) 1.20 kb ██▆▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
21+
Mariadb 248.79 µs/iter 244.51 µs █
22+
(186.06 µs … 1.82 ms) 1.18 ms
23+
( 0.00 b … 256.00 kb) 1.67 kb ██▆▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
2424

25-
MikroORM 467.58 µs/iter 579.40 µs ▆
26-
(33.52 µs … 2.77 ms) 2.14 ms █ ██
27-
( 0.00 b … 640.00 kb) 13.53 kb █▂▁▁██▄▂▂▁▁▁▁▁▁▁▁▁▁
25+
MikroORM 481.05 µs/iter 584.05 µs ▆
26+
(28.68 µs … 3.33 ms) 2.21 ms █ ██
27+
( 0.00 b … 640.00 kb) 13.54 kb █▂▁▁██▄▂▂▁▁▁▁▁▁▁▁▁▁
2828

29-
MySQL2 265.22 µs/iter 264.84 µs █
30-
(208.11 µs … 1.52 ms) 1.13 ms
31-
( 0.00 b … 256.00 kb) 1.31 kb ██▆▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
29+
MySQL2 266.45 µs/iter 261.13 µs █
30+
(203.19 µs … 1.68 ms) 1.22 ms
31+
( 0.00 b … 256.00 kb) 1.27 kb ██▅▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
3232

33-
Prisma 544.18 µs/iter 528.82 µs █
34-
(458.58 µs … 1.89 ms) 1.44 ms █
35-
( 0.00 b … 816.00 kb) 3.67 kb ▇█▆▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
33+
Prisma 546.66 µs/iter 528.41 µs █
34+
(456.70 µs … 1.66 ms) 1.48 ms █
35+
( 0.00 b … 896.00 kb) 3.74 kb ▆█▅▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
3636

37-
Sequelize 487.14 µs/iter 474.67 µs █
38-
(349.75 µs … 2.91 ms) 1.78 ms
39-
( 0.00 b … 768.00 kb) 18.51 kb ▆██▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
37+
Sequelize 493.28 µs/iter 487.29 µs █
38+
(350.27 µs … 2.97 ms) 1.78 ms ▂█▂
39+
( 0.00 b … 896.00 kb) 15.75 kb ███▄▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
4040

41-
TypeORM 435.88 µs/iter 422.58 µs █
42-
(318.25 µs … 2.26 ms) 1.62 ms
43-
( 0.00 b … 512.00 kb) 4.82 kb ███▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
41+
TypeORM 444.62 µs/iter 433.69 µs █
42+
(321.81 µs … 2.49 ms) 1.79 ms
43+
( 0.00 b … 384.00 kb) 7.36 kb ██▇▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁

results/bun-mysql-default.txt

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,43 @@
1-
clk: ~1.57 GHz
1+
clk: ~3.08 GHz
22
cpu: AMD EPYC 7763 64-Core Processor
3-
runtime: bun 1.2.17 (x64-linux)
3+
runtime: bun 1.2.18 (x64-linux)
44

55
benchmark avg (min … max) p75 / p99 (min … top 1%)
66
------------------------------------------- -------------------------------
77
• MySQL
88
------------------------------------------- -------------------------------
9-
DrizzleORM 528.60 µs/iter 522.31 µs █
10-
(365.93 µs … 3.79 ms) 1.94 ms █
11-
( 0.00 b … 3.13 mb) 29.74 kb ▇██▅▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
9+
DrizzleORM 534.51 µs/iter 538.38 µs █
10+
(364.46 µs … 4.66 ms) 1.93 ms █
11+
( 0.00 b … 5.63 mb) 30.49 kb ▆██▆▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
1212

13-
KnexJS 354.71 µs/iter 342.13 µs
14-
(267.08 µs … 2.10 ms) 1.49 ms
15-
( 0.00 b … 256.00 kb) 2.29 kb ██▆▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
13+
KnexJS 343.01 µs/iter 339.20 µs
14+
(259.87 µs … 2.07 ms) 1.22 ms
15+
( 0.00 b … 256.00 kb) 2.36 kb ███▄▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
1616

17-
Kysely 317.21 µs/iter 311.32 µs █
18-
(248.18 µs … 1.78 ms) 1.32 ms ▅█
19-
( 0.00 b … 768.00 kb) 4.24 kb ██▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
17+
Kysely 316.19 µs/iter 314.46 µs █
18+
(248.74 µs … 1.74 ms) 1.17 ms ▅█
19+
( 0.00 b … 768.00 kb) 3.73 kb ██▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
2020

21-
Mariadb 262.22 µs/iter 255.52 µs █
22-
(187.52 µs … 1.87 ms) 1.21 ms
23-
( 0.00 b … 256.00 kb) 1.56 kb ██▆▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
21+
Mariadb 250.94 µs/iter 248.27 µs █
22+
(188.36 µs … 1.60 ms) 1.10 ms
23+
( 0.00 b … 256.00 kb) 1.78 kb ██▆▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
2424

25-
MikroORM 500.36 µs/iter 610.31 µs ▂
26-
(35.28 µs … 3.08 ms) 2.38 ms █ █▆
27-
( 0.00 b … 896.00 kb) 13.25 kb █▂▁▁██▆▂▂▁▁▁▁▁▁▁▁▁▁▁▁
25+
MikroORM 477.68 µs/iter 591.29 µs ▂
26+
(28.77 µs … 2.81 ms) 2.00 ms █ █▄
27+
( 0.00 b … 896.00 kb) 12.37 kb █▂▁▁▇██▅▃▂▁▁▁▁▁▁▁▁▁▁▁
2828

29-
MySQL2 266.43 µs/iter 263.89 µs █
30-
(206.06 µs … 1.42 ms) 1.20 ms
31-
( 0.00 b … 256.00 kb) 1.05 kb ██▅▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
29+
MySQL2 263.35 µs/iter 257.53 µs █
30+
(202.28 µs … 1.61 ms) 1.20 ms
31+
( 0.00 b … 256.00 kb) 1.36 kb ██▅▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
3232

33-
Prisma 539.75 µs/iter 523.88 µs █
34-
(454.51 µs … 1.74 ms) 1.46 ms █
35-
( 0.00 b … 716.00 kb) 3.65 kb █▆▂▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
33+
Prisma 556.09 µs/iter 536.21 µs █
34+
(455.19 µs … 1.92 ms) 1.55 ms █
35+
( 0.00 b … 896.00 kb) 3.81 kb █▆▂▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
3636

37-
Sequelize 498.62 µs/iter 487.10 µs █
38-
(350.45 µs … 2.36 ms) 1.93 ms █
39-
( 0.00 b … 1.00 mb) 19.52 kb ███▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
37+
Sequelize 481.84 µs/iter 471.63 µs █
38+
(342.77 µs … 2.44 ms) 1.71 ms █
39+
( 0.00 b … 896.00 kb) 15.78 kb ▇██▅▂▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
4040

41-
TypeORM 444.86 µs/iter 435.62 µs █
42-
(328.88 µs … 2.25 ms) 1.79 ms
43-
( 0.00 b … 384.00 kb) 3.27 kb ███▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
41+
TypeORM 439.66 µs/iter 427.17 µs █
42+
(320.53 µs … 2.35 ms) 1.72 ms
43+
( 0.00 b … 512.00 kb) 5.78 kb ███▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁

results/bun-mysql-max.txt

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,43 @@
1-
clk: ~3.09 GHz
1+
clk: ~1.57 GHz
22
cpu: AMD EPYC 7763 64-Core Processor
3-
runtime: bun 1.2.17 (x64-linux)
3+
runtime: bun 1.2.18 (x64-linux)
44

55
benchmark avg (min … max) p75 / p99 (min … top 1%)
66
------------------------------------------- -------------------------------
77
• MySQL
88
------------------------------------------- -------------------------------
9-
DrizzleORM 568.77 µs/iter 563.92 µs █
10-
(364.29 µs … 4.88 ms) 2.13 ms █
11-
( 0.00 b … 3.63 mb) 39.25 kb ▅██▅▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
9+
DrizzleORM 564.72 µs/iter 557.79 µs █
10+
(363.03 µs … 2.89 ms) 2.14 ms █
11+
( 0.00 b … 1.63 mb) 33.47 kb ▅██▅▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
1212

13-
KnexJS 356.23 µs/iter 343.78 µs █
14-
(267.37 µs … 2.45 ms) 1.30 ms
15-
( 0.00 b … 384.00 kb) 3.37 kb ███▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
13+
KnexJS 366.28 µs/iter 349.32 µs █
14+
(264.35 µs … 2.62 ms) 1.40 ms
15+
( 0.00 b … 1.38 mb) 5.41 kb ██▇▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
1616

17-
Kysely 314.10 µs/iter 304.43 µs █
18-
(249.66 µs … 1.84 ms) 1.19 ms
19-
( 0.00 b … 384.00 kb) 3.58 kb ██▆▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
17+
Kysely 311.08 µs/iter 307.45 µs █
18+
(249.89 µs … 1.74 ms) 1.22 ms
19+
( 0.00 b … 512.00 kb) 3.73 kb ██▆▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
2020

21-
Mariadb 297.87 µs/iter 266.54 µs █
22-
(205.22 µs … 2.11 ms) 1.25 ms
23-
( 0.00 b … 256.00 kb) 3.92 kb ██▁▁▁▁▁▂▁▁▁▁▁▁▁▁▁▁▁
21+
Mariadb 306.95 µs/iter 273.44 µs █
22+
(206.92 µs … 2.20 ms) 1.37 ms
23+
( 0.00 b … 256.00 kb) 4.44 kb ██▁▁▁▁▁▂▁▁▁▁▁▁▁▁▁▁▁
2424

25-
MikroORM 465.15 µs/iter 585.24 µs
26-
(35.42 µs … 3.36 ms) 1.92 ms █ █▅
27-
( 0.00 b … 896.00 kb) 12.05 kb █▂▁▁██▆▁▁▁▁▁▁▁▁▁▁▁
25+
MikroORM 486.29 µs/iter 598.42 µs
26+
(29.29 µs … 3.35 ms) 2.35 ms █ █▇
27+
( 0.00 b … 640.00 kb) 11.72 kb █▂▁▁██▆▂▂▁▁▁▁▁▁▁▁▁▁▁
2828

29-
MySQL2 266.02 µs/iter 265.62 µs █
30-
(207.55 µs … 1.61 ms) 1.14 ms
31-
( 0.00 b … 256.00 kb) 1.37 kb ██▆▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
29+
MySQL2 277.63 µs/iter 270.12 µs █
30+
(205.84 µs … 1.74 ms) 1.37 ms
31+
( 0.00 b … 128.00 kb) 335.65 b ██▄▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
3232

33-
Prisma 546.68 µs/iter 528.30 µs █
34-
(465.02 µs … 1.73 ms) 1.49 ms
35-
( 0.00 b … 672.00 kb) 3.77 kb ██▅▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
33+
Prisma 544.66 µs/iter 523.60 µs █
34+
(456.01 µs … 1.84 ms) 1.52 ms
35+
( 0.00 b … 744.00 kb) 2.16 kb ██▅▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
3636

37-
Sequelize 514.62 µs/iter 497.17 µs █
38-
(351.60 µs … 2.64 ms) 2.00 ms █
39-
( 0.00 b … 768.00 kb) 17.30 kb ▆██▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
37+
Sequelize 486.06 µs/iter 476.92 µs █
38+
(345.50 µs … 2.40 ms) 1.75 ms █
39+
( 0.00 b … 1.00 mb) 15.65 kb ▇██▄▂▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
4040

41-
TypeORM 455.71 µs/iter 440.34 µs █
42-
(328.13 µs … 2.70 ms) 1.95 ms
43-
( 0.00 b … 512.00 kb) 5.19 kb █▇▂▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
41+
TypeORM 442.90 µs/iter 425.23 µs █
42+
(322.38 µs … 2.29 ms) 1.77 ms
43+
( 0.00 b … 768.00 kb) 6.07 kb █▇▂▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁

0 commit comments

Comments
 (0)