Bedeutung und Berechnungsmethode von QPS und TPS der MySQL-Datenbank

Bedeutung und Berechnungsmethode von QPS und TPS der MySQL-Datenbank

Bei DB-Benchmarktests sind QPS und TPS wichtige Indikatoren zur Messung der Datenbankleistung. Dieser Artikel vergleicht zwei im Internet verfügbare Berechnungsmethoden. Lassen Sie uns zunächst die relevanten Konzepte verstehen.

Konzepteinführung:

  • QPS: Abfragen pro Sekunde ist die Anzahl der Abfragen, auf die ein Server pro Sekunde antworten kann. Es ist ein Maß für die Menge der Abfragen, die ein bestimmter Abfrageserver innerhalb einer bestimmten Zeit verarbeitet.
  • TPS: „Transaktionen pro Sekunde“ ist die Anzahl der Transaktionen pro Sekunde, also die Anzahl der Transaktionen, die von einem Datenbankserver in einer Zeiteinheit verarbeitet werden.

Die Begriffe QPS und TPS werden bei der Überwachung der Datenbankleistung häufig erwähnt. Im Folgenden finden Sie eine kurze Einführung in die Bedeutung und Berechnungsmethoden von QPS und TPS in MySQL-Datenbanken.

1 QPS: Abfrage pro Sekunde. Hier bezieht sich QPS auf die Gesamtzahl der Abfragen, die vom MySQL-Server pro Sekunde ausgeführt werden. Die Berechnungsmethode lautet wie folgt:

Fragen = GLOBALEN STATUS WIE „Fragen“ ANZEIGEN;
Betriebszeit = GLOBALEN STATUS WIE „Betriebszeit“ ANZEIGEN;
QPS = Fragen/Betriebszeit

2 TPS: Transaktionen pro Sekunde. Der von der Client-Anwendung angeforderte TPS-Wert wird auf folgende Weise ermittelt. Die Berechnungsmethode lautet wie folgt:

Com_commit = GLOBALEN STATUS WIE „Com_commit“ ANZEIGEN;
Com_rollback = GLOBALEN STATUS WIE „Com_rollback“ ANZEIGEN;
Betriebszeit = GLOBALEN STATUS WIE „Betriebszeit“ ANZEIGEN;
TPS = (Com_commit + Com_rollback)/Betriebszeit

IOPS: (Input/Output Operations Per Second), also die Anzahl der Lese- und Schreibvorgänge (I/O) pro Sekunde. Wird hauptsächlich in Datenbanken und anderen Fällen verwendet, um die Leistung des wahlfreien Zugriffs zu messen.

Die IOPS-Leistung der Speicherseite unterscheidet sich von der IO auf der Hostseite. IOPS bezieht sich darauf, wie oft der Speicher pro Sekunde vom Host aus Zugriff erhalten kann. Für eine IO vom Host sind mehrere Zugriffe auf den Speicher erforderlich. Wenn der Host beispielsweise einen minimalen Datenblock schreibt, muss er auch drei Schritte durchlaufen: „Schreibanforderung senden, Daten schreiben und Schreibbestätigung empfangen“, was drei Speicherendzugriffe bedeutet.

Zu den wichtigsten Benchmarktools zum Testen von IOPS gehören Iometer, IoZone, FIO usw., mit denen die IOPS der Festplatte in verschiedenen Situationen umfassend getestet werden können. Bei Anwendungsystemen müssen Sie zunächst die Belastungseigenschaften der Daten bestimmen, dann geeignete IOPS-Indikatoren für die Messung und Vergleichsanalyse auswählen und auf dieser Grundlage dann das geeignete Speichermedium und Softwaresystem auswählen.

Fragen zeichnen alle Select- und DML-Abfragen seit dem Start von mysqld auf, einschließlich der Anzahl der Show-Befehlsabfragen. Dies ist nicht ganz korrekt. Viele Datenbanken verfügen beispielsweise über Überwachungssysteme, die alle 5 Sekunden eine Show-Abfrage an die Datenbank durchführen, um den aktuellen Datenbankstatus abzurufen. Diese Abfragen werden in den QPS- und TPS-Statistiken aufgezeichnet und verursachen eine gewisse „Datenverschmutzung“.

Wenn die Datenbank viele MyISAM-Tabellen enthält, ist es sinnvoller, Fragen zur Berechnung zu verwenden.

Wenn die Datenbank viele InnoDB-Tabellen enthält, ist es besser, für die Berechnung die Datenquelle com_* zu verwenden.

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an

Das könnte Sie auch interessieren:
  • Detaillierte Installation und Verwendung des Sysbench-Tools zum Testen der Datenbankleistung
  • Optimierung der JAVA-Bestellschnittstelle: Tatsächliche TPS-Leistung um das Zehnfache gesteigert
  • Detailliertes Tutorial zum Sysbench-Stresstest von MySQL
  • Leistungstests QPS+TPS+Analyse der Transaktionsgrundlagen

<<:  Lernen Sie die Vue-Middleware-Pipeline in einem Artikel kennen

>>:  Lösen Sie das Problem der Installation des Tenda U12-WLAN-Netzwerkkartentreibers auf Centos7

Artikel empfehlen

Beispiel für einen reinen CSS3-Mindmap-Stil

Mindmap Er sieht wahrscheinlich so aus: Die meist...

Natives JS zum Erzielen von Verzeichnis-Scrolleffekten

Hier ist ein Text-Scrolling-Effekt, der mit nativ...

Responsive Layout-Zusammenfassung (empfohlen)

Grundkenntnisse der responsiven Layoutentwicklung...

Beispiele für die Verwendung des ES6-Spread-Operators

Inhaltsverzeichnis Was sind Spread- und Rest-Oper...

Verwenden Sie HTML, um eine einfache E-Mail-Vorlage zu schreiben

Heute möchte ich über ein „Low-Tech“-Problem schr...

So setzen Sie das MySQL-Root-Passwort zurück

Inhaltsverzeichnis 1. Ich habe das Root-Passwort ...

Ein kurzes Verständnis der drei Prinzipien zum Hinzufügen von MySQL-Indizes

1. Die Bedeutung von Indizes Indizes werden verwe...

Tutorial zur MySQL-SQL-Optimierung: IN- und RANGE-Abfragen

Lassen Sie uns zunächst über die in()-Abfrage spr...

So erstellen Sie einen NFS-Dienst in Ubuntu 16.04

Einführung in NFS NFS (Network File System) ist e...

Lösung für Überlauf: versteckter Fehler in CSS

Ursache des Fehlers Als ich heute ein Karussell s...

JavaScript imitiert den Jingdong-Karusselleffekt

In diesem Artikel wird der spezifische Code für J...

Strategie zur Optimierung der Leistung von MySQL-Datenbankabfragen

Optimieren von Abfragen Verwenden der Explain-Anw...