Manifesto from Prisma on next steps with the ORM
prisma.io
prisma.io
They have to abstract multiple db paradigms into an API that works for many use cases but doesn't get you all the way there. Eg: Last time I checked they didn't support listen/notify on Postgres.
Also overall performance has been lacking which I suspect is also a symptom of trying to support too many dbs. They recently released v6 and made claims of performance improvements but afaik offer no data to back up these claims [1]. It's all very "trust me bro it's faster".
Drizzle still hasn't reached 1.0 but they created a much better ORM in a fraction of the time (and probably budget).
[1] https://www.prisma.io/blog/prisma-6-better-performance-more-...
As for performance, you are right. We do take a hit when trying to support as many DBs as possible. However, performance is not an issue. Take a look at https://benchmarks.prisma.io. Regardless, we're always open to being given examples whereby we can dig into performance related issues. So if you have any, please send them our way.
> performance is not an issue
No offense but I gotta say, those benchmarks look a bit off.
To begin with, why are you only comparing vs other ORMs instead of adding a baseline of handwritten SQL code?
Second, it's not clear how big the data set is. In the repo it seems the default size is 50 rows. Is that what you used for the results in the website?
Third, how can Drizzle take 1300ms to do such a lightweight query with a single join? Something is obviously wrong here considering Drizzle creates a single SQL query. Did you prepare the statements? Are you even using the latest version?
On top of that... it seems Prisma is taking +50ms to do a single join on two tables with 50 rows which means it would execute 20 queries per second. Not exactly performant.