0Pricing
Cloud & IT Cert Prep · Lezione

Bucket, oggetti e Regions

Creerete bucket S3, caricherete oggetti, comprenderete la denominazione delle chiavi e vedrete come S3 replica i dati all'interno di una Region.

Bucket, oggetti e Regions è una lezione Cloud & IT Cert Prep gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Cloud & IT Cert Prep, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Cloud & IT Cert Prep include 4 lezioni in totale.

Che cos'è Amazon S3?

Amazon Simple Storage Service (S3) è il servizio di storage di oggetti di AWS, progettato per archiviare e recuperare qualsiasi quantità di dati da qualsiasi punto su Internet. S3 offre una durabilità di 11 nove (99,999999999%) archiviando in modo ridondante gli oggetti su più dispositivi in più Availability Zone all'interno della Region selezionata. È scalabile senza limiti pratici, non ha un limite di capacità e supporta oggetti da 0 byte fino a 5 TB. S3 è alla base di innumerevoli architetture AWS: viene utilizzato per siti web statici, data lake, repository di backup e molto altro.

Bucket S3: il contenitore di livello superiore

Un bucket S3 è un contenitore con nome univoco a livello globale per gli oggetti. I bucket vengono creati in una specifica Region AWS, ma i loro nomi devono essere univoci a livello globale in tutti gli account AWS del mondo (perché il nome diventa parte dell'URL). I nomi dei bucket devono contenere da 3 a 63 caratteri, essere in minuscolo, iniziare con una lettera o un numero e non contenere underscore o lettere maiuscole. Una best practice consiste nell'includere l'ID dell'account o un suffisso casuale per evitare collisioni di nomi con altri account.

# 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

Oggetti e chiavi S3

Un oggetto in S3 è composto dai dati (il contenuto del file), da una chiave (il nome univoco dell'oggetto all'interno del bucket), dai metadati (coppie chiave-valore definite dal sistema e dall'utente) e, facoltativamente, da un ID di versione (se il versioning è abilitato). La chiave è la stringa completa simile a un percorso, ad esempio photos/2024/summer/beach.jpg. S3 è piatto: non esistono directory reali, ma solo prefissi delle chiavi che hanno l'aspetto di directory. La dimensione massima di un oggetto è 5 TB; per gli oggetti più grandi di 100 MB, utilizzi Multipart Upload per ottenere prestazioni e affidabilità migliori.

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

Formati degli URL S3

È possibile accedere agli oggetti S3 tramite due formati di URL. Path-style: https://s3.<region>.amazonaws.com/<bucket>/<key> (in fase di dismissione per i nuovi bucket). Virtual-hosted-style: https://<bucket>.s3.<region>.amazonaws.com/<key> (lo standard attuale). Il nome del bucket diventa un sottodominio, motivo per cui i nomi dei bucket devono essere conformi alle regole DNS. Per gli URL pre-firmati e le distribuzioni CloudFront viene sempre visualizzato il formato virtual-hosted. Comprendere la struttura dell'URL aiuta a configurare correttamente le policy dei bucket e CORS.

# 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

Modello di coerenza dei dati S3

A partire da dicembre 2020, Amazon S3 offre coerenza forte in lettura dopo scrittura per tutte le operazioni, ovvero PUT di nuovi oggetti, sovrascritture ed eliminazioni, in tutte le Region automaticamente e senza costi aggiuntivi. Ciò significa che, non appena una scrittura ha esito positivo, qualsiasi lettura successiva restituirà la versione più recente dell'oggetto. Si tratta di un miglioramento significativo rispetto al precedente modello di coerenza eventuale e semplifica la progettazione delle applicazioni, eliminando la necessità di ritardi nella lettura dopo una scrittura o di una logica di ritentativo.

S3 e le Region: residenza dei dati

Quando crea un bucket S3, specifica una Region e i Suoi dati restano in quella Region, a meno che non configuri esplicitamente la replica. AWS replica i dati all'interno di quella Region in più AZ per garantire la durabilità, ma non trasferisce automaticamente i dati in altre Region. Questa residenza regionale dei dati è importante per la conformità: se le normative richiedono che i dati restino nell'UE, crei il bucket in eu-west-1 o in un'altra Region dell'UE; i Suoi dati non ne usciranno.

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

Multipart Upload per oggetti di grandi dimensioni

Multipart Upload è obbligatorio per gli oggetti di dimensioni superiori a 5 GB e consigliato per quelli superiori a 100 MB. Divide l'oggetto in parti (minimo 5 MB per parte, fino a 10.000 parti), carica ogni parte in modo indipendente (in parallelo) e le combina nell'oggetto finale. Se una parte non va a buon fine, è sufficiente ritentare il caricamento di quella parte. AWS CLI e gli SDK gestiscono automaticamente il multipart upload quando utilizza il comando aws s3 cp per i file di grandi dimensioni: non è necessario implementarlo manualmente.

# 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

Metadati degli oggetti S3

Ogni oggetto S3 dispone di metadati di sistema impostati da AWS (Content-Type, Content-Length, ETag, Last-Modified) e di metadati definiti dall'utente facoltativi (coppie chiave-valore personalizzate con prefisso x-amz-meta-). I metadati vengono archiviati insieme all'oggetto e restituiti nelle intestazioni della risposta HTTP quando l'oggetto viene scaricato. Content-Type è particolarmente importante per la pubblicazione sul web: se carica un file HTML senza impostare Content-Type: text/html, i browser potrebbero proporlo per il download invece di visualizzarlo.

# 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 per l'hosting di siti web statici

Amazon S3 può fungere da host per siti web statici, fornendo direttamente da un bucket file HTML, CSS, JavaScript, immagini e altri file. Abiliti l'hosting di siti web statici nelle proprietà del bucket e specifichi un documento indice (index.html) e, facoltativamente, un documento di errore (404.html). L'URL dell'endpoint del sito web del bucket segue il formato: http://<bucket>.s3-website.<region>.amazonaws.com. Per il supporto HTTPS e ai domini personalizzati, posizioni una distribuzione CloudFront davanti al bucket del sito web statico S3.

# 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 velocizza il caricamento di oggetti su lunghe distanze instradando i dati attraverso la CloudFront Edge Location più vicina e poi sulla rete backbone privata di AWS fino alla Region del bucket S3. Invece di caricare direttamente sull'endpoint S3, il client carica i dati su un endpoint accelerato come my-bucket.s3-accelerate.amazonaws.com. Transfer Acceleration applica un piccolo costo per GB, ma può migliorare significativamente la velocità di caricamento per gli utenti geograficamente lontani dalla Region del bucket.

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

Tag degli oggetti S3

I tag degli oggetti sono coppie chiave-valore associate agli oggetti S3 per classificarli e gestirli. I tag vengono utilizzati per: regole del ciclo di vita (trasferire o scadere gli oggetti con tag specifici), controllo degli accessi (condizioni nelle policy IAM e nelle policy dei bucket basate sui valori dei tag), allocazione dei costi (Cost Explorer monitora la spesa S3 per tag) e inventario e analisi. Ogni oggetto può avere fino a 10 tag. I tag possono essere aggiunti durante il caricamento o aggiornati dopo la creazione dell'oggetto senza modificarne i dati.

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

Verifica rapida

Verifichi la Sua comprensione dei concetti di AWS Solutions Architect (SAA-C03) trattati in questa lezione.

Riepilogo della lezione

In questa lezione ha appreso che: i bucket S3 sono contenitori con nome univoco a livello globale associati a una specifica Region; gli oggetti sono archiviati con una struttura piatta basata sulle chiavi e supportano metadati e tag; e S3 offre coerenza forte in lettura dopo scrittura e una durabilità di 11 nove grazie alla ridondanza tra più AZ. Nel prossimo argomento esploreremo il controllo degli accessi S3 con le policy dei bucket e gli ACL.

Domande Frequenti

La lezione «Bucket, oggetti e Regions» è gratuita?

Sì — il testo completo di «Bucket, oggetti e Regions» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Cloud & IT Cert Prep, passa a CoddyKit PRO. Il corso Cloud & IT Cert Prep include 4 lezioni in totale.

Cosa imparerò in «Bucket, oggetti e Regions»?

Creerete bucket S3, caricherete oggetti, comprenderete la denominazione delle chiavi e vedrete come S3 replica i dati all'interno di una Region. Eserciti Cloud & IT Cert Prep con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Cloud & IT Cert Prep?

Non è richiesta alcuna esperienza precedente. Cloud & IT Cert Prep su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.

Quanto tempo richiede la lezione «Bucket, oggetti e Regions»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Cloud & IT Cert Prep?

Sì. Ogni lezione Cloud & IT Cert Prep include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Bucket, oggetti e Regions
  2. Controllo degli accessi S3: policy dei bucket e ACL
  3. Versioning, MFA Delete e replica
  4. Classi di storage e policy del ciclo di vita
← Torna a Cloud & IT Cert Prep