aws storage optionsd36cz9buwru1tt.cloudfront.net/fr/aws_storage_options... · 2012-05-24 · amazon...

25
Amazon Web Services – Options de stockage AWS Décembre 2010 Options de stockage dans le nuage AWS Joseph Baron, Amazon Web Services Robert Schneider, Think88 Décembre 2010

Upload: others

Post on 07-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Options de stockage dans le nuage AWS

Joseph Baron, Amazon Web Services Robert Schneider, Think88

Décembre 2010

Page 2: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 2 sur 25

Introduction

Souple, économique et simple d'utilisation, Amazon Web Services (AWS) est une plate-forme d'informatique en nuage qui comprend diverses options de stockage de données en nuage. Les architectes et développeurs disposent ainsi d'un large éventail d'options.

Ce livre blanc vous aide à identifier les options de stockage de données primaires disponibles avec la plate-forme AWS d'informatique en nuage. Chaque option de stockage est présentée, avec des cas d'utilisation idéaux. D'autres grandes caractéristiques propres au nuage (par ex. l'élasticité et l'évolutivité) sont également étudiées. Une attention particulière est portée à l'identification du niveau de durabilité fourni par chaque option de stockage. A la fin de ce livre blanc, un tableau de synthèse compare les options de stockage présentées. Pour consulter d'autres ressources, reportez-vous à la section Références et lectures complémentaires.

Enfin, un document complémentaire présente plusieurs cas d'utilisation de stockage illustrant l'utilisation simultanée de plusieurs options de stockage dans un nuage AWS. Ces cas d'utilisation pourront vous guider lors de la conception de votre architecture de stockage.

Solutions de stockage traditionnelles et en nuage

Un vaste choix d'options de stockage de données s'offre aux architectes d'applications et d'infrastructures informatiques traditionnelles sur site, avec notamment les solutions suivantes :

