diff --git a/bun.lockb b/bun.lockb index 8934c60..d98d7f6 100755 Binary files a/bun.lockb and b/bun.lockb differ diff --git a/package.json b/package.json index 840ff00..1e70d43 100644 --- a/package.json +++ b/package.json @@ -20,10 +20,10 @@ "@prisma/client": "^5.16.1", "drizzle-orm": "^0.31.2", "knex": "^3.1.0", - "kysely": "^0.27.3", + "kysely": "^0.27.4", "mariadb": "^3.3.1", "mitata": "^0.1.11", - "mysql2": "^3.10.1", + "mysql2": "^3.10.2", "pg": "^8.12.0", "pg-pool": "^3.6.2", "postgres": "~3.4.4", diff --git a/results/bun-mysql-cpu-count.txt b/results/bun-mysql-cpu-count.txt index d103698..0108b74 100644 --- a/results/bun-mysql-cpu-count.txt +++ b/results/bun-mysql-cpu-count.txt @@ -1,27 +1,27 @@ cpu: AMD EPYC 7763 64-Core Processor -runtime: bun 1.1.17 (x64-linux) +runtime: bun 1.1.18 (x64-linux) benchmark time (avg) (min … max) p75 p99 p999 -------------------------------------------------- ----------------------------- • MySQL -------------------------------------------------- ----------------------------- -DrizzleORM 428 µs/iter (325 µs … 2'055 µs) 413 µs 1'608 µs 1'894 µs -KnexJS 338 µs/iter (255 µs … 1'858 µs) 329 µs 1'662 µs 1'839 µs -Kysely 303 µs/iter (238 µs … 1'853 µs) 290 µs 1'585 µs 1'809 µs -Mariadb 236 µs/iter (177 µs … 1'700 µs) 231 µs 1'432 µs 1'691 µs -MikroORM 393 µs/iter (18'074 ns … 2'912 µs) 528 µs 2'351 µs 2'740 µs -MySQL2 258 µs/iter (200 µs … 1'944 µs) 251 µs 1'655 µs 1'937 µs -Prisma 514 µs/iter (412 µs … 2'186 µs) 482 µs 1'971 µs 2'179 µs -Sequelize 479 µs/iter (348 µs … 3'326 µs) 445 µs 2'289 µs 3'123 µs -TypeORM 414 µs/iter (313 µs … 2'558 µs) 393 µs 1'932 µs 2'503 µs +DrizzleORM 419 µs/iter (331 µs … 1'632 µs) 412 µs 1'397 µs 1'614 µs +KnexJS 326 µs/iter (248 µs … 2'210 µs) 327 µs 1'305 µs 1'781 µs +Kysely 297 µs/iter (243 µs … 1'449 µs) 293 µs 1'213 µs 1'352 µs +Mariadb 225 µs/iter (171 µs … 1'400 µs) 228 µs 1'124 µs 1'302 µs +MikroORM 359 µs/iter (15'809 ns … 2'587 µs) 503 µs 1'834 µs 2'503 µs +MySQL2 251 µs/iter (192 µs … 1'788 µs) 252 µs 1'173 µs 1'539 µs +Prisma 498 µs/iter (420 µs … 1'570 µs) 481 µs 1'444 µs 1'527 µs +Sequelize 438 µs/iter (334 µs … 1'865 µs) 432 µs 1'632 µs 1'800 µs +TypeORM 386 µs/iter (305 µs … 1'991 µs) 378 µs 1'418 µs 1'726 µs summary for MySQL Mariadb - 1.1x faster than MySQL2 - 1.28x faster than Kysely - 1.44x faster than KnexJS - 1.67x faster than MikroORM - 1.76x faster than TypeORM - 1.82x faster than DrizzleORM - 2.03x faster than Sequelize - 2.18x faster than Prisma + 1.11x faster than MySQL2 + 1.32x faster than Kysely + 1.45x faster than KnexJS + 1.59x faster than MikroORM + 1.72x faster than TypeORM + 1.86x faster than DrizzleORM + 1.95x faster than Sequelize + 2.21x faster than Prisma diff --git a/results/bun-mysql-default.txt b/results/bun-mysql-default.txt index 03d9dd8..4f8d833 100644 --- a/results/bun-mysql-default.txt +++ b/results/bun-mysql-default.txt @@ -1,27 +1,27 @@ cpu: AMD EPYC 7763 64-Core Processor -runtime: bun 1.1.17 (x64-linux) +runtime: bun 1.1.18 (x64-linux) benchmark time (avg) (min … max) p75 p99 p999 -------------------------------------------------- ----------------------------- • MySQL -------------------------------------------------- ----------------------------- -DrizzleORM 442 µs/iter (328 µs … 1'912 µs) 430 µs 1'716 µs 1'910 µs -KnexJS 345 µs/iter (259 µs … 2'036 µs) 334 µs 1'666 µs 1'944 µs -Kysely 311 µs/iter (244 µs … 1'799 µs) 299 µs 1'636 µs 1'794 µs -Mariadb 242 µs/iter (176 µs … 1'936 µs) 237 µs 1'574 µs 1'763 µs -MikroORM 419 µs/iter (17'853 ns … 3'029 µs) 542 µs 2'465 µs 2'714 µs -MySQL2 267 µs/iter (198 µs … 2'046 µs) 256 µs 1'777 µs 2'018 µs -Prisma 520 µs/iter (408 µs … 2'141 µs) 491 µs 1'939 µs 2'022 µs -Sequelize 488 µs/iter (353 µs … 2'978 µs) 451 µs 2'317 µs 2'566 µs -TypeORM 445 µs/iter (310 µs … 3'667 µs) 423 µs 2'207 µs 2'668 µs +DrizzleORM 426 µs/iter (328 µs … 1'922 µs) 418 µs 1'445 µs 1'797 µs +KnexJS 320 µs/iter (252 µs … 1'547 µs) 316 µs 1'232 µs 1'435 µs +Kysely 297 µs/iter (243 µs … 1'460 µs) 295 µs 1'213 µs 1'315 µs +Mariadb 222 µs/iter (170 µs … 1'368 µs) 224 µs 1'115 µs 1'308 µs +MikroORM 363 µs/iter (16'430 ns … 2'380 µs) 507 µs 1'846 µs 2'313 µs +MySQL2 247 µs/iter (192 µs … 1'528 µs) 247 µs 1'170 µs 1'455 µs +Prisma 497 µs/iter (421 µs … 1'627 µs) 480 µs 1'418 µs 1'561 µs +Sequelize 447 µs/iter (337 µs … 2'357 µs) 435 µs 1'620 µs 2'191 µs +TypeORM 389 µs/iter (303 µs … 1'879 µs) 380 µs 1'462 µs 1'788 µs summary for MySQL Mariadb - 1.1x faster than MySQL2 - 1.28x faster than Kysely - 1.42x faster than KnexJS - 1.73x faster than MikroORM - 1.82x faster than DrizzleORM - 1.84x faster than TypeORM - 2.01x faster than Sequelize - 2.15x faster than Prisma + 1.12x faster than MySQL2 + 1.34x faster than Kysely + 1.44x faster than KnexJS + 1.64x faster than MikroORM + 1.75x faster than TypeORM + 1.92x faster than DrizzleORM + 2.02x faster than Sequelize + 2.24x faster than Prisma diff --git a/results/bun-mysql-max.txt b/results/bun-mysql-max.txt index f205f10..222f851 100644 --- a/results/bun-mysql-max.txt +++ b/results/bun-mysql-max.txt @@ -1,27 +1,27 @@ cpu: AMD EPYC 7763 64-Core Processor -runtime: bun 1.1.17 (x64-linux) +runtime: bun 1.1.18 (x64-linux) benchmark time (avg) (min … max) p75 p99 p999 -------------------------------------------------- ----------------------------- • MySQL -------------------------------------------------- ----------------------------- -DrizzleORM 490 µs/iter (335 µs … 2'860 µs) 493 µs 2'057 µs 2'810 µs -KnexJS 345 µs/iter (262 µs … 2'263 µs) 334 µs 1'742 µs 2'191 µs -Kysely 317 µs/iter (250 µs … 1'950 µs) 302 µs 1'742 µs 1'927 µs -Mariadb 285 µs/iter (202 µs … 2'824 µs) 267 µs 1'756 µs 2'291 µs -MikroORM 438 µs/iter (19'487 ns … 2'983 µs) 554 µs 2'595 µs 2'960 µs -MySQL2 262 µs/iter (192 µs … 2'003 µs) 257 µs 1'579 µs 1'928 µs -Prisma 509 µs/iter (412 µs … 1'990 µs) 481 µs 1'839 µs 1'979 µs -Sequelize 466 µs/iter (343 µs … 2'521 µs) 437 µs 2'128 µs 2'447 µs -TypeORM 415 µs/iter (310 µs … 2'547 µs) 392 µs 1'966 µs 2'542 µs +DrizzleORM 466 µs/iter (327 µs … 2'522 µs) 473 µs 1'957 µs 2'347 µs +KnexJS 323 µs/iter (256 µs … 1'916 µs) 314 µs 1'264 µs 1'784 µs +Kysely 296 µs/iter (240 µs … 1'462 µs) 294 µs 1'224 µs 1'452 µs +Mariadb 262 µs/iter (191 µs … 2'641 µs) 255 µs 1'333 µs 1'628 µs +MikroORM 368 µs/iter (16'301 ns … 2'301 µs) 503 µs 1'825 µs 2'165 µs +MySQL2 244 µs/iter (187 µs … 1'524 µs) 241 µs 1'175 µs 1'393 µs +Prisma 495 µs/iter (410 µs … 1'557 µs) 482 µs 1'452 µs 1'557 µs +Sequelize 440 µs/iter (339 µs … 2'023 µs) 433 µs 1'644 µs 1'944 µs +TypeORM 392 µs/iter (308 µs … 2'126 µs) 382 µs 1'531 µs 2'012 µs summary for MySQL MySQL2 - 1.09x faster than Mariadb - 1.21x faster than Kysely - 1.31x faster than KnexJS - 1.58x faster than TypeORM - 1.67x faster than MikroORM - 1.77x faster than Sequelize - 1.87x faster than DrizzleORM - 1.94x faster than Prisma + 1.08x faster than Mariadb + 1.22x faster than Kysely + 1.33x faster than KnexJS + 1.51x faster than MikroORM + 1.61x faster than TypeORM + 1.81x faster than Sequelize + 1.91x faster than DrizzleORM + 2.03x faster than Prisma diff --git a/results/bun-mysql-single.txt b/results/bun-mysql-single.txt index 132a8fd..ae2a1b4 100644 --- a/results/bun-mysql-single.txt +++ b/results/bun-mysql-single.txt @@ -1,27 +1,27 @@ cpu: AMD EPYC 7763 64-Core Processor -runtime: bun 1.1.17 (x64-linux) +runtime: bun 1.1.18 (x64-linux) benchmark time (avg) (min … max) p75 p99 p999 -------------------------------------------------- ----------------------------- • MySQL -------------------------------------------------- ----------------------------- -DrizzleORM 428 µs/iter (318 µs … 2'086 µs) 417 µs 1'644 µs 2'085 µs -KnexJS 336 µs/iter (260 µs … 1'940 µs) 331 µs 1'612 µs 1'892 µs -Kysely 307 µs/iter (243 µs … 1'866 µs) 296 µs 1'490 µs 1'789 µs -Mariadb 237 µs/iter (173 µs … 1'813 µs) 237 µs 1'479 µs 1'726 µs -MikroORM 401 µs/iter (17'644 ns … 2'882 µs) 534 µs 2'364 µs 2'856 µs -MySQL2 255 µs/iter (188 µs … 2'010 µs) 248 µs 1'604 µs 1'848 µs -Prisma 515 µs/iter (414 µs … 2'076 µs) 485 µs 1'932 µs 2'058 µs -Sequelize 489 µs/iter (350 µs … 2'650 µs) 459 µs 2'288 µs 2'620 µs -TypeORM 426 µs/iter (311 µs … 3'029 µs) 407 µs 2'132 µs 2'640 µs +DrizzleORM 420 µs/iter (322 µs … 1'665 µs) 414 µs 1'486 µs 1'645 µs +KnexJS 319 µs/iter (256 µs … 1'570 µs) 316 µs 1'225 µs 1'428 µs +Kysely 294 µs/iter (233 µs … 1'426 µs) 288 µs 1'218 µs 1'329 µs +Mariadb 229 µs/iter (172 µs … 1'340 µs) 231 µs 1'107 µs 1'271 µs +MikroORM 359 µs/iter (16'500 ns … 2'313 µs) 506 µs 1'793 µs 2'304 µs +MySQL2 251 µs/iter (194 µs … 1'551 µs) 252 µs 1'171 µs 1'379 µs +Prisma 506 µs/iter (415 µs … 2'001 µs) 491 µs 1'534 µs 1'982 µs +Sequelize 438 µs/iter (343 µs … 1'846 µs) 422 µs 1'575 µs 1'790 µs +TypeORM 383 µs/iter (301 µs … 1'647 µs) 381 µs 1'406 µs 1'629 µs summary for MySQL Mariadb - 1.08x faster than MySQL2 - 1.3x faster than Kysely - 1.42x faster than KnexJS - 1.69x faster than MikroORM - 1.8x faster than TypeORM - 1.8x faster than DrizzleORM - 2.06x faster than Sequelize - 2.17x faster than Prisma + 1.09x faster than MySQL2 + 1.28x faster than Kysely + 1.39x faster than KnexJS + 1.57x faster than MikroORM + 1.67x faster than TypeORM + 1.83x faster than DrizzleORM + 1.91x faster than Sequelize + 2.21x faster than Prisma diff --git a/results/bun-postgres-cpu-count.txt b/results/bun-postgres-cpu-count.txt index b68d4a2..35f96b5 100644 --- a/results/bun-postgres-cpu-count.txt +++ b/results/bun-postgres-cpu-count.txt @@ -1,29 +1,29 @@ cpu: AMD EPYC 7763 64-Core Processor -runtime: bun 1.1.17 (x64-linux) +runtime: bun 1.1.18 (x64-linux) benchmark time (avg) (min … max) p75 p99 p999 --------------------------------------------------- ----------------------------- • PostgreSQL --------------------------------------------------- ----------------------------- -DrizzleORM 400 µs/iter (304 µs … 2'226 µs) 392 µs 1'615 µs 1'923 µs -KnexJS 345 µs/iter (271 µs … 1'980 µs) 332 µs 1'578 µs 1'959 µs -Kysely 315 µs/iter (253 µs … 1'911 µs) 305 µs 1'484 µs 1'798 µs -MikroORM 371 µs/iter (17'854 ns … 2'864 µs) 505 µs 2'291 µs 2'863 µs -Pg 283 µs/iter (217 µs … 1'990 µs) 271 µs 1'638 µs 1'840 µs -PgTyped 298 µs/iter (232 µs … 2'008 µs) 285 µs 1'606 µs 1'838 µs -Postgres.js 204 µs/iter (142 µs … 2'044 µs) 200 µs 1'481 µs 2'013 µs -Prisma 521 µs/iter (412 µs … 2'179 µs) 486 µs 2'001 µs 2'168 µs -Sequelize 406 µs/iter (307 µs … 2'461 µs) 389 µs 1'895 µs 2'393 µs -TypeORM 450 µs/iter (334 µs … 2'569 µs) 437 µs 2'095 µs 2'539 µs +DrizzleORM 383 µs/iter (304 µs … 1'657 µs) 376 µs 1'375 µs 1'628 µs +KnexJS 344 µs/iter (262 µs … 2'082 µs) 337 µs 1'345 µs 1'973 µs +Kysely 304 µs/iter (249 µs … 1'484 µs) 295 µs 1'258 µs 1'458 µs +MikroORM 347 µs/iter (16'230 ns … 2'208 µs) 483 µs 1'760 µs 2'204 µs +Pg 266 µs/iter (213 µs … 1'598 µs) 260 µs 1'226 µs 1'481 µs +PgTyped 295 µs/iter (232 µs … 1'717 µs) 288 µs 1'301 µs 1'580 µs +Postgres.js 188 µs/iter (143 µs … 1'444 µs) 189 µs 1'126 µs 1'313 µs +Prisma 502 µs/iter (420 µs … 1'584 µs) 486 µs 1'444 µs 1'579 µs +Sequelize 393 µs/iter (303 µs … 2'129 µs) 380 µs 1'592 µs 1'995 µs +TypeORM 424 µs/iter (327 µs … 2'186 µs) 414 µs 1'553 µs 2'145 µs summary for PostgreSQL Postgres.js - 1.39x faster than Pg - 1.46x faster than PgTyped - 1.55x faster than Kysely - 1.7x faster than KnexJS - 1.82x faster than MikroORM - 1.96x faster than DrizzleORM - 1.99x faster than Sequelize - 2.21x faster than TypeORM - 2.56x faster than Prisma + 1.42x faster than Pg + 1.57x faster than PgTyped + 1.62x faster than Kysely + 1.83x faster than KnexJS + 1.85x faster than MikroORM + 2.04x faster than DrizzleORM + 2.1x faster than Sequelize + 2.26x faster than TypeORM + 2.68x faster than Prisma diff --git a/results/bun-postgres-default.txt b/results/bun-postgres-default.txt index 291141d..e13382b 100644 --- a/results/bun-postgres-default.txt +++ b/results/bun-postgres-default.txt @@ -1,29 +1,29 @@ cpu: AMD EPYC 7763 64-Core Processor -runtime: bun 1.1.17 (x64-linux) +runtime: bun 1.1.18 (x64-linux) benchmark time (avg) (min … max) p75 p99 p999 --------------------------------------------------- ----------------------------- • PostgreSQL --------------------------------------------------- ----------------------------- -DrizzleORM 433 µs/iter (308 µs … 2'460 µs) 426 µs 1'922 µs 2'312 µs -KnexJS 349 µs/iter (268 µs … 1'994 µs) 333 µs 1'686 µs 1'975 µs -Kysely 339 µs/iter (251 µs … 2'247 µs) 316 µs 1'790 µs 2'156 µs -MikroORM 396 µs/iter (18'174 ns … 3'114 µs) 512 µs 2'378 µs 2'967 µs -Pg 279 µs/iter (220 µs … 1'823 µs) 259 µs 1'686 µs 1'804 µs -PgTyped 309 µs/iter (231 µs … 2'080 µs) 292 µs 1'882 µs 2'051 µs -Postgres.js 201 µs/iter (147 µs … 2'055 µs) 193 µs 1'691 µs 1'976 µs -Prisma 518 µs/iter (417 µs … 2'272 µs) 481 µs 2'044 µs 2'196 µs -Sequelize 419 µs/iter (305 µs … 2'740 µs) 384 µs 2'115 µs 2'616 µs -TypeORM 469 µs/iter (335 µs … 2'553 µs) 446 µs 2'278 µs 2'453 µs +DrizzleORM 384 µs/iter (289 µs … 1'734 µs) 380 µs 1'376 µs 1'659 µs +KnexJS 330 µs/iter (262 µs … 1'602 µs) 326 µs 1'276 µs 1'597 µs +Kysely 309 µs/iter (247 µs … 1'442 µs) 300 µs 1'289 µs 1'431 µs +MikroORM 372 µs/iter (15'839 ns … 2'797 µs) 511 µs 1'976 µs 2'525 µs +Pg 263 µs/iter (212 µs … 1'311 µs) 253 µs 1'213 µs 1'290 µs +PgTyped 286 µs/iter (228 µs … 1'441 µs) 280 µs 1'282 µs 1'396 µs +Postgres.js 185 µs/iter (140 µs … 3'857 µs) 185 µs 1'113 µs 1'345 µs +Prisma 488 µs/iter (407 µs … 1'713 µs) 469 µs 1'426 µs 1'614 µs +Sequelize 394 µs/iter (309 µs … 2'088 µs) 383 µs 1'632 µs 2'005 µs +TypeORM 442 µs/iter (329 µs … 3'574 µs) 431 µs 1'740 µs 2'594 µs summary for PostgreSQL Postgres.js - 1.39x faster than Pg + 1.42x faster than Pg 1.54x faster than PgTyped - 1.69x faster than Kysely - 1.74x faster than KnexJS - 1.97x faster than MikroORM - 2.09x faster than Sequelize - 2.16x faster than DrizzleORM - 2.34x faster than TypeORM - 2.58x faster than Prisma + 1.67x faster than Kysely + 1.78x faster than KnexJS + 2.01x faster than MikroORM + 2.07x faster than DrizzleORM + 2.13x faster than Sequelize + 2.38x faster than TypeORM + 2.63x faster than Prisma diff --git a/results/bun-postgres-max.txt b/results/bun-postgres-max.txt index c843b3f..5e61838 100644 --- a/results/bun-postgres-max.txt +++ b/results/bun-postgres-max.txt @@ -1,29 +1,29 @@ cpu: AMD EPYC 7763 64-Core Processor -runtime: bun 1.1.17 (x64-linux) +runtime: bun 1.1.18 (x64-linux) benchmark time (avg) (min … max) p75 p99 p999 --------------------------------------------------- ----------------------------- • PostgreSQL --------------------------------------------------- ----------------------------- -DrizzleORM 412 µs/iter (317 µs … 2'219 µs) 395 µs 1'806 µs 1'972 µs -KnexJS 355 µs/iter (267 µs … 2'050 µs) 342 µs 1'729 µs 1'960 µs -Kysely 329 µs/iter (257 µs … 2'012 µs) 316 µs 1'743 µs 1'914 µs -MikroORM 428 µs/iter (18'184 ns … 3'674 µs) 551 µs 2'580 µs 3'245 µs -Pg 293 µs/iter (224 µs … 2'559 µs) 267 µs 1'819 µs 2'265 µs -PgTyped 326 µs/iter (231 µs … 3'071 µs) 306 µs 1'949 µs 2'438 µs -Postgres.js 202 µs/iter (145 µs … 2'039 µs) 196 µs 1'527 µs 1'950 µs -Prisma 515 µs/iter (414 µs … 2'319 µs) 480 µs 2'017 µs 2'192 µs -Sequelize 420 µs/iter (310 µs … 2'440 µs) 391 µs 2'163 µs 2'379 µs -TypeORM 471 µs/iter (335 µs … 2'585 µs) 445 µs 2'236 µs 2'427 µs +DrizzleORM 385 µs/iter (304 µs … 1'672 µs) 378 µs 1'398 µs 1'635 µs +KnexJS 341 µs/iter (259 µs … 1'860 µs) 342 µs 1'314 µs 1'598 µs +Kysely 303 µs/iter (251 µs … 1'353 µs) 294 µs 1'274 µs 1'342 µs +MikroORM 345 µs/iter (16'009 ns … 2'527 µs) 487 µs 1'850 µs 2'357 µs +Pg 267 µs/iter (219 µs … 1'522 µs) 256 µs 1'216 µs 1'390 µs +PgTyped 283 µs/iter (218 µs … 1'497 µs) 273 µs 1'319 µs 1'477 µs +Postgres.js 185 µs/iter (138 µs … 1'595 µs) 187 µs 1'102 µs 1'414 µs +Prisma 486 µs/iter (412 µs … 1'580 µs) 467 µs 1'470 µs 1'554 µs +Sequelize 392 µs/iter (300 µs … 1'875 µs) 383 µs 1'548 µs 1'852 µs +TypeORM 420 µs/iter (327 µs … 2'149 µs) 411 µs 1'639 µs 2'140 µs summary for PostgreSQL Postgres.js - 1.45x faster than Pg - 1.61x faster than PgTyped - 1.63x faster than Kysely - 1.76x faster than KnexJS - 2.04x faster than DrizzleORM - 2.08x faster than Sequelize - 2.12x faster than MikroORM - 2.33x faster than TypeORM - 2.55x faster than Prisma + 1.44x faster than Pg + 1.53x faster than PgTyped + 1.64x faster than Kysely + 1.84x faster than KnexJS + 1.87x faster than MikroORM + 2.08x faster than DrizzleORM + 2.12x faster than Sequelize + 2.27x faster than TypeORM + 2.63x faster than Prisma diff --git a/results/bun-postgres-single.txt b/results/bun-postgres-single.txt index 9664fcd..3683874 100644 --- a/results/bun-postgres-single.txt +++ b/results/bun-postgres-single.txt @@ -1,29 +1,29 @@ cpu: AMD EPYC 7763 64-Core Processor -runtime: bun 1.1.17 (x64-linux) +runtime: bun 1.1.18 (x64-linux) benchmark time (avg) (min … max) p75 p99 p999 --------------------------------------------------- ----------------------------- • PostgreSQL --------------------------------------------------- ----------------------------- -DrizzleORM 405 µs/iter (301 µs … 1'940 µs) 393 µs 1'659 µs 1'822 µs -KnexJS 348 µs/iter (262 µs … 1'879 µs) 338 µs 1'537 µs 1'854 µs -Kysely 316 µs/iter (246 µs … 1'738 µs) 301 µs 1'621 µs 1'718 µs -MikroORM 375 µs/iter (15'268 ns … 2'749 µs) 512 µs 2'220 µs 2'717 µs -Pg 278 µs/iter (216 µs … 2'041 µs) 265 µs 1'484 µs 1'867 µs -PgTyped 300 µs/iter (231 µs … 1'900 µs) 289 µs 1'575 µs 1'848 µs -Postgres.js 189 µs/iter (138 µs … 1'574 µs) 186 µs 1'207 µs 1'497 µs -Prisma 514 µs/iter (421 µs … 1'947 µs) 482 µs 1'848 µs 1'935 µs -Sequelize 410 µs/iter (313 µs … 2'414 µs) 388 µs 2'003 µs 2'409 µs -TypeORM 483 µs/iter (337 µs … 2'617 µs) 462 µs 2'268 µs 2'586 µs +DrizzleORM 388 µs/iter (304 µs … 1'894 µs) 380 µs 1'377 µs 1'681 µs +KnexJS 333 µs/iter (269 µs … 1'596 µs) 326 µs 1'326 µs 1'504 µs +Kysely 304 µs/iter (248 µs … 1'369 µs) 295 µs 1'236 µs 1'342 µs +MikroORM 329 µs/iter (15'558 ns … 2'359 µs) 475 µs 1'788 µs 2'156 µs +Pg 268 µs/iter (219 µs … 1'596 µs) 257 µs 1'227 µs 1'362 µs +PgTyped 284 µs/iter (223 µs … 1'506 µs) 275 µs 1'290 µs 1'434 µs +Postgres.js 186 µs/iter (142 µs … 1'315 µs) 185 µs 1'096 µs 1'221 µs +Prisma 492 µs/iter (407 µs … 1'525 µs) 474 µs 1'441 µs 1'509 µs +Sequelize 400 µs/iter (289 µs … 2'356 µs) 384 µs 1'620 µs 2'045 µs +TypeORM 413 µs/iter (326 µs … 1'934 µs) 405 µs 1'527 µs 1'747 µs summary for PostgreSQL Postgres.js - 1.47x faster than Pg - 1.59x faster than PgTyped - 1.68x faster than Kysely - 1.84x faster than KnexJS - 1.99x faster than MikroORM - 2.14x faster than DrizzleORM - 2.17x faster than Sequelize - 2.56x faster than TypeORM - 2.72x faster than Prisma + 1.44x faster than Pg + 1.53x faster than PgTyped + 1.63x faster than Kysely + 1.77x faster than MikroORM + 1.79x faster than KnexJS + 2.09x faster than DrizzleORM + 2.15x faster than Sequelize + 2.22x faster than TypeORM + 2.65x faster than Prisma diff --git a/results/node-mysql-cpu-count.txt b/results/node-mysql-cpu-count.txt index af1405d..594664b 100644 --- a/results/node-mysql-cpu-count.txt +++ b/results/node-mysql-cpu-count.txt @@ -1,27 +1,27 @@ cpu: AMD EPYC 7763 64-Core Processor -runtime: node v22.3.0 (x64-linux) +runtime: node v22.4.0 (x64-linux) benchmark time (avg) (min … max) p75 p99 p999 -------------------------------------------------- ----------------------------- • MySQL -------------------------------------------------- ----------------------------- -DrizzleORM 425 µs/iter (357 µs … 1'188 µs) 437 µs 624 µs 1'024 µs -KnexJS 340 µs/iter (298 µs … 852 µs) 356 µs 487 µs 729 µs -Kysely 310 µs/iter (266 µs … 1'126 µs) 323 µs 421 µs 1'006 µs -Mariadb 236 µs/iter (192 µs … 599 µs) 248 µs 313 µs 393 µs -MikroORM 413 µs/iter (32'622 ns … 1'455 µs) 577 µs 991 µs 1'430 µs -MySQL2 276 µs/iter (227 µs … 891 µs) 285 µs 426 µs 656 µs -Prisma 503 µs/iter (451 µs … 712 µs) 517 µs 620 µs 710 µs -Sequelize 445 µs/iter (373 µs … 945 µs) 476 µs 683 µs 921 µs -TypeORM 365 µs/iter (318 µs … 895 µs) 379 µs 494 µs 776 µs +DrizzleORM 414 µs/iter (345 µs … 1'219 µs) 441 µs 598 µs 1'078 µs +KnexJS 331 µs/iter (291 µs … 667 µs) 342 µs 447 µs 643 µs +Kysely 302 µs/iter (259 µs … 1'288 µs) 319 µs 415 µs 662 µs +Mariadb 227 µs/iter (179 µs … 534 µs) 244 µs 305 µs 465 µs +MikroORM 364 µs/iter (30'938 ns … 1'280 µs) 531 µs 725 µs 1'116 µs +MySQL2 265 µs/iter (230 µs … 575 µs) 277 µs 338 µs 476 µs +Prisma 493 µs/iter (453 µs … 645 µs) 503 µs 587 µs 638 µs +Sequelize 429 µs/iter (365 µs … 761 µs) 458 µs 574 µs 723 µs +TypeORM 356 µs/iter (312 µs … 819 µs) 370 µs 490 µs 674 µs summary for MySQL Mariadb 1.17x faster than MySQL2 - 1.31x faster than Kysely - 1.44x faster than KnexJS - 1.55x faster than TypeORM - 1.75x faster than MikroORM - 1.8x faster than DrizzleORM - 1.88x faster than Sequelize - 2.13x faster than Prisma + 1.33x faster than Kysely + 1.46x faster than KnexJS + 1.57x faster than TypeORM + 1.61x faster than MikroORM + 1.83x faster than DrizzleORM + 1.89x faster than Sequelize + 2.18x faster than Prisma diff --git a/results/node-mysql-default.txt b/results/node-mysql-default.txt index 7f01a00..e36b939 100644 --- a/results/node-mysql-default.txt +++ b/results/node-mysql-default.txt @@ -1,27 +1,27 @@ cpu: AMD EPYC 7763 64-Core Processor -runtime: node v22.3.0 (x64-linux) +runtime: node v22.4.0 (x64-linux) benchmark time (avg) (min … max) p75 p99 p999 -------------------------------------------------- ----------------------------- • MySQL -------------------------------------------------- ----------------------------- -DrizzleORM 428 µs/iter (354 µs … 1'239 µs) 452 µs 604 µs 837 µs -KnexJS 336 µs/iter (293 µs … 823 µs) 348 µs 478 µs 719 µs -Kysely 308 µs/iter (260 µs … 758 µs) 320 µs 412 µs 667 µs -Mariadb 234 µs/iter (187 µs … 640 µs) 247 µs 319 µs 473 µs -MikroORM 381 µs/iter (32'652 ns … 1'393 µs) 546 µs 772 µs 1'324 µs -MySQL2 271 µs/iter (238 µs … 942 µs) 281 µs 367 µs 538 µs -Prisma 505 µs/iter (450 µs … 735 µs) 516 µs 641 µs 705 µs -Sequelize 444 µs/iter (375 µs … 906 µs) 476 µs 628 µs 824 µs -TypeORM 364 µs/iter (318 µs … 881 µs) 375 µs 499 µs 723 µs +DrizzleORM 414 µs/iter (349 µs … 991 µs) 438 µs 590 µs 977 µs +KnexJS 332 µs/iter (293 µs … 657 µs) 344 µs 444 µs 621 µs +Kysely 303 µs/iter (258 µs … 656 µs) 314 µs 401 µs 541 µs +Mariadb 231 µs/iter (188 µs … 549 µs) 245 µs 302 µs 405 µs +MikroORM 366 µs/iter (30'667 ns … 1'201 µs) 539 µs 793 µs 1'125 µs +MySQL2 264 µs/iter (222 µs … 728 µs) 276 µs 348 µs 524 µs +Prisma 495 µs/iter (441 µs … 968 µs) 501 µs 668 µs 957 µs +Sequelize 429 µs/iter (368 µs … 883 µs) 450 µs 587 µs 738 µs +TypeORM 357 µs/iter (315 µs … 629 µs) 372 µs 467 µs 623 µs summary for MySQL Mariadb - 1.16x faster than MySQL2 - 1.32x faster than Kysely + 1.14x faster than MySQL2 + 1.31x faster than Kysely 1.44x faster than KnexJS - 1.56x faster than TypeORM - 1.63x faster than MikroORM - 1.83x faster than DrizzleORM - 1.9x faster than Sequelize - 2.16x faster than Prisma + 1.55x faster than TypeORM + 1.59x faster than MikroORM + 1.79x faster than DrizzleORM + 1.86x faster than Sequelize + 2.14x faster than Prisma diff --git a/results/node-mysql-max.txt b/results/node-mysql-max.txt index 6a061bf..72dbc5f 100644 --- a/results/node-mysql-max.txt +++ b/results/node-mysql-max.txt @@ -1,27 +1,27 @@ cpu: AMD EPYC 7763 64-Core Processor -runtime: node v22.3.0 (x64-linux) +runtime: node v22.4.0 (x64-linux) benchmark time (avg) (min … max) p75 p99 p999 -------------------------------------------------- ----------------------------- • MySQL -------------------------------------------------- ----------------------------- -DrizzleORM 537 µs/iter (381 µs … 3'737 µs) 570 µs 1'341 µs 3'474 µs -KnexJS 374 µs/iter (315 µs … 1'131 µs) 385 µs 518 µs 972 µs -Kysely 327 µs/iter (282 µs … 1'035 µs) 334 µs 461 µs 827 µs -Mariadb 275 µs/iter (224 µs … 1'038 µs) 282 µs 364 µs 779 µs -MikroORM 406 µs/iter (29'756 ns … 1'316 µs) 565 µs 784 µs 1'300 µs -MySQL2 274 µs/iter (239 µs … 612 µs) 286 µs 369 µs 580 µs -Prisma 504 µs/iter (458 µs … 730 µs) 519 µs 632 µs 711 µs -Sequelize 444 µs/iter (374 µs … 892 µs) 469 µs 643 µs 859 µs -TypeORM 369 µs/iter (313 µs … 968 µs) 381 µs 513 µs 764 µs +DrizzleORM 437 µs/iter (349 µs … 2'084 µs) 454 µs 874 µs 1'827 µs +KnexJS 334 µs/iter (292 µs … 856 µs) 345 µs 446 µs 651 µs +Kysely 295 µs/iter (262 µs … 723 µs) 300 µs 400 µs 604 µs +Mariadb 242 µs/iter (193 µs … 810 µs) 252 µs 331 µs 672 µs +MikroORM 371 µs/iter (32'891 ns … 1'359 µs) 532 µs 731 µs 1'288 µs +MySQL2 263 µs/iter (230 µs … 543 µs) 275 µs 343 µs 472 µs +Prisma 493 µs/iter (455 µs … 679 µs) 500 µs 642 µs 677 µs +Sequelize 434 µs/iter (366 µs … 862 µs) 457 µs 600 µs 810 µs +TypeORM 359 µs/iter (311 µs … 814 µs) 371 µs 474 µs 643 µs summary for MySQL - MySQL2 - 1.01x faster than Mariadb - 1.2x faster than Kysely - 1.35x faster than TypeORM - 1.37x faster than KnexJS - 1.48x faster than MikroORM - 1.62x faster than Sequelize - 1.84x faster than Prisma - 1.96x faster than DrizzleORM + Mariadb + 1.09x faster than MySQL2 + 1.22x faster than Kysely + 1.38x faster than KnexJS + 1.49x faster than TypeORM + 1.54x faster than MikroORM + 1.8x faster than Sequelize + 1.81x faster than DrizzleORM + 2.04x faster than Prisma diff --git a/results/node-mysql-single.txt b/results/node-mysql-single.txt index c03f1e8..5d9a7d5 100644 --- a/results/node-mysql-single.txt +++ b/results/node-mysql-single.txt @@ -1,27 +1,27 @@ cpu: AMD EPYC 7763 64-Core Processor -runtime: node v22.3.0 (x64-linux) +runtime: node v22.4.0 (x64-linux) benchmark time (avg) (min … max) p75 p99 p999 -------------------------------------------------- ----------------------------- • MySQL -------------------------------------------------- ----------------------------- -DrizzleORM 427 µs/iter (357 µs … 1'102 µs) 454 µs 667 µs 1'073 µs -KnexJS 356 µs/iter (296 µs … 1'010 µs) 356 µs 780 µs 945 µs -Kysely 301 µs/iter (255 µs … 748 µs) 313 µs 396 µs 663 µs -Mariadb 232 µs/iter (188 µs … 689 µs) 245 µs 333 µs 610 µs -MikroORM 387 µs/iter (33'543 ns … 1'366 µs) 550 µs 801 µs 1'303 µs -MySQL2 277 µs/iter (234 µs … 923 µs) 290 µs 371 µs 618 µs -Prisma 500 µs/iter (448 µs … 862 µs) 508 µs 686 µs 819 µs -Sequelize 439 µs/iter (370 µs … 903 µs) 464 µs 650 µs 787 µs -TypeORM 373 µs/iter (308 µs … 789 µs) 390 µs 560 µs 740 µs +DrizzleORM 414 µs/iter (346 µs … 1'433 µs) 428 µs 610 µs 1'431 µs +KnexJS 333 µs/iter (288 µs … 807 µs) 347 µs 456 µs 664 µs +Kysely 307 µs/iter (256 µs … 1'351 µs) 324 µs 421 µs 727 µs +Mariadb 224 µs/iter (184 µs … 492 µs) 241 µs 312 µs 370 µs +MikroORM 370 µs/iter (33'573 ns … 1'258 µs) 543 µs 756 µs 1'184 µs +MySQL2 262 µs/iter (230 µs … 562 µs) 273 µs 342 µs 438 µs +Prisma 492 µs/iter (436 µs … 827 µs) 502 µs 635 µs 781 µs +Sequelize 429 µs/iter (360 µs … 878 µs) 457 µs 594 µs 774 µs +TypeORM 355 µs/iter (314 µs … 786 µs) 369 µs 476 µs 650 µs summary for MySQL Mariadb - 1.2x faster than MySQL2 - 1.3x faster than Kysely - 1.54x faster than KnexJS - 1.61x faster than TypeORM - 1.67x faster than MikroORM - 1.84x faster than DrizzleORM - 1.9x faster than Sequelize - 2.16x faster than Prisma + 1.17x faster than MySQL2 + 1.37x faster than Kysely + 1.49x faster than KnexJS + 1.59x faster than TypeORM + 1.65x faster than MikroORM + 1.85x faster than DrizzleORM + 1.92x faster than Sequelize + 2.2x faster than Prisma diff --git a/results/node-postgres-cpu-count.txt b/results/node-postgres-cpu-count.txt index 985bd44..385dc3e 100644 --- a/results/node-postgres-cpu-count.txt +++ b/results/node-postgres-cpu-count.txt @@ -1,29 +1,29 @@ cpu: AMD EPYC 7763 64-Core Processor -runtime: node v22.3.0 (x64-linux) +runtime: node v22.4.0 (x64-linux) benchmark time (avg) (min … max) p75 p99 p999 --------------------------------------------------- ----------------------------- • PostgreSQL --------------------------------------------------- ----------------------------- -DrizzleORM 379 µs/iter (299 µs … 1'952 µs) 403 µs 704 µs 1'230 µs -KnexJS 337 µs/iter (296 µs … 734 µs) 346 µs 490 µs 682 µs -Kysely 297 µs/iter (253 µs … 1'895 µs) 302 µs 440 µs 1'099 µs -MikroORM 349 µs/iter (32'160 ns … 1'202 µs) 520 µs 707 µs 1'122 µs -Pg 259 µs/iter (222 µs … 776 µs) 264 µs 337 µs 394 µs -PgTyped 275 µs/iter (240 µs … 1'910 µs) 282 µs 348 µs 424 µs -Postgres.js 208 µs/iter (172 µs … 2'363 µs) 221 µs 280 µs 333 µs -Prisma 494 µs/iter (442 µs … 818 µs) 504 µs 627 µs 811 µs -Sequelize 382 µs/iter (324 µs … 792 µs) 399 µs 553 µs 766 µs -TypeORM 392 µs/iter (328 µs … 2'283 µs) 404 µs 578 µs 1'867 µs +DrizzleORM 364 µs/iter (304 µs … 1'544 µs) 388 µs 569 µs 856 µs +KnexJS 329 µs/iter (289 µs … 659 µs) 338 µs 465 µs 631 µs +Kysely 288 µs/iter (249 µs … 2'092 µs) 294 µs 392 µs 1'424 µs +MikroORM 335 µs/iter (31'018 ns … 1'176 µs) 499 µs 717 µs 1'114 µs +Pg 252 µs/iter (218 µs … 617 µs) 256 µs 329 µs 400 µs +PgTyped 265 µs/iter (230 µs … 2'174 µs) 268 µs 335 µs 481 µs +Postgres.js 202 µs/iter (161 µs … 2'352 µs) 216 µs 266 µs 340 µs +Prisma 489 µs/iter (448 µs … 747 µs) 501 µs 601 µs 628 µs +Sequelize 367 µs/iter (311 µs … 918 µs) 383 µs 514 µs 718 µs +TypeORM 379 µs/iter (324 µs … 1'456 µs) 393 µs 558 µs 1'399 µs summary for PostgreSQL Postgres.js - 1.24x faster than Pg - 1.32x faster than PgTyped + 1.25x faster than Pg + 1.31x faster than PgTyped 1.43x faster than Kysely - 1.62x faster than KnexJS - 1.68x faster than MikroORM - 1.82x faster than DrizzleORM - 1.84x faster than Sequelize - 1.89x faster than TypeORM - 2.38x faster than Prisma + 1.63x faster than KnexJS + 1.66x faster than MikroORM + 1.81x faster than DrizzleORM + 1.82x faster than Sequelize + 1.88x faster than TypeORM + 2.42x faster than Prisma diff --git a/results/node-postgres-default.txt b/results/node-postgres-default.txt index 458a61e..cdcec20 100644 --- a/results/node-postgres-default.txt +++ b/results/node-postgres-default.txt @@ -1,29 +1,29 @@ cpu: AMD EPYC 7763 64-Core Processor -runtime: node v22.3.0 (x64-linux) +runtime: node v22.4.0 (x64-linux) benchmark time (avg) (min … max) p75 p99 p999 --------------------------------------------------- ----------------------------- • PostgreSQL --------------------------------------------------- ----------------------------- -DrizzleORM 371 µs/iter (311 µs … 1'555 µs) 390 µs 579 µs 1'025 µs -KnexJS 342 µs/iter (296 µs … 740 µs) 352 µs 510 µs 735 µs -Kysely 302 µs/iter (258 µs … 2'384 µs) 307 µs 448 µs 2'109 µs -MikroORM 358 µs/iter (31'299 ns … 1'164 µs) 521 µs 725 µs 1'146 µs -Pg 258 µs/iter (227 µs … 783 µs) 262 µs 348 µs 398 µs -PgTyped 275 µs/iter (242 µs … 1'976 µs) 281 µs 351 µs 422 µs -Postgres.js 207 µs/iter (172 µs … 2'483 µs) 218 µs 283 µs 357 µs -Prisma 491 µs/iter (442 µs … 815 µs) 500 µs 601 µs 693 µs -Sequelize 394 µs/iter (316 µs … 2'170 µs) 415 µs 599 µs 1'824 µs -TypeORM 395 µs/iter (331 µs … 1'892 µs) 409 µs 614 µs 1'890 µs +DrizzleORM 363 µs/iter (301 µs … 1'473 µs) 383 µs 590 µs 796 µs +KnexJS 329 µs/iter (286 µs … 631 µs) 335 µs 470 µs 629 µs +Kysely 291 µs/iter (251 µs … 1'917 µs) 297 µs 403 µs 1'292 µs +MikroORM 347 µs/iter (31'259 ns … 1'493 µs) 500 µs 733 µs 1'092 µs +Pg 255 µs/iter (213 µs … 767 µs) 265 µs 376 µs 467 µs +PgTyped 266 µs/iter (238 µs … 1'820 µs) 269 µs 333 µs 390 µs +Postgres.js 200 µs/iter (167 µs … 1'934 µs) 213 µs 264 µs 322 µs +Prisma 487 µs/iter (438 µs … 1'434 µs) 496 µs 594 µs 825 µs +Sequelize 371 µs/iter (309 µs … 899 µs) 391 µs 567 µs 756 µs +TypeORM 379 µs/iter (321 µs … 1'481 µs) 390 µs 554 µs 1'389 µs summary for PostgreSQL Postgres.js - 1.24x faster than Pg + 1.28x faster than Pg 1.33x faster than PgTyped - 1.46x faster than Kysely - 1.65x faster than KnexJS + 1.45x faster than Kysely + 1.64x faster than KnexJS 1.73x faster than MikroORM - 1.79x faster than DrizzleORM - 1.9x faster than Sequelize - 1.91x faster than TypeORM - 2.37x faster than Prisma + 1.81x faster than DrizzleORM + 1.85x faster than Sequelize + 1.89x faster than TypeORM + 2.43x faster than Prisma diff --git a/results/node-postgres-max.txt b/results/node-postgres-max.txt index 72913d2..4fa1abd 100644 --- a/results/node-postgres-max.txt +++ b/results/node-postgres-max.txt @@ -1,29 +1,29 @@ cpu: AMD EPYC 7763 64-Core Processor -runtime: node v22.3.0 (x64-linux) +runtime: node v22.4.0 (x64-linux) benchmark time (avg) (min … max) p75 p99 p999 --------------------------------------------------- ----------------------------- • PostgreSQL --------------------------------------------------- ----------------------------- -DrizzleORM 373 µs/iter (310 µs … 1'529 µs) 391 µs 602 µs 1'528 µs -KnexJS 338 µs/iter (292 µs … 1'512 µs) 347 µs 499 µs 994 µs -Kysely 299 µs/iter (256 µs … 2'202 µs) 303 µs 436 µs 2'069 µs -MikroORM 364 µs/iter (34'785 ns … 1'545 µs) 522 µs 767 µs 1'203 µs -Pg 258 µs/iter (227 µs … 666 µs) 262 µs 335 µs 401 µs -PgTyped 275 µs/iter (247 µs … 2'171 µs) 279 µs 358 µs 543 µs -Postgres.js 209 µs/iter (167 µs … 2'648 µs) 220 µs 294 µs 352 µs -Prisma 494 µs/iter (443 µs … 1'090 µs) 503 µs 614 µs 803 µs -Sequelize 387 µs/iter (315 µs … 1'092 µs) 415 µs 577 µs 1'054 µs -TypeORM 396 µs/iter (329 µs … 5'772 µs) 408 µs 626 µs 1'912 µs +DrizzleORM 365 µs/iter (304 µs … 1'740 µs) 381 µs 560 µs 1'642 µs +KnexJS 328 µs/iter (284 µs … 614 µs) 336 µs 473 µs 596 µs +Kysely 289 µs/iter (254 µs … 1'590 µs) 295 µs 409 µs 963 µs +MikroORM 336 µs/iter (30'286 ns … 1'343 µs) 501 µs 714 µs 1'233 µs +Pg 251 µs/iter (222 µs … 728 µs) 256 µs 325 µs 387 µs +PgTyped 268 µs/iter (233 µs … 1'741 µs) 272 µs 334 µs 382 µs +Postgres.js 202 µs/iter (161 µs … 2'308 µs) 215 µs 264 µs 361 µs +Prisma 494 µs/iter (440 µs … 1'114 µs) 502 µs 705 µs 1000 µs +Sequelize 371 µs/iter (314 µs … 934 µs) 388 µs 533 µs 772 µs +TypeORM 383 µs/iter (325 µs … 1'444 µs) 398 µs 576 µs 1'410 µs summary for PostgreSQL Postgres.js - 1.23x faster than Pg + 1.24x faster than Pg 1.32x faster than PgTyped 1.43x faster than Kysely 1.62x faster than KnexJS - 1.74x faster than MikroORM - 1.78x faster than DrizzleORM - 1.85x faster than Sequelize + 1.66x faster than MikroORM + 1.8x faster than DrizzleORM + 1.83x faster than Sequelize 1.89x faster than TypeORM - 2.36x faster than Prisma + 2.44x faster than Prisma diff --git a/results/node-postgres-single.txt b/results/node-postgres-single.txt index 4326344..11741c3 100644 --- a/results/node-postgres-single.txt +++ b/results/node-postgres-single.txt @@ -1,29 +1,29 @@ cpu: AMD EPYC 7763 64-Core Processor -runtime: node v22.3.0 (x64-linux) +runtime: node v22.4.0 (x64-linux) benchmark time (avg) (min … max) p75 p99 p999 --------------------------------------------------- ----------------------------- • PostgreSQL --------------------------------------------------- ----------------------------- -DrizzleORM 371 µs/iter (308 µs … 1'548 µs) 389 µs 575 µs 876 µs -KnexJS 345 µs/iter (288 µs … 1'036 µs) 350 µs 562 µs 840 µs -Kysely 293 µs/iter (252 µs … 2'152 µs) 298 µs 414 µs 1'129 µs -MikroORM 369 µs/iter (35'577 ns … 1'679 µs) 526 µs 807 µs 1'182 µs -Pg 260 µs/iter (229 µs … 743 µs) 265 µs 347 µs 432 µs -PgTyped 278 µs/iter (243 µs … 2'097 µs) 284 µs 374 µs 436 µs -Postgres.js 214 µs/iter (164 µs … 2'399 µs) 228 µs 290 µs 363 µs -Prisma 503 µs/iter (450 µs … 1'604 µs) 517 µs 609 µs 841 µs -Sequelize 378 µs/iter (315 µs … 835 µs) 400 µs 565 µs 797 µs -TypeORM 395 µs/iter (328 µs … 2'308 µs) 406 µs 663 µs 1'739 µs +DrizzleORM 359 µs/iter (303 µs … 1'242 µs) 379 µs 550 µs 884 µs +KnexJS 333 µs/iter (286 µs … 1'012 µs) 343 µs 546 µs 1'004 µs +Kysely 291 µs/iter (248 µs … 2'080 µs) 295 µs 429 µs 1'423 µs +MikroORM 329 µs/iter (30'988 ns … 1'097 µs) 496 µs 699 µs 986 µs +Pg 249 µs/iter (217 µs … 790 µs) 254 µs 319 µs 422 µs +PgTyped 264 µs/iter (230 µs … 1'714 µs) 268 µs 340 µs 409 µs +Postgres.js 199 µs/iter (168 µs … 2'035 µs) 209 µs 261 µs 290 µs +Prisma 483 µs/iter (443 µs … 820 µs) 489 µs 583 µs 679 µs +Sequelize 365 µs/iter (311 µs … 799 µs) 386 µs 518 µs 700 µs +TypeORM 371 µs/iter (318 µs … 1'603 µs) 385 µs 519 µs 1'407 µs summary for PostgreSQL Postgres.js - 1.22x faster than Pg - 1.3x faster than PgTyped - 1.37x faster than Kysely - 1.62x faster than KnexJS - 1.72x faster than MikroORM - 1.73x faster than DrizzleORM - 1.77x faster than Sequelize - 1.85x faster than TypeORM - 2.35x faster than Prisma + 1.25x faster than Pg + 1.33x faster than PgTyped + 1.46x faster than Kysely + 1.66x faster than MikroORM + 1.68x faster than KnexJS + 1.81x faster than DrizzleORM + 1.83x faster than Sequelize + 1.87x faster than TypeORM + 2.43x faster than Prisma