Que faire lorsque la complexité de vos applications dépasse votre capacité de calcul ? La solution consiste à distribuer les calculs sur un cluster constitué de plusieurs machines, mais faut-il pour cela avoir un supercalculateur dans son garage ? Non ! Aujourd'hui, le cluster computing est à la portée de tous grâce à MapReduce, qui permet de créer facilement des applications distribuées, et au cloud, qui fournit des ressources de calculs pratiquement infinies pour un coût modique.
C'est le rôle des Data Architects et des Data Engineers que de déployer des clusters de calculs permettant de réaliser des analyses complexes sur des données massives. Pour cela, nous verrons ensemble comment écrire des applications distribuées avec Hadoop MapReduce et Spark, éléments essentiels de la boîte à outil des Data Architects. À l'issue de ce cours, vous serez en mesure de lancer des calculs distribués sur des clusters contenant des dizaines de machines à l'aide d'Amazon Web Services.
Vous voulez faire du Big Data sans blabla ? Alors on y va !
Nous vous invitons à consulter les ressources suivantes avant de faire ce cours :
Pour Linux :
Pour Python :
Pour la maitrise des algorithmes :
Pour l'algèbre relationnelle (facultatif) :