2026年のTypeScript ORM 二強
TypeScript で DB を扱うとき、Prisma と Drizzle が主要選択肢になりました。本記事では、両者の公式ドキュメントと npm の公式統計(2026年10月21日確認)をもとに、選び方を整理します。PostgreSQL 実践 もご参考に。
Prisma の特徴
(1) スキーマファイル:schema.prisma で宣言。(2) 自動生成クライアント:型安全な API。(3) マイグレーション内蔵:prisma migrate。(4) 豊富なエコシステム:Studio/Pulse 等。(5) 抽象化が高い:SQL を直接書きにくい場面も。
Drizzle の特徴
(1) SQL ライクな書き方:薄い抽象化。(2) ランタイム軽量:エッジ環境に最適。(3) 型推論:TS の力でクエリ結果まで型化。(4) マイグレーション:drizzle-kit で自動生成。(5) 新しい:エコシステムは Prisma より小さめ。
数字で見る2つのORM(npm の公式統計)
| パッケージ | 週間ダウンロード数 | 公開されている版(2026年10月21日時点) |
|---|---|---|
| drizzle-orm | 13,179,456 | 0.45.4(2026年10月8日)が正式版、1.0 のリリース候補(RC)版も公開 |
| drizzle-kit | 11,115,202 | — |
| prisma | 8,352,931 | 7系の最新の正式版は7.10.1(2026年10月15日)、8.0 の RC 版も公開 |
| @prisma/client | 7,909,830 | — |
※npm の公式統計 API(2026年10月13日〜19日の1週間)と npm レジストリの公開日。ダウンロード数には CI などの自動インストールも含まれ、利用者数そのものではありません。
週間ダウンロード数では、drizzle-orm が @prisma/client を上回っていました。ただ、CI で何度もインストールされるプロジェクトほど数字が大きく出るので、「使っている会社の数」とは違う指標です。どちらも毎週数百万回以上使われていて、片方が廃れていくような状況ではない、と読むのが正確です。Drizzle は1.0の正式版に向けて準備が進んでいる段階で、Prisma は7系の改良と8.0の準備が並行しています。
Prisma 7(2025年11月)で変わったこと
Prisma ORM 7.0.0 は2025年11月19日に公開されました。公式のアップグレードガイドによると、主な変更点は次のとおりです。
- Rust 製のクエリエンジンをやめた:新しい prisma-client ジェネレーターで「Rust-free」のクライアントになった
- driver adapter が必須:PostgreSQL なら @prisma/adapter-pg のように、データベースごとのアダプターを指定する
- ESM での提供と、CLI の設定をまとめる prisma.config.ts
- .env を自動で読み込まない、クライアントのミドルウェア($use)とメトリクス機能の削除
- 動作環境:Node.js 20.19.0 以上・TypeScript 5.4 以上。MongoDB は7ではまだ使えず、6系の利用が案内されている
この記事で「Workers では Prisma が重い」と書いている点は、Rust 製のエンジンを前提にした話でした。7からはエンジンの仕組みが変わったので、エッジ環境で使うかどうかは、いまの版で実際にバンドルして確かめてから決めるのがおすすめです。逆に、6系から7系に上げるときは設定の書き方が大きく変わるため、ガイドを見ながら段階的に移すのが安全です。
Drizzle 側の公式ドキュメントは、自分たちを「headless TypeScript ORM with a head」と説明し、依存パッケージは「exactly 0 dependencies」としています。対応するデータベースとして PostgreSQL・MySQL・SQLite・SingleStore・MSSQL・CockroachDB を挙げていて、各データベースの標準的なドライバーの上で動く作りです。ライブラリとして薄く使えることを売りにしている点が、Prisma との一番の違いです。
選択の判断軸
(1) エッジで使う:Drizzle 推奨(Workers 動作)。(2) SQL に近い書き方:Drizzle。(3) スキーマファースト:Prisma。(4) パフォーマンス:Drizzle の方が軽量(公開情報をもとに)。(5) チームの慣れ:両方学習価値あり。TypeScript 上級 もご参考に。
マイグレーション戦略
(1) Prisma Migrate:宣言的・自動生成。(2) Drizzle Kit:宣言的+SQL ライクな出力。(3) 本番安全性:手動レビューが必須。(4) ロールバック:両者ともに down 不要設計が現代的。(5) 大規模変更:Online Schema Change 検討。SQLアンチパターン もご参考に。
パフォーマンス比較
(1) クエリレイテンシ:Drizzle がやや速い(公開情報をもとに)。(2) コネクション管理:両者ともプールが必要。(3) N+1 問題:Prisma の include/select で対策、Drizzle は join で。(4) クエリ最適化:両者 EXPLAIN で検証。(5) キャッシュ層:Redis 等の併用が必要。
エコシステム連携
(1) Next.js:両者対応。(2) tRPC:両者対応。(3) Cloudflare Workers:Drizzle 有利。(4) Hono:Drizzle と相性良い。(5) NestJS:Prisma 親和性高い。Hono 実践 もご参考に。
失敗しがちなパターン
(1) Prisma を Workers で重い:バンドルサイズ問題。(2) Drizzle のクエリで型が崩れる:複雑な join で。(3) マイグレーション差分が大きい:レビューしきれない。(4) N+1 を見落とす:両者ともに発生する。(5) 本番接続プール不在:枯渇。対策は、(1)Edge は Drizzle、(2)型表現分割、(3)小さい単位、(4)include/join 活用、(5)PgBouncer等、です。
この記事のデータの出典
- npm 公式統計 API(api.npmjs.org、2026年10月13日〜19日)と npm レジストリ
- Prisma 公式ドキュメント「Upgrade to Prisma ORM 7」
- Drizzle ORM 公式ドキュメント「Overview」

