www.youtube.com
Why Prisma Might Not Be a Good Choice for Your Project
Excerpt
But it's not good in every use case. The awesome DX comes with some large trade-offs I didn't even know about until I dug further into this topic. ... {ts:0} so using Prisma as your or M for any of your next projects might not be the best {ts:6} choice actually especially with the whole move towards the edge and just how easy versel has made that in nexgs {ts:12} specifically Prisma is becoming less and less of a viable alternative because due to how it's architected it doesn't even … {ts:103} with but there are also downsides for example it's pretty inefficient I recently saw a video by code them that I {ts:110} found really interesting in which he explained why this is the case and the way Prisma Works under the hood with its {ts:116} rust binary is that it fetches both table if you want to create something like an SQL join in SQL itself that is {ts:125} optimized in Prisma the Prisma just goes ahead and fetches from the one table fetches from the other merges them {ts:131} together resulting in a pretty inefficient data querying and that becomes especially painful when you're {ts:137} paying your database provider whatever that might be based on how many rows are read like for example Planet scale that {ts:145} inefficiency can become pretty expensive for you yep and then besides the inefficiency there's no Edge {ts:150} compatibility and that's also because of the rust binary that we're using right here the query engine that's kind of the {ts:156} problem why we can't use Prisma on the edge so if those are trade-offs you cannot take in your app because you … {ts:302} it perfect no it has downsides first off it's not intuitive for everyone if you don't know SQL you're gonna have a hard {ts:307} time writing drizzle if you don't know SQL you're going to have a pretty easy time writing Prisma doesn't really {ts:312} affect you negatively secondly the setup is more complicated especially the migrations and running the migration
Related Pain Points
Rust query engine incompatibility with edge runtime platforms
8The Prisma Rust query engine makes Prisma undeployable to Cloudflare Workers and other edge runtime environments, limiting platform compatibility.
Prisma's query engine fetches entire tables inefficiently, causing expensive data reads and performance degradation
7Prisma's Rust-based query engine performs application-level joins by fetching entire tables and merging results in memory rather than using optimized database-level SQL joins. This approach wastes bandwidth and becomes prohibitively expensive for teams paying per-row-read to database providers like PlanetScale, and is especially problematic at scale.