Extension du fichier solrconfig.xml

Le fichier solrconfig.xml définit les propriétés Solr avec des valeurs par défaut. Le fichier par défaut peut être étendu à l'aide du fichier jvm.options, à l'aide de XInclude ou en configurant la table SRCHCONFEXT. La personnalisation la plus courante du fichier de configuration Solr consiste à définir de nouvelles valeurs pour la réplication et la mise en cache.

Procédure

Option 1

Suivez les instructions du sujet Réglage des compilateurs JIT pour ajouter des arguments JVM du serveur de recherche au fichier jvm.options du serveur de recherche.

Remarque : Vous ne pouvez pas modifier ou étendre le fichier solrconfig.xml directement. Au lieu de cela, vous pouvez personnaliser le fichier jvm.options pour l'étendre, ou utiliser la procédure décrite ici. Le fichier jvm.options est un fichier de propriétés Java qui contient une série de paires de clé/valeur. Chaque paire clé/valeur est écrite sur sa propre ligne. Les valeurs sont attribuées à la clé à l'aide du signe égal ("="). Ajoutez à chaque paire clé/valeur le préfixe -D. Exemple :
-Dsolr.mergeFactor=100
attribue la valeur 100 à la clé solr.mergeFactor.

Option 2

Vous pouvez utiliser la fonction XML XInclude standard pour inclure le contenu d'un fichier local. Le fichier solrconfig.xml inclut un élément <xi:include xmlns:xi="http://www.w3.org/2001/XInclude">, qui recherche le fichier x-solrconfig.xml et inclut son contenu s'il est trouvé.

Votre projet search-config-ext contient le fichier x-solrconfig.xml. Ajoutez votre propre contenu à ce fichier. Le fichier de modèle inclut quelques exemples de configurations dont vous pouvez supprimer la mise en commentaire ou que vous pouvez modifier davantage pour votre propre utilisation.
Remarque : XIinclude fonctionne uniquement si x-solrconfig.xml est un objet XML autonome avec un seul élément racine. Vous ne pouvez pas utiliser de variables (telles que ${solr.data.dir:}) dans ce fichier d'extension.

Option 3

  1. Ajoutez ou modifiez les valeurs pertinentes à la table SRCHCONFEXT. Les valeurs dans SRCHCONFEXT remplaceront les paramètres par défaut dans le fichier solrconfig.xml. Toutes les variables de la table suivante sont personnalisables. Par exemple, si vous souhaitez modifier le cache du document Solr sur le serveur principal, exécutez la commande SQL suivante dans la base de données principale. Si vous modifiez plusieurs paramètres avec la même instruction, les paires clé/valeur doivent être séparées par des virgules.
    update srchconfext set config='solr.documentCache.size=0' where srchconfext_id=srchconfext_id;
  2. Redémarrez le serveur Recherche.
    Tableau 1. Propriétés personnalisables du fichier solrcore.properties
    Propriété Valeur par défaut
    solr.abortOnConfigurationError true
    solr.ext.dir
    solr.data.dir
    solr.directoryFactory solr.StandardDirectoryFactory
    solr.writeLockTimeout 1000
    solr.maxIndexingThreads 8
    solr.mergePolicy.maxMergeAtOnce 10
    solr.mergePolicy.segmentsPerTier 10
    solr.useCompoundFile false
    solr.ramBufferSizeMB 64
    solr.mergeFactor 10
    solr.lockType natif
    solr.reopenReaders true
    solr.core.instanceDir /../CatalogEntry
    solr.deletionPolicy.maxCommitsToKeep 1
    solr.deletionPolicy.maxOptimizedCommitsToKeep 0
    solr.maxBooleanClauses 3072
    solr.filterCache.size 1000
    solr.filterCache.initialSize 100
    solr.filterCache.autowarmCount 0
    solr.queryResultCache.size 1000
    solr.queryResultCache.initialSize 100
    solr.queryResultCache.autowarmCount 0
    documentCache solrLRUCache
    solr.documentCache.size 1000
    solr.documentCache.initialSize 100
    solr.documentCache.autowarmCount 0
    solr.enableLazyFieldLoading true
    solr.queryResultWindowSize 36
    solr.queryResultMaxDocsCached 36
    solr.useColdSearcher false
    solr.maxWarmingSearchers 2
    queryComponent query
    spellCheckComponent wc-spellcheck
    facetComponent facet
    data-config wc-data-config-dbtype.xml, où dbtype est db2 ou oracle
    Important : Si vous remplacez ce fichier par votre propre fichier, vous devez inclure le suffixe dbtype approprié (par exemple, custom-data-config-dbtype.xml) afin que le fichier soit récupéré correctement.
    masterCatalogId
    localeAlias
    indexScope
    ws.schema.name
    solr.replication.pollInterval 00:00:00
    solr.clustering.enabled false
    solr.replication.classname com.ibm.commerce.foundation.internal.server.services.search.handler.solr.SolrSearchReplicationHandler
    admin.enable.replication true
    solr.master false
    solr.slave false
    solr.master.server.url /solr/${solr.core.name}/replication
    solr.core.name
    admin.enable.operation true
    conditionalCopyFieldChain.enable false
    healthCheckOps.enable false
    healthCheckOps.forceHealthCheckEveryPollInterval true
    healthCheckOps.checkOps com.ibm.commerce.foundation.solr.operation.SolrDoQueryCheckOperation,com.ibm.commerce.foundation.solr.operation.SolrDoStatusCheckOperation
    healthCheckOps.uponSuccessOps
    healthCheckOps.uponFailureOps com.ibm.commerce.foundation.solr.operation.SolrDoFetchIndexOperation
    solr.spellchecker.queryAnalyzerFieldType wc_textSpellCorrection
    solr.spellchecker.field spellCorrection
    solr.spellchecker.classname solr.DirectSolrSpellChecker
    solr.spellchecker.distanceMeasure interne
    solr.spellchecker.accuracy 0.3
    solr.spellchecker.maxEdits 2
    solr.spellchecker.minPrefix 1
    solr.spellchecker.maxInspections 5
    solr.spellchecker.minQueryLength 3
    solr.spellchecker.maxQueryFrequency 0.01
    solr.spellchecker.thresholdTokenFrequency 0.004
    conditionalCopyFieldChain.enable false
    Remarque : Des informations détaillées sur Solr et ses options, paramètres et fonctions se trouvent sur le site Apache Solr.