Amazon Elastic MapReduce (Amazon EMR)

Amazon Elastic MapReduce (Amazon EMR) est un service Web qui permet aux commerces, 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. Il utilise un logiciel hébergé Hadoop s'exécutant sur l'infrastructure d'Amazon Elastic Compute Cloud (Amazon EC2) et d'Amazon Simple Storage Service (Amazon S3) à l'échelle du Web.

En utilisant Amazon Elastic MapReduce, vous pouvez instantanément mettre en service autant ou aussi peu de capacité que vous le souhaitez pour effectuer des tâches à forte intensité de données pour des applications telles que l'indexation Web, l'exploration de données, l'analyse de fichier journal, l'entreposage de données, l'apprentissage machine, l'analyse financière, la simulation scientifique et la recherche bioinformatique. Amazon Elastic MapReduce vous permet de vous concentrer sur la lecture à grande vitesse ou l'analyse de vos données sans avoir à vous soucier de l'installation, de la gestion ou de l'ajustement des clusters Hadoop ou de vous soucier de la capacité de calcul sur laquelle elles sont basées.

Vous ne connaissez pas encore EMR ? Consultez les ressources suivantes :

Nouveautés
EMR prend désormais en charge les instances à stockage élevé
Les instances à stockage élevé (hs1.8xlarge) sont idéales pour les applications nécessitant un accès séquentiel à des jeux de données particulièrement volumineux. Elles offrent 48 To de capacités de stockage sur 24 disques durs, 16 cœurs virtuels qui peuvent fournir 35 unités de calcul EC2 (ECU) en termes de performances CPU, ainsi que 117 GiB de RAM et 10 Gbits/s en mise en réseau.

Exécution de la solution de stockage HBase sur Amazon EMR
Vous pouvez désormais exécuter HBase sur Amazon Elastic MapReduce, offrant ainsi à Hadoop un accès en temps réel aux données dans le nuage. HBase est un magasin de données distribué et basé sur des colonnes, qui fournit des écritures et lectures rigoureusement cohérentes, le partage automatique des tables et un stockage efficace de volumes importants de données dispersées. Il est conçu pour fonctionner en toute transparence avec Hadoop, via le partage de son système de fichiers et en assurant les entrées et sorties pour l'exécution des opérations MapReduce dans Hadoop. De plus, HBase sur EMR permet aux clients d'effectuer des sauvegardes complètes et incrémentielles sur Amazon S3 avec la possibilité d'une cohérence garantie.
EMR et la distribution MapR pour Hadoop
MapR Technologies
MapR confère des fonctions orientées entreprise pour Hadoop, notamment pour la haute disponibilité, les instantanés de données, la mise en miroir du cluster sur les zones de disponibilité et les montages NFS. En plus de l'environnement Hadoop géré par Amazon Elastic MapReduce, de l'intégration transparente des autres services AWS et des tarifs à l'heure sans frais initiaux ni engagement à long terme, Amazon EMR associé à la distribution MapR pour Hadoop offre aux clients un puissant outil de visualisation de leurs données.

Inscription facile,
vous ne payez que ce que vous utilisez
Inscrivez-vous


Témoignages

Razorfish width=

"Avec Amazon Elastic MapReduce, il n'y a pas d'investissement à avancer en matériel, aucun délai d'approvisionnement de matériel, et pas besoin d'engager du personnel supplémentaire. Grâce à la flexibilité de la plate-forme, notre première nouvelle campagne de publicité en ligne a vue une augmentation de 500% des retour sur dépense publicitaire comparé à une compagne similaire l'année d'avant." Lire toute l'étude de cas.

Cette page contient les catégories d'informations suivantes. Cliquez pour aller en bas de page :

Amazon Elastic MapReduce – Fonctionnalité

Amazon Elastic MapReduce lance une implémentation Hadoop du logiciel intégré MapReduce sur des instances Amazon EC2, sous-divisant les données dans un flux de travail, en plus petits segments de façon à ce qu'elles soient traitées en parallèle (la fonction "Map") et finalement recombinant les données traitées dans la solution finale (la fonction "Reduce"). Amazon S3 sert de source aux données pour les analyser et de destination de sortie pour les résultats finaux.

