跳到主要內容

過度提取

Optimize 提供建議,協助您識別並解決因過度提取資料而造成的效能問題。

以下查詢可能在 User 模型的查詢中過度提取資料

await prisma.user.findMany({
where: {
email: { contains: "gmail" },
},
include: {
links: true,
},
});

問題是什麼?

從表格的所有欄位檢索資料,尤其是在大型表格或具有複雜關係的表格中,可能會導致

  • 載入時間增加:提取超出必要的資料會延長查詢處理和資料傳輸時間。
  • 更大的資源消耗:檢索不必要的欄位會對記憶體和 CPU 資源造成壓力,無論是在資料庫中還是在執行應用程式的機器上。
  • 更高的成本:讀取和傳輸過多的資料可能會導致處理成本增加。
  • 安全風險:您可能會不小心洩露應該保留在資料庫內的敏感資料。