メインコンテンツにスキップ

はじめに

前提条件

Prisma Optimize を始める前に、以下を確認してください。

  • A.
  • Prisma Client バージョン 5.0.0 以降を使用するプロジェクト (最新バージョンの使用を推奨します)。
  • PostgreSQL、MySQL/MariaDB、CockroachDB、または MS SQL Server データベース。
注記

Prisma Optimize はローカル環境での使用を意図しています。詳細については、FAQ を参照してください。

1. Optimize を起動する

  1. ログイン.
  2. 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 でクエリインサイトの生成を開始するには、以下の手順に従ってください。

  1. Optimize ダッシュボードで、Start recording ボタンをクリックし、アプリを実行して、記録がアクティブな間にいくつかの Prisma クエリを実行します。

  2. アプリが実行され、実行された Prisma クエリに基づいてインサイトが生成されたら、Stop recording ボタンをクリックします。

  3. クエリの詳細を確認するには、クエリをクリックして 個々のクエリの詳細 を調べ、クエリパフォーマンスを向上させるための推奨事項については、Recommendations タブを確認してください。

    情報

    Prisma AI を使用して、推奨事項を理解し、Prisma モデルのコンテキスト内で適用します。

実践的な学習体験のために、ステップバイステップの例 を試してみてください。

ヘルプが必要ですか?

サポートが必要な場合は、Discord#help-and-questions チャンネルでお問い合わせいただくか、コミュニティ に参加して、他のユーザーが Optimize をどのように使用しているかを確認してください。