Pour utiliser Amazon Elastic MapReduce, il vous suffit de :

  • Développer votre application de traitement de données. Amazon Elastic MapReduce permet aux flux de travail de se développer dans les langages similaires à SQL, tels que Hive et Pig, et rend plus facile l'écriture de scripts analytiques de données sans connaissance approfondie du paradigme de développement MapReduce. Si vous le souhaitez, des applications plus élaborées peuvent être conçues selon votre choix soit Cascading, Java, Ruby, Perl, Python, PHP, R ou C++. Il y a plusieurs exemples de code et de tutoriels disponibles dans le Guide de démarrage qui vous aideront à démarrer et à fonctionner rapidement.
  • Télécharger vos données et votre application de traitement dans Amazon S3. Amazon S3 fournit un stockage fiable, évolutif et facile à utiliser pour vos données entrantes et sortantes.
  • Connectez-vous AWS Management Console pour commencer un "flux de travail" Amazon Elastic MapReduce. Choisissez le nombre et le type d'instances Amazon EC2 que vous voulez, précisez l'emplacement de vos données et/ou de vos applications sur Amazon S3 et ensuite cliquez sur le bouton Créer un flux de travail. Autrement, vous pouvez commencer un nouveau flux de travail en précisant la même information mentionnée ci-dessus par les outils de ligne de commande ou les API. Pour des charges de travail plus élaborées vous pouvez choisir d'installer un logiciel supplémentaire ou de modifier la configuration de vos instances Amazon EC2 en utilisant Bootstrap Actions.
  • Surveiller les progrès de votre flux de travail directement à partir de AWS Management Console, des outils de ligne de commande ou des API. Et une fois le flux de travail fini, récupérez la production à partir de Amazon S3. Vous pouvez suivre les progrès et identifier les problèmes sous formes d'étapes, de travail, de tâches ou de tentatives de tâches de votre flux de travail directement à partir de la fenêtre de débogage du flux de travail dans AWS Management Console. Amazon Elastic MapReduce utilise Amazon SimpleDB pour stocker les informations sur l'état du flux de travail.
  • Payez seulement les ressources que vous consommez réellement. Amazon Elastic MapReduce surveille votre flux de travail, et sauf avis contraire, interrompt vos instances Amazon EC2 après que le travail est achevé.

Éléments principaux du service

Elastic – Amazon Elastic MapReduce vous permet d'utiliser autant ou aussi peu d'instances de calcul que vous le souhaitez en faisant fonctionner Hadoop. Vous pouvez passer une commande d'une, de centaines, ou même de milliers d'instances pour traiter des giga octets, des tera octets ou même des péta octets de données. Vous pouvez modifier le nombre d'instances alors que votre flux de travail fonctionne et vous pouvez faire fonctionner autant de flux de travail en concurrence que vous le souhaitez. Vous pouvez instantanément faire tourner de grands flux de travail Hadoop qui démarreront le traitement en quelques minutes, non pas des heures ou des jours. Quand votre travail est fini, à moins que vous n'ayez demandé autre chose, le service détruit automatiquement vos instances.

Faciles à utiliser – Vous n'avez pas à vous soucier des réglages, du fonctionnement ou de l'ajustement de la performance des grappes Hadoop ; au lieu de cela, vous pouvez vous concentrer sur l'analyse de données. Nous fournissons des outils faciles à utiliser et des exemples d'applications de traitement de données qui vous permettront de démarrer l'application sans écrire une seule ligne de code. Une fois que vous avez commencé un flux de travail, Amazon Elastic MapReduce gère l'approvisionnement d'instance Amazon EC2, les paramètres de sécurité, la configuration et l'installation de Hadoop, la récupération du journal, la surveillance de l'état et d'autres points complexes reliés au matériel tels que la suppression automatique d'instances défaillantes à partir du flux de travail en cours d'exécution.

Fiable – Amazon Elastic MapReduce est créé sur une infrastructure Amazon hautement fiable et a ajusté la performance de Hadoop spécifiquement sur l'environnement d'infrastructure d'Amazon. Le service surveille aussi l'exécution de votre flux de travail – réessayant des tâches non réussies, fermant des instances problématiques et mettant en services quelques nœuds pour remplacer ceux qui ont échoué.

