Heim  >  Artikel  >  Web-Frontend  >  Verwenden Sie Prisma ORM nicht, bevor Sie dies gelesen haben!

Verwenden Sie Prisma ORM nicht, bevor Sie dies gelesen haben!

Linda Hamilton
Linda HamiltonOriginal
2024-10-16 08:20:03490Durchsuche

Não use Prisma ORM antes de ler isso!

Stellen Sie sich das Chaos vor, Sie erstellen eine kostenlose Datenbank in NeonDB mit 0,5 GB Speicher und denken: „Schön, ich werde zum Testen eine kostenlose Stufe verwenden.“ . Dann, Stunden später, kommt die fatale E-Mail: „Ihr Speicherplatz wurde aufgebraucht!“. Wow, was meinst du? Es blieb nicht einmal Zeit, den Stuhl aufzuwärmen! Die Antwort? Ich habe das hervorragende Prisma ORM verwendet und zur Verbesserung den ganzen Tag über mehrere Migrationen durchgeführt, bei denen ich nur das Schema modelliert habe.

Lassen Sie uns verstehen, was passiert ist und natürlich, warum manchmal das gute alte SQL immer noch tausendmal besser ist.

Zuerst müssen Sie sich selbst kontextualisieren. Ich habe den CrazyStack-Kurs 124 (mein Node- und React-Bootcamp) aufgezeichnet. Und es ist möglich, Postgres oder Mongodb ohne ORMs zu verwenden. Allerdings bat mich ein Student über WhatsApp, Prisma in das Projekt einzubinden. Hey, ich habe beschlossen, das Experiment durchzuführen.

Prisma ORM: einfach, aber teuer

Prisma ist das Ding, das perfekt zu sein scheint. „Ich werde Datenbankabfragen abstrahieren, Zeit sparen, das ist der neue Hype.“ Aber Überraschung! Es gibt kein kostenloses Mittagessen und dieser Rango wurde in Form von getoastetem Vorrat serviert. Ich habe tagsüber Migrationen ausgeführt und es war einfach zu viel Neondb. Und es war nicht einmal ein riesiges Projekt.

Und Prisma erstellt nicht nur die Migrationen, sondern hinterlässt als Bonus auch einige zusätzliche Tabellen und Protokolle. Wenn Sie, wie ich, Dinge testen und Migrationen nach links und rechts durchführen, kommt dieses Geschenk am Ende aus dem Griechischen.

Prisma ist sehr gut, aber wenn es um die Lagerung geht, spritzt es gerne mal raus:

  1. Runde Migrationen: Jedes Mal, wenn ich eine Migration durchführte, erstellte und speicherte Prisma neue Migrationen. Jedes mit seinem eigenen kleinen Paket an Metadaten, Protokollen und Tabellen.

  2. Protokolle, die sich vervielfachen: Um sicherzustellen, dass nichts schief geht (oder um Ihnen das Leben zu erleichtern, wenn es passiert), zeichnet Prisma detaillierte Protokolle auf. Aber diese Protokolle sammeln sich an und da ich nicht auf einer „unbegrenzten“ Bank bin, werden sie schnell zu einem Problem.

  3. Überlastung mit Hilfstabellen: Zusätzlich zu Migrationen erstellt Prisma auch zusätzliche Tabellen, um den Überblick über verschiedene Dinge zu behalten, insbesondere in relationalen Datenbanken wie Postgres.

Am Ende hat das, was wie ein magisches Werkzeug zur Vereinfachung des Lebens schien, meine kostenlose NeonDB verschlungen.

SQL „On the Nail“: Warum weniger mehr ist

Und hier kommt der gute alte SQL-Ansatz ins Spiel. Ja, Prisma ist großartig und spart Zeit, aber manchmal macht es die Dinge nur komplizierter. Lassen Sie uns über die Vorteile sprechen, wenn Sie auf ORM verzichten und Ihre Abfragen von Hand schreiben:

  1. Absolute Control: Die Rechnung enthält keine Überraschungen. Sie wissen genau, was jede Codezeile tut, und Sie werden keine Protokolle oder versteckten Tabellen finden, die Ihren Platz verschlingen.

  2. Kein Eigengewicht: Bei Verwendung von Direct SQL geht das, was Sie schreiben, an die Bank. Es gibt keine Metadaten, Migrationen oder Protokolle, die den Einsatz belasten.

  3. Mehr Leistung: Direct SQL verbraucht bei guter Ausführung viel weniger Platz und Ressourcen. Es ist ideal für kleine Banken wie NeonDB für diejenigen, die wie ich Freeganisten sind.

  4. Kein verstecktes Geschäft: Keine von Grund auf neu erstellten Tabellen oder sich stapelnde Transaktionsprotokolle. Die Kontrolle liegt bei Ihnen und nur bei Ihnen.

Moral der Geschichte:

Wenn Sie, wie ich, gerne Tools testen und schnelle Experimente durchführen, überlegen Sie es sich zweimal, bevor Sie einen Prisma ORM mit wenig Platz in Ihre Datenbank werfen. Ist das Prisma ein Wunder? UND. Aber in einer begrenzten Bank wie NeonDB ist es, als würde man eine Party veranstalten und feststellen, dass das gekaufte Bier nicht für alle ausreicht.

Manchmal ist „On-the-Fly“-SQL der sicherste Weg, da es Ihnen die genaue Kontrolle darüber gibt, was in die Datenbank gelangt. Und die Lektion lautet: Das nächste Mal werde ich besser nachdenken, bevor ich eine Migration nach der anderen auf einer 0,5-GB-Bank durchführe.

Das obige ist der detaillierte Inhalt vonVerwenden Sie Prisma ORM nicht, bevor Sie dies gelesen haben!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn