Sélection et déploiement d'un cluster Amazon EMR - AWS Conseils prescriptifs

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

Sélection et déploiement d'un cluster Amazon EMR

Identifiez et organisez les types de nœuds. Lorsque vous définissez votre cluster Amazon EMR, il est important de comprendre son matériel. Fonctionnement Comment est-il composé ? Les réponses à ces questions comprennent trois parties :

  • Le type de nœuds

  • La fonction que porte chaque nœud

  • Les types d'instances EC2 les plus efficaces pour chaque nœud

Dans un premier temps, le nœud principal est chargé de gérer les ressources générales. Il exécute les principaux composants de l'application distribuée. Par exemple, il exécute le NameNode service Hadoop Distributed File System (HDFS), suit les tâches à effectuer sur le cluster et surveille l'état du système.

En outre, Amazon EMR possède des nœuds principaux et des nœuds de tâches. Les nœuds principaux sont gérés par le nœud primaire. Les nœuds principaux exécutent les nœuds de tâches et sont chargés de stocker les données dans le HDFS du cluster. Les nœuds de tâches sont chargés de gérer les tâches qui arrivent au cluster. Un nœud de tâches ne stocke pas de données. (Les nœuds de tâches ne sont pas obligatoires.)

Lorsque vous configurez et déployez votre cluster Amazon EMR, il est important de choisir les instances EC2 qui représenteront les nœuds de votre cluster. Il existe plusieurs méthodes pour ajouter des instances EC2 à un cluster, selon que vous utilisez la configuration des groupes d'instances ou la configuration des flottes d'instances du cluster. Pour plus d'informations sur les types d'instances pris en charge, consultez la AWS documentation.

Les directives suivantes s'appliquent à la plupart des clusters Amazon EMR. Vous pouvez également consulter les meilleures pratiques de configuration du cluster.

Directives de sélection des instances

En général, les instances préférées pour votre implémentation Amazon EMR dépendent de la tâche que vous exécutez. Posez-vous les questions suivantes :

  • Votre mémoire professionnelle est-elle intensive ?

  • Votre travail est-il gourmand en ressources CPU ?

  • Avez-vous besoin de grandes quantités de stockage ?

  • Votre travail nécessite-t-il une capacité GPU ?

Ces questions vous aideront à comprendre le type d'instances dont vous avez besoin et les caractéristiques réelles dont vous avez besoin. Déterminez le nombre de tâches que vous souhaitez traiter en même temps et la rapidité avec laquelle elles doivent être traitées. C'est important, car l'utilisation d'Amazon EMR est facturée par tranches horaires. Lorsque vous activez un cluster, l'heure entière vous est facturée.

Vous pouvez vérifier le coût de chaque instance exécutée dans différentes AWS régions. Pour comparer les prix entre les régions, vous pouvez utiliser le calculateur de AWS prix et modifier les valeurs en fonction de votre situation géographique.

Sélection d'instances EC2

Lorsque vous avez répondu aux questions précédentes, il est temps de sélectionner les instances en fonction de ces exigences. Après avoir compris les besoins de votre tâche de traitement, déterminez le type d'instance en fonction des caractéristiques dont vous avez besoin :

  • Si vous avez besoin d'instances à usage général, choisissez des instances M6g, T4g ou M5.

  • Si vous avez besoin d'instances optimisées pour le calcul, choisissez des instances C6g ou C5.

  • Si vous avez besoin d'instances optimisées pour la mémoire, choisissez des instances R6g, X1, R5 ou z1d.

  • Si vous devez optimiser le stockage, choisissez les instances I3, qui offrent des performances d'E/S élevées.

  • Si vous avez besoin d'un calcul accéléré tel qu'un GPU, choisissez des instances P3, G4 ou Inf1. Ces types d'instances fournissent des performances élevées pour l'apprentissage automatique et la dynamique des fluides, entre autres processus.

Une autre façon de comprendre les types d'instances et leurs capacités consiste à analyser la mémoire par défaut pour chaque type d'instance. Cette métrique vous aide à ajuster et à améliorer les performances de vos MapReduce tâches. Pour plus d'informations, consultez les paramètres de configuration du démon Hadoop.

Lorsque vous connaissez le type d'instances dont vous avez besoin, vous pouvez planifier la capacité de votre cluster.