Intégré de manière transparente aux autres services AWS – Amazon Elastic MapReduce est conçu pour s'intégrer facilement à d'autres services AWS comme Amazon S3, DynamoDB et EC2, en fournissant l'infrastructure nécessaire à des applications de traitement de données. Le service exécute des flux de travail dans Amazon EC2 et stocke des données entrantes et sortantes dans Amazon S3 et/ou Amazon DynamoDB.

En sécurité – Amazon Elastic MapReduce configure automatiquement les réglages du pare-feu Amazon EC2 qui contrôle l'accès du réseau vers et entre les instances qui font fonctionner votre flux de travail. Job Flows peut aussi être lancé dans Amazon Virtual Private Cloud (Amazon VPC ), vous permettant d'isoler vos instances de calcul en spécifiant la plage IP que vous souhaitez utiliser et vous connecter à votre infrastructure informatique existante à l'aide du VPN encodé selon la norme de l'industrie IPsec VPN.

Peu coûteux – Amazon Elastic MapReduce vous fait profiter des bénéfices financiers liés à l'ajustement fait par Amazon. Vous payez un très faible taux pour la capacité de calcul que vous consommez réellement. Amazon Elastic MapReduce est optimisé pour vous permettre d'économiser de l'argent en surveillant le progrès de votre flux de travail et en éteignant les ressources quand un flux de travail est achevé.

  • Instances à la demande – Les instances à la demande vous permettent de payer la capacité de calcul à l'heure sans engagement à long terme. Ceci vous libère des coûts et de la complexité de la planification, de l'achat et du maintien de matériel, et transforme des frais fixes, généralement conséquents, en coûts variables nettement plus faibles. Les instances à la demande suppriment également le besoin d'acheter une capacité de "filet de sécurité" pour gérer des pics de trafic périodiques.
  • Instances réservées – Les instances réservées vous donnent l'option d'effectuer un paiement peu important et unique pour chaque instance que vous voulez réserver, et de recevoir en contrepartie une réduction importante sur les frais d'utilisation horaire pour cette instance. Après le paiement unique, l'instance vous est réservée, et vous n'avez aucune autre obligation ; vous pouvez choisir d'exécuter cette instance au taux d'utilisation réduit pour la durée de votre session, ou lorsque vous n'utilisez pas l'instance, vous ne payez pas les frais d'utilisation.
  • Instances ponctuelles – Les instances ponctuelles permettent aux clients de faire une offre sur la capacité non utilisée d'Amazon EC2 et d'exécuter ces instances aussi longtemps que leur offre dépasse le prix ponctuel actuel. Le prix ponctuel change périodiquement en fonction de l'offre et la demande, et les clients, dont les offres répondent ou dépassent ce prix, ont accès aux instances ponctuelles disponibles. Pour plus d'informations, veuillez visiter la section Instances ponctuelles du Guide du développeur Amazon Elastic MapReduce. Pour plus d'informations sur les instances ponctuelles, veuillez visiter la page web des instances ponctuelles Amazon EC2.

Emplacements multiples – Le service Amazon Elastic MapReduce utilise une infrastructure EC2 géographiquement dispersée. Il est actuellement disponible dans les régions USA Est (Virginie du Nord), USA Ouest (Oregon), USA Ouest (Californie du Nord), UE (Irlande), Asie-Pacifique (Singapour), Asie-Pacifique (Tokyo), Asie-Pacifique (Sydney) et Amérique du Sud (Sao Paulo).

Outils tiers – Amazon Elastic MapReduce s'intègre à un large ensemble de solutions et d'outils tiers. Par exemple, Karmasphere Analyst est un espace de travail visuel sur le bureau permettant d'analyser des données sur Amazon Elastic MapReduce. Il fournit les outils graphiques pour effectuer des interrogations SQL sur des données structurées et non structurées ainsi que pour visualiser les résultats. Karmasphere Analyse est disponible à notre tarif horaire et sans frais à avancer ou d'engagement sur le long terme. Veuillez visiter la page détail Elastic MapReduce avec Karamasphere Analytics pour en savoir plus.


Types d'instances

