Modèles courants de compartiments à usage général pour créer des applications dans Amazon S3 - Amazon Simple Storage Service

Modèles courants de compartiments à usage général pour créer des applications dans Amazon S3

Lorsque vous créez des applications sur Amazon S3, vous pouvez utiliser des compartiments uniques à usage général pour séparer les différents jeux de données ou les différentes charges de travail. Lorsque vous créez des applications destinées à des utilisateurs finaux ou à différents groupes d’utilisateurs, utilisez nos modèles de conception basés sur les bonnes pratiques pour créer des applications qui tirent le meilleur parti des fonctionnalités et de la capacité de mise à l’échelle d’Amazon S3.

Important

Nous vous recommandons de créer des noms de compartiment à usage général impossibles à deviner. N’écrivez pas le code en présumant que le nom de compartiment que vous avez choisi est disponible, à moins que vous n’ayez déjà créé ce compartiment. Une méthode permettant de créer des noms de compartiment qui ne sont pas prévisibles consiste à ajouter un identifiant unique global (GUID) au nom du compartiment (amzn-s3-demo-bucket-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111, par exemple). Pour plus d’informations sur les règles de dénomination des compartiments à usage général, consultez Règles de dénomination des compartiments à usage général.

Modèle de compartiment à usage général à locataires multiples

Avec le compartiment à locataires multiples, vous créez un compartiment à usage général unique pour une équipe ou une charge de travail. Vous utilisez des préfixes S3 uniques pour organiser les objets que vous stockez dans ce compartiment. Un préfixe est une chaîne de caractères au début du nom de la clé d’objet. Il n’a pas de limite de longueur, mais ne peut pas dépasser la longueur du nom de la clé d’objet (1 024 octets). Vous pouvez voir les préfixes comme un moyen d’organiser vos données de la même manière que les répertoires. Toutefois, les préfixes ne sont pas des répertoires.

Par exemple, pour stocker des informations sur des villes, vous pouvez les organiser par continent, puis par pays, puis par province, région ou État. Étant donné que ces noms ne contiennent généralement pas de ponctuation, vous devez utiliser une barre oblique (/) comme délimiteur. Les exemples suivants présentent les préfixes utilisés pour organiser des noms de villes par continent, par pays, puis par province, région ou État à l’aide d’une barre oblique (/).

  • Europe/France/Nouvelle-Aquitaine/Bordeaux

  • Amérique du Nord/Canada/Québec/Montréal

  • Amérique du Nord/États-Unis/Washington/Bellevue

  • Amérique du Nord/États-Unis/Washington/Seattle

La mise à l’échelle de ce modèle fonctionne bien si vous possédez des centaines de jeux de données uniques dans un compartiment. Grâce aux préfixes, vous pouvez facilement organiser et regrouper ces jeux de données.

Cependant, l’un des inconvénients potentiels du modèle de compartiment à locataires multiples réside dans le fait que de nombreuses fonctionnalités au niveau du compartiment S3, telles que le chiffrement du compartiment par défaut, la gestion des versions S3 et le paiement S3 par le demandeur, sont définies au niveau du compartiment lui-même, et non au niveau du préfixe. Si les différents jeux de données du compartiment à locataires multiples ont des exigences uniques, il pourra être difficile de spécifier les paramètres corrects de chaque jeu de données, car vous ne pouvez pas configurer de nombreuses fonctionnalités au niveau du compartiment S3 au niveau du préfixe. En outre, dans un compartiment à locataires multiples, la répartition des coûts peut se compliquer à mesure que vous essayez de comprendre le stockage, les demandes et le transfert de données associés à des préfixes spécifiques.

Modèle de compartiments par utilisation

Avec le modèle de compartiment par utilisation, vous créez un compartiment à usage général pour chaque jeu de données, utilisateur final ou équipe. Comme vous pouvez configurer les fonctionnalités au niveau du compartiment S3 pour chacun de ces compartiments, vous pouvez utiliser ce modèle pour configurer des paramètres uniques au niveau du compartiment. Par exemple, vous pouvez configurer des fonctionnalités telles que le chiffrement des compartiments par défaut, la gestion des versions S3 et les paiements S3 par le demandeur de manière personnalisée en fonction du jeu de données de chaque compartiment. L’utilisation d’un compartiment pour chaque jeu de données, utilisateur final ou équipe distinct peut également vous aider à simplifier à la fois vos stratégies de gestion des accès et de répartition des coûts.

L’inconvénient potentiel de cette approche est que vous devrez gérer des milliers de compartiments. Tous les Comptes AWS ont un quota par défaut de 10 000 compartiments à usage général. Pour augmenter le quota de compartiments d’un compte, vous pouvez soumettre une demande d’augmentation de quota. Pour demander une augmentation du quota de compartiments à usage général, accédez à la console Service Quotas.

Pour gérer votre modèle de compartiments par utilisation et simplifier la gestion de votre infrastructure, vous pouvez utiliser AWS CloudFormation. Vous pouvez créer un modèle CloudFormation personnalisé qui définit déjà tous les paramètres souhaités pour vos compartiments S3 afin que vous puissiez facilement les déployer et suivre les modifications apportées à votre infrastructure. Pour plus d’informations, consultez AWS::S3::Bucket dans le Guide de l’utilisateur AWS CloudFormation.

Schéma illustrant comment créer un modèle CloudFormation personnalisé définissant les paramètres de vos compartiments S3 pour votre application.