L’essentiel
Phraseanet 4.0 utilise le moteur de recherche Elasticsearch. Ses principaux avantages sont :
Basé sur Apache Lucene, il permet, entre autre, la mise en oeuvre de recherches à facettes dans Phraseanet. Il s’installe sur le serveur hôte de l’application ou sur un serveur distant.
Note
Le paramétrage du moteur de recherche se fait à l’installation de Phraseanet. Par la suite les paramètres ne devraient pas nécessiter de réajustements.
Le moteur Elasticsearch permet l’indexation et la recherche des données.
L’indexation effectue la mise en index du contenu des bases publiées dans une application Phraseanet et permet ainsi la recherche dans le contenu des fiches descriptives des documents.
L’indexation fonctionne en arrière plan. Elle surveille les bases à indexer (apparition, modification ou disparition de documents) et maintient des index de recherche à jour.
Elasticsearch est un prérequis et les installeurs Phraseanet proposent de renseigner le nom d’hôte (Host) ainsi que le port pour établir la communication.
Ces paramètres peuvent être édités après installation par l’interface graphique ou l’édition du fichier de configuration.
Comme administrateur Phraseanet, Aller à Admin / Paramètres du moteur de recherche.
Dans l’onglet Configuration Elasticsearch, renseigner l’adresse, le port et le nom d’index désiré dans le formulaire de paramétrage.
[Source]/config/confuguration.yml
search-engine:
type: Alchemy\Phrasea\SearchEngine\Elastic\ElasticSearchEngine
options:
host: 127.0.0.1
port: 9200
index: phraseanet
Une fois cette configuration effectuée, executer dans la console les commandes suivantes pour valider la configuration et créer l’index de recherche.
bin/console compile:configuration
bin/console searchengine:index:create
Pour supprimer les index :
bin/console s:i:d
Pour construire les index :
bin/console s:i:c
Pour alimenter, “peupler/populate”, les index :
bin/console s:i:p
Options pour “populate”
Usage:
searchengine:index:populate [options]
Options:
--thesaurus Only populate thesaurus data
--records Only populate record data
--databox_id[=DATABOX_ID] Only populate chosen databox (multiple values allowed)
-h, --help Display this help message
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi Force ANSI output
--no-ansi Disable ANSI output
-n, --no-interaction Do not ask any interactive question
-v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug