AWS Solutions Architect · Les

Buckets, objecten en Regions

Maak S3-buckets aan, upload objecten, begrijp naamgeving van keys en ontdek hoe S3 gegevens binnen een Region repliceert.

Les 1 van 413 stappen

Buckets, objecten en Regions is een gratis AWS Solutions Architect-les op CoddyKit. Dit is les 1 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject AWS Solutions Architect. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus AWS Solutions Architect bevat in totaal 4 lessen.

Wat is Amazon S3?

Amazon Simple Storage Service (S3) is de objectopslagservice van AWS, ontworpen om elke hoeveelheid gegevens overal op internet op te slaan en op te halen. S3 biedt 11 negens aan duurzaamheid (99.999999999%) door objecten redundant op te slaan op meerdere apparaten in meerdere Availability Zones binnen de geselecteerde Region. De service is onbeperkt schaalbaar, heeft geen capaciteitslimiet en ondersteunt objecten van 0 bytes tot 5 TB. S3 vormt de basis van talloze AWS-architecturen, zoals statische websites, data lakes en back-uparchieven.

S3-buckets: de container op het hoogste niveau

Een S3-bucket is een wereldwijd uniek benoemde container voor objecten. Buckets worden in een specifieke AWS Region gemaakt, maar hun namen moeten wereldwijd uniek zijn voor alle AWS-accounts (omdat de naam onderdeel wordt van de URL). Namen van buckets moeten 3–63 tekens lang zijn, uit kleine letters bestaan, met een letter of cijfer beginnen en mogen geen underscores of hoofdletters bevatten. Aanbevolen werkwijze: voeg je account-ID of een willekeurig achtervoegsel toe om naamconflicten met andere accounts te voorkomen.

# 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-2

S3-objecten en sleutels

Een object in S3 bestaat uit de gegevens (de inhoud van het bestand), een sleutel (de unieke naam van het object binnen de bucket), metagegevens (door het systeem en de gebruiker gedefinieerde sleutel-waardeparen) en optioneel een versie-ID (als versiebeheer is ingeschakeld). De sleutel is de volledige tekenreeks die op een pad lijkt, bijvoorbeeld photos/2024/summer/beach.jpg. S3 heeft een vlakke structuur: er zijn geen echte mappen, alleen sleutelvoorvoegsels die eruitzien als mappen. De maximale objectgrootte is 5 TB. Gebruik voor objecten groter dan 100 MB Multipart Upload voor betere prestaties en betrouwbaarheid.

# 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-indelingen

S3-objecten kunnen via twee URL-indelingen worden benaderd. Padstijl: https://s3.<region>.amazonaws.com/<bucket>/<key> (wordt uitgefaseerd voor nieuwe buckets). Virtuele-hoststijl: https://<bucket>.s3.<region>.amazonaws.com/<key> (de huidige standaard). De bucketnaam wordt een subdomein. Daarom moeten bucketnamen voldoen aan de DNS-regels. Bij vooraf ondertekende URL's en CloudFront-distributies zie je altijd de indeling met virtuele host. Als je de URL-structuur begrijpt, kun je bucketbeleid en CORS correct configureren.

# 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 3600

S3-consistentiemodel voor gegevens

Sinds december 2020 biedt Amazon S3 automatisch sterke consistentie na schrijven voor lezen voor alle bewerkingen—PUT's van nieuwe objecten, overschrijvingen en DELETE's—in alle Regions, zonder extra kosten. Dit betekent dat elke volgende leesbewerking, zodra een schrijfbewerking is geslaagd, de nieuwste versie van het object retourneert. Dit is een aanzienlijke verbetering ten opzichte van het vorige model met uiteindelijke consistentie en vereenvoudigt het applicatieontwerp doordat vertragingen na het schrijven of logica voor opnieuw proberen niet meer nodig zijn.

S3 en Regions: gegevenslocatie

Wanneer je een S3-bucket maakt, geef je een Region op en blijven je gegevens in die Region, tenzij je replicatie expliciet configureert. AWS repliceert gegevens binnen die Region over meerdere AZ's voor duurzaamheid, maar verplaatst gegevens niet automatisch naar andere Regions. Deze regionale gegevenslocatie is belangrijk voor naleving van regelgeving: als regelgeving vereist dat gegevens in de EU blijven, maak je de bucket in eu-west-1 of een andere EU-Region. Je gegevens verlaten die Region dan niet.

# Find the region of an existing bucket
aws s3api get-bucket-location \
  --bucket my-company-data-20240101

Multipart Upload voor grote objecten

