Lire tout d'abord :
- http://docs.alfresco.com/4.0/index.jsp?topic=%2Fcom.alfresco.enterprise.doc%2Fconcepts%2Fsolr-intro.html
- http://wiki.alfresco.com/wiki/Alfresco_And_SOLR
- http://www.slideshare.net/alfresco/understanding-the-solr-integration
Une fois les concepts de base appréhendés, il peut être intéressant par exemple de dumper le traffic HTTP entre un repository et Solr, pour avoir quelques exemples de requête effectuées et mieux comprendre l'interaction entre les deux.
Exemple de requête sur le mot "test" effectué depuis Share :
(test) AND -TYPE:"cm:thumbnail" AND -TYPE:"cm:failedThumbnail"
AND - TYPE:"cm:rating"
Pour analyser les résultats, cette requête peut également être exécutée sur l'interface d'admin Solr.
Cette interface d'admin permet de mieux comprendre le fonctionnement interne de Solr, et est fournie avec le war solr et accessible à l'addresse suivante : http://localhost:8080/solr/
Des pages d'admin sont disponibles par "core" Solr, par défaut une pour "alfresco" correspondant à workspace/SpacesStore et une pour archive/SpacesStore. La documentation de cette interface est disponible ici : http://wiki.apache.org/solr/SolrAdminGUI
Des options de recherche avancée permettent de sélectionner des options supplémentaires telles que les champs à retourner, le nombre de résultats, le type de sortie (xml, json, ...)... Des options permettent également de demander la sortie "debug", c'est à dire la sortie incluant l'explain sur la requête, et les temps d'exécution des differentes étapes : parsing, filtrage, etc ..
Un point qui n'est pas sélectionnable dans l'interface d'admin actuellement est le query parser. Il en existe 4 par défaut : "alfresco" (AlfrescoLuceneQParserPlugin), "afts" (AlfrescoFTSQParserPlugin) et "cmis" (CmisQParserPlugin), ainsi que "select" (le parseur Solr/Lucene par défaut).
Voir http://www.slideshare.net/alfresco/moving-from-lucene-to-alfresco-fts pour plus d'informations sur le parseur FTS.
Pour chaque node à indexer côté repository, 2 nodes sont indexées dans Solr/Lucene :
- le node "LEAF", contenant le type, les aspects, et les identifiants du node. C'est celui qui est retourné lorsque l'on utilise les parseurs alfresco ou afts
- le node "AUX" (auxiliaire) contenant les informations "auxiliares" du node, à savoir ses parents, son path, le owner, les éventuelles ACL indexées, ainsi que les identifiants également.
Il y a donc dans ce cas deux documents au sens Lucene correspondant à un node indexé par Alfresco.
Ressources supplémentaires :
http://www.slideshare.net/teofili/apache-solr-crash-course http://lucidworks.lucidimagination.com/display/solr/Apache+Solr+Reference+Guide
http://wiki.apache.org/solr/SolrAdminGUI
Aucun commentaire:
Enregistrer un commentaire