Hadoop pour créer un index et Ajouter () à SOLR distribué ... est-ce possible? Dois-je utiliser Nutch? ..Cloudera?

StackOverflow https://stackoverflow.com/questions/4235892

Question

Puis-je utiliser un cadre MapReduce pour créer un index et d'une certaine manière l'ajouter à un Solr distribué?

J'ai une salve d'informations (documents et fichiers journaux) qui seront transportés sur Internet et stockées dans mon centre de données (ou Amazon). Il doit être analysé, indexé, et enfin consultable par notre installation de Solr répliqué.

Voici mon architecture proposée:

  • Utilisez un cadre MapReduce (Cloudera, Hadoop, Nutch, même DryadLinq ) pour préparer les documents pour l'indexation
  • Index ces documents dans un format de fichier compatible Lucene.NET / Lucene (java de)
  • Déployer ce fichier à tous mes instances Solr
  • Activer cet index répliquée

Si ce qui précède est possible, je dois choisir un cadre MapReduce. Depuis Cloudera est pris en charge le vendeur et a une tonne de patches ne sont pas inclus dans l'installation Hadoop, je pense qu'il peut être intéressant de regarder.

Une fois que je choisis le cadre MatpReduce, je dois tokenizer les documents (PDF, DOCX, DOC, OLE, etc ...), les indexer, copier l'index à mes instances Solr, et en quelque sorte les "Activate" afin qu'ils sont consultables dans l'instance en cours d'exécution. Je crois que ce Méthodologies vaut mieux que la présentation des documents via l'interface REST à Solr.

La raison pour laquelle je .NET dans l'image est parce que nous sommes la plupart du temps un magasin .NET. Le seul Unix / Java que nous aurons est Solr et une extrémité avant qui tire parti de l'interface REST via Solrnet.

  

D'après votre expérience, comment   ce regard de l'architecture? Est-ce que tu vois   les questions / problèmes? Quels conseils   vous donnez?

Que dois-je pas faire pour perdre facettage recherche? Après avoir lu la documentation Nutch, je crois qu'il a dit qu'il ne fait pas facettage, mais je ne peux pas avoir assez de fond dans ce logiciel pour comprendre ce qu'il dit.

Était-ce utile?

La solution

En général, vous ce que vous avez décrit est presque exactement comment fonctionne Nutch. Nutch est une exploration, l'indexation, la fusion d'index et boîte à outils répondant à la requête qui est basé sur le noyau Hadoop.

Vous ne devez pas mélanger Cloudera, Hadoop, Nutch et Lucene. Vous aurez très probablement à l'aide de tous:

  • Nutch est le nom de l'indexation / réponse (comme Solr) machines.
  • Nutch s'exécute à l'aide d'un Hadoop cluster (qui utilise beaucoup de son propre système de fichiers distribué, HDFS)
  • utilise Nutch Lucene format des indices
  • Nutch comprend un frontend répondant à la requête, que vous pouvez utiliser, ou vous pouvez joindre un Solr frontend et utiliser les index Lucene à partir de là.
  • Enfin, Cloudera Hadoop distribution (ou CCQ) est juste une distribution Hadoop avec plusieurs dizaines de patches appliqué, pour le rendre plus stable et rétroporter quelques fonctionnalités utiles des branches de développement. Ouais, vous feriez souhaiterez probablement l'utiliser, sauf si vous avez une raison de ne pas (par exemple, si vous voulez un bleeding edge Hadoop 0.22 tronc).

En général, si vous êtes à la recherche dans un ready-made rampants / solution de moteur de recherche, puis Nutch est un chemin à parcourir. Nutch comprend déjà beaucoup de plugins pour analyser et indexer différents types fous de documents, notamment des documents MS Word, PDF, etc, etc.

Personnellement, je ne vois pas beaucoup d'intérêt à l'utilisation des technologies .NET, mais si vous vous sentez à l'aise avec elle, vous pouvez le faire-extrémités avant dans .NET. Cependant, travailler avec les technologies Unix pourrait se sentir assez gênant pour l'équipe Windows centrée, donc si j'avais réussi un tel projet, je considérais comme des solutions de rechange, surtout si votre tâche d'exploration et de l'indexation est limitée (vous ne voulez pas ramper tout l'Internet dans un but).

Autres conseils

Avez-vous regardé Lucandra https://github.com/tjake/Lucandra un dos basé Cassandra fin pour Lucense / Solr que vous pouvez utiliser Hadoop pour alimenter le magasin Cassandra avec l'index de vos données.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top