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.
Bewährte Methoden für S3 Files
Auf dieser Seite werden die empfohlenen bewährten Methoden für die Arbeit mit S3-Dateisystemen beschrieben.
Leistungs- und Kostenoptimierung
Parallelisieren Sie Ihre Workloads — S3 Files wurde entwickelt, um hochgradig parallele Workloads zu unterstützen. Die Verteilung von Lesevorgängen auf mehrere Dateien und mehrere Recheninstanzen trägt zur Maximierung des Gesamtdurchsatzes bei. Sie können auch mehrere Dateisysteme mit unterschiedlichen spezifischen Präfixen innerhalb desselben Buckets erstellen (anstatt ein Dateisystem für den gesamten Bucket zu erstellen), um horizontal zu skalieren und den Gesamtdurchsatz zu verbessern.
Passen Sie Ihr Dateisystem auf das kleinste Präfix an, das Ihre Arbeitslast benötigt, um die Auswirkungen von Umbenennungen zu minimieren — S3 hat kein systemeigenes Verzeichniskonzept. Wenn Sie ein Verzeichnis umbenennen oder verschieben, muss S3 Files die Daten in ein neues Objekt mit dem aktualisierten Schlüssel schreiben und das Original für jede Datei in diesem Verzeichnis löschen. Das Umbenennen von Verzeichnissen mit zig Millionen Dateien kann die Kosten für S3-Anfragen und die Synchronisationszeit erheblich erhöhen. Passen Sie Ihr Dateisystem an Ihren aktiven Datensatz an, oder strukturieren Sie Ihre Daten so, dass Verzeichnisse, die Sie voraussichtlich umbenennen werden, weniger Dateien enthalten. Weitere Informationen finden Sie unter Die Auswirkungen von Umbenennungs- und Verschiebungsvorgängen verstehen.
Verwenden Sie große I/O-Größen — S3 Files misst jeden Lese- und Schreibvorgang auf mindestens 32 KB. Die Verwendung größerer I/O-Größen (1 MB oder mehr) amortisiert den Overhead pro Vorgang und ist kostengünstiger als viele kleine Lese- oder Schreibvorgänge. Bei Verwendung des Mount-Helpers werden die standardmäßigen NFS-Lese- und Schreibpuffergrößen für eine optimale Leistung auf 1 MB festgelegt.
Passen Sie Ihren LessThan Größenwert in der Importkonfiguration an Ihre Dateigrößen an — Standardmäßig speichert S3 Files Daten für Dateien, die kleiner als 128 KB sind, wenn Sie zum ersten Mal auf ein Verzeichnis zugreifen. Dateien, die diesen Schwellenwert überschreiten, werden direkt aus S3 gelesen. Wenn Ihr Workload kleine, latenzempfindliche Lesevorgänge für größere Dateien durchführt, erhöhen Sie den LessThan Größenschwellenwert, sodass er den Dateigrößen entspricht, die Sie auf dem Hochleistungsspeicher des Dateisystems für den Zugriff mit niedriger Latenz benötigen. Weitere Informationen finden Sie unter Synchronisation für S3-Dateien anpassen.
Legen Sie Ablauffenster fest, die Ihrem Workload-Lebenszyklus entsprechen — Daten, die nicht innerhalb des Ablauffensters gelesen wurden, werden automatisch aus dem Dateisystem entfernt. Verwenden Sie für kurzlebige Workloads wie Batch-Jobs oder Trainingsläufe einen kürzeren Ablaufzeitraum (1—7 Tage), um die Speicherkosten zu minimieren. Verwenden Sie für Workloads, bei denen dieselben Daten wochenlang erneut abgerufen werden, ein längeres Ablaufdatum (30—90 Tage), um weiterhin von der niedrigen Latenz zu profitieren. Weitere Informationen finden Sie unter Synchronisation für S3-Dateien anpassen.
Verwenden Sie Regeln mit Präfixbereich für gemischte Workloads — Wenn Ihr Bucket sowohl Daten enthält, auf die häufig zugegriffen wird, als auch Daten, auf die selten zugegriffen wird, erstellen Sie separate Importregeln für jedes Präfix. Auf diese Weise können Sie Daten für heiße Präfixe aggressiv importieren, während kalte Präfixe nur Metadaten enthalten. Weitere Informationen finden Sie unter Synchronisation für S3-Dateien anpassen.
Erstellen Sie ein Mount-Ziel in jeder Availability Zone — Wir empfehlen, in jeder Availability Zone, in der Sie arbeiten, ein Mount-Target zu erstellen, damit Sie die Kosten für AZ-übergreifende Datenübertragungen senken und die Leistung verbessern können. Dadurch wird sichergestellt, dass Ihre Rechenressourcen immer über einen lokalen Netzwerkpfad zum Dateisystem verfügen, was sowohl die Verfügbarkeit als auch die Latenz verbessert. Wenn Sie mithilfe der AWS Management Console ein Dateisystem erstellen, erstellt S3 Files automatisch ein Mount-Ziel in jeder Availability Zone in Ihrer ausgewählten VPC.
Synchronisierung
Machen Sie sich mit dem Konsistenzmodell für S3-Dateien vertraut — Wenn eine Datei im Dateisystem gleichzeitig mit dem entsprechenden Objekt im S3-Bucket geändert wird, behandelt S3 Files den S3-Bucket als Informationsquelle und verschiebt die Datei in das Verzeichnis „Verloren und gefunden“. Um Konflikte zu vermeiden, legen Sie einen Pfad (Dateisystem oder S3) als primären Writer fest.
Überwachen Sie den Zustand der Synchronisation — Verwenden Sie CloudWatch Metriken, um den Status der Synchronisation zwischen Ihrem Dateisystem und dem S3-Bucket zu verfolgen. Ein Anstieg
PendingExportsbedeutet, dass Ihre Arbeitslast Änderungen schneller generiert als die Synchronisationsrate, was bedeutet, dass der Abschluss der Synchronisierung länger dauern wird. EineExportFailuresCloudWatch Metrik ungleich Null gibt an, dass Dateien nicht exportiert werden konnten und Maßnahmen erfordern. Weitere Informationen finden Sie unter Problembehandlung bei S3-Dateien.
Zugriffskontrolle
Folgen Sie dem Prinzip der geringsten Rechte — Gewähren Sie nur die Mindestberechtigungen, die für jede IAM-Rolle und Dateisystemrichtlinie erforderlich sind. Wenn eine Rechenressource beispielsweise nur Daten aus dem Dateisystem lesen muss, fügen Sie stattdessen die
AmazonS3FilesClientReadOnlyAccessverwaltete Richtlinie anAmazonS3FilesClientFullAccess. Erwägen Sie außerdem, Ihr Dateisystem auf ein bestimmtes Präfix und nicht auf den gesamten Bucket beschränkt zu erstellen, sodass Clients nur auf Daten innerhalb dieses Präfixes zugreifen können.Ändern Sie nicht die IAM-Rolle für S3-Dateien — Ändern oder löschen Sie nicht die IAM-Rolle, von der S3 Files annimmt, dass sie mit Ihrem S3-Bucket synchronisiert wird. Das Ändern oder Entfernen dieser Rolle kann die Synchronisation zwischen Ihrem Dateisystem und dem S3-Bucket unterbrechen.
Ändern Sie nicht die EventBridge Regel für S3-Dateien — S3 Files erstellt eine EventBridge Regel (mit einem Präfix DO-NOT-DELETE-S3-Files), um Änderungen in Ihrem S3-Bucket zu erkennen. Deaktivieren, ändern oder löschen Sie diese Regel nicht. Wenn Sie sie entfernen, wird verhindert, dass S3 Files neue oder geänderte Objekte in Ihrem Bucket erkennt, was dazu führt, dass Ihr Dateisystem veraltet.
Erwägen Sie, den Zugriff auf Protokolle einzuschränken, die geschrieben wurden von
efs-utils—efs-utilsschreibt die Schlüsselnamen von S3-Objekten direkt in die Protokolle, die im Verzeichnis gespeichert werden./var/log/amazon/efsWenn Ihre S3-Schlüsselnamen vertrauliche Informationen enthalten, sollten Sie den Zugriff auf dieses Verzeichnis durch POSIX-Berechtigungen einschränken. Beispielsweise könnten Sie den Zugriff über den Befehlsudo chmod 700 /var/log/amazon/efseinschränken.
Überwachen
Alarme bei Synchronisierungsfehlern einrichten — Schaltet CloudWatch
ImportFailuresAlarme einExportFailures, um benachrichtigt zu werden, wenn Dateien nicht synchronisiert werden können. Fehlgeschlagene Exporte können auf Berechtigungsprobleme, Probleme mit dem Verschlüsselungsschlüssel oder Pfadlängenbeschränkungen hinweisen. Weitere Informationen finden Sie unter Problembehandlung bei S3-Dateien.
Migration
Um Daten zum ersten Mal vom lokalen Speicher in Ihren S3-Bucket zu migrieren, empfehlen wir die Verwendung von AWS DataSync. DataSync automatisiert und beschleunigt die Übertragung großer Datensätze und bewahrt Dateimetadaten und Berechtigungen während der Migration. Weitere Informationen finden Sie unter Was ist? AWS DataSync .