Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Amazon-S3-Anforderungen mit EMRFS wiederholen
Dieses Thema enthält Informationen zu den Wiederholungsstrategien, die Sie verwenden können, wenn Sie Anforderungen an Amazon S3 mit EMRFS stellen. Wenn Ihre Anforderungsrate steigt, versucht S3, zu skalieren, um die neue Rate zu unterstützen. Während dieses Vorgangs kann S3 Anforderungen drosseln und einen 503 Slow Down
-Fehler zurückgeben. Um die Erfolgsquote Ihrer S3-Anforderungen zu verbessern, können Sie Ihre Wiederholungsstrategie anpassen, indem Sie Eigenschaften in Ihrer emrfs-site
-Konfiguration konfigurieren.
Sie können Ihre Wiederholungsstrategie wie folgt anpassen.
-
Erhöhen Sie das maximale Wiederholungslimit für die standardmäßige exponentielle Backoff-Wiederholungsstrategie.
-
Aktivieren und konfigurieren Sie die AIMD-Wiederholungsstrategie (additive-increase/multiplicative-decrease). AIMD wird für Amazon-EMR-Versionen 6.4.0 und höher unterstützt.
Verwenden Sie die standardmäßige exponentielle Backoff-Strategie
Standardmäßig verwendet EMRFS eine exponentielle Backoff-Strategie, um Amazon-S3-Anfragen erneut zu versuchen. Das standardmäßige EMRFS-Wiederholungslimit ist 15. Um einen 503 Slow Down
-S3-Fehler zu vermeiden, können Sie das Wiederholungslimit erhöhen, wenn Sie einen neuen Cluster, in einem laufenden Cluster oder zur Laufzeit der Anwendung erstellen.
Um das Wiederholungslimit zu erhöhen, müssen Sie den Wert für fs.s3.maxRetries
in Ihrer emrfs-site
-Konfiguration ändern. Die folgende Beispielkonfiguration setzt fs.s3.maxRetries
auf einen benutzerdefinierten Wert von 30.
[ { "Classification": "emrfs-site", "Properties": { "fs.s3.maxRetries": "
30
" } } ]
Weitere Informationen zum Arbeiten mit Konfigurationsobjekten finden Sie unter Anwendungen konfigurieren.
Verwenden Sie die AIMD-Wiederholungsstrategie
Mit Amazon-EMR-Version 6.4.0 und höher unterstützt EMRFS eine alternative Wiederholungsstrategie, die auf einem AIMD-Modell (Additive-Incree/Multiplicative-Decrease) basiert. Die AIMD-Wiederholungsstrategie ist besonders nützlich, wenn Sie mit großen Amazon-EMR-Clustern arbeiten.
AIMD berechnet anhand von Daten über kürzlich erfolgreiche Anfragen eine benutzerdefinierte Anforderungsrate. Diese Strategie verringert die Anzahl der gedrosselten Anforderungen und die Gesamtzahl der pro Anforderungen erforderlichen Versuche.
Um die AIMD-Wiederholungsstrategie zu aktivieren, müssen Sie die fs.s3.aimd.enabled
-Eigenschaft in true
in Ihrer emrfs-site
-Konfiguration einstellen, wie im folgenden Beispiel gezeigt.
[
{
"Classification": "emrfs-site",
"Properties": {
"fs.s3.aimd.enabled": "true"
}
}
]
Weitere Informationen zum Arbeiten mit Konfigurationsobjekten finden Sie unter Anwendungen konfigurieren.
Erweiterte Einstellungen für AIMD-Wiederholungen
Sie können die in der folgenden Tabelle aufgeführten Eigenschaften konfigurieren, um das Wiederholungsverhalten zu verfeinern, wenn Sie die AIMD-Wiederholungsstrategie verwenden. Für die meisten Anwendungsfälle empfehlen wir die Verwendung der Standardeinstellung.
Eigenschaft | Standardwert | Beschreibung |
---|---|---|
fs.s3.aimd.increaseIncrement |
0.1 | Steuert, wie schnell die Anforderungsrate steigt, wenn aufeinanderfolgende Anforderungen erfolgreich sind. |
fs.s3.aimd.reductionFactor |
2 | Steuert, wie schnell die Anforderungsrate sinkt, wenn Amazon S3 eine 503-Antwort zurückgibt. Der Standardfaktor von 2 halbiert die Anforderungsrate. |
fs.s3.aimd.minRate |
0.1 | Legt die Untergrenze für die Anforderungsrate fest, wenn Anfragen dauerhaft durch S3 gedrosselt werden. |
fs.s3.aimd.initialRate |
5500 | Legt die anfängliche Anforderungsrate fest, die sich dann entsprechend den Werten ändert, die Sie für fs.s3.aimd.increaseIncrement und fs.s3.aimd.reductionFactor angeben.Die anfängliche Rate wird auch für GET-Anforderungen verwendet und für PUT-Anforderungen proportional (3500/5500) skaliert. |
fs.s3.aimd.adjustWindow |
2 | Steuert, wie oft die Anforderungsrate angepasst wird, gemessen an der Anzahl der Antworten. |
fs.s3.aimd.maxAttempts |
100 | Legt die maximale Anzahl der Versuche fest, eine Anforderungen zu versuchen. |