Mémoire : Le stockage en mémoire (caches de fichiers, caches d'objets, bases de données en mémoire et disques virtuels) permettent un accès très rapide aux données.

File d'attente des messages : Stockage temporaire durable pour les données envoyées de façon asynchrone entre des systèmes informatiques ou des composants applicatifs.

Réseau SAN (Storage Area Network) : Les périphériques de traitement par blocs (numéros d'unité logique de disque virtuel) sur des réseaux SAN dédiés fournissent souvent le plus haut niveau de performance et de durabilité des disques, tant pour les données de fichier stratégiques que pour le stockage de bases de données. Toutefois, ce système est certainement l'un des plus onéreux.

Stockage DAS (Direct Attached Storage) : Les disques durs locaux ou groupes résidant sur chaque serveur offrent des performances supérieures à un réseau SAN, mais une durabilité inférieure pour les fichiers temporaires et persistants, le stockage de base de données et le stockage de démarrage de système d'exploitation.

Serveur NAS (Network Attached Storage) : Le serveur NAS fournit une interface au niveau du fichier pour un stockage pouvant être partagé sur plusieurs systèmes. Le serveur NAS est en général plus lent que le réseau SAN ou le stockage DAS.

Bases de données : Les données structurées sont généralement tenues à jour et accessibles par le biais d'une base de données relationnelle comme MySQL, PostgreSQL, Oracle, Microsoft SQL Server et DB2, ou bien dans des référentiels de bases de données non relationnelles. Les volumes de stockage des bases de données résident généralement sur des périphériques SAN ou DAS.

Page 3: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 3 sur 25

Hors connexion : Les données stockées à des fins de sauvegarde et d'archivage sont généralement placées sur des supports autres qu'un disque (bandes magnétiques, CD, DVD, etc.) qui sont souvent stockés à des emplacements sécurisés distants pour la reprise sur sinistre.

Ces solutions de stockage traditionnelles présentent chacune des caractéristiques différentes en matière de performances, de durabilité, d'interface et de coût. Les architectes prennent en compte l'ensemble de ces éléments pour identifier la solution de stockage la plus adaptée à leurs besoins. Plus précisément, les infrastructures informatiques et les architectures d'application emploient en grande partie plusieurs technologies de stockage conjointement, chacune d'entre elles ayant été sélectionnée pour répondre aux besoins d'une sous-classe particulière de stockage de données. Ces associations composent une hiérarchie de niveaux de stockage de données.

Comme le souligne ce document, AWS propose plusieurs options de stockage basées sur le nuage. Chacune d'entre elles associe de façon unique performances, durabilité, coût et interface, tout en étant dotée d'éléments supplémentaires comme l'élasticité, la disponibilité et l'évolutivité, lesquels sont essentiels pour des solutions basées sur le nuage et déployées sur Internet. Tout comme avec des applications locales traditionnelles, vous pouvez utiliser plusieurs options de stockage en nuage afin de composer une hiérarchie complète de stockage de données.

Le présent document détaille les options AWS suivantes de stockage en nuage :

Volumes Amazon EC2 Elastic Block Store (EBS)

Volumes (éphémères) de stockage d'instance local Amazon EC2

Amazon Simple Storage Service (Amazon S3)

Amazon Simple Queue Service (SQS)

Amazon SimpleDB

Bases de données relationnelles Amazon EC2

Amazon Relational Database Service (RDS)

Examinons de manière plus détaillée chacune des options de stockage AWS. Les informations suivantes sont indiquées pour chaque solution :

Nom et description

Scénario d'utilisation idéal

Performances

Durabilité et disponibilité

Coût

Elasticité et évolutivité

Page 4: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Interfaces

Antipatterns, situations dans lesquelles d'autres options de stockage représenteraient un meilleur choix

Pour prendre connaissance d'autres catégories de comparaison dans la gamme d'options de stockage AWS, veuillez consulter le Tableau récapitulatif des caractéristiques de stockage AWS (page 36).

Volumes Amazon Elastic Block Store (EBS)

Les volumes Amazon Elastic Block Store (EBS) offrent un stockage durable de niveau bloc, utilisable avec les instances Amazon EC2 (ordinateurs virtuels). Les volumes Amazon EBS représentent un stockage hors instance associé à un réseau qui persiste indépendamment du fonctionnement d'une instance Amazon EC2. Après avoir associé un volume EBS à une instance Amazon EC2, vous êtes libre d'interagir avec ce volume tout comme avec un disque dur physique, généralement en le formatant avec le système de fichiers de votre choix. Vous pouvez utiliser un volume EBS pour démarrer une instance Amazon EC2 (AMI EBS uniquement) et associer plusieurs volumes à une seule instance Amazon EC2. Remarquez, toutefois, qu'un volume EBS donné ne peut être associé qu'à une seule instance Amazon EC2 à un moment donné. Il n'est pas possible de partager un volume EBS avec d'autres utilisateurs, sauf si vous créez un instantané EBS (voir la section « Durabilité et disponibilité »). La taille des volumes EBS varie de 1 Go à 1 To ; elle peut être modifiée par incréments de 1 Go.

Scénario d'utilisation idéal

Amazon EBS convient pour les données qui changent relativement souvent et qui exigent une persistance à long terme. EBS fournit un stockage sous forme de bloc virtuel persistant pour les serveurs virtuels Amazon EC2 ; vous pouvez donc vous en servir comme un disque dur sur un serveur physique. Amazon EBS peut tout à fait être utilisé en tant que stockage primaire d'un système de fichiers, d'une base de données ou de toute autre application nécessitant des mises à jour détaillées et un accès à un stockage sous forme de bloc brut et non formaté.

Performances

Les volumes EBS présentent, en général, des performances, un intervalle moyen avant défaillance (IMAD) et une fiabilité comparables à un disque dur externe sur port USB. Notez que si les volumes EBS s'affichent sous la forme de disques durs locaux, ils sont en réalité associés par le réseau à une instance Amazon EC2. Par conséquent, les autres E/S du réseau qui sont exécutées par l'instance, ainsi que la charge totale sur le réseau partagé, peuvent affecter les performances de chaque volume EBS.

Bien que chaque application (et les performances qui y sont associées) soit unique, vous avez la possibilité de concevoir et de déployer un grand nombre de techniques d'optimisation de la capacité de traitement des disques traditionnels grâce aux volumes EBS. Associer Amazon EC2 et EBS vous permet d'utiliser plusieurs des techniques d'optimisation des performances que vous employez avec des serveurs et un stockage en local. Par exemple, vous pouvez créer plusieurs volumes et tous les associer à une seule instance Amazon EC2. Si plusieurs volumes EBS sont associés, vous pouvez partitionner la charge E/S totale de l'application en allouant un volume aux données de journalisation, un volume à la base de données et un autre volume aux données des fichiers. Vous pouvez aussi répartir vos données sur plusieurs volumes EBS à l'aide d'un pilote de périphérique RAID 0 logiciel, regroupant ainsi les paquets entrée/sortie disponibles, la capacité de traitement totale et la taille du volume.

Page 5: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 5 sur 25

Durabilité et disponibilité

Chaque volume Amazon EBS est répliqué automatiquement au sein de la même zone de disponibilité pour éviter toute perte de données suite à une défaillance d'un composant matériel. Amazon EBS permet également de créer des instantanés des volumes à un moment donné, qui sont persistants sur Amazon S3 (voir ci-après). Ces instantanés peuvent être utilisés en tant que point de départ de nouveaux volumes Amazon EBS et pour protéger les données afin de garantir une durabilité à long terme.

La durabilité de votre volume EBS dépend à la fois de sa taille et de la quantité de données qui ont été modifiées depuis votre dernier instantané. Les instantanés EBS sont des sauvegardes incrémentielles et ponctuelles qui contiennent uniquement les blocs de données modifiés depuis le dernier instantané. Sur les volumes EBS qui fonctionnent avec, au maximum, 20 Go de données modifiées depuis leur dernier instantané, il convient de prévoir un taux de défaillance annuel moyen compris entre 0,1 % et 0,5 %. Pour optimiser la durabilité et la disponibilité des données stockées sur les volumes EBS, il est recommandé aux utilisateurs de prendre régulièrement des instantanés de leurs volumes EBS. En cas de panne de votre volume Amazon EBS, tous les instantanés de ce volume restent intacts, ce qui vous permet de recréer le volume à partir du dernier point d'instantané.

Les volumes Amazon EBS sont conçus pour être hautement disponibles. Toutefois, ces volumes étant créés dans une zone de disponibilité particulière, ils seront indisponibles si celle-ci se trouve elle-même indisponible. Notez que si chaque volume EBS est limité à une seule zone de disponibilité, un instantané EBS d'un volume est disponible dans l'ensemble des zones de disponibilité d'une région. Il est donc possible d'utiliser un instantané EBS pour créer un ou plusieurs volumes EBS dans une zone de disponibilité. Il est également possible de partager les instantanés EBS avec d'autres comptes utilisateur. Cette mesure fournit un mécanisme de sauvegarde (« clone du disque » et « image du disque ») et de partage très simple d'utilisation.

Pour maximiser la durabilité et la disponibilité de leurs données EBS, il est recommandé aux utilisateurs de prendre régulièrement des instantanés de leurs volumes EBS.

Coût

A l'instar d'Amazon Web Services, Amazon Elastic Block Store vous permet de ne payer qu'en fonction de votre utilisation, sans frais minimum ni engagement à long terme. Amazon EBS est facturé par Go-mois de stockage prévu et par million de requêtes d'E/S. Le stockage d'un volume est facturé selon la quantité que vous allouez jusqu'à sa distribution. Les instantanés Amazon EBS sont facturés par Go-mois de données stockées, ainsi que par lot de 1 000 requêtes PUT et de 10 000 requêtes GET lors de l'enregistrement et du chargement d'instantanés. Concernant les instantanés EBS, vous n'êtes facturé qu'en fonction du stockage réellement utilisé (consommé). Notez que les instantanés EBS sont incrémentiels et compressés. Le stockage utilisé dans un instantané est donc généralement très inférieur au stockage consommé sur un volume EBS. Toutes les informations de facturation sont disponibles à la page http://aws.amazon.com/ec2/pricing/.

Notez qu'aucuns frais ne sont facturés pour le transfert d'informations entre les différentes offres de stockage AWS (c'est-à-dire l'instance Amazon EC2 avec EBS, Amazon S3, Amazon RDS, etc.) tant qu'elles appartiennent à la même région AWS.

Elasticité et évolutivité

AWS facilite le développement de votre espace de stockage disponible vers votre instance Amazon EC2. Vous pouvez créer un volume EBS et l'associer à l'instance, puis commencer à l'utiliser conjointement avec les volumes actuels. Si vous ne souhaitez pas créer ou mettre à jour de nouveaux volumes, voici la procédure à suivre pour développer la taille d'un seul volume :

Page 6: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 6 sur 25

1. Suspendez l'application ou le système de fichiers.

2. Prenez un instantané des données de votre volume EBS dans Amazon S3 (voir « Create Snapshot from Volume »).

3. Créez un autre volume EBS à partir de l'instantané, mais spécifiez une taille supérieure à la taille du volume d'origine.

4. Associez ce nouveau volume, d'une capacité supérieure, à votre instance Amazon EC2.

5. Dissociez et supprimez le volume EBS d'origine.

Interfaces

Pour créer, supprimer, décrire, associer et dissocier des volumes EBS pour vos instances Amazon EC2, Amazon propose des API de contrôle aux formats SOAP et REST. Vous pouvez utiliser les API pour créer, supprimer et décrire des instantanés d'EBS vers Amazon S3, ainsi que les attributs qui leur sont associés. Si vous préférez utiliser des outils graphiques, AWS Management Console et l'extension Firefox ElasticFox vous apportent toutes les capacités de l'API au sein d'une interface de navigateur simple d'utilisation. Quel que soit le mode de création de votre volume EBS, le stockage est attribué au moment de sa création ; ce stockage vous est facturé même si vous ne l'utilisez pas.

EBS présente une interface de périphérique de traitement par blocs vers l'instance Amazon EC2. Autrement dit, sur cette dernière, un volume EBS prend l'apparence d'un disque dur local. Pour écrire des données sur des volumes EBS et pour les lire, vous utilisez donc les interfaces des systèmes de fichiers natifs du système d'exploitation de votre choix.

Antipatterns Amazon EBS

Comme décrit précédemment, EBS est parfaitement adapté aux informations qui doivent être maintenues au-delà de la durée de vie d'une seule instance Amazon EC2. Toutefois, dans certaines situations, d'autres options de stockage AWS conviendraient davantage :

Stockage temporaire : Si vous n'êtes pas préoccupé par le fait que vos données restent accessibles après l'arrêt de votre instance Amazon EC2 (fichiers et disques temporaires, mémoire tampon, etc.), vous pouvez tirer parti du volume de stockage fourni automatiquement avec la plupart des instances Amazon EC2. Ces volumes éphémères sont fournis sans frais supplémentaires au-delà du coût standard de l'instance Amazon EC2. Pour plus d'informations, voir la section suivante.

Stockage longue durée : Si vous avez besoin d'un stockage très durable, utilisez Amazon S3. Le stockage standard d'Amazon S3 est conçu pour une durabilité annuelle par objet de 99,999999999 %. En revanche, les volumes EBS contenant moins de 20 Go de données modifiées depuis le dernier instantané sont conçus pour une durabilité annuelle comprise entre 99,5 % et 99,9 % ; les volumes contenant davantage de données modifiées peuvent compter sur une durabilité qui sera proportionnellement inférieure.

Données ou contenu Web statiques : Si vos données ne changent pas aussi régulièrement, Amazon S3 peut représenter une solution plus économique et plus évolutive pour le stockage de ces informations fixes. Par ailleurs, le contenu Web distribué depuis EBS nécessite un serveur Web sous Amazon EC2, tandis que vous pouvez diffuser directement du contenu Web depuis Amazon S3.

Page 7: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Informations sur les paires clé-valeur : Comme expliqué dans la section « Amazon SimpleDB » (page 14), Amazon SimpleDB constitue une solution évolutive et flexible pour le stockage de données « sans schéma ». Si vous tentez d'utiliser la technologie relationnelle (comprenant des volumes EBS associés) pour mettre à jour des informations sur les paires clé-valeur, il est conseillé d'envisager la solution SimpleDB comme alternative.

Volumes de stockage d'instance local Amazon Elastic Compute Cloud (EC2)

Les volumes de stockage d'instance local Amazon EC2 (également appelés lecteurs éphémères) fournissent un stockage temporaire sous forme de bloc pour les instances Amazon EC2. Lorsque vous créez une instance Amazon EC2 à partir d'une image machine Amazon (AMI), elle se présente très souvent avec un bloc préconfiguré de stockage de disque préassocié.1 Contrairement aux volumes EBS, les données situées sur les volumes de stockage d'instance ne sont maintenues que pendant la durée de vie de l'instance Amazon EC2 associée. La capacité de stockage de ce disque va de 160 Go à 1,7 To et diffère selon le type d'instance Amazon EC2. Les instances Amazon EC2 plus volumineuses disposent de volumes de stockage d'instance plus nombreux et plus larges. Cependant, même si ces capacités de stockage semblent bien généreuses et s'avèrent souvent utiles, il s'agit d'un stockage temporaire et il est préférable de s'en servir comme d'un volume ou d'un disque virtuel temporaire.

Scénario d'utilisation idéal

Les volumes de stockage d'instance local représentent la solution idéale pour le stockage temporaire d'informations qui évoluent en continu (mémoires-tampons, caches, données temporaires et autres contenus temporaires) ou pour le stockage de données répliquées sur une flotte d'instances (ex. : pool de serveurs Web à charge équilibrée). Le stockage d'instance Amazon EC2 est destiné à répondre à ce besoin. Il se compose du périphérique de démarrage de l'ordinateur virtuel (pour les AMI de stockage d'instance uniquement) ainsi que d'un ou plusieurs volumes supplémentaires dédiés à l'instance Amazon EC2 (pour les AMI EBS et les AMI de stockage d'instance). Ce stockage ne peut être utilisé qu'à partir d'une seule instance Amazon EC2 au cours de sa durée de vie. Contrairement aux volumes EBS, les volumes de stockage d'instance ne peuvent pas être dissociés ni associés à une autre instance.

Performances

L'ordinateur virtuel d'instance Amazon EC2 et les volumes de stockage d'instance local étant situés sur le même serveur physique, l'interaction avec ce stockage est très rapide, notamment pour l'accès séquentiel. Pour augmenter les opérations d'E/S par seconde ou pour améliorer la capacité du disque, il est possible de regrouper plusieurs volumes de stockage d'instance à l'aide du logiciel RAID 0 (répartition sur disques).

1 Les types d'instance Amazon EC2 fournissent, en majorité, des volumes de stockage d'instance local ; cependant, des micro-instances, comme le type t1.micro, fournissent un stockage EBS uniquement. De plus, par défaut, les instances qui utilisent Amazon EBS pour le périphérique racine (démarrage à partir d'EBS) n'exposent pas les volumes de stockage d'instance éphémères. Si vous le souhaitez, vous pouvez exposer les volumes de stockage d'instance au moment du lancement en spécifiant un mappage de périphérique de traitement par blocs. Pour plus d'informations, consultez le manuel Amazon EC2 User Guide.

Page 8: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 8 sur 25

Durabilité et disponibilité

Les volumes de stockage d'instance local Amazon EC2 ne sont pas destinés à être utilisés comme stockage sur disque durable. Les données stockées sur les volumes de stockage d'instance local persistent uniquement pour la durée de vie de l'instance Amazon EC2. Les données se trouvant sur les volumes de stockage d'instance local Amazon EC2 perdurent lors des redémarrages d'instance ordonnés, mais pas dans des situations où l'instance Amazon EC2 est interrompue ou traverse un cycle panne/redémarrage.

Il est déconseillé d'utiliser des volumes de stockage d'instance local pour des données qui doivent persister au fil du temps, comme un stockage sur base de données ou sur fichier permanent. Toutefois, bien que les volumes de stockage d'instance local ne soient pas persistants, vous pouvez conserver vos données en les copiant ou en les sauvegardant régulièrement dans EBS ou Amazon S3.

Coût

Le coût de l'instance Amazon EC2 comprend l'ensemble des volumes (éphémères) de stockage d'instance local. Bien que le stockage de données sur des volumes de stockage d'instance local n'entraîne pas de frais, il convient de noter que l'échange de données entre des volumes de stockage d'instance Amazon EC2 à partir de l'extérieur d'une région Amazon EC2 s'accompagne de frais de transfert de données. D'autres frais s'appliquent pour l'utilisation d'un stockage persistant, comme Amazon S3, les volumes EBS et les instantanés EBS. Vous pouvez également consulter des informations détaillées sur les tarifs d'Amazon EC2, d'EBS et du transfert de données sur Internet à l'adresse http://aws.amazon.com/ec2/pricing/.

Elasticité et évolutivité

Les volumes de stockage d'instance local sont limités par une taille fixe pour un type d'instance Amazon EC2 donné et sont liés à une instance précise. Ce type de stockage est donc relativement peu élastique. Néanmoins, vous pouvez obtenir une élasticité de stockage complète en incluant une autre option de stockage adéquate comme Amazon S3 ou Elastic Block Store (EBS) à votre stratégie de stockage Amazon EC2.

Interfaces

L'instance Amazon EC2 interprète les volumes de stockage d'instance local comme s'il s'agissait de lecteurs de disques locaux. Autrement dit, vous pouvez interagir avec des données hébergées sur votre stockage d'instance local à l'aide des mécanismes d'un système de fichiers natif, comme Windows NTFS ou Linux XFS. Notez que dans certains cas, un périphérique de volume de stockage d'instance local est associé, au démarrage, à l'instance Amazon EC2, mais il doit être formaté avec un système de fichiers approprié et monté avant utilisation.

Antipatterns des volumes de stockage d'instance local Amazon EC2

Les volumes de stockage d'instance local Amazon EC2 sont des volumes temporaires rapides et gratuits (c'est-à-dire inclus dans le prix de l'instance Amazon EC2) parfaitement adaptés au stockage de données temporaires pouvant être aisément régénérées. Toutefois, dans de nombreuses situations, d'autres options de stockage AWS peuvent s'avérer plus appropriées :

Stockage persistant : Si vous avez besoin d'un stockage sur disque virtuel persistant similaire à un lecteur de disque physique destiné à des fichiers ou à des données devant persister au-delà de la durée de vie d'une seule instance Amazon EC2, les volumes EBS ou Amazon S3 s'avèrent plus appropriés.

Page 9: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 9 sur 25

Stockage sur base de données : Dans la plupart des cas, les bases de données exigent un stockage qui persiste au-delà de la durée de vie d'une seule instance Amazon EC2, faisant des volumes EBS le choix naturel.

Stockage partagé : Les volumes de stockage d'instance sont dédiés à une seule instance Amazon EC2 et ne peuvent pas être partagés avec d'autres systèmes ou utilisateurs. Si vous avez besoin d'un stockage pouvant être dissocié d'une instance et associé à une autre, ou si vous souhaitez partager des données facilement, il convient de choisir des volumes EBS ou Amazon S3.

Instantanés : Si vous avez besoin de la commodité, de la durabilité à long terme, de la disponibilité et la capacité de partage des instantanés de disque à un moment donné, les volumes EBS constituent un choix approprié.

Amazon Simple Storage Service (Amazon S3)

Pourvue d'une interface de service Web simple d'utilisation, Amazon S3 est une solution de stockage d'objets distribués hautement évolutive, durable et disponible pour le stockage de données primaires critiques. Dans des applications locales traditionnelles, ce type de données serait normalement maintenu sur un réseau SAN ou un serveur NAS. Toutefois, un mécanisme basé sur le nuage comme Amazon S3 se révèle beaucoup plus souple et avec une meilleure redondance géographique. Amazon S3 fournit une interface de services Web simple permettant de stocker et de récupérer n'importe quelle quantité de données, à tout moment, à partir d'Amazon EC2 ou de n'importe quel site Web. Vous pouvez écrire, lire et supprimer des objets contenant chacun entre 1 octet et 5 téraoctets de données ; de plus, un compartiment Amazon S3 permet de stocker un nombre d'objets illimité. Amazon S3 est aussi hautement évolutif : il autorise un accès simultané à ses données en lecture ou en écriture à de nombreux clients ou threads d'application.

Scénario d'utilisation idéal

Le stockage de contenu Web statique est une utilisation très courante d'Amazon S3. Ce contenu peut être diffusé directement à partir d'Amazon S3 via un serveur Web, puisque dans Amazon S3, chaque objet est associé à une adresse URL HTTP unique, ou distribué par le biais d'un réseau CDN (Content Delivery Network) comme Amazon CloudFront. Du fait de son élasticité, Amazon S3 est particulièrement adapté à l'hébergement de contenu Web exigeant une bande passante extrêmement élevée. De plus, étant donné qu'il n'inclut pas le dimensionnement du stockage, Amazon S3 convient bien aux sites Web à évolution rapide qui hébergent un contenu riche en données généré par l'utilisateur comme le partage de vidéos et de photos.

Amazon S3 est aussi souvent utilisé comme magasin de données pour les calculs à grande échelle comme l'analyse de transactions financières ou le transcodage de médias et de données de parcours. Grâce à son évolutivité horizontale, Amazon S3 vous permet d'accéder simultanément à vos données à partir de plusieurs nœuds de calcul sans être limité à une seule connexion.

Enfin, Amazon S3 est très souvent utilisé dans les formes suivantes : stockage d'origine des données stratégiques, stockage haute fiabilité d'instantanés pour les volumes Amazon EBS, applications de stockage de sauvegarde et solutions de reprise sur sinistre « à chaud » pour permettre la continuité de l'activité. En stockant des objets de manière redondante sur plusieurs périphériques dans plusieurs sites, Amazon S3 fournit l'infrastructure de stockage hautement durable indispensable à ces scénarios.

Page 10: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 10 sur 25

Performances

Au sein d'une même région, l'accès à Amazon S3 à partir de la solution Amazon Elastic Compute Cloud (Amazon EC2) est rapide. Si vous accédez à Amazon S3 à partir de plusieurs threads, applications ou clients en simultané, la capacité de traitement totale d'Amazon S3 passera normalement à des débits hautement supérieurs à celui d'un serveur unique.

Pour accélérer l'accès aux données pertinentes, de nombreux développeurs associent Amazon S3 à Amazon SimpleDB. Amazon S3 stocke les informations réelles et SimpleDB sert de référentiel pour les métadonnées qui y sont associées (par ex. le nom des objets, taille, mots-clés, etc.). SimpleDB fournit une indexation automatique, rendant très efficace la localisation d'une référence d'objet via une recherche de métadonnées. Ce résultat peut ensuite servir à repérer et à récupérer l'objet lui-même à partir d'Amazon S3.

Durabilité et disponibilité

En stockant de façon automatique et synchrone vos données sur plusieurs périphériques et sites au sein de la région de votre choix, le stockage Amazon S3 fournit le plus haut niveau en matière de durabilité et de disponibilité des données sur la plate-forme AWS. La correction d'erreurs est intégrée et aucun point de défaillance n'a été détecté. Conçu pour supporter la perte simultanée de données sur deux sites, Amazon S3 est très adapté pour servir de stockage de données primaires pour les données essentielles à vos activités. Amazon S3 a été conçu pour une durabilité de 99,999999999 % (« 11 neuf ») par objet et une disponibilité de 99,9 % sur une période d'un an. Outre leur redondance intégrée, les données Amazon S3 peuvent également être protégées des défaillances des applications et de suppressions accidentelles grâce à l'utilisation du contrôle de version Amazon S3. Vous pouvez aussi activer le contrôle de version Amazon S3 avec la fonction MFA Delete. Si cette option est activée sur un compartiment, deux formes d'authentification sont requises pour supprimer la version d'un objet Amazon S3 : des informations d'identification de compte AWS valides et un code à six chiffres (un mot de passe en temps réel à utilisation unique) provenant d'un dispositif de jeton physique.

Pour les données non critiques facilement reproductibles en cas de besoin (médias transcodés ou miniatures, par exemple), vous pouvez utiliser l'option RRS (Reduced Redundancy Storage) d'Amazon S3, qui offre un niveau de durabilité inférieur pour un coût de stockage moindre. Les objets stockés à l'aide de l'option RSS présentent une redondance moindre par rapport aux objets bénéficiant du stockage Amazon S3 standard. Dans les deux cas, vos données sont toujours stockées sur plusieurs périphériques à plusieurs emplacements. Le stockage RRS est conçu pour fournir une durabilité de 99,99 % par objet sur une année donnée. Bien que le RRS soit moins durable que le stockage Amazon S3 standard, il reste 400 fois plus durable qu'un disque dur ordinaire.

Coût

A l'instar d'Amazon Web Services, Amazon S3 vous permet de ne payer qu'en fonction de votre utilisation, sans frais minimum ni engagement à long terme. La tarification d'Amazon S3 prend en compte trois éléments : le stockage (par Go par mois), le transfert de données en envoi et en réception (par Go par mois) et les demandes (par lots de n milliers de demandes par mois). Pour les nouveaux clients, AWS fournit un niveau d'utilisation gratuit qui inclut un maximum de 5 Go de stockage Amazon S3. Les informations de tarification complètes relatives à Amazon S3 sont disponibles à la page http://aws.amazon.com/s3/pricing/.

Page 11: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 11 sur 25

Elasticité et évolutivité

Amazon S3 a été conçu pour offrir automatiquement un très haut niveau d'élasticité et d'évolutivité. Contrairement à un système de fichiers ordinaire qui rencontre des problèmes lors du stockage d'un grand nombre de fichiers dans un répertoire, Amazon S3 prend en charge un nombre illimité de fichiers dans n'importe quel compartiment. De plus, à la différence d'un disque dur sur lequel la quantité totale de données pouvant être stockée est limitée avant de devoir partitionner les données sur plusieurs disques ou serveurs, un compartiment Amazon S3 peut stocker un nombre d'octets illimité. Vous pouvez stocker n'importe quelle quantité d'objets, Amazon S3 gère la mise à l'échelle et la distribution des copies redondantes de vos informations sur d'autres serveurs, à d'autres emplacements de la même région, à condition qu'ils utilisent tous l'infrastructure hautes performances d'Amazon.

Interfaces

Amazon S3 offre des API de services Web SOAP et RESTful. Ces API autorisent le stockage des objets (fichiers) Amazon S3 dans des compartiments à nom unique (dossiers de niveau supérieur). Chaque objet doit avoir une clé d'objet unique (nom de fichier) qui sert d'identifiant pour l'objet au sein de ce compartiment. Bien qu'Amazon S3 soit plus une solution de stockage d'objets Web qu'un système de fichiers traditionnel, vous pouvez facilement émuler une hiérarchie de système de fichiers (dossier1/dossier2/fichier) dans Amazon S3 en créant des noms de clé d'objet correspondant au nom du chemin d'accès complet de chaque fichier.

La plupart des développeurs qui conçoivent des applications sur Amazon S3 utilisent des outils d'un niveau supérieur. AWS et des tiers ont créé des outils et des bibliothèques, destinés à l'interface Amazon S3, pour plusieurs langages et plates-formes de développement de logiciels courants, notamment :

Java, à l'aide du kit de développement logiciel (SDK) AWS pour Java (http://aws.amazon.com/sdkforjava/) et d'AWS Toolkit pour Eclipse (http://aws.amazon.com/eclipse/).

C#, à l'aide du kit de développement logiciel (SDK) AWS pour .NET (http://aws.amazon.com/sdkfornet/) et de modèles Visual Studio.

PHP, à l'aide de l'installation de base de PHP5 ou du kit de développement logiciel (SDK) AWS pour PHP (http://aws.amazon.com/sdkforphp/).

Perl, à l'aide des modules Digest::SHA1, Bundle::LWP et XML::Simple, téléchargeables sur Comprehensive Perl Archive Network à l'adresse http://www.cpan.org.

Bien qu'Amazon S3 soit conçu pour être principalement accessible via des API, AWS Management Console et des outils tiers mettent également à disposition des interfaces graphiques et de ligne de commande pour l'interaction entre vos compartiments et vos objets Amazon S3. Amazon S3 prend aussi en charge le protocole BitTorrent, qui permet aux clients de récupérer simultanément des informations à partir de S3 et d'autres fournisseurs.

Pour envoyer ou télécharger d'importants volumes de données, vous pouvez aussi utiliser le service AWS Import/Export (http://aws.amazon.com/importexport/). AWS Import/Export accélère le déplacement de grandes quantités de données à l'intérieur et à l'extérieur d'AWS à l'aide de périphériques de stockage portables. Amazon monte votre périphérique et copie les données à partir d'un compartiment Amazon S3 donné ou vers celui-ci. Cette méthode est souvent plus rapide et plus économique qu'un transfert de quantités volumineuses de données sur Internet.

Page 12: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 12 sur 25

Remarque : RRS utilise les mêmes interfaces que la version standard d'Amazon S3 ; l'option RRS est spécifiée pour un objet ou un compartiment Amazon S3 en paramétrant la propriété Classe de stockage au cours d'une opération PUT ou en sélectionnant le paramètre « Use Reduced Redundancy Storage » dans AWS Management Console.

Antipatterns Amazon S3

Amazon S3 convient parfaitement au stockage de nombreuses classes d'informations relativement statiques qui profitent de ses fonctionnalités en matière de durabilité, de disponibilité et d'élasticité. Cependant, il existe certaines situations pour lesquelles il ne s'agit pas d'une solution optimale :

Système de fichiers : Amazon S3 utilise un espace noms plat et n'est pas destiné à servir de système de fichiers POSIX autonome. Cependant, en utilisant des délimiteurs (généralement le signe « / » ou « \ »), vous pouvez créer des clés permettant d'émuler la structure de dossiers hiérarchique d'un système de fichiers au sein d'un compartiment donné.

Données structurées avec requête : Amazon S3 n'offre pas de fonctionnalité de requête : pour récupérer un objet spécifique, vous devez déjà connaître le nom et la clé du compartiment. C'est pourquoi vous ne pouvez pas utiliser Amazon S3 comme base de données en tant que telle. Un modèle d'utilisation courant consiste à placer un objet dans Amazon S3, puis de conserver ses métadonnées à l'aide d'Amazon SimpleDB. Vous pouvez aussi utiliser d'autres technologies de base de données comme Amazon RDS ou une base de données s'exécutant sur une instance Amazon EC2. Vous pouvez ensuite effectuer une recherche dans la base de données pour localiser le nom et la clé du compartiment de l'objet, puis récupérer l'objet à partir du compartiment Amazon S3.

Donnéesà évolution rapide : Les données devant être mises à jour très souvent sont traitées par une solution de stockage à latences en lecture/écriture plus faibles, comme EBS ou une base de données.

Amazon Simple Queue Service

Amazon Simple Queue Service (Amazon SQS) fournit un service fiable et hautement évolutif de mise en file d'attente des messages pour un stockage temporaire et la remise de messages courts (64 Ko max.) contenant des données textuelles. Une file d'attente Amazon SQS est un référentiel de données temporaires pour les messages en attente de traitement (généralement, un message produit par un composant d'application et en attente d'utilisation par un autre). Les messages Amazon SQS peuvent être envoyés et reçus par des serveurs ou des composants d'application distribués au sein de l'environnement Amazon EC2 ou sur Internet. Amazon SQS prend en charge un nombre illimité de files d'attente ainsi que la remise, au moins une fois, de messages non triés.

Bien qu'Amazon SQS et les autres services de mise en file d'attente de messages soient généralement considérés comme des protocoles de communication asynchrones, Amazon SQS peut aussi être pensé comme un magasin fournissant un stockage de données temporaire mais durable pour de nombreuses catégories d'applications. L'utilisation d'Amazon SQS comme stockage temporaire peut réduire l'utilisation d'autres mécanismes de stockage, comme les fichiers disques temporaires.

Scénario d'utilisation idéal

Amazon SQS convient parfaitement aux scénarios dans lesquels plusieurs composants applicatifs doivent communiquer et coordonner leur fonctionnement de façon espacée. Ce type de situation se produit notamment dans des scénarios producteur-consommateur où certains composants peuvent fonctionner plus rapidement ou plus lentement que d'autres ou dans lesquels le nombre de composants en interaction évolue en fonction du temps ou de la charge.

Page 13: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 13 sur 25

Amazon SQS peut servir de « colle logicielle » qui permet aux composants de communiquer de façon fiable sans être étroitement couplés ni hautement dépendants d'un fonctionnement synchrone ou d'un nombre fixe de composants.

Une utilisation classique d'Amazon SQS consiste à coordonner un pipeline de traitement à plusieurs étapes, où chaque message est associé à une tâche à traiter. Chaque tâche est décrite par un message Amazon SQS indiquant la tâche à accomplir et un pointeur vers les données de la tâche dans Amazon S3.

Pour illustrer cette situation, imaginez que vous devez coder un certain nombre de fichiers image. Dans une file d'attente de travail SNS, vous créez un message SNS pour chaque fichier en spécifiant la commande (jpeg-encode) et l'emplacement du fichier dans Amazon S3. Un pool d'instances Amazon EC2 exécutant le logiciel de traitement d'images nécessaire effectue les actions suivantes :

1. Retrait asynchrone de la file d'attente des messages de la tâche

2. Récupération du fichier nommé

3. Traitement de la conversion

4. Réécriture de l'image vers Amazon S3

5. Ecriture et envoi d'un message de fin de tâche (« Task complete ») vers une autre file d'attente

6. Suppression du message de la tâche d'origine

7. Vérification de la présence d'autres messages dans la file d'attente de travail

L'utilisation de la file d'attente Amazon SQS permet de réduire ou d'augmenter le nombre d'instances de travail et la puissance de traitement de chacune d'entre elles en fonction de la charge de travail totale, sans apporter de modification aux applications.

Performances

Amazon SQS est un système de mise en file d'attente distribué, optimisé pour une évolutivité horizontale et non pour des vitesses d'envoi ou de réception monothread. Un seul client peut envoyer ou recevoir des messages Amazon SQS à un débit approximatif de 5 à 50 messages par seconde. Vous pouvez obtenir des performances plus élevées en demandant plusieurs messages (10 max.) en un seul appel. La disponibilité en réception d'un message placé dans la file d'attente peut prendre plusieurs secondes.

Durabilité et disponibilité

De par leur conception, les messages situés dans Amazon SQS sont très durables mais temporaires. Pour empêcher la perte ou l'indisponibilité des messages, tous sont stockés de façon redondante dans plusieurs serveurs et centres de données. La durée de rétention des messages peut être configurée par file d'attente. Elle peut s'étendre d'une heure à 14 jours. Les messages sont conservés dans une file d'attente jusqu'à leur suppression explicite ou automatique suite à l'expiration de la durée de rétention.

Page 14: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 14 sur 25

Coût

A l'instar d'Amazon Web Services, Amazon SQS vous permet de ne payer qu'en fonction de votre utilisation, sans frais minimum ni engagement à long terme. Pour commencer et dans le cadre de la prise en charge d'applications simples, Amazon SQS offre un niveau de service gratuit qui fournit 100 000 demandes par mois sans frais. Au-delà du niveau gratuit, la tarification d'Amazon SQS dépend du nombre de demandes (facturées par lot de 10 000) et de la quantité de données transférées en réception et en envoi (facturées par Go par mois). Les informations de tarification complètes relatives à Amazon SQS sont disponibles à la page http://aws.amazon.com/sqs/pricing/.

Elasticité et évolutivité

Amazon SQS est à la fois hautement flexible et évolutif. Il a été conçu pour permettre à un nombre illimité d'ordinateurs de lire et d'écrire un nombre illimité de messages à tout moment. Ce service prend en charge un nombre illimité de files d'attente et de messages par file d'attente pour n'importe quel utilisateur.

Interfaces

Amazon SQS est accessible via les interfaces SOAP et les interfaces de requête (HTTP). Cinq API facilitent la prise en main de SQS par les développeurs : CreateQueue, SendMessage, ReceiveMessage, ChangeMessageVisibility et DeleteMessage. D'autres API fournissent une fonctionnalité avancée. Dans tous les cas, les API SOAP et les API de requête peuvent être utilisées avec Java, C#, Perl et PHP.

Antipatterns Amazon SQS

Données binaires ou volumineuses : Les messages Amazon SQS doivent être textuels et leur longueur peut atteindre au maximum 64 Ko. Si les données à stocker dans une file d'attente dépassent cette longueur ou sont binaires, il est préférable d'utiliser Amazon S3 ou RDS pour les stocker ainsi que de stocker un pointeur vers les données dans Amazon SQS.

Stockage à long terme : Si les données des messages doivent être stockées pendant plus de 14 jours, Amazon S3 ou un autre mécanisme de stockage s'avère plus approprié.

Amazon SimpleDB

Amazon SimpleDB représente une nouvelle méthode de stockage et de gestion des données structurées dans le nuage. Elle diffère de la technique traditionnelle de déploiement de serveurs de bases de données relationnelles. SimpleDB est un stockage de données non relationnelles flexible, évolutif et hautement disponible qui décharge une grande partie du travail d'administration des bases de données et de la gestion des systèmes associés. Amazon SimpleDB vous offre un modèle de données « sans schéma » et vous permet de stocker des éléments de données compris dans un nombre flexible de paires nom/valeur.

Scénario d'utilisation idéal

Cette solution de stockage est particulièrement adaptée aux situations où des données affinées et structurées doivent persister avant de faire l'objet d'une requête (interactions orientées en lecture, principalement) avec une disponibilité et une durabilité élevées, mais dans lesquelles des frais généraux induits par l'administration d'une base de données relationnelle sont indésirables ou inutiles.

Page 15: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 15 sur 25

De nombreuses organisations utilisent SimpleDB dans le cadre d'une plus grande architecture de stockage en nuage. Un cas d'utilisation courant consiste à se servir de SimpleDB pour assurer le suivi des métadonnées concernant les informations stockées dans d'autres offres AWS. Par exemple, supposez que vous êtes en train de développer une solution en nuage qui stockera des millions d'images de plusieurs mégaoctets. Dans ce cas, vous pouvez utiliser Amazon Elastic Block Storage (EBS) ou Amazon Simple Storage Service (Amazon S3) pour conserver les images en tant que telles, où SimpleDB sert de référentiel d'informations pour chaque image. Vous pouvez ensuite adresser des requêtes à SimpleDB pour localiser une image en particulier, puis utiliser ces informations pour récupérer vos résultats à partir des autres offres de stockage d'Amazon.

Performances

En exploitant l'infrastructure éprouvée à haut débit d'Amazon, l'approche SimpleDB crée une base de données rapide, hautement disponible et très évolutive. Enfin, pour obtenir une capacité de traitement supérieure et une latence moindre, Amazon SimpleDB fournit, par défaut, des lectures stables. Pour les applications nécessitant une « lecture du dernier écrit », une lecture stable est également fournie.

Durabilité et disponibilité

SimpleDB offre une durabilité de données très haute par le biais d'une réplication entièrement automatique et géo-redondante. Plusieurs réplicas de chaque élément de données SimpleDB sont stockés à différents emplacements au sein de la région géographique sélectionnée.

Coût

A l'instar d'Amazon Web Services, Amazon SimpleDB vous permet de ne payer qu'en fonction de votre utilisation, sans frais initiaux ni engagement à long terme. Les coûts liés à l'utilisation de SimpleDB comprennent le stockage de données structurées (par Go-mois), le transfert de données (par Go-mois) et les heures machine (par mois) associées aux opérations PUT et GET. Au cours d'un même mois, le premier Go-mois d'un stockage de données structurées et les 25 premières heures machine sont gratuits (environ 2 millions de demandes d'API GET ou SELECT). Par l'utilisation de ce niveau gratuit, un grand nombre d'applications ne font jamais l'objet de frais SimpleDB.

Toutes les informations de tarification concernant Amazon SimpleDB sont disponibles à la page http://aws.amazon.com/simpledb/pricing/.

Elasticité et évolutivité

Lors de la création d'un domaine SimpleDB, AWS attribue un maximum de 10 Go de stockage par domaine. Comme vous ne payez qu'en fonction de votre utilisation en ressources de calcul et de stockage, vous pouvez tout aussi bien réduire ou agrandir votre déploiement. Les conditions requises pour le stockage et le déploiement sont gérées par Amazon SimpleDB, qui stocke vos données indexées automatiquement de manière redondante à différents emplacements au sein de la région que vous avez sélectionnée lors de la création de votre domaine SimpleDB. Les tâches d'administration de la base de données sont ainsi révolues, ce qui vous permet d'envoyer simplement des données PUT et GET. Pour permettre à l'évolutivité horizontale d'augmenter la capacité de traitement ou la taille des jeux de données au-delà des limites d'un seul domaine, il est possible de créer plusieurs domaines SimpleDB et d'exécuter plusieurs opérations en parallèle. Pour des jeux de données supérieurs à 10 Go, vous pouvez envisager un partitionnement de vos données sur plusieurs domaines SimpleDB.

Page 16: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 16 sur 25

Interfaces

Différentes techniques sont à votre disposition pour les interactions de programmation avec SimpleDB. Amazon fournit une API de service Web, disponible en type SOAP et RESTful. L'API offre actuellement neuf opérations, permettant la gestion de domaines (création, liste, suppression et obtention de métadonnées) et l'utilisation d'attributs (obtention, écriture - individuellement ou par lot - et suppression). Bien que le SQL standard ne soit pas disponible pour SimpleDB, vous utilisez peut-être l'opération SimpleDB Select pour créer des requêtes de type SQL qui récupèrent un ensemble d'attributs selon les critères indiqués.

Si vous préférez utiliser un kit de développement logiciel (SDK), des kits d'outils et des bibliothèques de plates-formes et de langages de développement logiciel courants sont disponibles, notamment :

Java, à l'aide du kit de développement logiciel (SDK) AWS pour Java (http://aws.amazon.com/sdkforjava/) et d'AWS Toolkit pour Eclipse (http://aws.amazon.com/eclipse/).

C#, à l'aide du kit de développement logiciel (SDK) AWS pour .NET (http://aws.amazon.com/sdkfornet/) et de modèles Visual Studio.

PHP, à l'aide de l'installation de base de PHP5 ou du kit de développement logiciel (SDK) AWS pour PHP (http://aws.amazon.com/sdkforphp/).

Perl, à l'aide des modules Digest::SHA1, Bundle::LWP et XML::Simple, téléchargeables sur Comprehensive Perl Archive Network à l'adresse http://www.cpan.org.

Antipatterns Amazon SimpleDB

Déterminer les scénarios d'utilisation inadaptés à SimpleDB est très simple. Si l'un des critères suivants s'applique, il est conseillé d'utiliser une autre solution de stockage AWS :

Application pré-écrite liée à une base de données relationnelle classique : Si vous tentez de porter une application existante dans le nuage AWS et que vous devez continuer d'utiliser une base de données relationnelle, vous avez la possibilité d'utiliser Amazon RDS (si vous disposez d'une base de données MySQL) ou l'une des nombreuses AMI de base de données Amazon EC2 préconfigurées. Vous pouvez également créer votre propre instance Amazon EC2 et y installer un moteur de base de données.

Jointures et/ou transactions complexes : Si de nombreuses solutions peuvent exploiter SimpleDB pour accompagner leurs utilisateurs, il est probable que votre application exige des jointures, des transactions complexes et une autre infrastructure relationnelle fournie par les plates-formes de bases de données traditionnelles. Si tel est le cas, vous pouvez étudier l'utilisation d'Amazon RDS ou Amazon EC2 avec une base de données installée.

Données BLOb (Binary Large Objects) : Si vous prévoyez de stocker des données binaires (par ex. des vidéos, des photos ou de la musique), pensez à Amazon Elastic Block Store (EBS) ou Amazon Simple Storage Service (Amazon S3). Toutefois, SimpleDB a encore un rôle à jouer dans ce scénario, en assurant le suivi des métadonnées (par ex. nom de l'élément, taille, date de création, propriétaire, emplacement, etc.) concernant vos objets binaires.

Page 17: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 17 sur 25

Données (numériques) saisies : SimpleDB stocke toutes les données sous forme de chaînes de texte. Si vous devez manipuler des données saisies ou des données numériques, RDS ou une base de données classique sur Amazon EC2 peut s'avérer une solution plus avantageuse.

Grandes quantités de données : Comme mentionné précédemment, SimpleDB offre un modèle de stockage et de tarification incontournable pour un grand nombre d'applications. Toutefois, si vous êtes confronté à la maintenance de jeux de données très volumineux, vous devriez aussi envisager d'autres solutions de stockage comme Amazon S3 ou EBS. Une fois encore, SimpleDB constitue un moyen efficace d'assurer le suivi des métadonnées relatives à vos jeux de données volumineux.

Amazon Relational Database Service (Amazon RDS)

Amazon Relational Database Service (RDS) est une base de données relationnelle MySQL entièrement fonctionnelle fournie sous la forme d'un service géré en nuage. Si votre application nécessite un stockage relationnel et que vous souhaitez réduire le temps consacré à la gestion de la base de données, Amazon RDS automatise les tâches administratives courantes afin de réduire la complexité et le coût total de propriété. Amazon RDS sauvegarde automatiquement votre base de données et tient à jour votre logiciel de base de données, ce qui vous permet de vous consacrer au développement d'applications. C'est une solution parfaite pour des données structurées traditionnelles nécessitant des capacités de requêtes et de jointure plus sophistiquées que ce que fournit SimpleDB, l'autre solution de base de données d'Amazon.

Scénario d'utilisation idéal

Amazon RDS est le meilleur choix pour toute application qui fait appel à MySQL pour son référentiel d'informations et si vous souhaitez profiter d'une base de données en nuage qui soit hautement évolutive, économique et dont les besoins en maintenance sont limités mais sans avoir besoin de modifier le code.

Performances

Amazon RDS fournit des performances élevées grâce à une association d'instances configurables s'exécutant sur l'infrastructure d'Amazon éprouvée au niveau international et dotée d'opérations de sauvegarde et de maintenance automatisées. Les configurations de base de données disponibles varient d'une instance Small (plate-forme 64 bits avec 1,7 Go de RAM et 1 ECU (Elastic Computing Unit)) à une instance Quadruple Extra Large (plate-forme 64 bits avec 68 Go de RAM et 26 ECU).

Pour des performances optimales, il appartient aux concepteurs et aux administrateurs de la base de données de choisir le profil d'instance qui convient (y compris la RAM et le stockage) en fonction de leurs propres besoins de calcul. Si un réglage est nécessaire, ils ont la possibilité d'utiliser l'API fournie par Amazon pour ajuster les paramètres de leur base de données. Amazon CloudWatch fournit des mesures aidant à déterminer le moment où un réglage de performances ou une élasticité supplémentaire sont nécessaires. Enfin, les administrateurs peuvent choisir de passer à une configuration de base de données plus grande si la demande dépasse les ressources de l'instance actuelle.

Elasticité et évolutivité

Les ressources RDS peuvent être mises à l'échelle de façon élastique dans plusieurs dimensions : taille du stockage de la base de données, capacité de calcul de l'instance de la base de données et nombre de réplicas en lecture.

Page 18: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 18 sur 25

Pour une élasticité de calcul supplémentaire, vous pouvez configurer d'autres instances Amazon RDS et tirer parti du partitionnement pour répartir la charge de travail.

Pour faire évoluer le stockage de la base de données RDS de façon élastique, vous pouvez utiliser les outils de ligne de commande, une API ou AWS Management Console afin d'obtenir une capacité de stockage supplémentaire. En fonction de vos besoins, ce stockage supplémentaire peut être ajouté immédiatement ou au cours de la prochaine plage de maintenance.

Une simple commande d'API ou d'AWS Management Console permet de mettre à l'échelle ou de réduire des ressources informatisées. Par exemple, à la fin de chaque mois, il se peut que vous ayez besoin de puissance de calcul supplémentaire pour créer des factures. Il est très simple de mettre à l'échelle temporairement vers une instance Quadruple Extra Large, d'exécuter les charges de travail exigeant de nombreuses ressources de calcul, puis de revenir à une configuration de taille moins importante et plus économique pour le reste du mois.

Pour mettre à l'échelle de façon horizontale les ressources de la base de données RDS (mise à l'échelle horizontale à l'aide de plusieurs instances RDS), les administrateurs peuvent créer un ou plusieurs réplicas en lecture. Les réplicas en lecture utilisent la capacité de réplication asynchrone intégrée de MySQL pour vous permettre de mettre à l'échelle de façon élastique les ressources RDS afin de prendre en charge de lourdes charges de travail en lecture.

Enfin, les administrateurs peuvent configurer d'autres instances Amazon RDS et profiter du partitionnement de la base de données ou de son partage pour répartir la charge de travail et améliorer l'élasticité et l'évolutivité de la base de données.

Durabilité et disponibilité

Pour une durabilité accrue, RDS propose deux types de sauvegardes de bases de données qui sont répliqués sur plusieurs zones de disponibilité : des sauvegardes d'instance de bases de données automatisées et des instantanés de bases de données initiés par l'utilisateur. Si vous activez des sauvegardes d'instance de bases de données automatisées, RDS effectuera automatiquement et quotidiennement une sauvegarde complète de vos données au cours de la session de sauvegarde spécifiée et capturera aussi des journaux de transactions de bases de données. Fournies sans frais supplémentaires, ces sauvegardes automatisées peuvent être conservées pendant huit jours au maximum et elles peuvent servir à effectuer une restauration à n'importe quel moment compris entre le début de la période de rétention et les cinq dernières minutes (environ) précédant l'heure en cours. Initiés par l'utilisateur, les instantanés de bases de données peuvent être créés à tout moment et sont conservés jusqu'à leur suppression explicite. Les instantanés de bases de données vous permettent de restaurer votre base de données à un état connu.

La fonctionnalité RDS de déploiement Multi-AZ améliore à la fois la durabilité et la disponibilité de votre base de données en répliquant de façon synchrone vos données entre une instance de base de données RDS primaire et une instance de secours dans une autre zone de disponibilité. Dans le cas très improbable de la défaillance d'un composant de base de données ou d'une zone de disponibilité, RDS passera automatiquement en mode « instance de secours » (ce qui prend normalement trois minutes environ). Les transactions de la base de données peuvent reprendre dès la promotion de l'instance de secours. La réplication synchrone garantit l'absence de perte de données.

Notez que la réplication synchrone fournie par la fonctionnalité RDS de déploiement Multi-AZ complète la réplication asynchrone intégrée fournie par les réplicas en lecture RDS. Vous pouvez utiliser chaque fonctionnalité séparément ou conjointement.

Page 19: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 19 sur 25

Coût

A l'instar d'Amazon Web Services, Amazon RDS vous permet de ne payer qu'en fonction de votre utilisation, sans frais minimum ni engagement à long terme. Amazon RDS propose une structure de prix à niveaux, en fonction de la taille de l'instance de base de données, du type de déploiement (Mono-AZ/Multi-AZ) et de la région AWS. La tarification d'Amazon RDS dépend de plusieurs éléments : nombre d'heures utilisé par l'instance de base de données (par heure), quantité de stockage de base de données prévu (par Go-mois et par million de demandes d'E/S), stockage de sauvegarde supplémentaire (par Go-mois) et quantité de transfert de données entrantes et sortantes (par Go par mois). Toutes les informations de tarification concernant RDS sont disponibles à la page http://aws.amazon.com/rds/pricing/.

Interfaces

Pour vous aider à démarrer, Amazon propose une série de scripts de ligne de commande simples à comprendre pour créer, tenir à jour, surveiller et arrêter l'instance de votre base de données. Vous pouvez aussi utiliser les opérations de service Web d'Amazon pour réaliser la même série de tâches.

Après la création de votre instance, vous pouvez installer votre schéma et vos données à l'aide de n'importe quel outil fonctionnant avec une base de données relationnelle. En fonction de la quantité et de l'emplacement de vos données sur site existantes, vous pouvez également extraire vos données locales à l'aide de l'utilitaire mysqldump et les réacheminer directement vers l'exécutable MySQL pour une insertion dans Amazon RDS. Pour les jeux de données plus volumineux, il peut être plus avantageux de créer, dans un premier temps, votre schéma dans Amazon RDS, d'extraire vos données localement dans un fichier plat, puis d'utiliser l'utilitaire mysqlimport pour les envoyer vers Amazon RDS. La migration vers Amazon RDS sera examinée de façon plus détaillée dans un prochain livre blanc.

Après avoir mis en place votre schéma et vos données, vous interagissez avec vos informations via des API standard MySQL SQL, JDBC et autres API courantes, ainsi qu'avec des outils graphiques susceptibles de fonctionner avec des données relationnelles. Vous n'avez aucune modification à apporter au code pour permettre les interactions entre votre application et RDS : remplacez simplement l'adresse du serveur de votre base de données (par ex. serveurbd.votresociete.com) par le point de terminaison DNS public (par ex. moninstance.c0cafggtpzd2.us-east-1.rds.amazonaws.com) fourni par AWS au moment de la création de l'instance. Ce point de terminaison DNS restera identique pendant toute la durée de vie de votre instance. Hormis la configuration de celui-ci, tous les éléments relatifs à votre application MySQL restent inchangés.

Antipatterns Amazon RDS

Amazon RDS est une excellente solution pour les données MySQL en nuage, mais elle n'est pas adaptée à certaines situations :

Données portant sur l'indexation et les requêtes : Un grand nombre de solutions en nuage n'exige pas les fonctionnalités avancées des bases de données relationnelles, comme les jointures et les transactions complexes. Si votre application est plus axée sur l'indexation et les requêtes de données, Amazon SimpleDB répondra sûrement mieux à vos besoins.

Nombreux BLOb (Binary Large Objects) : Bien que MySQL (et donc, Amazon RDS) permette de stocker des BLOb, si votre application en fait une utilisation intensive (fichiers audio, vidéos, images, etc.), Amazon Simple Storage Service (Amazon S3) sera certainement un meilleur choix.

Page 20: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 20 sur 25

Elasticité automatique : Comme indiqué précédemment, il revient aux administrateurs de configurer leur environnement Amazon RDS pour obtenir l'élasticité souhaitée. Si vous souhaitez une élasticité automatisée (et que vos structures de données y sont adaptées), vous pouvez opter pour un autre choix de stockage comme Amazon SimpleDB ou Amazon S3.

Autres plates-formes de base de données : à l'heure actuelle, Amazon RDS fournit une base de données MySQL. S'il vous faut une autre plate-forme de base de données (par ex. IBM DB2 ou Informix, Microsoft SQLServer, Oracle, PostgreSQL ou Sybase), vous devez déployer une AMI de base de données relationnelle Amazon EC2 ou en créer une vous-même.

Base de données relationnelle sur Amazon EC2 et AMI de base de données relationnelle

Amazon EC2, associé aux volumes EBS, fournit la plate-forme parfaite pour l'exploitation de votre base de données relationnelle dans le nuage. De nombreuses solutions répandues sont disponibles sous forme d'AMI Amazon EC2 pré-intégrées et prêtes à être utilisées, notamment IBM DB2 et Informix, Oracle Database, MySQL, Microsoft SQL Server, PostgreSQL, Sybase, EnterpriseDB et Vertica.

Scénario d'utilisation idéal

L'exécution d'une base de données relationnelle sur Amazon EC2 et EBS est le scénario idéal pour les utilisateurs dont l'application requiert une base de données relationnelle classique spécifique ou pour ceux qui ont besoin d'une commande administrative et une configurabilité maximales.

Performances

Les performances d'une instance de base de données relationnelle sur Amazon EC2 dépendent de nombreux éléments, comme le type d'instance Amazon C2, le nombre et la configuration des volumes EBS, le logiciel de base de données et sa configuration ainsi que la charge de travail de l'application. En général, les performances de la base de données sur Amazon EC2 et sur un matériel local configuré de manière similaire sont comparables. Nous vous incitons à étudier votre application sur plusieurs types d'instances Amazon EC2 avec plusieurs configurations de stockage afin de sélectionner la meilleure configuration.

Pour augmenter les performances de la base de données, vous pouvez augmenter la mémoire et les ressources de calcul en choisissant une taille d'instance Amazon EC2 supérieure. Pour mettre à l'échelle les performances d'E/S, il est possible de modifier le nombre de volumes EBS ou d'utiliser RAID 0 logiciel (répartition sur disques) sur plusieurs volumes EBS, ce qui augmentera le nombre total d'opérations d'E/S par seconde ainsi que la bande passante. Dans de nombreux cas, vous pouvez aussi faire évoluer les performances totales du système de la base de données par une mise à l'échelle horizontale avec la mise en cluster et la réplication de la base de données ainsi qu'avec plusieurs esclaves de lecture. En général, les options de paramétrage des performances de base de données dans l'environnement Amazon EC2 et dans un environnement de serveur physique sont identiques.

Page 21: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 21 sur 25

Durabilité et disponibilité

Sur Amazon EC2, les bases de données relationnelles offrent un stockage persistant pour des données structurées utilisant des volumes EBS comme magasin de données. Toutes les remarques relatives à la durabilité et à la disponibilité des données EBS s'appliquent donc également ici. A nouveau, la durabilité et la disponibilité des base des données relationnelles stockées dans des volumes EBS peuvent encore être améliorées à l'aide d'instantanés EBS ou d'utilitaires de sauvegarde de bases de données tiers (ex. : RMAN d'Oracle) pour stocker des sauvegardes de bases de données dans Amazon S3.

Coût

En exécutant une base de données sur Amazon EC2, vous ne payez qu'en fonction de votre utilisation, sans frais minimum ni engagement à long terme. Le coût de fonctionnement d'une base de données sur Amazon EC2 dépend de la taille et du nombre d'instances Amazon EC2 utilisées pour l'exécuter, de la taille des volumes EBS utilisés pour son stockage, de la quantité de données transférées en envoi et en réception sur Amazon EC2 et, très souvent, des frais de licence des logiciels de bases de données tiers. Un grand nombre de packages de bases de données open-source utilise un modèle de licence gratuit ; certains fournisseurs de logiciels commerciaux utilisent le modèle Amazon DevPay et d'autres offrent un modèle Bring-your-own-license (licence à fournir). Contactez votre fournisseur de logiciels de base de données ou Amazon Web Services pour plus d'informations sur le modèle de prix de licence applicable.

Vous pouvez également consulter des informations détaillées sur les tarifs d'Amazon EC2, d'EBS et du transfert de données sur Internet à l'adresse http://aws.amazon.com/ec2/pricing/.

Elasticité et évolutivité

Dans de nombreux cas, les utilisateurs de solutions de bases de données relationnelles sur Amazon EC2 peuvent profiter de l'élasticité et de l'évolutivité de la plate-forme AWS sous-jacente. Par exemple, après avoir configuré une instance Amazon EC2 avec votre solution de base de données, vous pouvez regrouper l'instance avec une AMI personnalisée, soit à l'aide des commandes de regroupement pour les AMI de magasin d'instance soit à l'aide de la commande de création d'image pour les AMI EBS. Vous pouvez ensuite créer en quelques instants plusieurs nouvelles instances de votre configuration de base de données.

Antipatterns de la base de données relationnelle sur Amazon EC2

Pour un grand nombre d'utilisation, la meilleure solution consiste à exécuter leur propre base de données relationnelle sur Amazon EC2 mais dans plusieurs cas, d'autres solutions peuvent s'avérer plus judicieuses :

Données portant sur l'indexation et les requêtes : Un grand nombre de solutions en nuage n'exige pas les fonctionnalités avancées des bases de données relationnelles, comme les jointures et les transactions complexes. Si votre application est plus axée sur l'indexation et les requêtes de données, Amazon SimpleDB, qui bénéficie d'une gestion simplifiée, répondra sûrement mieux à vos besoins.

Nombreux BLOb (Binary Large Object) : Un grand nombre de bases de données relationnelles prennent en charge les objets BLOb (fichiers audio, vidéo, images, etc.). Si votre application en fait un usage intensif, Amazon S3, qui utilise une base de données relationnelle ou SimpleDB pour la gestion des métadonnées, sera certainement un meilleur choix.

Page 22: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 22 sur 25

Elasticité automatique : Comme mentionné précédemment, les utilisateurs de bases de données relationnelles sur AWS peuvent, très souvent, tirer le meilleur parti de l'élasticité et de l'évolutivité de la plate-forme AWS sous-jacente, mais cela demande l'exécution d'une tâche manuelle ou d'une tâche de script par les administrateurs du système ou de la base de données. Partant du principe que vous souhaitez ou devez utiliser une élasticité entièrement automatisée (et que vos structures de données y sont adaptées), vous pouvez opter pour un autre choix de stockage comme Amazon SimpleDB ou Amazon S3.

Cas d'utilisation du stockage en nuage

Pour des exemples d'utilisation réelle des options de stockage AWS, consultez le livre blanc analogue : Storage Options in the AWS Cloud: Use Cases à l'adresse : http://media.amazonwebservices.com/AWS_Storage_Use_Cases.pdf.

Références et lectures complémentaires

Services de stockage AWS

Amazon Elastic Block Store (EBS) – http://aws.amazon.com/ebs Volumes de stockage d'instance Amazon EC2 – http://docs.amazonwebservices.com/AWSAmazon EC2/latest/UserGuide

(voir les sections consacrées aux types d'instances, au stockage d'instance et au mappage des périphériques de traitement par blocs)

Amazon Simple Storage Service (Amazon S3) – http://aws.amazon.com/s3 Amazon Simple Queue Service (Amazon SQS) – http://aws.amazon.com/sqs Amazon SimpleDB – http://aws.amazon.com/simpledb Exécution de bases de données sur AWS – http://aws.amazon.com/running_databases Amazon Relational Database Service (Amazon RDS) – http://aws.amazon.com/rds

Articles concernant le stockage AWS

Article de Werner Vogel, « Choosing Consistency » – http://www.allthingsdistributed.com/2010/02/strong_consistency_simpledb.html Article du blog Amazon Web Services, « Amazon SimpleDB Consistency Enhancements » – http://aws.typepad.com/aws/2010/02/amazon-simpledb-consistency-enhancements.html Article publié par le Centre de développeurs Amazon Web Services, « Amazon SimpleDB Consistency Enhancements » – http://developer.amazonwebservices.com/connect/entry.jspa?externalID=3572&categoryID=152 Calculateur mensuel simple AWS – http://aws.amazon.com/calculator FAQ Oracle dans le nuage – http://www.oracle.com/technetwork/topics/cloud/faq-098970.html Article publié par le Centre de développeurs Amazon Web Services, « Running Databases on AWS » – http://aws.amazon.com/running_databases/ Etude de cas Oracle : Base de données Oracle dans le nuage – http://www.oracle.com/technetwork/database/features/availability/311356-129177.pdf

Page 23: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 23 sur 25

Autres informations relatives à AWS

Niveau d'utilisation gratuit AWS – http://aws.amazon.com/free Ensembles de données publics sur AWS – http://aws.amazon.com/publicdatasets AWS Import/Export – http://aws.amazon.com/importexport Amazon CloudFront – http://aws.amazon.com/cloudfront Etudes de cas AWS – http://aws.amazon.com/solutions/case-studies

Page 24: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 24 sur 25

Annexe : Tableau récapitulatif des caractéristiques de stockage AWS

Données non structurées Données structurées

Stockage des instances Amazon EC2

Volumes Amazon EBS

Amazon S3

Amazon SimpleDB

Autres bases de données relationnelles (sur EC2 et EBS)

Amazon RDS

Performances Elevées Elevées Modérées (mono-thread) à très élevées (plusieurs threads)

Modérées à élevées (demandes PUT/GET par lots)

Elevées Elevées

Durabilité Faible Modérée Elevées Elevées Elevées Modérée

Coût Compris dans le coût EC2 Dimensionnement par Go/mois

Stocké par Go/mois

Dimensionnement Premier Go gratuit, puis par Go/mois

Dimensionnement (identique à EBS)

Dimensionnement par Go/mois (5 Go minimum)

Disponibilité Faible Modérée à élevée (avec instantanés EBS)

Elevées Elevées Modérée à élevée Elevées

Elasticité/Evolutivité Non Manuelle (ajout de volumes supplémentaires)

Automatique Automatique Manuelle Manuelle (une commande pour modifier l'instance de base de données)

Limites de taille 160 Go à 1,6 To (les instances plus grandes disposent de volumes plus larges et plus nombreux)

1 Go à 1 To par volume (possibilité d'utiliser plusieurs volumes ou de répartition pour augmenter la capacité)

Illimité dans les faits (5 To par objet, nombre d'objets illimité par compartiment)

10 Go/domaine 100 domaines (plus de domaines disponibles sur demande)

(identique à EBS) 5 Go à 1 To par instance de base de données

Persistance sur les instanciations

Non Oui Oui Oui Oui Oui

Interfaces Périphérique de traitement par blocs, accès via le système d'exploitation/système de fichiers sur EC2

N/A, accès via le système d'exploitation/système de fichiers EC2

HTTP, REST ou SOAP REST ou SOAP Bibliothèques MySQL ou JDBC

Bibliothèques MySQL ou JDBC

Sécurité (chiffrement au repos)

Exécution FS cryptée Exécution FS cryptée Chiffrement avec AES 256 bits

Chiffrement avec AES 256 bits

Sécurité (chiffrement en transit)

Non applicable Non applicable SSL (HTTPS) SSL (HTTPS) SSL (HTTPS) SSL (HTTPS)

Prise en charge des plates-formes RDBMS

MySQL, SQL Server, Oracle, DB2, etc.

MySQL, SQL Server, Oracle, DB2, etc.

Non applicable Non applicable MySQL, SQL Server, Oracle, DB2, etc.

MySQL 5.1

Page 25: AWS Storage Optionsd36cz9buwru1tt.cloudfront.net/fr/AWS_Storage_Options... · 2012-05-24 · Amazon We Servies – Options de stokage AWS Déemre 2010 Page 3 su 25 Hors onnexion :

Amazon Web Services – Options de stockage AWS Décembre 2010

Page 25 sur 25

Données non structurées Données structurées

Stockage des instances Amazon EC2

Volumes Amazon EBS

Amazon S3

Amazon SimpleDB

Autres bases de données relationnelles (sur EC2 et EBS)

Amazon RDS

Modèle (relationnelle ou autre)

Bloc Bloc Objet Schéma flexible et non relationnel, magasin d'entités

Relationnelle Relationnelle

Niveau d'automatisation Aucun Mise en miroir automatique

Auto-réplication, contrôle des versions

Indexation, réplication, dimensionnement, correction

Selon la base de données

Sauvegardes automatisées, corrections de logiciels

Niveau de redondance Non redondant Redondant au sein d'une zone de disponibilité

Hautement redondant sur plusieurs centres de données

Tient à jour des copies multiples et géographiquement dispersées de toutes les données utilisateur

Aucun (réplication asynchrone disponible)

Fournit à la fois les options d'instance SingleDB (mono-AZ) et Multi-AZ

Accès transversal entre les instances (c'est-à-dire capacité de partage)

Non Non Oui Oui Oui Oui

Gestion et administration Manuelle Manuelle Auto Auto Manuelle Auto