Table des matières:
- Le Big Data est non structuré ou semi-structuré
- Il est inutile de stocker des données volumineuses si nous ne pouvons pas les traiter
- Comment Hadoop résout le problème du Big Data
- L'analyse de rentabilisation pour Hadoop
Le Big Data est … eh bien … de grande taille! La quantité exacte de données pouvant être classées en tant que mégadonnées n'est pas très claire, alors ne nous enlisons pas dans ce débat. Pour une petite entreprise habituée à traiter des données en gigaoctets, 10 To de données seraient GRANDS. Cependant, pour des entreprises comme Facebook et Yahoo, les pétaoctets sont gros.
Juste la taille des mégadonnées, il est impossible (ou au moins prohibitif) de les stocker dans un stockage traditionnel comme des bases de données ou des filers conventionnels. Nous parlons de coût pour stocker des gigaoctets de données. L'utilisation de filers de stockage traditionnels peut coûter cher pour stocker des données volumineuses.
Nous allons voir ici les mégadonnées, leurs défis et comment Hadoop peut aider à les résoudre. Tout d'abord, les plus grands défis du Big Data.
Le Big Data est non structuré ou semi-structuré
Beaucoup de mégadonnées ne sont pas structurées. Par exemple, les données du journal de flux peuvent ressembler à ceci:
horodatage, user_id, page, referrer_page
Le manque de structure fait que les bases de données relationnelles ne sont pas bien adaptées pour stocker des données volumineuses. De plus, peu de bases de données peuvent gérer le stockage de milliards de lignes de données.
Il est inutile de stocker des données volumineuses si nous ne pouvons pas les traiter
Le stockage des mégadonnées fait partie du jeu. Nous devons le traiter pour en extraire des renseignements. Les systèmes de stockage traditionnels sont assez "stupides" dans le sens où ils ne stockent que des bits. Ils n'offrent aucune puissance de traitement.
Le modèle de traitement de données traditionnel a des données stockées dans un cluster de stockage, qui est copié sur un cluster de calcul pour le traitement. Les résultats sont réécrits dans le cluster de stockage.
Ce modèle, cependant, ne fonctionne pas tout à fait pour les mégadonnées, car la copie de tant de données vers un cluster de calcul peut être trop longue ou impossible. Donc quelle est la réponse?
Une solution consiste à traiter les mégadonnées en place, comme dans un cluster de stockage qui se double d'un cluster de calcul.
Ainsi, comme nous l'avons vu ci-dessus, les mégadonnées défient le stockage traditionnel. Alors, comment traitons-nous les mégadonnées?
Comment Hadoop résout le problème du Big Data
Hadoop est conçu pour fonctionner sur un cluster de machinesCommençons par un exemple. Disons que nous devons stocker beaucoup de photos. Nous allons commencer avec un seul disque. Lorsque nous dépassons un seul disque, nous pouvons utiliser quelques disques empilés sur une machine. Lorsque nous maximisons tous les disques sur une seule machine, nous devons obtenir un tas de machines, chacune avec un tas de disques.
C'est exactement ainsi que Hadoop est construit. Hadoop est conçu pour fonctionner sur un cluster de machines dès le départ.
Les clusters Hadoop évoluent horizontalement
Plus de puissance de stockage et de calcul peut être obtenue en ajoutant plus de nœuds à un cluster Hadoop. Cela élimine le besoin d'acheter du matériel de plus en plus puissant et coûteux.
Hadoop peut gérer des données non structurées / semi-structurées
Hadoop n'applique pas de schéma sur les données qu'il stocke. Il peut gérer du texte arbitraire et des données binaires. Hadoop peut donc facilement digérer toutes les données non structurées.
Les clusters Hadoop fournissent le stockage et l'informatique
Nous avons vu que le fait d'avoir des clusters de stockage et de traitement séparés n'est pas le meilleur choix pour le Big Data. Cependant, les clusters Hadoop fournissent le stockage et l'informatique distribuée tout en un.
L'analyse de rentabilisation pour Hadoop
Hadoop fournit un stockage pour les mégadonnées à un coût raisonnableLe stockage de données volumineuses à l'aide du stockage traditionnel peut coûter cher. Hadoop est construit autour du matériel de base, il peut donc fournir un stockage assez important pour un coût raisonnable. Hadoop a été utilisé sur le terrain à l'échelle du pétaoctet.
Une étude de Cloudera a suggéré que les entreprises dépensent généralement entre 25 000 $ et 50 000 $ par téraoctet par an. Avec Hadoop, ce coût tombe à quelques milliers de dollars par téraoctet par an. Comme le matériel devient de moins en moins cher, ce coût continue de baisser.
Hadoop permet la capture de nouvelles données ou plus
Parfois, les organisations ne capturent pas un type de données, car leur stockage était trop coûteux. Étant donné que Hadoop fournit un stockage à un coût raisonnable, ce type de données peut être capturé et stocké.
Un exemple serait les journaux de clics sur le site Web. Étant donné que le volume de ces journaux peut être très élevé, peu d'organisations l'ont capturé. Désormais, avec Hadoop, il est possible de capturer et de stocker les journaux.
Avec Hadoop, vous pouvez stocker des données plus longtemps
Pour gérer le volume de données stockées, les entreprises purgent périodiquement les anciennes données. Par exemple, seuls les journaux des trois derniers mois ont pu être stockés, tandis que les journaux plus anciens ont été supprimés. Avec Hadoop, il est possible de stocker les données historiques plus longtemps. Cela permet d'effectuer de nouvelles analyses sur des données historiques plus anciennes.
Par exemple, prenez les journaux de clics d'un site Web. Il y a quelques années, ces journaux étaient stockés pendant une courte période de temps pour calculer des statistiques comme les pages populaires. Maintenant, avec Hadoop, il est viable de stocker ces journaux de clics pendant une période plus longue.
Hadoop fournit des analyses évolutives
Il est inutile de stocker toutes ces données si nous ne pouvons pas les analyser. Hadoop fournit non seulement un stockage distribué, mais également un traitement distribué, ce qui signifie que nous pouvons analyser un grand volume de données en parallèle. Le cadre de calcul de Hadoop est appelé MapReduce. MapReduce a fait ses preuves à l'échelle des pétaoctets.
Hadoop fournit des analyses riches
MapReduce natif prend en charge Java comme langage de programmation principal. D'autres langages comme Ruby, Python et R peuvent également être utilisés.
Bien sûr, l'écriture de code MapReduce personnalisé n'est pas le seul moyen d'analyser les données dans Hadoop. La réduction de carte de niveau supérieur est disponible. Par exemple, un outil nommé Pig prend l'anglais comme un langage de flux de données et les traduit en MapReduce. Un autre outil, Hive, prend les requêtes SQL et les exécute à l'aide de MapReduce.
Les outils de Business Intelligence (BI) peuvent fournir un niveau d'analyse encore plus élevé. Il existe également des outils pour ce type d'analyse.
Ce contenu est extrait de "Hadoop Illuminated" de Mark Kerzner et Sujee Maniyam. Il a été mis à disposition via la licence Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported.