Skip to content
Latchkey

Prisma vs Drizzle: ORMかSQL-firstのquery builderか?

Prismaは生成されるクライアントを持つフルORM。DrizzleはTypeScriptの型を備え、codegenのランタイムエンジンを持たない軽量でSQL-firstのquery builderです。

Prismaは高レベルで生成される型安全なクライアントと、管理されたmigrationフローを提供します。DrizzleはSQL-firstのアプローチを取ります: SQLのように読めるクエリを書き、完全な型推論を得て、別個のquery engineバイナリを持たない極小のランタイムを出荷します - cold startとバンドルサイズが重要なserverlessやedgeに魅力的です。

PrismaDrizzle
スタイル高レベルなORMクライアントSQL-firstのquery builder
Runtimequery engineバイナリ軽量、エンジンなし
Edge / serverless改善中強い (小さく高速)
Migrationsprisma migratedrizzle-kit
最適な用途高レベルなDXSQL制御、edge

CIでは

Prismaはgenerateに加え、テストDBに対するmigration適用を必要とします。Drizzleはエンジンが不要で、drizzle-kit経由でmigrationsを適用します。Drizzleのバンドルはより小さく、serverlessのdeployステップで重要になり得ます。どちらもCI内の使い捨てのデータベースサービスで動作します。

高速化する

依存関係 (およびPrismaクライアント) を実行間でcacheします。両方ともCI runner上で実行されます。高速なmanaged runnerはinstall、generate、migrationのステップを短縮します。

結論

高レベルで完全に管理されたORM体験を求める: Prisma。SQLレベルの制御、極小のバンドル、優れたedge/serverless適合を求める: Drizzle。Drizzleはserverless TypeScriptで人気が高まっており、PrismaはDX優先のチームに向きます。

関連ガイド