Hadoop, um einen Index zu erstellen und Hinzufügen (), um es verteilt SOLR ... ist das möglich? Soll ich Nutch verwenden? ..Cloudera?

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

Frage

Kann ich einen MapReduce Framework einen Index erstellen und sie irgendwie in den verteilten Solr?

Ich habe ein Bündel von Informationen (Log-Dateien und Dokumente), die (oder Amazon) in meinem Rechenzentrum über das Internet und gespeichert transportiert werden. Es muss analysiert werden, indiziert und schließlich durchsuchbar durch unsere replizierten Solr Installation.

Hier ist meine vorgeschlagene Architektur:

  • Verwenden Sie einen MapReduce Framework (Cloudera, Hadoop, Nutch, auch DryadLinq ), diese Dokumente für die Indizierung
  • Vorbereitung
  • Index dieser Dokumente in eine Lucene.NET / Lucene (Java) kompatibles Dateiformat
  • Deploy die Datei auf alle meine Solr Instanzen
  • Aktivieren dass replizierte Index

Wenn das oben möglich ist, ich brauche einen MapReduce Rahmen zu wählen. Da Cloudera Anbieter unterstützt ist und installieren eine Tonne von Patches nicht in der Hadoop eingeschlossen, ich denke, es kann sich lohnen, auf der Suche.

Sobald ich den MatpReduce Rahmen wählen, muss ich die Dokumente tokenize (PDF, DOCX, DOC, OLE, etc ...), indizieren, kopieren Sie den Index auf meine Solr Instanzen und irgendwie "activate" sie, damit sie in der laufenden Instanz durchsuchbar sind. Ich glaube, diese Methodik besser ist, dass Dokumente über die REST-Schnittstelle zu Solr einreichen.

Der Grund, warum ich .NET ins Bild bringen, weil wir meist ein .NET-Shop sind. Die einzige Unix / Java wir haben ist Solr und hat ein vorderes Ende, das die REST-Schnittstelle über Solrnet nutzt.

  

auf Ihrer Erfahrung Basierend, wie funktioniert   diese Architektur aussehen? Siehst du   alle Probleme / Probleme? Was raten   Sie geben?

Was soll ich nicht tun Suche Facettierung zu verlieren? Nach der Nutch Dokumentation zu lesen, glaube ich, sagte es, dass es nicht tun Facettierung, aber ich kann nicht genug Hintergrund in dieser Software zu verstehen, was es sagt.

War es hilfreich?

Lösung

Im Allgemeinen Sie, was Sie schon beschrieben ist fast genau wie Nutch funktioniert. Nutch ist ein Crawling, Indexierung, Indexzusammenführung und Abfrage-Toolkit zu beantworten, die auf Hadoop Kern basiert.

Sie sollten nicht Cloudera, Hadoop, Nutch und Lucene mischen. Sie werden wahrscheinlich am Ende alle von ihnen mit:

  • Nutch ist der Name der Indexierung / beantworten (wie Solr) Maschinen.
  • Nutch selbst läuft mit einem Hadoop Cluster (die stark verwendet er eigenes verteiltes Dateisystem ist, HDFS)
  • Nutch verwendet Lucene Format von Indizes
  • Nutch enthält eine Abfrage beantworten Frontend, die Sie verwenden können, oder Sie können ein Solr Frontend und verwenden Lucene-Indizes von dort befestigen.
  • Schließlich Cloudera Hadoop Verteilung (oder CDH) ist nur eine Hadoop Distribution mit mehreren Dutzend Patches auf sie angewendet, es stabiler zu machen und zurückzuportieren einige nützliche Funktionen von Entwicklungszweige. Ja, dann würden Sie wahrscheinlich wollen, es zu benutzen, wenn Sie einen Grund, nicht zu (zum Beispiel, wenn Sie wollen eine bleeding edge Hadoop 0,22 Stamm) haben.

Im Allgemeinen, wenn Sie gerade schauen in eine vorgefertigte kriechen / Suchmaschinen-Lösung, dann ist Nutch ein Weg zu gehen. Nutch enthält bereits eine Menge von Plugins zu analysieren und Index verschiedenen verrückten Arten von Dokumenten, sind MS Word-Dokumente, PDFs, etc, etc.

Ich sehe persönlich nicht viel Sinn, sich mit der .NET-Technologien hier, aber wenn Sie mit ihm wohl fühlen, können Sie Frontends in .NET tun. Allerdings fühlen sich mit Unix-Technologien arbeiten könnte ziemlich umständlich für Windows-zentrierte Team, also wenn ich ein solches Projekt geschafft hatte, hatte ich Alternativen in Betracht gezogen, vor allem, wenn Ihre Aufgabe der kriechenden und Indizierung begrenzt ist (dh Sie wollen nicht kriechen die gesamte Internet für einen bestimmten Zweck).

Andere Tipps

Haben Sie bei Lucandra sah https://github.com/tjake/Lucandra einer Cassandra basiert zurück Ende für Lucense / Solr, die Sie Hadoop verwenden können den Cassandra Laden mit dem Index Ihrer Daten zu füllen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top