Ich habe das an verschiedenen Orten gesehen. Theoretisch ist es großartig, aber ich habe selten gesehen, dass es effektiv ist. Hier ist der Grund. Erstens, wenn Sie ein Team von Datenbankadministratoren (oder anderen Personen) haben, habe ich im Allgemeinen festgestellt, dass die am wenigsten kompetente oder am wenigsten geliebte Person der Gruppe die Hauptlast der Überprüfungsarbeit erhält. Warum sagst du? Das liegt daran, dass niemand anderes es tun möchte und alle anderen damit beschäftigt sind, andere Dinge zu tun, die wahrscheinlich dringlicher sind. Ich habe jemals einen DBA gesehen, der herumgesessen hat und gesagt hat: "Mann, alles läuft perfekt. Ich kann mich einfach zurücklehnen und im Internet surfen. Ich wünschte, ich hätte etwas zu tun." Ich auch, zumindest nicht die Guten. Sie sind genauso beschäftigt oder geschäftiger als alle anderen. Dies bedeutet, dass die Person, die am wenigsten fähig ist, höchstwahrscheinlich die Überprüfung durchführt, und dies ist genau die Person, die Sie nicht möchten. Der Code, den Sie überprüfen möchten, ist der wirklich sehr harte Code, den die Leute betrachten und als eine Art schwarze Magie ausgeben. Junior-Datenbankadministratoren oder einfach nur schlechte DBAs werden niemals in der Lage sein, die Feinheiten der Funktionsweise einer wirklich harten Abfrage zu erfassen. Selten, wie nie, sagt jemand jemals: "Mann, ich habe nicht daran gedacht, eine einzelne Zeile aus einer Tabelle mit dem Primärschlüssel auszuwählen! Danke, DBA, du bist ein Lebensretter." In diesem Szenario schaffen Sie also wirklich nur viel Arbeit für wenig Wert. Denken Sie nicht daran, mit dem Primärschlüssel eine einzelne Zeile aus einer Tabelle auszuwählen! Dank DBA sind Sie ein Lebensretter. "In diesem Szenario schaffen Sie also wirklich viel Arbeit für wenig Wert. Denken Sie nicht daran, mit dem Primärschlüssel eine einzelne Zeile aus einer Tabelle auszuwählen! Dank DBA sind Sie ein Lebensretter. "In diesem Szenario schaffen Sie also wirklich viel Arbeit für wenig Wert.
Zweitens ist es einfach mehr Arbeit für die DB-Gruppe. Was wahrscheinlich passieren wird, selbst wenn sie sich andere Dinge ansehen, ist, dass sie einen kurzen Blick darauf werfen und etwas übersehen wird. Sie sind vielbeschäftigte Leute, und das Überprüfen von Code ist sehr zeitaufwändig. In Wahrheit ist es nicht fair, dass sie damit beauftragt werden, denn es ist eine Ausrede für alle anderen, faul zu sein und sie als Out zu benutzen, was letztendlich passiert. In der Produktion bricht etwas zusammen, und der Entwickler weist schnell darauf hin: "Nun, der DBA hat es überprüft." Jetzt ist dies die ganze Zeit wahr, nein, aber es ist ein Teil der Zeit und oft von den Leuten, die ihren Code wirklich überprüfen lassen müssen. Sie haben also den DBA mit zusätzlicher Arbeit begraben und diese Person gezwungen, für die Fehler einer anderen Person verantwortlich zu sein, wenn diese Person dies wahrscheinlich nicht tut.
Die einzige Möglichkeit, das Problem wirklich zu lösen, besteht darin, dass Leute, die wissen, wie man SQL-Code schreibt, ihn schreiben. Sollten sie von Zeit zu Zeit Eingaben von den Datenbankadministratoren erhalten? Natürlich sollten sie das, aber ich habe immer festgestellt, wenn Sie beim ersten Mal keine Zeit haben, es richtig zu machen, wann werden Sie Zeit finden, es zu beheben.