Qu'est-ce qu'Amazon S3 ? - Amazon Simple Storage Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Qu'est-ce qu'Amazon S3 ?

Amazon Simple Storage Service (Amazon S3) est un service de stockage d'objets qui offre une évolutivité, une disponibilité des données, une sécurité et des performances de pointe. Les clients de toutes tailles et secteurs peuvent utiliser Amazon S3 pour stocker et protéger toute quantité de données dans un large éventail de cas d'utilisation, par exemple des lacs de données, des sites Web, des applications mobiles, des sauvegardes et restaurations, des archives, des applications métier, des appareils IoT et des analyses de Big Data. Amazon S3 offre des fonctions de gestion qui vous permettent d'optimiser, d'organiser et de configurer l'accès à vos données aux fins de répondre aux exigences spécifiques de votre entreprise, de votre organisation et de votre conformité.

Note

Pour plus d’informations sur l’utilisation de la classe de stockage Amazon S3 Express One Zone avec des compartiments de répertoires, consultez Qu’est-ce que S3 Express One Zone ? et Compartiments de répertoire.

Fonctions d'Amazon S3

Classes de stockage

Amazon S3 offre un large éventail de classes de stockage conçues pour différents cas d'utilisation. Par exemple, vous pouvez stocker les données de production stratégiques dans S3 Standard ou S3 Express One Zone pour un accès fréquent, réduire les coûts en stockant les données rarement consultées dans S3 Standard-IA ou S3 One Zone-IA, et archiver les données à des coûts minimaux dans S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval et S3 Glacier Deep Archive.

Amazon S3 Express One Zone est une classe de stockage Amazon S3 à zone unique et hautes performances, spécialement conçue pour fournir un accès aux données constant en moins de dix millisecondes pour vos applications les plus sensibles à la latence. S3 Express One Zone est la classe de stockage d'objets cloud à latence la plus faible disponible à ce jour, avec des vitesses d'accès aux données jusqu'à 10 fois plus rapides et des coûts de demande 50 % inférieurs à ceux de S3 Standard. S3 Express One Zone est la première classe de stockage S3 dans laquelle vous pouvez sélectionner une zone de disponibilité unique avec la possibilité de regrouper le stockage d’objets et les ressources de calcul, ce qui assure la vitesse d’accès la plus élevée possible. En outre, pour augmenter encore la vitesse d’accès et prendre en charge des centaines de milliers de demandes par seconde, les données sont stockées dans un nouveau type de compartiment : un compartiment de répertoires Amazon S3. Pour plus d’informations, consultez Qu’est-ce que S3 Express One Zone ? et Compartiments de répertoire.

Vous pouvez stocker des données avec des modèles d'accès changeants ou inconnus dans S3 Intelligent-Tiering, ce qui optimise les coûts de stockage en déplaçant automatiquement vos données entre quatre niveaux d'accès lorsque vos modèles d'accès changent. Ces quatre niveaux d'accès comprennent deux niveaux d'accès à faible latence optimisés pour les accès fréquents et peu fréquents, et deux niveaux d'accès d'archive optionnels conçus pour un accès asynchrone pour les données rarement consultées.

Pour plus d’informations, consultez Utilisation des classes de stockage Simple Storage Service (Amazon S3). Pour en savoir plus sur S3 Glacier Flexible Retrieval, consultez le guide du développeur Amazon S3 Glacier.

Gestion du stockage

Amazon S3 dispose de fonctions de gestion du stockage que vous pouvez utiliser pour gérer les coûts, répondre aux exigences réglementaires, réduire la latence et enregistrer plusieurs copies distinctes de vos données aux fins de respecter les exigences de conformité.

  • Cycle de vie S3 : configurez une configuration de cycle de vie pour gérer vos objets et les stocker de manière rentable pendant tout leur cycle de vie. Vous pouvez transférer des objets vers d'autres classes de stockage S3 ou faire expirer des objets qui atteignent la fin de leur durée de vie.

  • S3 Object Lock – Empêchez que les objets Amazon S3 soient supprimés ou écrasés sur une période déterminée ou indéfinie. Vous pouvez utiliser Object Lock pour répondre aux exigences réglementaires qui nécessitent un stockage write-once-read-many(WORM) ou simplement pour ajouter un niveau de protection supplémentaire contre les modifications et les suppressions d'objets.

  • Réplication S3 – Répliquez des objets, leurs métadonnées et leurs balises d'objet respectives vers un ou plusieurs compartiments de destination dans le même Régions AWS ou dans un autre afin de réduire la latence, la conformité, la sécurité et d'autres cas d'utilisation.

  • Opérations par lots S3 – Gérez des milliards d'objets à grande échelle avec une seule demande API S3 ou quelques clics dans la console Amazon S3. Vous pouvez utiliser les opérations par lots pour effectuer des opérations telles que Copier, Appeler une fonction LambdaAWS et Restaurer sur des millions ou des milliards d'objets.

