Introducció a Amazon S3
Amazon Simple Storage Service (Amazon S3) és un servei d'emmagatzematge d'objectes que ofereix escalabilitat, disponibilitat de dades, seguretat i rendiment de primera classe. Els clients de totes les mides i indústries poden utilitzar Amazon S3 per emmagatzemar i protegir qualsevol quantitat de dades per a una varietat de casos d'ús, com ara llocs web, aplicacions mòbils, còpies de seguretat i restauració, arxiu, aplicacions empresarials, dispositius IoT i grans dades.
Característiques clau d'Amazon S3
- Escalabilitat: Amazon S3 està dissenyat per escalar-se automàticament per gestionar qualsevol quantitat de dades.
- Durabilitat: Amazon S3 està dissenyat per oferir una durabilitat del 99,999999999% (11 9s) per als objectes emmagatzemats.
- Seguretat: Amazon S3 proporciona opcions de seguretat avançades, incloent-hi el xifratge de dades en repòs i en trànsit.
- Gestió de dades: Amazon S3 ofereix eines per gestionar el cicle de vida de les dades, com ara regles de cicle de vida per a la transició d'objectes entre classes d'emmagatzematge.
- Integració: Amazon S3 s'integra amb altres serveis d'AWS, com ara Amazon CloudFront, AWS Lambda i Amazon RDS.
Conceptes bàsics d'Amazon S3
Buckets
Un bucket és un contenidor per a objectes emmagatzemats a Amazon S3. Cada objecte es guarda en un bucket. Els buckets serveixen per organitzar i controlar l'accés als objectes.
Objectes
Un objecte és la unitat bàsica d'emmagatzematge a Amazon S3. Cada objecte consta de dades, metadades i una clau única que l'identifica dins del bucket.
Clau
La clau és el nom únic que identifica un objecte dins d'un bucket. Les claus poden incloure barres inclinades ("/") per simular una estructura de directori.
Classes d'emmagatzematge
Amazon S3 ofereix diverses classes d'emmagatzematge per optimitzar els costos i el rendiment segons les necessitats de les dades:
- S3 Standard: Per a dades que s'accedeixen freqüentment.
- S3 Intelligent-Tiering: Per a dades amb patrons d'accés canviants.
- S3 Standard-IA (Infrequent Access): Per a dades que s'accedeixen amb menys freqüència però que necessiten un accés ràpid quan es necessiten.
- S3 One Zone-IA: Per a dades que s'accedeixen amb menys freqüència i que es poden emmagatzemar en una única zona de disponibilitat.
- S3 Glacier: Per a arxiu de dades a llarg termini amb temps de recuperació de minuts a hores.
- S3 Glacier Deep Archive: Per a arxiu de dades a llarg termini amb temps de recuperació de 12 hores.
Exemple pràctic: Crear un bucket i pujar un objecte
Pas 1: Crear un bucket
- Accedeix a la Consola de gestió d'AWS.
- Navega a Amazon S3.
- Fes clic a "Create bucket".
- Introdueix un nom únic per al bucket i selecciona una regió.
- Configura les opcions addicionals segons les teves necessitats.
- Fes clic a "Create bucket".
Pas 2: Pujar un objecte
- Selecciona el bucket que acabes de crear.
- Fes clic a "Upload".
- Arrossega i deixa anar els fitxers que vols pujar o fes clic a "Add files" per seleccionar-los.
- Configura les opcions d'emmagatzematge i permisos segons les teves necessitats.
- Fes clic a "Upload".
Exemple de codi: Pujar un objecte amb AWS SDK per a Python (Boto3)
import boto3 # Crear un client S3 s3 = boto3.client('s3') # Nom del bucket i clau de l'objecte bucket_name = 'el-meu-bucket' object_key = 'el-meu-objecte.txt' file_path = 'ruta/al/meu/fitxer.txt' # Pujar l'objecte s3.upload_file(file_path, bucket_name, object_key) print(f'Objecte {object_key} pujat al bucket {bucket_name}')
Exercici pràctic
Exercici 1: Crear un bucket i pujar un objecte
- Crea un bucket anomenat
exercici-bucket
. - Pujar un fitxer de text anomenat
hola.txt
amb el contingut "Hola, AWS S3!" al bucketexercici-bucket
.
Solució
- Segueix els passos descrits anteriorment per crear un bucket anomenat
exercici-bucket
. - Crea un fitxer de text anomenat
hola.txt
amb el contingut "Hola, AWS S3!". - Pujar el fitxer
hola.txt
al bucketexercici-bucket
seguint els passos descrits anteriorment.
Resum
En aquesta secció, hem après què és Amazon S3, les seves característiques clau i els conceptes bàsics com buckets, objectes i classes d'emmagatzematge. També hem vist un exemple pràctic de com crear un bucket i pujar un objecte, tant a través de la consola de gestió d'AWS com utilitzant l'AWS SDK per a Python. Finalment, hem proposat un exercici pràctic per reforçar els conceptes apresos.