Wenn ich sie im Admin-Backend ausführe, zeigt mir die GUI eine sehr schnelle Ausführungszeit für die DB-Abfrage selbst an, z. B. „Query completed in 7.9 ms.“
Basierend auf den von Ihnen bereitgestellten Informationen würde ich sagen, dass es sich um einfache Abfragen handelt (die in der RDBMS schnell ausgeführt werden können) und viele Zeilen zurückgeben (die im Backend langsam de-/serialisiert und übertragen werden).\n\nWenn die aktuelle Leistung Ihren Anwendungsfall blockiert, gibt es viele verschiedene Lösungen, die Sie untersuchen können:\n\n- Reduzierung der Zeilenanzahl pro Seite, sodass jede Seite schneller ist.\n\n- Erstellen eines Plugins, das die gleichen Informationen an einem neuen API-Endpunkt bereitstellt und intelligenter mit Caching und Datenformat umgeht.\n\n- Direkte Abfrage der zugrunde liegenden Datenbank.
Es ist dasselbe, wenn ich nur eine einzige Zeile als Ergebnis einer Abfrage habe. Z. B. eine Abfrage, die eine einzelne Ganzzahl zurückgibt, die im Data Explorer-Panel im Admin-Backend ausgeführt wird, dauert 9 ms, die von außen über die Data Explorer-API per curl ausgeführt wird, dauert 200 ms.
Das möchte ich sehr gerne vermeiden. Ich benutze Data Explorer, weil es in diesen Foren als eine gute Möglichkeit vorgeschlagen wurde, Informationen aus der DB zu erhalten, und eine gut funktionierende API dafür.
Meine Abfrage verwendet sie für JOINs, aber nicht im Ergebnissatz. Die SELECT-Anweisung hat nur eine Spalte, und das ist eine neu berechnete Spalte mit einem beliebigen Namen.
Unter der Annahme, dass es sich dabei um die Fließkommazahlen handelt, die 3 Stellen rechts vom HTTP-Statuscode stehen (z. B. ... 200 642 \"-\" **0.107 0.108** \"system\" ..., von mir mit Sternchen hervorgehoben), sind sie etwa 10-mal so lang wie die im Backend gemeldete Abfragelaufzeit und ziemlich genau halb so lang wie die Zeit, die für curl von meinem Client benötigt wird.