comment utiliser hadoop pour une application web?
Je suis en train de travailler sur un réseau social basé sur le web, qui est une application utilise le serveur web Apache et le serveur MYSQL pour la base de données avec MVC codeigniter cadres. Je ne sais pas comment intégrer Hadoop dans cette application et comment l'écrire map - reduce programme.
source d'informationauteur Rashmi
Vous devez vous connecter pour publier un commentaire.
Hadoop et réduire la carte ont pas de relation directe avec les applications web. Vous ne devriez pas intégrer Hadoop dans une application web aussi longtemps que vous comprenez application web comme quelque chose qui répond (rapidement) à la saisie de l'utilisateur (web demandes).
Hadoop et réduire la carte sont très utiles pour les algorithmes qui s'exécutent sur de grands ensembles de données afin de les transformer/extraction de données et de connaissances à partir de ces ensembles de données.
S'il est vrai que Hadoop est aujourd'hui principalement utilisée pour le "hors connexion analytics", il peut être utile de projets web. Par exemple, pour pré-calculer des recommandations ou des suggestions qui sont ensuite fournis aux utilisateurs d'un site web.
Un autre cas d'utilisation est de pouvoir ETL à partir de plusieurs sources de données pour produire un index inversé pour un site web (par exemple, les emplois/voitures/location-comme les sites web avec des quantités énormes de données d'entrée).
Pense toujours à Hadoop lorsque vous avez un "Big Data" problème, pas si votre site web est la gestion de petites quantités de données.
L'utilisation d'Hadoop pour s'attaquer à ce genre de problèmes a des avantages et des inconvénients. L'avantage évident est qu'il rend n'importe quelle sorte de processus de traitement par lots (comme les exemples que j'ai cités) à l'échelle de manière transparente. L'inconvénient est qu'il n'est pas en temps réel: vous ne pouvez pas utiliser Hadoop pour mettre à jour votre site web toutes les 5 secondes.
Je pense que Hadoop peut avoir deux "classique" usages pour le réseau social de style d'applications.
Première est l'utilisation de HBASE pour stocker de messagerie et d'autres informations dynamiques. Le stockage des profils utilisateur dans la HBASE peuvent également être pris en considération afin de remplacer complètement MySQL avec ce genre de solution NoSQL.
Deuxième est l'utilisation d'Hadoop MapReduce pour l'analyse de Votre réseau. Bon exemple de ce type d'analyse est à la recherche d'amis suggestions.
Oui, il est possible de faire une application web à l'aide d'apache hadoop en tant que back-end
Vous pouvez créer des applications web à l'aide d'apache hive et pig vous pouvez écrire personnalisé mappeur et les réducteurs et les utiliser comme udf , mais l'expérience personnelle qu'il est lent , Dans le cas où vous avez très peu de données , Il est préférable d'utiliser une autre base de données et faire des analyses. Je préfère la spark est la solution pour une meilleure reponse de temps..
Par l'utilisation d'hadoop analyser vos données et de prendre les résultats dans votre base de données mysql. Ensuite l'utiliser avec votre application web.
Dans votre application web, vous pouvez obtenir les données requises à partir de Hadoop (comme l'emploi des résultats) à l'aide des services REST: https://hadoop.apache.org/docs/r2.4.1/hadoop-yarn/hadoop-yarn-site/WebServicesIntro.html