K

- Base de connaissances

Accueil > Projets Open Source > Sphinx > Sphinx : moteur d’indexation...

Sphinx : moteur d’indexation...

mercredi 21 novembre 2012, par webmestre

Introduction

Sphinx est un logiciel libre sous licence Open source permettant d’indexer différents types de données : fichiers xml, fichiers texte, bases de données. Il supporte actuellement MySQL, PostgreSQL, Oracle et d’autres SGBD grâce à ODBC.

La documentation ainsi que d’autres informations sont disponibles sur le site officiel de Sphinx : http://sphinxsearch.com/

Installation sous Ubuntu 10 (Lucid)

Par les dépôts : Installation de la version Sphinx 0.9.8.1-release (r1533) de Sphinx
Il suffit d’exécuter la commande suivante :

sudo apt-get install sphinxsearch

Par les paquets : Installation de la version Sphinx 2.0.6 de Sphinx
Pour ce faire, il suffit de télécharger les paquets mis à disposition sur le site officiel de Sphinx.

Puis d’exécuter la commande suivante :

sudo dpkg -i paquet.deb

Si vous rencontrez un problème de dépendances, il suffit d’exécuter la commande suivante :

sudo apt-get -f install

Installation sous Ubuntu 12 (Precise)

On ajoute les lignes suivantes à son fichier source.list (répertoire /etc/apt/ ) :

deb http://ppa.launchpad.net/builds/sphinxsearch-stable/ubuntu precise main
deb-src http://ppa.launchpad.net/builds/sphinxsearch-stable/ubuntu precise main

On rafraîchit ces dépôts :

sudo apt-get  update

A l’erreur de signature liée à l’insertion du nouveau dépôt, on importe la clé via la commande :

sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com B9D8946B16932B16

Et si tout se passe bien, vous devriez avoir le message suivant :

Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --secret-keyring /tmp/tmp.DX2DGy7Buw --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --recv-keys --keyserver keyserver.ubuntu.com B9D8946B16932B16
gpg: requesting key 16932B16 from hkp server keyserver.ubuntu.com
gpg: key 16932B16: public key "Launchpad PPA for Sphinxsearch builds team" imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)

On rafraîchit de nouveau la liste des paquets et on installe les dépôts :

sudo apt-get  update
sudo apt-get  install sphinxsearch

Paramétrage du moteur d’indexation

Par défaut, Sphinx utilise le fichier de configuration /etc/sphinxsearch/sphinx.conf. Il suffit de modifier ce fichier fonction de votre besoin.

Il est à noter que la configuration du moteur d’indexation Sphinx se décompose en
4 parties :

  • source : Définition de la source des données (Base de données,...)
  • index : Paramétrage de l’indexation de la source de données
  • indexer : Paramétrage de l’outil indexation (Chemin, charset...)
  • searchd : Paramétrage de l’outil de recherche

Quelques commandes utiles :

Pour savoir si le démon fonctionne sur votre système :

netstat -nlp | grep searchd

Celle-ci devrait vous retourner :

tcp        0      0 0.0.0.0:9306            0.0.0.0:*               LISTEN      8505/searchd    
tcp        0      0 0.0.0.0:9312            0.0.0.0:*               LISTEN      8505/searchd  

Si ce n’est pas le cas, démarrer le service :

/etc/init.d/sphinxsearch start

Une autre commande utile permettant de passer le processus dans un mode plus "verbose" :

searchd --logdebug

Pour forcer le calcul de l’indexation :

indexer --all --rotate

Liens utiles :

http://www.siteduzero.com/tutoriel-3-602727-creer-un-moteur-de-recherche-avec-sphinx-et-php.html

Répondre à cet article

Plan du site | Suivre la vie du site RSS 2.0 | powered by NYSTEK-EDITIONS and NYSTEK-CONSULTING