Multipart Upload is vereist voor objecten van meer dan 5 GB en wordt aanbevolen voor objecten van meer dan 100 MB. De bewerking verdeelt het object in delen (minimaal 5 MB per deel, maximaal 10.000 delen), uploadt elk deel afzonderlijk (parallel) en voegt ze samen tot het uiteindelijke object. Als een deel mislukt, hoef je alleen dat deel opnieuw te uploaden. De AWS CLI en SDK's verwerken multipart upload automatisch wanneer je voor grote bestanden de opdracht aws s3 cp gebruikt; je hoeft dit niet handmatig te implementeren.

# 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.gz

S3-metagegevens voor objecten

Elk S3-object heeft systeemmetagegevens die door AWS worden ingesteld (Content-Type, Content-Length, ETag, Last-Modified) en optionele door de gebruiker gedefinieerde metagegevens (aangepaste sleutel-waardeparen met het voorvoegsel x-amz-meta-). Metagegevens worden samen met het object opgeslagen en geretourneerd in HTTP-antwoordheaders wanneer het object wordt gedownload. Content-Type is vooral belangrijk voor weergave op het web: als je een HTML-bestand uploadt zonder Content-Type: text/html in te stellen, bieden browsers het mogelijk aan als download in plaats van het weer te geven.

# 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 voor hosting van statische websites

Amazon S3 kan dienen als host voor statische websites en HTML, CSS, JavaScript, afbeeldingen en andere bestanden rechtstreeks vanuit een bucket aanbieden. Schakel hosting van statische websites in bij de eigenschappen van de bucket en geef een indexdocument (index.html) en optioneel foutdocument (404.html) op. De URL van het website-eindpunt van de bucket volgt de indeling: http://<bucket>.s3-website.<region>.amazonaws.com. Plaats voor HTTPS en ondersteuning van aangepaste domeinen een CloudFront-distributie vóór de S3-bucket voor de 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 versnelt het uploaden van objecten over lange afstanden door gegevens via de dichtstbijzijnde CloudFront Edge Location te routeren en vervolgens via het privénetwerk van AWS naar de Region van de S3-bucket te sturen. In plaats van rechtstreeks naar het S3-eindpunt te uploaden, uploadt de client naar een versneld eindpunt zoals my-bucket.s3-accelerate.amazonaws.com. Transfer Acceleration brengt kleine kosten per GB met zich mee, maar kan de uploadsnelheid aanzienlijk verbeteren voor gebruikers die zich geografisch ver van de Region van de bucket bevinden.

# Enable Transfer Acceleration on a bucket
aws s3api put-bucket-accelerate-configuration \
  --bucket my-company-data-20240101 \
  --accelerate-configuration Status=Enabled

S3-tags voor objecten

Objecttags zijn sleutel-waardeparen die je aan S3-objecten koppelt om ze te categoriseren en beheren. Tags worden gebruikt voor: levenscyclusregels (objecten met specifieke tags overzetten of laten verlopen), toegangsbeheer (voorwaarden in IAM- en bucketbeleid op basis van tagwaarden), kostentoewijzing (Cost Explorer houdt S3-uitgaven per tag bij) en inventarisatie en analyse. Elk object kan maximaal 10 tags hebben. Je kunt tags tijdens het uploaden toevoegen of later bijwerken zonder de objectgegevens zelf te wijzigen.

# 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"}]}'

Snelle controle

Test je begrip van de concepten uit AWS Solutions Architect (SAA-C03) in deze les.

Samenvatting van de les

In deze les heb je geleerd dat S3-buckets wereldwijd uniek benoemde containers zijn die aan een specifieke Region zijn gekoppeld, dat objecten worden opgeslagen met een vlakke sleutelstructuur en metagegevens en tags ondersteunen en dat S3 sterke consistentie na schrijven voor lezen en 11 negens aan duurzaamheid biedt dankzij redundantie over meerdere AZ's. Hierna behandelen we toegangsbeheer voor S3 met bucketbeleid en ACL's.

Gratis beginnen

Leer AWS Solutions Architect met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
30
Lessen
120

Veelgestelde vragen

Is de les “Buckets, objecten en Regions” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad AWS Solutions Architect, waaronder “Buckets, objecten en Regions”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus AWS Solutions Architect bevat in totaal 4 lessen.

Wat leer ik in “Buckets, objecten en Regions”?

Maak S3-buckets aan, upload objecten, begrijp naamgeving van keys en ontdek hoe S3 gegevens binnen een Region repliceert. Je oefent met AWS Solutions Architect door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met AWS Solutions Architect te beginnen?

Ervaring vooraf is niet nodig. AWS Solutions Architect op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 1 van 4.

Hoe lang duurt de les “Buckets, objecten en Regions”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over AWS Solutions Architect?

Ja. Elke les over AWS Solutions Architect bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Buckets, objecten en Regions
  2. S3-toegangsbeheer: bucket policies en ACL's
  3. Versioning, MFA Delete en replicatie
  4. Storage classes en lifecycle policies
← Terug naar AWS Solutions Architect