Ich mache Tests mit AWS Redshift, und um reale Szenarien zu replizieren, müssen meine Testabfragen nicht zwischengespeichert werden, um kein falsches Bild der Leistung zu liefern. Gibt es eine Möglichkeit für mich, den Redshift-Cache zwischen Abfragen zu löschen?Löschen des Caches auf AWS Redshift
Antwort
Soweit ich weiß - Sie können nicht. Aus Performance-Gründen und der "realen Weltleistung" sollten Sie jedoch, wie Sie bereits erwähnt haben, Anfangsläufe einfach verwerfen und Leistungsindikatoren aus nachfolgenden Läufen gegen Warm-Cache verwenden. Das klingt eher nach einer realen Welt als nach dem Cold-Cache, was ein Worst-Case-Szenario darstellt. Wenn Sie darauf bestehen, die Cold-Cache-Leistung zu messen, besteht die einfachste (wenn auch zeitaufwendigste) Lösung darin, den Cluster nach jedem Kaltlauf neu zu starten.
Ich glaube, Sie können den Cache für die Testsitzungen deaktivieren, indem Sie den Wert enable_result_cache_for_session
-off
Vom documentation
Wenn enable_result_cache_for_session ausgeschaltet ist, Amazon Redshift Einstellung ignoriert die Ergebnisse Cache und führt alle Abfragen wenn sie eingereicht werden.
- 1. AWS Redshift Abfrage mehrere Schemas
- 2. AWS Redshift Treiber in Zeppelin
- 3. Intellij Idea12 Fehler beim Löschen des URL-Caches
- 4. Löschen des Caches aus der Rails-Asset-Pipeline
- 5. Warmstart des Caches
- 6. Anzeigen und Löschen von Postgres-Caches/Puffern?
- 7. So entfernen Sie NaNs in aws redshift
- 8. AWS Redshift Kopieren-Befehl Dynamische Quelldateipfad
- 9. Curl-Befehl ohne Verwendung des Caches
- 10. Lebensdauer des verteilten Caches in Hadoop
- 11. Wie berechnet man den Median in AWS Redshift?
- 12. Berechnung Median mit Gruppe von in AWS Redshift
- 13. REST API für Redshift
- 14. Eingeladenen Identitätswert von AWS Redshift über JDBC abrufen
- 15. Mehrere Caches in Memcached
- 16. SharePoint Caches falsche Anmeldeinformationen
- 17. Schienen AWS S3 Datei löschen
- 18. Abfrage von variierenden JSON-Zeichenfolgen in AWS Redshift
- 19. Konfigurieren der Datenbanktreiber für AWS Redshift in JetBrains IDEs
- 20. Kann ich Select-Abfrage in AWS Redshift Python UDF Funktion
- 21. Datenstruktur zum Entwerfen eines Caches mit effizientem Einfügen, Löschen und dem Abrufen des höchsten Werts
- 22. Wie löschen Sie die L1-, L2- und L3-Caches?
- 23. funken-redshift-connector: kombiniere speichern zu redshift mit einer löschen abfrage
- 24. Redshift: Serializable Isolationsverletzung auf Tabelle
- 25. ImageSource Binding Caches Image
- 26. AWS-Rolle zum Autorisieren der Lambda-Abfrage des AWS-Datenspeichers verwenden
- 27. memcached Caches Anfrage?
- 28. facebook caches og: titel?
- 29. Moq Caches Rückgabewert
- 30. Aws s3 Objekt mit Javascript löschen
Nach https://docs.aws.amazon.com/redshift/latest/dg/c-query-performance.html Neustart würde auch nicht funktionieren. "Der LRU-Cache bleibt durch Cluster-Neustarts bestehen, wird jedoch durch Wartungsupgrades gelöscht." Aber Sie haben recht, wenn Sie den Warm-Cache verwenden, weil "die Leistung einer Abfrage beim ersten Ausführen irreführend sein kann. Sie sollten eine Abfrage immer ein zweites Mal ausführen, um die typische Leistung zu ermitteln." – rkulla
Aber in Wirklichkeit werden viele Apps eine Reihe von verschiedenen Abfragen ausführen. Zu viele, um den LRU-Cache zu verarbeiten. Daher wird der LRU-Cache irgendwann einige Cache-Elemente ausstoßen, um Platz für die neuen zu machen. Dann sind Sie wieder bei der "kalten" Abfrageleistung. Es ist wichtig, dass Sie immer versuchen, die langsamste "kalte" Abfrage zu verbessern, da dies beim Endbenutzer erneut passieren wird. – user2326106