Télécharger la présentation
1
Les solutions de recherche avec Drupal
2
De l’importance d’un moteur de recherche
> La fonction de recherche est souvent la fonction la mieux maitrisée par l’internaute. > Parfois le seul moyen de donner accès à des documents sur un site. > Un bon moteur de recherche permet d’améliorer la conversion: e-commerce, inscription, services, etc.
3
Quelques chiffres… Première action d’un internaute en arrivant sur un site e-commerce. Source: MarketingSherpa.com
4
Les qualités d’un bon moteur de recherche
> Efficace: il permets d’indexer « MES » informations / documents. > Rapide: le temps de réponse est capital. > Pertinent: il doit permettre à l’internaute de trouver l’information que l’on souhaite lui apporter. (scoring factor) > Personnalisable: Je dois pouvoir l’intégrer selon mes besoins.
5
Les qualités d’un bon moteur de recherche vues de l’internaute
> Rapide: pour ne pas dire instantané. > Facile à utiliser. > Me donne le bon résultat en premier si possible. > En un mot, le bon moteur de recherche:
6
Le meilleur moteur de recherche selon mes visiteurs
9
La recherche par défaut sous Drupal 7
> Une solution « Out of the box ». > Un module search, un formulaire et quelques options. > Une intégration avec les modules « Node » et « User ». > Une gestion « automatique » des permissions. > Un scoring factor basique.
10
Les limites du module search
> Les performances, notamment couplé avec l’utilisation de views. > Les performances s’écroulent avec de nombreux contenus (> 10k nœuds). > La recherche s’effectue sur le même serveur que la base de données. > Un paramétrage faible. > N’indexe pas les documents: Word, PDF, PPT, etc.
11
Peux-on repousser les limites du module search?
> OUI: Il existe de nombreux modules permettant d’étendre les fonctionnalités de recherche: recherche par facette, views avec des filtres, « faceted search » indexation de documents, etc. > NON: On ne peux pas pallier les limites en terme de performance. La combinaison de nombreux modules peux rendre la maintenance délicate.
12
Les applications dédiées externes
> Xapian > Sphinx > Apache SolR (Lucene Java) > Zend Lucene > Exalead > Les appliances externes: Google, Bing
13
+
14
La génèse de SolR > Créé initialement par CNT Networks en 2004.
> Le code a été transmis à la fondation Apache en 2006. > En 2007, SolR est devenu un sous-projet de Lucene. > En 2010, les projets SolR et Lucene-java ont fusionné.
15
La carte d’identité d’ Apache SolR
> Un projet Open Source soutenu par la fondation Apache. > Une application Java / J2EE, tourne parfaitement sur Tomcat, Resin ou Jboss. > Architecture ouverte, modules, interfaces XML, JSON et HTTP. > Parfaitement intégré à Drupal grâce à différents module, le principal étant Apache SolR Search Integration.
16
Pourquoi Apache SolR ? > Capable d’indexer des volumes de données importants. > Très rapide, les performances se dégradent très peu avec le trafic. > Gestion du cache performante > Scalability.
17
Pourquoi Apache SolR ? > L’indexation de nombreux formants de documents: Word, Powerpoint, PDF. > Notions de scoring et critères avancés. > La recherche par filtres. > Les recherches par facettes. > Le moteur de recherche de Drupal.org!
18
Comment ça marche? POST Drupal Apache SolR GET SQL MySQL
19
Un même serveur, plusieurs sites
20
Une recherche multi sites
21
Solr propose bien plus…
> Auto-complétion. > Suggestions de corrections orthographiques. > Recommandations de contenus. > Filtrage géographique. > Surlignages des résultats.
22
Le paradoxe de la recherche à facette
« Partir d’une recherche peu précise pour arriver au résultat souhaité, quand Google ne peux plus rien pour moi ou presque… »
23
Scénario de recherche sur Google
« Je recherche un week-end en Janvier, avec un départ le 6: la recherche Full text montre ici ses faiblesse. »
24
Scénario identique sur une recherche par facettes
25
Les facettes SolR mises en œuvre avec Drupal pour la construction d’un site: « Les pages sont construites grâce aux résultats renvoyés par Apache SolR »
26
Quelques tips… > Désactiver la recherche standard… et l’indexation par le module « core search »… > Si SolR est sur le même serveur que votre base de donnée, prévoir de lancer une indexation séparée des autres CRONS. > Testez différentes configurations. > SolR search fonctionne avec DRUSH
27
Oui mais un serveur Java c’est compliqué…
> Il existe un équivalent en PHP: Zend Lucene mais le module Drupal n’est pas stable. > Une solution hébergée en mode ASP: > La solution fonctionne sur Drupal 6 et 7, le module est Plug & Play. > Pas de config, pas de maintenance, pas de java.
28
Quel avenir pour SolR et Drupal
> Le module est activement maintenu, notamment par Acquia. > Avec « Views 3 », il est possible d’afficher des résultats provenants directement de SolR, de la même façon qu’avec une base de données MySQL. > Pas de requêtes en base de donnée, pas de jointures complexes. > Génération aisée de slideshows ou de playlists avec contenus multimédias.
29
En résumé > J’ai peu de contenus, je recherche la simplicité: « Core search », éventuellement agrémentés que quelques modules. > J’ai beaucoup de contenus, une problématique de performances, mais pas de ressources pour maintenir et héberger un serveur J2EE: une solution SAAS telle que Acquia Search. > J’ai de nombreux contenus, je dois indexer plusieurs sites et une problématique forte de performances: SolR sur serveur dédié.
30
Références > Apache Solr Search Integration
> Intro to Apache Solr for Drupal > Robert Douglass au DrupalCamp Stockholm
31
Références > Views 3 + Apache Solr + Acquia Drupal = The Future of search > Geospatial Apache Solr searching in Drupal 6 by upgrading Solr to 3.1 > The offical Apache SolR wiki > Search in Drupal
32
Merci pour votre attention!
Gwénaël Chichery pour Drupagora 2011 Partner at Actualys gchichery(at)actualys.com 10 novembre 2011
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.