1. Niveau de performance des disques durs actuels
Un disque dur affiche aujourd’hui couramment
un taux de transfert de 75 Mo par seconde. Un calcul rapide
montre que, dans ces conditions, il faut compter de l’ordre de 20-25
minutes pour transférer 100 Go du disque dur aux
processeurs. Et encore en faisant l’hypothèse, peu réaliste,
que l’on dispose d’une RAM de 100 Go.
Or, une entreprise comme Google a besoin de
traiter 24 Po de données de manière régulière
(1 Po = 1 000 000 Go) !
2. Fonctions de type "map" et fonctions de type "reduce"
Dans beaucoup de langages de programmation
(C#, Java, JavaScript, Lisp, Perl, Python, Ruby, SmallTalk…)
"map" est le nom d’une fonction de haut niveau qui applique
une fonction donnée à chacun des éléments d’une liste et retourne
une liste. Par exemple :
(mapcar # square (1,2,3,4,5)) donnera
(12,22,32,42,52), soit
(1,4,9,16,25).
"reduce" est le nom d’une fonction de haut
niveau qui applique une fonction donnée à tous
les éléments d’une liste et retourne une liste
unique. Par exemple :
(reduce # + (1,2,3,4,5)) donnera
(1 + 2 + 3 + 4 + 5), soit
(15).
3. Les distributions de Hadoop
Il existe plusieurs distributions de Hadoop,
dont les plus connues sont celles de Cloudera, Hortonworks et MapR
Technologies. Ces distributions comprennent des produits gratuits, ...