Buckets, Objekte und Regionen
Erstellen Sie S3-Buckets, laden Sie Objekte hoch, verstehen Sie die Benennung von Schlüsseln und erfahren Sie, wie S3 Daten innerhalb einer Region repliziert.
Buckets, Objekte und Regionen ist eine kostenlose AWS Solutions Architect-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des AWS Solutions Architect-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der AWS Solutions Architect-Kurs umfasst insgesamt 4 Lektionen.
Was ist Amazon S3?
Amazon Simple Storage Service (S3) ist der Objektspeicherdienst von AWS, mit dem Sie beliebige Datenmengen von jedem Ort im Internet aus speichern und abrufen können. S3 bietet eine Haltbarkeit von 11 Neunen (99.999999999 %), indem Objekte redundant auf mehreren Geräten in mehreren Availability Zones innerhalb der ausgewählten Region gespeichert werden. Der Dienst ist unbegrenzt skalierbar, hat keine Kapazitätsgrenze und unterstützt Objekte von 0 Byte bis zu 5 TB. S3 bildet die Grundlage unzähliger AWS-Architekturen, etwa für statische Websites, Data Lakes und Backup-Repositorys.
S3-Buckets: Der Container der obersten Ebene
Ein S3-Bucket ist ein global eindeutig benannter Container für Objekte. Buckets werden in einer bestimmten AWS-Region erstellt, ihre Namen müssen jedoch weltweit über alle AWS-Konten hinweg eindeutig sein, da der Name Teil der URL wird. Bucket-Namen müssen 3 bis 63 Zeichen lang sein, mit einem Buchstaben oder einer Zahl beginnen, kleingeschrieben sein und dürfen weder Unterstriche noch Großbuchstaben enthalten. Bewährte Vorgehensweise: Fügen Sie Ihre Konto-ID oder ein zufälliges Suffix hinzu, um Namenskonflikte mit anderen Konten zu vermeiden.
# Create an S3 bucket in a specific region
aws s3api create-bucket \
--bucket my-company-data-20240101 \
--region us-west-2 \
--create-bucket-configuration LocationConstraint=us-west-2S3-Objekte und Schlüssel
Ein Objekt in S3 besteht aus den Daten (dem Dateiinhalt), einem Schlüssel (dem eindeutigen Namen des Objekts innerhalb des Buckets), Metadaten (System- und benutzerdefinierten Schlüssel-Wert-Paaren) und optional einer Versions-ID (wenn die Versionierung aktiviert ist). Der Schlüssel ist die vollständige Zeichenfolge, die einem Pfad ähnelt, z. B. photos/2024/summer/beach.jpg. S3 ist flach aufgebaut: Es gibt keine echten Verzeichnisse, sondern nur Schlüsselpräfixe, die wie Verzeichnisse aussehen. Die maximale Objektgröße beträgt 5 TB. Für Objekte über 100 MB sollten Sie zur Verbesserung von Leistung und Zuverlässigkeit Multipart Upload verwenden.
# Upload an object
aws s3 cp ./report.pdf s3://my-company-data-20240101/reports/2024/report.pdf
# List objects with a specific prefix
aws s3 ls s3://my-company-data-20240101/reports/2024/S3-URL-Formate
Auf S3-Objekte kann über zwei URL-Formate zugegriffen werden. Path-Style: https://s3.<region>.amazonaws.com/<bucket>/<key> (für neue Buckets veraltet). Virtual-Hosted-Style: https://<bucket>.s3.<region>.amazonaws.com/<key> (aktueller Standard). Der Bucket-Name wird zu einer Subdomain, weshalb Bucket-Namen DNS-konform sein müssen. Bei vorab signierten URLs und CloudFront-Distributionen sehen Sie immer das Virtual-Hosted-Format. Wenn Sie die URL-Struktur verstehen, können Sie Bucket-Richtlinien und CORS korrekt konfigurieren.
# Generate a pre-signed URL valid for 1 hour (3600 seconds)
aws s3 presign s3://my-company-data-20240101/reports/2024/report.pdf \
--expires-in 3600S3-Konsistenzmodell für Daten
Seit Dezember 2020 bietet Amazon S3 für alle Operationen automatisch eine starke Read-after-Write-Konsistenz in allen Regionen und ohne zusätzliche Kosten – für PUTs neuer Objekte, Überschreibvorgänge und DELETEs. Das bedeutet: Sobald ein Schreibvorgang erfolgreich abgeschlossen ist, liefert jeder nachfolgende Lesevorgang die aktuelle Version des Objekts zurück. Dies ist eine wesentliche Verbesserung gegenüber dem früheren Modell der Eventual Consistency und vereinfacht das Anwendungsdesign, da Verzögerungen beim Lesen nach einem Schreibvorgang und eine entsprechende Wiederholungslogik nicht mehr erforderlich sind.
S3 und Regionen: Datenresidenz
Wenn Sie einen S3-Bucket erstellen, geben Sie eine Region an, und Ihre Daten bleiben in dieser Region, sofern Sie nicht ausdrücklich eine Replikation konfigurieren. AWS repliziert die Daten innerhalb dieser Region über mehrere AZs hinweg, um die Haltbarkeit zu gewährleisten, verschiebt sie jedoch nicht automatisch in andere Regionen. Diese regionale Datenresidenz ist für die Einhaltung von Vorschriften wichtig: Wenn Vorschriften verlangen, dass Daten in der EU bleiben, erstellen Sie den Bucket in eu-west-1 oder einer anderen EU-Region. Ihre Daten verlassen diese Region dann nicht.
# Find the region of an existing bucket
aws s3api get-bucket-location \
--bucket my-company-data-20240101Multipart Upload für große Objekte
Multipart Upload ist für Objekte über 5 GB erforderlich und wird für Objekte über 100 MB empfohlen. Dabei wird das Objekt in Teile aufgeteilt (mindestens 5 MB pro Teil, maximal 10.000 Teile), jeder Teil wird unabhängig und parallel hochgeladen und anschließend mit den anderen Teilen zum endgültigen Objekt zusammengefügt. Wenn ein Teil fehlschlägt, müssen Sie nur diesen Teil erneut übertragen. AWS CLI und SDKs verarbeiten Multipart Upload automatisch, wenn Sie für große Dateien den Befehl aws s3 cp verwenden. Sie müssen dies nicht manuell implementieren.
# The CLI uses multipart automatically for large files
aws s3 cp large-file-50GB.tar.gz s3://my-bucket/ \
--storage-class STANDARD
# Or use s3api to control multipart manually
aws s3api create-multipart-upload \
--bucket my-bucket \
--key large-file-50GB.tar.gzS3-Objektmetadaten
Jedes S3-Objekt verfügt über von AWS festgelegte Systemmetadaten (Content-Type, Content-Length, ETag, Last-Modified) und optionale benutzerdefinierte Metadaten (eigene Schlüssel-Wert-Paare mit dem Präfix x-amz-meta-). Metadaten werden zusammen mit dem Objekt gespeichert und beim Herunterladen des Objekts in den HTTP-Antwortheadern zurückgegeben. Content-Type ist insbesondere für die Bereitstellung im Web wichtig: Wenn Sie eine HTML-Datei hochladen, ohne Content-Type: text/html festzulegen, bieten Browser sie möglicherweise zum Download an, anstatt sie darzustellen.
# Upload with explicit Content-Type metadata
aws s3 cp index.html s3://my-website-bucket/ \
--content-type 'text/html' \
--metadata 'author=alice,env=production'S3 für das Hosting statischer Websites
Amazon S3 kann als Host für statische Websites dienen und HTML, CSS, JavaScript, Bilder sowie andere Dateien direkt aus einem Bucket bereitstellen. Aktivieren Sie das Hosting statischer Websites in den Bucket-Eigenschaften und geben Sie ein Indexdokument (index.html) sowie optional ein Fehlerdokument (404.html) an. Die URL des Website-Endpunkts des Buckets folgt dem Format: http://<bucket>.s3-website.<region>.amazonaws.com. Für HTTPS und die Unterstützung benutzerdefinierter Domains schalten Sie eine CloudFront-Distribution vor den S3-Bucket für die statische Website.
# Enable static website hosting
aws s3api put-bucket-website \
--bucket my-website-bucket \
--website-configuration '{"IndexDocument":{"Suffix":"index.html"},"ErrorDocument":{"Key":"404.html"}}'S3 Transfer Acceleration
S3 Transfer Acceleration beschleunigt das Hochladen von Objekten über große Entfernungen, indem die Daten über die nächstgelegene CloudFront-Edge-Location und anschließend über das private Backbone-Netzwerk von AWS zur Region des S3-Buckets geleitet werden. Statt die Daten direkt an den S3-Endpunkt hochzuladen, lädt der Client sie an einen beschleunigten Endpunkt wie my-bucket.s3-accelerate.amazonaws.com hoch. Für Transfer Acceleration fällt eine geringe Gebühr pro GB an, die Upload-Geschwindigkeit für Benutzer, die sich geografisch weit von der Region des Buckets entfernt befinden, kann sich jedoch deutlich verbessern.
# Enable Transfer Acceleration on a bucket
aws s3api put-bucket-accelerate-configuration \
--bucket my-company-data-20240101 \
--accelerate-configuration Status=EnabledS3-Objekt-Tagging
Objekt-Tags sind Schlüssel-Wert-Paare, die Sie an S3-Objekte anhängen, um diese zu kategorisieren und zu verwalten. Tags werden verwendet für: Lebenszyklusregeln (Überführen oder Ablaufenlassen von Objekten mit bestimmten Tags), Zugriffssteuerung (Bedingungen in IAM- und Bucket-Richtlinien auf Grundlage von Tag-Werten), Kostenaufteilung (Cost Explorer erfasst S3-Ausgaben nach Tag) sowie Inventarisierung und Analysen. Jedes Objekt kann bis zu 10 Tags haben. Tags können beim Hochladen hinzugefügt oder nach der Erstellung des Objekts aktualisiert werden, ohne die Objektdaten selbst zu ändern.
# Add tags to an existing object
aws s3api put-object-tagging \
--bucket my-company-data-20240101 \
--key reports/2024/report.pdf \
--tagging '{"TagSet":[{"Key":"env","Value":"production"},{"Key":"owner","Value":"finance"}]}'Schnelltest
Testen Sie Ihr Verständnis der AWS-Solutions-Architect-Konzepte (SAA-C03) aus dieser Lektion.
Zusammenfassung der Lektion
In dieser Lektion haben Sie gelernt: S3-Buckets sind global eindeutig benannte Container, die an eine bestimmte Region gebunden sind, Objekte werden mit einer flachen Schlüsselstruktur gespeichert und unterstützen Metadaten und Tags, und S3 bietet starke Read-after-Write-Konsistenz sowie eine Haltbarkeit von 11 Neunen durch Redundanz über mehrere AZs hinweg. Als Nächstes befassen wir uns mit der S3-Zugriffssteuerung durch Bucket-Richtlinien und ACLs.
Häufig gestellte Fragen
Ist die Lektion „Buckets, Objekte und Regionen“ kostenlos?
Ja — der vollständige Text von „Buckets, Objekte und Regionen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des AWS Solutions Architect-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der AWS Solutions Architect-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Buckets, Objekte und Regionen“?
Erstellen Sie S3-Buckets, laden Sie Objekte hoch, verstehen Sie die Benennung von Schlüsseln und erfahren Sie, wie S3 Daten innerhalb einer Region repliziert. Du übst AWS Solutions Architect mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um AWS Solutions Architect zu starten?
Keine Vorkenntnisse erforderlich. AWS Solutions Architect auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.
Wie lange dauert die Lektion „Buckets, Objekte und Regionen“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser AWS Solutions Architect-Lektion Code schreiben und ausführen?
Ja. Jede AWS Solutions Architect-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Buckets, Objekte und Regionen
- S3-Zugriffskontrolle: Bucket-Richtlinien und ACLs
- Versionierung, MFA Delete und Replikation
- Speicherklassen und Lifecycle-Richtlinien