29 votes

Recherche en Texte intégral avec des Rails

J'ai été regarder dans la recherche plugins/gemmes pour les Rails. La plupart des articles de comparer Ferret (Lucene) à Ultrasphinx ou éventuellement Thinking Sphinx, mais aucun ne de parler de SearchLogic. Quelqu'un aurait-il des indices quant à la façon que l'on compare? Qu'utilisez-vous, et comment faut-il effectuer?

27voto

Gene T Points 4308
  • thinking_sphinx et le sphinx du très beau travail, pas d'indexation, de requête, d'installer les problèmes de l'histoire (5 ou 6 installer, y compris la production slicehost )

  • pourquoi ne pas, tout le monde utilise sphinx, comme, par exemple craigslist? lire ici sur ses limites (un an et demi de vieux articles. Le sphinx développeur, Aksyonoff, c'est de travailler sur ces activités et qu'il est en train de mettre en fonctionnalités et la fiabilité et à corriger les bugs à un rythme effréné)

http://codemonkey.ravelry.com/2008/01/09/sphinx-for-search/

http://www.ibm.com/developerworks/opensource/library/os-php-apachesolr/

http://stackoverflow.com/questions/737275/pros-cons-of-full-text-search-engine-lucene-sphinx-postgresql-full-text-searc

  • furet: facile à installer, n'a pas de tige correctement, très lent indexation (une db mysql: sphinx: 3 secondes, furet: 50 minutes). Bien documenté des problèmes (l'indice de la corruption) dans drb serveurs en production sous la charge. Cela dit, j'ai utiliser dans develometn puisque les actes-as_ferret est sorti il y a 3 ans, et il m'a bien servi. N'adhérant pas à la porter de la lemmatisation est un avantage dans certains contextes.

  • Lucene et Solr est le gorille/mack camion / poids lourd champ de recherche open source. Les équipes ont fait un nombre impressionnant de nouvelles fonctionnalités dans solr 14 de presse:

  • actes-comme-solr: fonctionne bien, une fois que le tomcat ou jetty est en place, mais ceux-ci sont parfois une douleur. L' A-fourche par mattmatt est le principal fourche, mais le projet est relativement plus maintenu.

  • l'installation tomcat: SOLR/lucene est sans conteste le meilleur de la base de connaissances/ support moteur de recherche, de tout logiciel que j'ai vu ( je suppose que je ne suis pas surpris), la zone de recherche ici:

http://www.lucidimagination.com/

  • Taches solaires, la nouvelle ruby wrapper, de s'appuyer sur solr-ruby. Semble prometteur, mais je ne pouvais pas le faire installer sur OSX. Les indices de gérer tous les objets, pas seulement les bases de données par AR

  • une chose qui est vraiment instructif est l'installation de 2 plugins de recherche, par exemple, sphinx et SOLR, le sphinx et le furet, et de voir quels sont les différents résultats de leur retour. Il est aussi facile que d' @sphinx_results - @ferret_results


viens de voir ce post et les réponses

http://zooie.wordpress.com/2009/07/06/a-comparison-of-open-source-search-engines-and-indexing-twitter/

http://www.jroller.com/otis/entry/open_source_search_engine_benchmark

http://www.flax.co.uk/blog/2009/07/07/xapian-compared/

18voto

pat Points 10326

Tout d'abord, mon penchant évident: j'ai créé et maintient Thinking Sphinx.

Comme cela arrive souvent, j'ai effectivement vu Ben Johnson (créateur de SearchLogic) présents à la NYC ruby répondre à propos de la nuit dernière. SearchLogic est SQL-seulement - si vous n'êtes pas affaire avec massives de tables, et de la pertinence des classements ne sont pas nécessaires, alors il pourrait être exactement ce que vous cherchez. La syntaxe est assez propre, trop.

Toutefois, si vous voulez toutes les requêtes de l'intelligence traitées par du code qui n'est pas votre propre, puis les Sphinx ou Solr (qui est Lucene sous le capot, je pense) est probablement d'aller travailler mieux.

5voto

Mark S. Points 789

SearchLogic est un bon plugin, mais il est vraiment destiné à faciliter votre recherche de code plus lisible, elle ne fournit pas l'indexation automatique que le Sphinx n'. Je n'ai pas utilisé un Furet, mais le Sphinx est incroyablement puissant.

http://railscasts.com/episodes/120-thinking-sphinx

Excellente introduction pour voir comment flexible, il est.

3voto

Vincent Points 5027

Je n'ai pas utilisé SearchLogic mais je peux vous dire que Lucene est un projet très mature, qui a mise en œuvre dans de nombreuses langues. Il est rapide et flexible et de l'API est un plaisir de travailler avec. C'est un bon pari.

3voto

Maurício Linhares Points 19468

Cette question est toujours très bien classé sur google pour la recherche en texte intégral, je tiens vraiment à dire que la Tache est encore plus forte aujourd'hui si vous êtes intéressés par l'ajout de texte complet des fonctionnalités de recherche à votre application Rails (et voudrais avoir Solr derrière vous pour que). Vous pouvez vérifier un tutoriel complet sur ce ici.

Et pendant que nous y sommes, un autre prétendant qui est arrivé dans le domaine est ElasticSearch, qui vise à être un vrai moment de moteur de recherche plein texte construit sur Lucene (mais faire les choses différemment lorsque comparé à Solr). ElasticSearch comprend de dehors-de-le-boîte de fragmentation et de réplication sur plusieurs nœuds, plus rapide de recherche en temps réel, "percolators" pour vous permettre de recevoir des notifications lorsque de quelque chose qui correspond à vos critères est disponible et il bouge très vite et avec beaucoup plus d'autres caractéristiques. Il est facile de construire quelque chose sur le dessus de celui-ci, l'API est très simple et entièrement basé sur le REPOS à l'aide de JSON comme format. On pourrait dire que vous n'avez même pas besoin d'un plugin pour l'utiliser.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X