Pour exploiter Amazon Elastic MapReduce, vous devez sélectionner le type et la quantité d'instances Amazon EC2 à inclure dans votre flux de travail. EMR prend en charge les options tarifaires des instances à la demande, réservées et ponctuelles ; toutefois, sachez que si vous disposez d'instances réservées, celles-ci seront utilisées en priorité.

Les instances Amazon EC2 standards

Les instances de cette famille sont adaptées à la plupart des applications.

  • Instance Small (par défaut) 1,7 Go de mémoire, 1 unité de calcul EC2* (1 cœur virtuel avec 1 unité de calcul EC2), 160 Go de stockage d'instance, plate-forme 32 bits
  • Instance Large 7,5 Go de mémoire, 4 unités de calcul EC2* (2 cœurs virtuels avec 2 unités de calcul EC2 chacun), 850 Go de stockage d'instance, plate-forme 64 bits
  • Instance Extra Large 15 Go de mémoire, 8 unités de calcul EC2* (4 cœurs virtuels avec 2 unités de calcul EC2 chacun), 1 690 Go de stockage d'instance, plate-forme 64 bits

Instances Amazon EC2 à mémoire élevée

Les instances de cette famille offrent de grandes capacités de mémoire pour les applications à trafic élevé, notamment les bases de données et les applications de mise en mémoire cache.

  • Instance Extra Large à mémoire élevée, 17,1 Go de mémoire, 6,5 unités de calcul EC2* (2 cœurs virtuels avec 3,25 unités de calcul EC2 chacun), 420 Go de stockage d'instance en local, plate-forme 64 bits
  • Instance Double Extra Large à mémoire élevée, 34,2 Go de mémoire, 13 unités de calcul EC2* (4 cœurs virtuels avec 3,25 unités de calcul EC2 chacun), 850 Go de stockage d'instance, plate-forme 64 bits
  • Instance Quadruple Extra Large à mémoire élevée 68,4 Go de mémoire, 26 unités de calcul EC2* (8 cœurs virtuels avec 3,25 unités de calcul EC2 chacun), 1 690 Go de stockage d'instance, plate-forme 64 bits

Instances Amazon EC2 à CPU élevée

Les instances de cette famille possèdent, proportionnellement, plus de ressources CPU que de mémoire (RAM) et conviennent aux applications nécessitant des calculs intensifs.

  • Instance Medium à CPU élevée, 1,7 Go de mémoire, 5 unités de calcul EC2* (2 cœurs virtuels avec 2,5 unités de calcul EC2 chacun), 350 Go de stockage d'instance, plate-forme 32 bits
  • Instance Extra Large à CPU élevée, 7 Go de mémoire, 20 unités de calcul EC2* (8 cœurs virtuels avec 2,5 unités de calcul EC2 chacun), 1 690 Go de stockage d'instance, plate-forme 64 bits

Instances Calcul haute performance Amazon EC2

Les instances de cette famille combinent de grandes tailles de mémoires et d'importantes ressources CPU avec un reseautage de 10 Gbps. Elles sont mieux adaptées aux applications à haute performance et E/S intensives, comme pour mappee des génomes pour des recherches scientifiques, simuler des conceptions aéronautiques et automobiles pour des activités d'ingénierie, et miner les données pour l'informatique décisionnelle.

  • Instance Quadruple Extra Large de calcul en cluster, 23 Go de mémoire, 33,5 unités de calcul EC2*, 1 690 Go de stockage d'instance en local, plate-forme 64 bits, 10 Gigabit Ethernet
  • Instance Eight Extra Large de calcul en cluster, 60,5 Go de mémoire, 88 unités de calcul EC2*, 3 370 Go de stockage d'instance en local, plate-forme 64 bits, 10 Gigabit Ethernet
  • Instance Quadruple Extra Large GPU en cluster, 22 Go de mémoire, 33,5 unités de calcul EC2*, 2 unités GPU NVIDIA Tesla « Fermi » M2050, 1 690 Go de stockage d'instance en local, plate-forme 64 bits, 10 Gigabit Ethernet

Instances Amazon EC2 à stockage élevé