Gestion des accès et sécurité

Amazon S3 fournit des fonctions d'audit et de gestion de l'accès à vos compartiments et objets. Par défaut, les compartiments S3 et les objets sont privés. Vous avez uniquement accès aux ressources S3 que vous créez. Pour accorder des autorisations de ressources granulaires prenant en charge votre cas d'utilisation spécifique ou pour vérifier les autorisations de vos ressources Amazon S3, vous pouvez utiliser les fonctions suivantes.

  • Bloquer l'accès public S3 – Bloque l'accès public aux compartiments S3 et aux objets. Par défaut, les paramètres de blocage de l'accès public sont activés au niveau du compartiment. Nous vous recommandons de laisser tous les paramètres de blocage de l'accès public activés, sauf si vous savez que vous devez en désactiver un ou plusieurs pour votre cas d'utilisation spécifique. Pour plus d’informations, consultez Configuration des paramètres de blocage d'accès public pour vos compartiments S3.

  • AWS Identity and Access Management (IAM) : IAM est un service web qui vous permet de contrôler l'accès aux ressources AWS, y compris à vos ressources Amazon S3. Avec IAM, vous pouvez gérer de manière centralisée les autorisations qui contrôlent les ressources AWS auxquelles les utilisateurs peuvent accéder. Vous pouvez utiliser IAM pour contrôler les personnes qui s'authentifient (sont connectées) et sont autorisées (disposent d'autorisations) à utiliser des ressources.

  • Politiques de compartiment – Utilisez un langage de politique basé sur IAM pour configurer les autorisations basées sur les ressources de vos compartiments S3 et des objets qu'ils contiennent.

  • Amazon S3 access points (Points d'accès Amazon S3) — configurez des points de terminaison réseau nommés avec des stratégies d'accès dédiées pour gérer l'accès aux données à grande échelle pour les jeux de données partagés dans Amazon S3.

  • Listes de contrôle d'accès (ACL) – Accordez des autorisations de lecture et d'écriture pour des compartiments et des objets individuels aux utilisateurs autorisés. En règle générale, nous recommandons d'utiliser des politiques basées sur les ressources S3 (politiques de compartiment et politiques de point d'accès) ou des politiques d'utilisateur IAM pour le contrôle d'accès à la place des listes ACL. Les politiques constituent une option de contrôle d'accès simplifiée et plus flexible. Les politiques de compartiment et de point d'accès vous permettent de définir des règles s'appliquant de manière générale à toutes les demandes adressées à vos ressources Amazon S3. Pour plus d'informations sur les cas spécifiques où vous devriez utiliser des listes ACL plutôt que des politiques basées sur les ressources ou des politiques d'utilisateur IAM, consultez Consignes relatives à la stratégie d'accès.

  • Propriété d'objets S3 : prenez possession de chaque objet présent dans votre compartiment, afin de simplifier la gestion des accès aux données stockées dans Amazon S3. La propriété d'objets S3 est un paramètre Amazon S3 au niveau des compartiments que vous pouvez utiliser pour désactiver ou activer les listes ACL. Par défaut, les listes ACL sont désactivées. Lorsque les listes ACL sont désactivées, le propriétaire du compartiment détient tous les objets présents dans le compartiment et gère l'accès aux données exclusivement à l'aide de politiques de gestion des accès.

  • Analyseur d'accès IAM pour S3 : évaluez et contrôlez vos politiques d'accès aux compartiments S3, en veillant à ce que ces politiques fournissent uniquement l'accès prévu à vos ressources S3.

Traitement des données

Pour transformer les données et déclencher des flux de travail afin d'automatiser diverses autres activités de traitement à grande échelle, vous pouvez utiliser les fonctions suivantes.

  • S3 Object Lambda – ajoutez votre propre code aux requêtes S3 GET, HEAD et LIST afin de modifier et de traiter les données lorsqu'elles sont renvoyées vers une application. Filtrez les lignes, redimensionnez dynamiquement les images, supprimez les données confidentielles et bien plus encore.

  • Notifications d'événements : déclenchez des flux de travail utilisant Amazon Simple Notification Service (Amazon SNS), Amazon Simple Queue Service (Amazon SQS) et AWS Lambda lorsqu'une modification est apportée à vos ressources S3.

Journalisation et surveillance du stockage

Amazon S3 fournit des outils de journalisation et de surveillance que vous pouvez utiliser pour surveiller et contrôler la façon dont vos ressources Amazon S3 sont utilisées. Pour plus d’informations, consultez Outils de surveillance.

Outils de surveillance automatique
  • Amazon CloudWatch Metrics for Amazon S3 — Suivez l'état de fonctionnement de vos ressources S3 et configurez des alertes de facturation lorsque les frais estimés atteignent un seuil défini par l'utilisateur.

  • AWS CloudTrail— Enregistrez les actions effectuées par un utilisateur, un rôle ou un Service AWS dans Amazon S3. CloudTrail les journaux vous fournissent un suivi détaillé des API pour les opérations S3 au niveau du bucket et au niveau de l'objet.

Outils de surveillance manuelle
  • La journalisation des accès au serveur fournit des enregistrements détaillés pour les demandes soumises à un compartiment. Vous pouvez utiliser les journaux d'accès au serveur pour des audits de sécurité et d'accès, afin d'en savoir plus sur votre base de clients et pour comprendre votre facture Amazon S3.

  • AWSTrusted Advisor— Évaluez votre compte en utilisant AWS des vérifications des meilleures pratiques pour identifier les moyens d'optimiser votre infrastructure AWS, améliorer la sécurité et les performances, réduire les coûts et surveiller les quotas de service. Vous pouvez ensuite suivre les recommandations pour optimiser vos services et vos ressources.

Analytique et informations

Amazon S3 offre des fonctions qui vous aident à gagner en visibilité sur l'utilisation de votre stockage, ce qui vous permet de mieux comprendre, analyser et optimiser votre stockage à grande échelle.

  • Amazon S3 Storage Lens : comprenez, analysez et optimisez votre stockage. S3 Storage Lens offre plus de 60 métriques d'utilisation et d'activité ainsi que des tableaux de bord interactifs vous permettant d'agréger des données pour l'ensemble de votre organisation, des comptes spécifiques, des Régions AWS, des compartiments ou des préfixes.

  • Analyse de classe de stockage : analysez les modèles d'accès au stockage afin de décider lorsqu'il est temps de déplacer vos données vers une classe de stockage plus économique.

  • Inventaire S3 avec rapports d'inventaire : auditez et produisez des rapports sur les objets et leurs métadonnées correspondantes, et configurez d'autres fonctions Amazon S3 pour qu'elles agissent dans les rapports d'inventaire. Par exemple, vous pouvez signaler le statut de réplication et de chiffrement de vos objets. Pour obtenir la liste de toutes les métadonnées disponibles pour chaque objet dans les rapports d'inventaire, consultez Liste d'inventaire Amazon S3.

Forte cohérence

Amazon S3 assure une forte read-after-write cohérence pour les requêtes PUT et DELETE relatives à l'ensemble des objets de votre compartiment Amazon S3Régions AWS. Cela s'applique à la fois aux écritures sur de nouveaux objets ainsi qu'aux opérations PUT qui écrasent les objets existants et aux opérations DELETE. En outre, les opérations de lecture sur Amazon S3 Select, les listes de contrôle d'accès Amazon S3, les balises d'objet Amazon S3 et les métadonnées d'objet (par exemple l'objet HEAD) sont fortement cohérentes. Pour plus d’informations, consultez Modèle de cohérence des données Amazon S3.

Fonctionnement d'Amazon S3

Amazon S3 est un service de stockage d'objets qui stocke les données en tant qu'objets dans des compartiments. Un objet est un fichier et toutes les métadonnées qui le décrivent. Un compartiment est un conteneur d'objets.

Pour stocker vos données dans Amazon S3, vous devez d'abord créer un compartiment et spécifier un nom de compartiment et une Région AWS. Ensuite, vous chargez vos données dans ce compartiment en tant qu'objets dans Amazon S3. Chaque objet possède une key (clé) (ou key name [nom de clé]), qui est l'identifiant unique d'un objet au sein d'un compartiment.

S3 propose des fonctionnalités que vous pouvez configurer pour prendre en charge votre cas d'utilisation spécifique. Par exemple, vous pouvez utiliser la gestion des versions S3 pour conserver plusieurs versions d'un objet dans un même compartiment et vous permettre de restaurer des objets qui sont accidentellement supprimés ou écrasés.

Les compartiments et les objets qu'ils contiennent sont privés et ne sont accessibles que si vous accordez explicitement des autorisations d'accès. Vous pouvez utiliser des stratégies de compartiment, des stratégies AWS Identity and Access Management (IAM), des listes de contrôle d'accès (ACL) et des points d'accès S3 pour gérer l'accès.

Compartiments

Un compartiment est un conteneur d'objets stockés dans Amazon S3. Chaque compartiment permet de stocker un nombre illimité d'objets et vous pouvez avoir jusqu'à 100 compartiments dans votre compte. Pour demander une augmentation, reportez-vous à la console Service Quotas.

Chaque objet est contenu dans un compartiment. Par exemple, si l'objet nommé photos/puppy.jpg est stocké dans le compartiment DOC-EXAMPLE-BUCKET, dans la région USA Ouest (Oregon), il est adressable à l'aide de l'URL https://DOC-EXAMPLE-BUCKET.s3.us-west-2.amazonaws.com/photos/puppy.jpg. Pour plus d'informations, consultez Accès à un compartiment.

Lorsque vous créez un compartiment, vous saisissez un nom de compartiment et choisissez la Région AWS où se trouve le compartiment. Une fois un compartiment créé, vous ne pouvez pas modifier son nom ni sa Région. Les noms de compartiments doivent suivre les règles de dénomination de compartiment. Vous pouvez également configurer un compartiment pour utiliser Gestion des versions S3 ou autre Gestion du stockageFonctions de

Les compartiments aussi :

  • Organisez l'espace de noms Amazon S3 au niveau le plus élevé.

  • Identifiez le responsable de compte pour les frais de stockage et de transfert de données.

  • Fournissez des options de contrôle d'accès, telles que des stratégies de compartiment, des listes de contrôle d'accès (ACL) et des points d'accès S3, que vous pouvez utiliser pour gérer l'accès à vos ressources Amazon S3.

  • Sert d'unité de regroupement pour les rapports d'utilisation.

Pour plus d'informations sur les compartiments, consultez Présentation des compartiments.

Objets

Les objets sont les entités fondamentales stockées dans Amazon S3. Les objets sont composés de données et de métadonnées. Les métadonnées sont un ensemble de paires nom-valeur décrivant des objets. Ces pairs comprennent certaines métadonnées par défaut telles que la date de la dernière modification et des métadonnées HTTP standard comme Content-Type. Vous pouvez aussi spécifier des métadonnées personnalisées au moment du stockage de l'objet.

Un objet est identifié de manière unique dans un compartiment parclé (nom)et un ID de version (si S3 Versioning est activé sur le compartiment). Pour en savoir plus sur les objets, consultez Présentation des objets Amazon S3.

Clés

Une clé d'objet (ou nom de clé) est l'identifiant unique d'un objet au sein d'un compartiment. Chaque objet d'un compartiment possède une clé et une seule. La combinaison d'un compartiment, d'une clé d'objet et éventuellement d'un ID de version (si la gestion des versions S3 est activée pour le compartiment) identifie de manière unique chaque objet. Vous pouvez donc considérer Amazon S3 comme un mappage de données entre « compartiment + clé + version » et l'objet lui-même.

Chaque objet Amazon S3 peut être adressé de manière unique via la combinaison du point de terminaison du service web, du nom du compartiment, de la clé et, le cas échéant, d'une version. Par exemple, dans l'URL https://DOC-EXAMPLE-BUCKET.s3.us-west-2.amazonaws.com/photos/puppy.jpg, « DOC-EXAMPLE-BUCKET » est le nom du compartiment et « photos/puppy.jpg » est la clé.

Pour en savoir plus sur les clés d'objet, consultez Création de noms de clés d'objet.

Gestion des versions S3

Vous pouvez utiliser la gestion des versions S3 pour conserver plusieurs variantes d'un objet dans le même compartiment. Vous pouvez utiliser la gestion des versions S3 pour préserver, récupérer et restaurer chaque version de chaque objet stocké dans vos compartiments. Vous pouvez facilement récupérer les données en cas d'actions involontaires des utilisateurs ou de défaillances des applications.

Pour plus d’informations, consultez Utilisation de la gestion des versions dans les compartiments S3.

ID de version

Lorsque vous activez la gestion des versions S3 pour un compartiment, Amazon S3 génère un ID de version unique pour chaque objet ajouté au compartiment. Les objets qui existaient déjà dans le compartiment au moment où vous activez la gestion des versions ont un ID de version égal à null. Si vous modifiez ces objets (ou tout autre) par d'autres opérations, telles que CopyObjectet PutObject, les nouveaux objets obtiennent un ID de version unique.

Pour plus d’informations, consultez Utilisation de la gestion des versions dans les compartiments S3.

Politique de compartiment

Une stratégie de compartiment est une stratégie AWS Identity and Access Management (IAM) basée sur les ressources que vous pouvez utiliser pour accorder des autorisations d'accès à votre compartiment et aux objets qu'il contient. Seul le propriétaire du compartiment peut associer une stratégie à un compartiment. Les autorisations attachées au compartiment s'appliquent à tous les objets du compartiment appartenant au compte propriétaire du compartiment. Les stratégies de compartiment sont limitées à une taille de 20 Ko.

Les stratégies de compartiment utilisent le langage d'access policy basé sur JSON standard dans AWS. Vous pouvez utiliser des stratégies de compartiment pour ajouter ou refuser des autorisations pour les objets d'un compartiment. Les stratégies de compartiment autorisent ou rejettent les demandes basées sur les éléments de la stratégie, y compris le demandeur, les actions S3, les ressources et les aspects ou conditions de la demande (par exemple, l'adresse IP utilisée pour effectuer la demande). Par exemple, vous pouvez créer une stratégie de compartiment qui accorde des autorisations entre comptes pour charger des objets vers un compartiment S3 tout en veillant à ce que le propriétaire du compartiment ait le contrôle total des objets téléchargés. Pour plus d’informations, consultez Exemples de stratégie de compartiment.

Dans votre stratégie de compartiment, vous pouvez utiliser des caractères génériques sur des Amazon Resource Names (ARN) et d'autres valeurs pour accorder des autorisations à un sous-ensemble d'objets. Par exemple, vous pouvez contrôler l'accès aux groupes d'objets qui commencent par un préfixecourant ou se terminent par une extension donnée, comme .html.

Points d’accès S3

Les points d'accès Amazon S3 sont nommés points de terminaison réseau avec des stratégies d'accès dédiées qui décrivent comment accéder aux données à l'aide de ce point de terminaison. Les points d'accès sont attachés à des compartiments que vous pouvez utiliser pour effectuer des opérations sur des objets S3, telles que GetObject etPutObject. Les points d'accès simplifient la gestion de l'accès aux données à grande échelle pour les ensembles de données partagés dans Amazon S3.

Chaque point d'accès dispose de sa propre stratégie d'accès. Vous pouvez configurer des paramètres de blocage de l'accès public pour chaque point d'accès. Vous pouvez configurer n'importe quel point d'accès pour accepter uniquement les demandes provenant d'un cloud privé virtuel (VPC) afin de restreindre l'accès aux données Amazon S3 à un réseau privé.

Pour plus d’informations, consultez Gestion de l'accès aux données avec les points d'accès Amazon S3.

Listes de contrôle d’accès (ACL)

Vous pouvez utiliser des ACL pour accorder des autorisations de lecture et d'écriture aux utilisateurs autorisés pour des compartiments et des objets individuels. Chaque compartiment et objet possède une liste ACL qui lui est attachée comme sous-ressource. La liste ACL définit quels Comptes AWS ou groupes bénéficient d'un accès et le type d'accès. Les ACL représentent un mécanisme de contrôle d'accès qui précède les stratégies IAM. Pour en savoir plus sur les listes ACL, consultez Présentation de la liste de contrôle d'accès (ACL).

La propriété d'objets S3 est un paramètre Amazon S3 au niveau des compartiments que vous pouvez utiliser pour contrôler la propriété des objets qui sont chargés dans votre compartiment, ainsi que pour désactiver ou activer les listes ACL. Par défaut, la propriété des objets est définie sur le paramètre Propriétaire du compartiment appliqué et toutes les listes ACL sont désactivées. Lorsque les listes ACL sont désactivées, le propriétaire du compartiment détient tous les objets du compartiment et gère leur accès exclusivement au moyen de politiques de gestion des accès.

La majorité des cas d'utilisation modernes dans Amazon S3 ne nécessitent plus l'utilisation des listes ACL. Nous vous recommandons de maintenir les listes ACL désactivées, sauf dans des circonstances inhabituelles où vous devez contrôler l'accès individuellement pour chaque objet. Lorsque les listes ACL sont désactivées, vous pouvez utiliser des politiques pour contrôler l'accès à tous les objets de votre compartiment, quelle que soit la personne qui les a chargés dans votre compartiment. Pour plus d’informations, consultez Consultez Contrôle de la propriété des objets et désactivation des listes ACL pour votre compartiment.

Régions

Vous pouvez choisir la Région AWS géographique dans laquelle Amazon S3 stocke les compartiments que vous créez. Vous pouvez choisir une Région pour optimiser la latence, minimiser les coûts ou répondre aux exigences réglementaires. Les objets stockés dans une Région AWS ne quittent jamais la Région, à moins que vous ne les transfériez explicitement vers une autre Région. Par exemple, les objets stockés dans la Région UE (Irlande) ne la quittent jamais.

Note

Vous pouvez accéder à Amazon S3 et à ses fonctions uniquement dans les Régions AWS qui sont activées pour votre compte. Pour plus d'informations sur l'activation d'une région pour créer et gérer des ressources AWS, consultez Gestion des Régions AWS dans la Références générales AWS'.

Pour obtenir la liste des points de terminaison et des régions Amazon S3 disponibles, consultez Régions et points de terminaison dans la Références générales AWS.

Modèle de cohérence des données Amazon S3

Amazon S3 assure une forte read-after-write cohérence pour les requêtes PUT et DELETE relatives à l'ensemble des objets de votre compartiment Amazon S3Régions AWS. Cela s'applique à la fois aux écritures sur de nouveaux objets ainsi qu'aux demandes PUT qui écrasent les objets existants et aux demandes DELETE. En outre, les opérations de lecture sur Amazon S3 Select, les listes de contrôle d'accès (ACL) Amazon S3, les balises d'objet Amazon S3 et les métadonnées d'objet (par exemple l'objet HEAD) sont fortement cohérentes.

Les mises à jour d'une seule clé sont atomiques. Par exemple, si vous faites une demande PUT sur une clé existante d'un thread et exécutez simultanément une demande GET sur la même clé à partir d'un second thread, vous obtiendrez les anciennes données ou les nouvelles données, mais jamais des données partielles ni corrompues.

Amazon S3 garantit une haute disponibilité en répliquant les données sur plusieurs serveurs dans les centres de données AWS. Si une demande PUT aboutit, vos données sont stockées en toute sécurité. Toute lecture (demandes GET ou LIST) initiée après la réception d'une réponse PUT réussie retournera les données écrites par la demande PUT. Voici des exemples de ce comportement :

  • Un processus écrit un nouvel objet sur Amazon S3 et dresse immédiatement une liste des clés dans ce compartiment. Le nouvel objet s'affiche dans la liste.

  • Un processus remplace un objet existant et tente immédiatement de le lire. Amazon S3 retourne les nouvelles données.

  • Un processus efface un objet existant et tente immédiatement de le lire. Amazon S3 ne retourne aucune donnée, car l'objet a été supprimé.

  • Un processus efface un objet existant et dresse immédiatement une liste des clés dans ce compartiment. L'objet ne s'affiche pas dans la liste.

Note
  • Amazon S3 ne prend pas en charge le verrouillage d'objet pour les auteurs simultanés. Si deux demandes PUT sont effectuées simultanément sur la même clé, la demande indiquant l'horodatage le plus récent est retenue. Si cela pose un problème, vous devrez créer un mécanisme de verrouillage d'objet à votre application.

  • Les mises à jour sont basées sur les clés. Il n'est pas possible d'effectuer des mises à jour atomiques sur plusieurs clés. Par exemple, vous ne pouvez pas mettre à jour une clé qui dépend de la mise à jour d'une autre clé, sauf si vous intégrez cette fonctionnalité dans votre application.

Les configurations de compartiment ont un modèle de cohérence éventuelle. Plus précisément, cela signifie que :

  • Si vous supprimez un compartiment et répertoriez immédiatement tous les compartiments, il est possible que le compartiment supprimé figure toujours dans la liste.

  • Si vous activez la gestion des versions sur un compartiment pour la première fois, la propagation complète de la modification peut prendre un court laps de temps. Nous vous recommandons d'attendre 15 minutes après l'activation de la gestion des versions avant d'exécuter des opérations d'écriture (demandes PUT ou DELETE) sur les objets du compartiment.

Applications simultanées

Cette section fournit des exemples de comportement à attendre de la part d'Amazon S3 lorsque plusieurs clients écrivent sur les mêmes éléments.

Dans cet exemple, W1 (écriture 1) et W2 (écriture 2) s'achèvent avant le début de R1 (lecture 1) et R2 (lecture 2). Comme S3 est fortement cohérent, R1 et R2 retournent tous les deux color = ruby.

Dans l'exemple suivant, W2 ne s'achève pas avant le début de R1. Par conséquent, R1 peut renvoyer color = ruby ou color = garnet. Cependant, puisque W1 et W2 se terminent avant le début de R2, R2 renvoie color = garnet.

Dans le dernier exemple, W2 commence avant que W1 ait reçu un accusé de réception. Par conséquent, ces écritures sont considérées comme simultanées. Amazon S3 utilise la last-writer-wins sémantique en interne pour déterminer quelle écriture est prioritaire. Toutefois, l'ordre dans lequel Amazon S3 reçoit les demandes et l'ordre dans lequel les applications reçoivent des accusés de réception ne peuvent pas être prédits en raison de différents facteurs, comme la latence réseau. Par exemple, W2 peut être initié par une instance Amazon EC2 dans la même Région alors que W1 peut être initié par un hôte plus éloigné. La meilleure façon de déterminer la valeur finale consiste à effectuer la lecture une fois les deux écritures reconnues.

Services connexes

Une fois vos données chargées dans Amazon S3, vous pouvez les utiliser avec d'autres services AWS. Les services suivants sont ceux que vous êtes susceptibles d'utiliser le plus fréquemment :

  • Amazon Elastic Compute Cloud (Amazon EC2) — offre une capacité de calcul évolutive dans le AWS Cloud. L'utilisation d'Amazon EC2 vous dispense d'investir à l'avance dans du matériel et, par conséquent, vous pouvez développer et déployer les applications plus rapidement. Vous pouvez utiliser Amazon EC2 pour lancer autant de serveurs virtuels que nécessaire, configurer la sécurité et les réseaux, et gérer le stockage.

  • Amazon EMR : permet aux entreprises, aux chercheurs, aux analystes de données et aux développeurs de traiter de grandes quantités de données de manière simple et économique. Amazon EMR utilise un framework Hadoop hébergé qui s'exécute sur l'infrastructure à l'échelle du web d'Amazon EC2 et d'Amazon S3.

  • Famille AWS Snow : aide les clients qui ont besoin d'exécuter des opérations dans des environnements austères et autres que des centres de données, et dans des endroits où la connectivité réseau est insuffisante. Vous pouvez utiliser des appareils AWS Snow Family pour accéder à la puissance de stockage et de calcul du AWS Cloud en local et de façon économique dans des endroits où la connexion Internet n'est peut-être pas possible.

  • AWS Transfer Family : fournit une prise en charge entièrement gérée des transferts de fichiers directement vers et depuis Amazon S3 ou Amazon Elastic File System (Amazon EFS) à l'aide du protocole File Transfer Protocol (SFTP) Secure Shell (SSH), du protocole File Transfer Protocol over SSL (FTPS) et du protocole File Transfer Protocol (FTP).

Accès à Amazon S3

Vous pouvez utiliser Amazon S3 de l'une des façons suivantes :

AWS Management Console

La console est une interface utilisateur basée sur le web permettant de gérer les ressources Amazon S3 et AWS. Si vous êtes inscrit à un compte Compte AWS, vous pouvez accéder à la console Amazon S3 en vous connectant à AWS Management Console et en choisissant S3 depuis la page d'accueil AWS Management Console.

AWS Command Line Interface

Vous pouvez utiliser les outils de ligne de commande AWS pour envoyer des commandes à la ligne de commande de votre système afin d'effectuer AWS et d'autres tâches (S3 compris).

Le AWS Command Line Interface (AWS CLI) fournit des commandes pour un large éventail de Services AWS. La AWS CLI est prise en charge sur Windows, macOS et Linux. Consultez le AWS Command Line Interface Guide de l'utilisateur pour démarrer. Pour plus d'informations sur les commandes d'Amazon S3, consultez les sections s3api et s3control dans les Références des commandes AWS CLI.

Kits SDK AWS

AWS fournit des kits SDK (kits de développement logiciel) composés de bibliothèques et d'exemples de code pour différentes langages et plateformes de programmation (Java, Python, Ruby, .NET, iOS, Android, etc.). Les kits SDK AWS facilitent la création par programmation d'un accès à S3 et AWS. Amazon S3 est un service REST. Vous pouvez envoyer des demandes à Amazon S3 en utilisant les bibliothèques des kits AWS SDK, qui enveloppent l'API REST Amazon S3 sous-jacente et simplifient vos tâches de programmation. Par exemple, ils automatisent les tâches comme le calcul de signatures, la signature cryptographique des demandes, la gestion des erreurs et les nouvelles tentatives automatiques de demande. Pour en savoir plus sur les kits SDK AWS, y compris les procédures pour les télécharger et les installer, consultez Outils pour AWS.

Chaque interaction avec Amazon S3 est authentifiée ou anonyme. Si vous utilisez des kits SDK AWS, les bibliothèques calculent la signature d'authentification à partir des clés que vous fournissez. Pour plus d'informations sur la procédure d'envoi de demandes à Amazon S3, consultez Demandes.

API REST Amazon S3

L'architecture d'Amazon S3 a été conçue de manière à être neutre en termes de langage de programmation et utilise nos interfaces supportées par AWS pour stocker et récupérer des objets. Vous pouvez accéder à S3 et à AWS par programmation à l'aide de l'API REST Amazon S3. L'API REST est une interface HTTP pour Amazon S3. Lorsque vous utilisez l’API REST, vous utilisez des demandes HTTP standard pour créer, récupérer et supprimer des compartiments et des objets.

Pour utiliser l'API REST, vous pouvez choisir n'importe quelle boîte à outils prenant en charge HTTP. Vous pouvez même utiliser un explorateur pour récupérer des objets, si ceux-ci peuvent être lus de manière anonyme.

L'API REST utilise les codes de statut et en-têtes HTTP standard afin de permettre aux explorateurs et boîtes à outils classiques de fonctionner. Dans certains zones, nous avons ajouté des fonctionnalités à HTTP (par exemple, nous avons ajouté des en-têtes afin de permettre le contrôle d'accès). Dans ces cas précis, nous avons fait notre possible pour intégrer cette nouvelle fonctionnalité de sorte qu'elle corresponde à la manière dont HTTP est généralement utilisé.

Si vous faites des appels directs d'API REST dans votre application, vous devez écrire le code pour calculer la signature et l'ajouter à la demande. Pour plus d'informations sur la procédure d'envoi de demandes à Amazon S3, consultez Demandes.

Note

Le support de l’API SOAP via HTTP est obsolète, mais continue d'être disponible sur HTTPS. Les nouvelles fonctions Amazon S3 ne sont pas prises en charge pour SOAP. Nous vous recommandons d'utiliser l'API REST ou les kits SDK AWS.

Paiement pour Amazon S3

La tarification d'Amazon S3 est conçue de sorte que vous n'avez pas à planifier les besoins en stockage de votre application. La plupart des fournisseurs de stockage exigent que vous achetiez une quantité prédéterminée de capacité de stockage et de transfert réseau. Dans ce scénario, si vous dépassez cette capacité, votre service est fermé ou vous devez payer des coûts supplémentaires élevés. Si vous ne dépassez pas cette limite, vous payerez malgré tout comme si vous l'aviez pleinement utilisée.

Amazon S3 ne facture que ce que vous avez utilisé et il n'y a aucuns frais cachés ou supplémentaires. Ce modèle vous offre un service à coût variable qui évolue avec votre entreprise, tout en vous permettant de profiter des avantages, en termes de prix, de l'infrastructure AWS. Pour plus d'informations, consultez Tarification Amazon S3.

Lorsque vous vous inscrivez à AWS, votre Compte AWS est automatiquement inscrit pour tous les services d'AWS, y compris dans Amazon S3. Toutefois, seuls les services que vous utilisez vous sont facturés. Si vous êtes un nouveau client Amazon S3, vous pouvez commencer à utiliser Amazon S3 gratuitement. Pour plus d'informations, consultez la page sur l'offre gratuite AWS.

Pour consulter votre facture, dirigez-vous vers le Tableau de bord de gestion des coûts et de la facturation dans la AWS Billing and Cost Managementconsole. Pour en savoir plus sur la facturation du Compte AWS, consultez le Guide de l’utilisateur AWS Billing. Pour toute question relative à la facturation AWS et aux Comptes AWS, contactez le support AWS.

Conformité PCI DSS

Amazon S3 prend en charge le traitement, le stockage et la transmission des données de cartes bancaires par un commerçant ou un fournisseur de services et a été validé comme étant conforme à la norme PCI (Payment Card Industry) DSS (Data Security Standard). Pour plus d'informations sur PCI DSS, et notamment sur la manière de demander une copie du package de conformité PCI AWS, consultez PCI DSS, niveau 1.