はじめに
前提条件
Prisma Optimize を始める前に、以下を確認してください。
- A.
- Prisma Client バージョン
5.0.0
以降を使用するプロジェクト (最新バージョンの使用を推奨します)。 - PostgreSQL、MySQL/MariaDB、CockroachDB、または MS SQL Server データベース。
Prisma Optimize はローカル環境での使用を意図しています。詳細については、FAQ を参照してください。
1. Optimize を起動する
- ログイン.
- Prisma Optimize にアクセスして起動するには、手順に従ってください。
2. アプリケーションに Optimize を追加する
2.1. Optimize Prisma Client エクステンションをインストールする
Prisma Client と Optimize エクステンションをインストールする
npm install @prisma/client@latest @prisma/extension-optimize
以前のバージョンの Prisma ORM でのトレースの有効化
Prisma ORM のバージョン 4.2.0
から 6.1.0
の間では、Prisma スキーマファイルで tracing
プレビュー機能を有効にする必要があります。
generator client {
provider = "prisma-client-js"
previewFeatures = ["tracing"]
}
2.2. Optimize API キーを .env
ファイルに追加する
Prisma Optimize API キーを生成 し、.env
ファイルに追加します。
OPTIMIZE_API_KEY="YOUR_OPTIMIZE_API_KEY"
2.3. Prisma Client インスタンスを拡張する
既存の Prisma Client インスタンスを Optimize エクステンションで拡張します。
import { PrismaClient } from "@prisma/client";
import { withOptimize } from "@prisma/extension-optimize";
const prisma = new PrismaClient().$extends(
withOptimize({ apiKey: process.env.OPTIMIZE_API_KEY }),
);
Optimize エクステンションを他のエクステンションまたはミドルウェアと共に使用する
エクステンションは順番に適用されるため、正しい順序で適用してください。エクステンションは動作を共有できず、最後に適用されたエクステンションが優先されます。
アプリケーションで Prisma Accelerate を使用している場合は、Optimize エクステンションの後に適用してください。例:
const prisma = new PrismaClient().$extends(withOptimize()).$extends(withAccelerate())
アプリケーションで Prisma Middleware を使用している場合は、(Optimize のような) Prisma Client エクステンションよりも前に追加されていることを確認してください。例:
const prisma = new PrismaClient().$use(middleware).$extends(withOptimize())
2.5. Prisma Optimize を使用してインサイトを生成する
Prisma Optimize でクエリインサイトの生成を開始するには、以下の手順に従ってください。
-
Optimize ダッシュボードで、Start recording ボタンをクリックし、アプリを実行して、記録がアクティブな間にいくつかの Prisma クエリを実行します。
-
アプリが実行され、実行された Prisma クエリに基づいてインサイトが生成されたら、Stop recording ボタンをクリックします。
-
クエリの詳細を確認するには、クエリをクリックして 個々のクエリの詳細 を調べ、クエリパフォーマンスを向上させるための推奨事項については、Recommendations タブを確認してください。
情報Prisma AI を使用して、推奨事項を理解し、Prisma モデルのコンテキスト内で適用します。
実践的な学習体験のために、ステップバイステップの例 を試してみてください。
ヘルプが必要ですか?
サポートが必要な場合は、Discord の #help-and-questions
チャンネルでお問い合わせいただくか、コミュニティ に参加して、他のユーザーが Optimize をどのように使用しているかを確認してください。