Les instances à stockage élevé sont idéales pour les applications nécessitant un accès séquentiel à des jeux de données particulièrement volumineux.

  • Instance Eight Extra Large de calcul en cluster, 117 Go de mémoire, 35 unités de calcul EC2*, 48 To de stockage sur 24 disques, 10 Gigabit Ethernet

*Unité de calcul EC2 (ECU) - Une unité de calcul EC2 (ECU) fournit la capacité CPU équivalente à celle d'un processeur 2007 Opteron ou 2007 Xeon à 1,0-1,2 GHz.


Tarification

Avec Elastic MapReduce, vous ne payez que ce que vous utilisez.

Vos coûts dépendront du nombre et du type d'instances Amazon EC2 exécutées au sein de votre flux de travail et de leur durée d'exécution. Les tarifs Elastic MapReduce s'appliquent en sus des tarifs EC2 et S3.

Tarification Amazon EC2 et Amazon Elastic MapReduce

Votre période de facturation court du lancement du traitement de votre flux de travail jusqu'à sa fin. Les heures entamées sont arrondies.

Economisez grâce aux instances réservées et ponctuelles

Les tarifs Amazon EC2 indiqués ci-après concernent les instances à la demande. Les instances à la demande sont les plus onéreuses mais vous confèrent davantage de flexibilité. EC2 propose également des instances réservées et ponctuelles.

  • Les instances réservées vous permettent d'effectuer un paiement peu important et unique pour chaque instance que vous souhaitez réserver et, en retour, de recevoir une remise considérable sur le taux horaire de cette instance. Il y a trois types d'instances réservées (Instances réservées d'utilisation légère, modérée et intensive) qui vous permettent d'équilibrer le montant que vous payez à l'avance avec votre prix horaire effectif.
  • Les instances ponctuelles vous permettent de faire des offres pour acheter de la capacité Amazon EC2 non utilisée. Les instances sont facturées au prix ponctuel, qui est défini par Amazon EC2 et fluctue périodiquement en fonction de l'offre et de la demande de la capacité d'instance ponctuelle. Pour utiliser les instances ponctuelles, vous précisez le prix maximum que vous êtes disposé à payer par instance sur une base horaire. Si votre offre de prix maximum dépasse le prix ponctuel actuel, votre demande est satisfaite et vos instances seront exécutées jusqu'à ce que vous choisissiez d'y mettre fin ou jusqu'à ce que le prix ponctuel passe au-dessus de votre prix maximum (selon la première éventualité).

« En utilisant Amazon Elastic MapReduce avec des instances ponctuelles, il nous a été facile de créer un prototype et nous avons été agréablement surpris par le faible coût de la mise à l'échelle. Nous avons ainsi pu réduire nos coûts de traitement des données de plus de 50 %. » - VP de l'ingénierie chez Fliptop

Pour en savoir plus et connaître les tarifs actuels des instances réservées et à la demande, consultez la page de tarification Amazon EC2.

Données complémentaires concernant la tarification

Amazon S3 fait l'objet d'une facturation distincte. (De nombreux clients stockent leurs données en entrée et sortie sur S3 ; d'autres les conservent en local sur HDFS.) Actuellement, il vous en coûtera 668 USD par mois pour stocker 10 To de données dans S3 avec une redondance réduite. Plus vous stockez de données, moins le prix mensuel par Go sera élevé.

Amazon SimpleDB fait aussi l'objet d'une facturation distincte. (S'applique uniquement si vous activez le débogage de votre flux de travail.)

Si vous optez pour la distribution Hadoop MapR M5, vous n'aurez pas de frais supplémentaires. Consultez la page de présentation MapR pour en savoir plus et connaître les tarifs actuels.

Estimation de votre facture

Vous pouvez utiliser le Calculateur mensuel simple AWS pour estimer le montant de votre facture.


Description détaillée

Amazon Elastic MapReduce utilise Apache Hadoop comme moteur de traitement distribué. Hadoop est un logiciel intégré JAVA à code source libre qui prend en charge les applications distribuées à forte intensité informatique fonctionnant sur de grands clusters de matériel. Hadoop met en œuvre un modèle informatique appelé Map Reduce dans lequel la tâche est divisée en petits fragments de tâche, et chacun peut être exécuté sur n'importe quel nœud du cluster. Ce cadre a été utilisé par des développeurs, des entreprises et des entreprises en démarrage et s'est avéré être une plateforme logicielle fiable pour traiter jusqu'à des péta octets de données sur des machines.

Amazon Elastic MapReduce vous permet de mettre en œuvre des applications de traitement de données dans de nombreux langages y compris Java, Perl, Ruby, Python, PHP, R, ou C++. Vous pouvez tester ces applications sur différents types d'instances et tailles de flux de tâches pour recueillir les paramètres de performance optimale dans votre cas.

Connectez-vous AWS Management Console pour commencer un "flux de travail" Amazon Elastic MapReduce. Choisissez le nombre et le type d'instances Amazon EC2 que vous voulez, précisez l'emplacement de vos données et/ou de vos applications sur Amazon S3 et ensuite cliquez sur le bouton Créer un flux de travail. Autrement, vous pouvez commencer un nouveau flux de travail en précisant la même information mentionnée ci-dessus par les outils de ligne de commande ou les API. Amazon Elastic MapReduce utilise une interface de service Web simple facile à utiliser et hautement flexible :

  • RunJobFlow : Crée une demande de flux de travail, démarre des instances EC2 et commence le traitement.
  • DescribeJobFlows : Fournit le statut de votre ou vos demandes de flux de travail.
  • AddJobFlowSteps : Ajoute une étape supplémentaire à un flux de travail qui fonctionne déjà.
  • TerminateJobFlows : Termine un flux de travail en cours d'exécution et arrête toutes les instances.

Si vous souhaitez exécuter d'autres flux de travail avec plus de 20 instances, veuillez remplir le formulaire de demande d'instance.

Paiement à l'utilisation

Vous recevez seulement une facture concernant les ressources que vous consommez vraiment. Par exemple, supposons que vous ayez lancé 100 petites instances standard Amazon EC2 pour un flux de travail Amazon Elastic MapReduce, avec un coût Amazon Elastic MapReduce différentiel à savoir 0,015 USD l'heure. Les instances Amazon EC2 commenceront à démarrer immédiatement, mais elles ne commenceront pas nécessairement au même moment. Amazon Elastic MapReduce effectuera un suivi du début de chaque instance et la vérifiera dans le cluster de façon à ce qu'il puisse accepter les tâches de traitement.

Pendant les 10 premières minutes suivant le lancement de votre demande, soit Amazon Elastic MapReduce commence votre flux de travail (si toutes vos instances sont disponibles), soit Amazon Elastic MapReduce vérifie autant d'instances que possible. Une fois la période des 10 minutes passée, Amazon Elastic MapReduce commencera à traiter (et à facturer) votre flux de travail dès que 90 % de vos instances demandées sont disponibles. Tandis que les 10 % restants de vos instances demandées sont vérifiés, Amazon Elastic MapReduce commence à facturer également ces instances.

Ainsi, dans l'exemple ci-dessus, si les 100 instances demandées sont disponibles, 10 minutes après avoir lancé une demande de lancement, vous serez facturé 1,50 USD de l'heure (100 * 0,015 USD) pendant la durée nécessaire à l'achèvement du flux de travail. Si seulement 90 de vos instances demandées sont disponibles une fois la série des 10 minutes passée, vous serez facturé 1,35 USD de l'heure (90 * 0,015 USD) pour la durée nécessaire au fonctionnement du nombre d'instances de votre flux de travail. Quand les 10 instances restantes sont archivées, vous serez facturé 1,50 USD de l'heure (100 * 0,015 USD) pour la durée nécessaire à l'achèvement du solde du flux de travail. Chaque flux de travail fonctionnera jusqu'à ce que le suivant arrive : vous interrompez le flux de travail avec l'API d'appel TerminateJobFlows (ou un outil équivalent), le flux de travail se ferme de lui-même, ou le flux de travail est terminé à cause d'une défaillance du logiciel ou du matériel. Les heures des instances commencées sont facturées comme des heures enitères.


Utilisation prévue et restrictions

Votre utilisation de ce service est soumise au Contrat client Amazon Web Services


©2013, Amazon Web Services, Inc. or its affiliates. Tous droits réservés.