Extension:CirrusSearch/fr

L'extension CirrusSearch implémente la recherche dans MediaWiki en utilisant Elasticsearch.

Cette page concerne l'installation. Une fois celle-ci opérationnelle, voir pour l'utilisation.

But du projet

 * Aucune dépendance bizarre qui rendrait l'installation difficile
 * Les seules dépendances sont avec les extensions MediaWiki purement PHP et Elasticsearch lui-même
 * Fournir un index de recherche quasiment en temps réel pour les pages wiki extensibles par d'autres extensions MediaWiki
 * Fournir aux utilisateurs toutes les options de recherche dont disposait, et davantage.

Dépendances

 * PHP et cURL
 * En plus des besoins standard de MediaWiki pour PHP, CirrusSearch nécessite que PHP soit compilé avec la prise en charge de cURL.
 * Elasticsearch
 * Vous devrez installer Elasticsearch.

Notez bien qu'une installation supplémentaire de Java comme OpenJDK est nécessaire.


 * Elastica
 * Elastica est une bibliothèque PHP pour parler à Elasticsearch. Installez Elastica à l'aide des instructions ci-dessous.
 * Autres
 * A cause de la manière dont l'extension CirrusSearch gère actuellement les tâches, il est recommandé de fixer les tâches dans redis pour empêcher les messages tels que Notice: unserialize: Error at offset 64870 of 65535 bytes in JobQueueDB.php et les erreurs qui en découlent comme Unsupported operand types. Voir.

Bien que les instructions ci-dessous vous indiquent de n'excuter Composer que lorsque vous faites une installation à partir de Git, il peut être nécessaire de le faire passer dans tous les cas afin d'installer toutes les dépendances PHP.

Mise-à-jour
Please follow the upgrade instructions in the CirrusSearch file.

Configuration
The configuration options of CirrusSearch are documented at the file, and also in the  file.

See also documentation on CirrusSearch configuration profiles.

Accroches
L'extension CirrusSearch définit un nombre d'accroches que les autres extensions peuvent réutiliser pour étendre le schéma du noyau et pour modifier les documents. Les accroches suivantes sont utilisables :


 * - allows to hook into the configuration for analysis
 * - allows configuration of the mapping of fields
 * - allows extensions to modify ElasticSearch document produced from a page
 * - allows extensions to process incoming and outgoing links for the document
 * - called when a batch of pages has been indexed
 * - allows extensions to add query parser features
 * - allows extensions to define rescore builder functions

API
Les fonctionnalités de CirrusSearch peuvent être utilisées dans les requêtes d'API. Quelques exemples et requêtes :


 * Use the  special prefix to find pages related to Marie Curie and radium: api.php?action=query&list=search&srsearch=morelike:Marie_Curie%7Cradium&srlimit=10&srprop=size&formatversion=2


 * parameter: 2014?action=cirrusdump
 * parameter to Special:Search queries: https://en.wikipedia.org/wiki/Special:Search/cat%20dog%20chicken?cirrusDumpQuery
 * parameter to Special:Search queries: https://en.wikipedia.org/wiki/Special:Search/cat%20dog%20chicken?cirrusDumpResult
 * An additional parameter,, can be passed with   to have the lucene explanation of the the score included with the result dump: https://en.wikipedia.org/wiki/Special:Search/cat%20dog%20chicken?cirrusDumpResult&cirrusExplain
 * , ,   modules to obtain dump from the CirrusSearch setup: api.php?action=cirrus-config-dump&formatversion=2

Voir aussi

 * - CirrusSearch usage documentation (needed after the install)
 * - the historical extension that provided MediaWiki search with Lucene on Wikimedia projects for many years
 * Informations concernant les paramètres Wikimedia Cirrus/Elastic
 * - ensembles de paramètres adaptables qui influencent différents aspects de l'indexation
 * - ensembles de paramètres adaptables qui influencent différents aspects de l'indexation

Développement local
Elastic Search service can be run with the Vagrant role and MediaWiki Vagrant.

For Docker, you can use a command like. The follow the installation and configuration directions. If your web host is in a container you'll want to make sure the above container is on the same network, and in LocalSettings.php you will want to reference  as the host name. This will not have the WMF plugins but can be sufficient for basic testing.