Was ist Volumentest? Lernen Sie mit Beispielen
โก Intelligente Zusammenfassung
Beim Volumentest wird eine Anwendung mit einer sehr groรen Datenmenge belastet, um zu sehen, wie sich Speicherplatz, Abfragen und Antwortzeiten bei wachsender Datenbank verhalten. Dieser Test wird auch als Flood-Test bezeichnet und skaliert die Datenmenge anstatt der Benutzeranzahl.

Was ist Volumentest?
Volumentest ist eine Art Softwaretest, bei dem die Software einer groรen Datenmenge ausgesetzt wird. Es wird auch als bezeichnet Hochwassertests. Volumentests werden durchgefรผhrt, um die Systemleistung durch Erhรถhen des Datenvolumens in der Datenbank zu analysieren.
Mit Hilfe von Volumentests kรถnnen die Auswirkungen auf die Antwortzeit und das Systemverhalten bei groรen Datenmengen untersucht werden.
Beispielsweise kรถnnte ein Musikstreaming-Dienst mit einem Katalog von 50 Millionen Titeln getestet werden. tracks und eine Listenverlaufstabelle mit Milliarden von Zeilen, um zu sehen, ob Such- und Empfehlungsanfragen noch in akzeptabler Zeit beantwortet werden.
Beachten Sie den Unterschied: Volumentests erhรถhen die Datenmenge Das System hรคlt. Anzahl gleichzeitiger Benutzer Beim Lasttest handelt es sich um einen anderen Test mit einem anderen Ziel.
Vorteile von Volumentests
- Durch die frรผhzeitige Erkennung von Kapazitรคtsproblemen lassen sich die weitaus hรถheren Kosten fรผr deren Behebung in der Produktion vermeiden.
- Es hilft bei einem schnelleren Start von Skalierbarkeitsplรคnen
- Engpรคsse frรผhzeitig erkennen
- Es stellt sicher, dass Ihr System jetzt fรผr den realen Einsatz geeignet ist
Warum Volumentests durchfรผhren?
Das Ziel der Durchfรผhrung des Volumentests besteht darin,
- รberprรผfen Sie die Systemleistung bei steigenden Datenmengen in der Datenbank
- Identifizieren Sie die Probleme, die wahrscheinlich auftreten werden, sobald der Datensatz groร wird.
- Um den Punkt herauszufinden, an dem die Stabilitรคt des Systems nachlรคsst
- Volumentests helfen dabei, die Kapazitรคt des Systems oder der Anwendung zu ermitteln โ normales und hohes Volumen
So fรผhren Sie Volumentests durch
Bei Volumentests mรผssen folgende Dinge getestet werden
- Testen Sie, ob ein Datenverlust vorliegt
- รberprรผfen Sie die Reaktionszeit des Systems
- รberprรผfen Sie, ob die Daten korrekt gespeichert sind oder nicht
- รberprรผfen Sie, ob die Daten ohne Benachrichtigung รผberschrieben werden
- Prรผfen Sie, ob Warn- und Fehlermeldungen tatsรคchlich angezeigt werden, wenn ein Lautstรคrkelimit erreicht wird.
- Prรผfen Sie, ob groรe Datenmengen die Verarbeitungsgeschwindigkeit beeintrรคchtigen
- Stellen Sie sicher, dass das System รผber die erforderlichen Speicher- und Datenspeicherressourcen verfรผgt.
- Stellen Sie sicher, dass der Lautstรคrketest das gesamte System und nicht nur eine einzelne Komponente abdeckt.
- Besteht ein Risiko, wenn das Datenvolumen grรถรer als angegeben ist?
- Prรผfen Sie, ob eine Garantie dafรผr besteht, dass das Datenvolumen das angegebene Maximum nicht รผberschreitet.
Best Practices fรผr Tests mit hohem Durchsatz
Einige der folgenden Vorgehensweisen gelten auch fรผr Lasttests, da beide รผblicherweise in derselben Umgebung durchgefรผhrt werden. Die datenvolumenspezifischen Vorgehensweisen betreffen den Datensatz selbst:
- Stoppen Sie alle Server und รผberprรผfen Sie alle Protokolle
- Fรผhren Sie vor dem Belastungstest das Anwendungsszenario manuell aus
- Um mรถglichst nรผtzliche Ergebnisse zu erzielen, sollte die Anzahl der Benutzer gestaffelt werden
- Um Lizenzbeschrรคnkungen zu รผberwinden, sollten Sie die Zeit zum Nachdenken ausbalancieren
- Seien Sie vorsichtig beim Neubau
- Analysieren Sie den Anwendungsfall fรผr Verbesserungen, sobald eine Basislinie erstellt wurde
- Im Falle eines Leistungsengpasses ist eine Wiederholung bestimmter Teile des Volumentests unumgรคnglich
Volumenprรผfung vs. Lastprรผfung
| Volumentest | Load Testing |
|---|---|
|
|
|
|
Herausforderungen beim Volumentest
- Es ist schwierig, eine Fragmentierung des Speichers zu erzeugen
- Dynamische Schlรผsselgenerierung
- Relational Integrity der generierten Daten
Wie sich dieser Test im Vergleich zu anderen Leistungstests schlรคgt
Bei Leistungstests handelt es sich um eine Gruppe von Tests, die sich in der Form der angewendeten Last unterscheiden, weshalb sie so leicht verwechselt werden kรถnnen.
| Testtyp | Was erhรถht sich | Fragen, die es beantwortet |
|---|---|---|
| Lastprรผfung | Gleichzeitige Nutzer bis zum erwarteten Spitzenwert | Werden die Zielvorgaben auch bei normalem Spitzenverkehr erreicht? |
| Volumentest | In der Datenbank gespeicherte Daten | Kommt es auch mit wachsenden Datensรคtzen zurecht? |
| Belastbarkeitstest | รberlastung bis zum Versagen | Wo geht es kaputt und wie? |
| Spike-Test | Laden, sofort und extrem | รberlebt es einen Schock und kann es sich davon erholen? |
| Dauertest | Dauer bei normaler Last | Verschlechtert sich die Leistung im Laufe der Zeit? |
| Soak-Test | Dauer, รberwachungsressourcen | Gibt es Speicher- oder Handle-Lecks? |
| Stabilitรคtstests | Unterschiedliche Bedingungen | Bleibt es auch unter verรคnderten Bedingungen zuverlรคssig? |
Die hier entscheidende Unterscheidung: Volumentests skalieren die Daten, Lasttests skalieren die Benutzer. Ein Bericht, der bei zehntausend Zeilen zwei Sekunden und bei zehn Millionen Zeilen zwei Minuten benรถtigt, hat ein Volumenproblem, kein Lastproblem, und auch zusรคtzliche Serverkapazitรคt wird daran nichts รคndern.
Wie man Testdaten fรผr Volumentests generiert
Im Abschnitt โHerausforderungenโ wird darauf hingewiesen, dass die Generierung realistischer Daten die grรถรte Herausforderung bei Volumentests darstellt. In der Praxis werden vier Ansรคtze verwendet, von denen jeder mit einem Kompromiss verbunden ist.
| Ansatz | Realismus | Hauptnachteil |
|---|---|---|
| Kopie der Produktionsdaten | Hรถchste | Datenschutz- und Compliance-Risiken |
| Maskierte Produktionskopie | Hoch | Maskierung kann die referenzielle Integritรคt beeintrรคchtigen. |
| Synthetische Generation | Medium | Die Verteilungen entsprechen mรถglicherweise nicht der Realitรคt |
| Wiederholter Produktionsverkehr | Hoch | Erfordert Erfassungsinfrastruktur |
Egal welchen Weg man wรคhlt, drei Eigenschaften mรผssen erfรผllt sein, sonst misst der Test nichts Sinnvolles.
- Referenzielle Integritรคt. Jeder Fremdschlรผssel muss aufgelรถst werden. Eine Million verwaister Zeilen belasten zwar die Speicher-Engine, aber niemals die Verknรผpfungspfade, die die Anwendung tatsรคchlich verwendet.
- Realistische Kardinalitรคt. Wenn die Produktionstabelle zehn Millionen Zeilen fรผr zweihundert Kunden enthรคlt, fรผhrt die Generierung von zehn Millionen Zeilen fรผr zehn Millionen Kunden zu vรถllig unterschiedlichen Abfrageplรคnen.
- Realistische Verteilung. Reale Daten sind verzerrt. Gleichmรครig zufรคllige Daten verbergen die hรคufig auftretenden Partitionen und Indexkonflikte, die zu Produktionsvorfรคllen fรผhren.
Eine praktische Warnung zum Thema Datenschutz. Das Kopieren von Produktionsdaten in eine Testumgebung ist die hรคufigste Ursache fรผr Datenschutzverletzungen in Testumgebungen. Persรถnliche Felder mรผssen maskiert werden, bevor die Daten die Produktionsumgebung verlassen, nicht erst im Nachhinein.
