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 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. | |
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 :
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é.
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.
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 de cette famille sont adaptées à la plupart des applications.
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.
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.
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.
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.
*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.
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.
Votre période de facturation court du lancement du traitement de votre flux de travail jusqu'à sa fin. Les heures entamées sont arrondies.
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.
« 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.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.
Vous pouvez utiliser le Calculateur mensuel simple AWS pour estimer le montant de votre facture.
| Ressources pour développeurs |
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 :
Si vous souhaitez exécuter d'autres flux de travail avec plus de 20 instances, veuillez remplir le formulaire de demande d'instance.
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.
Votre utilisation de ce service est soumise au Contrat client Amazon Web Services