Je suis nouveau à solr. Je veux rechercher la base de données. Je suis capable d'importer les valeurs et de les indexer. Mais lors de la recherche, il semble que le nom du champ soit nécessaire pour être mentionné dans la requête de recherche. Cela peut être fait sans spécifier les noms des champs.solr data-import recherche
Répondre
Vous pouvez importer toutes les données dans default field. Ensuite, vous n'avez pas besoin de mentionner explicitement les noms de champs. (Bien que vous pouvez toujours si vous voulez)
La valeur par défaut schema.xml
avec Solr contient déjà un exemple pour utiliser un tel champ « catchall »:
D'abord le champ doit être déclarée comme tout autre domaine:
<field name="text" type="text_general" indexed="true"
stored="false" multiValued="true"/>
Ensuite, ce nouveau champ doit être déclaré le champ par défaut. Chaque fois que aucun champ spécifique est recherché, celui-ci sera recherché:
<defaultSearchField>text</defaultSearchField>
Vous devez aussi quelques copyField
déclarations qui copient tous les champs existants dans le champ catchall:
<copyField source="cat" dest="text"/>
<copyField source="name" dest="text"/>
<copyField source="my_special_field_1" dest="text"/>
<copyField source="my_special_field_2" dest="text"/>
...
Donc chaque fois que le champ my_special_field_1
est indexé sa valeur est également ajouté au champ text
.
Comme un raccourci, vous pouvez copier tous les champs dans le champ text
avec
<copyField source="*" dest="text"/>
Après cela, vous pouvez effectuer des recherches sans spécifier un champ.
- 1. Solr DataImport « incapable d'exécuter la requête »
- 2. Démarrer solr-DataImport via shell Linux (cron)?
- 3. PySolr rss dataimport
- 4. Solr ne recherche pas lors de l'indexation via le gestionnaire dataimport
- 5. Problème avec le caractère chinois dans Solr DataImport
- 6. recherche Apache Solr n'affiche résultat indexé
- 7. pas DataImport-gestionnaire défini (SORL 4.4.0/Tomcat/Centos)
- 8. recherche Solr, éviter defaultSearchField
- 9. apache solr recherche avec *
- 10. Solr wildcard recherche
- 11. Solr Recherche Les champs
- 12. problème avec solr recherche
- 13. Recherche répartie dans SOLR
- 14. Coldfusion (Solr) comportement recherche
- 15. Besoin d'aide pour résoudre l'erreur dans SOLR 3.3 lié au gestionnaire de dataimport avec mysql
- 16. Solr - Recherche de plusieurs champs
- 17. Lucene/Solr Problème de recherche?
- 18. solr sunspot - recherche belongs_to association
- 19. Apache SOLR recherche par catégorie
- 20. Recherche de -1 dans Solr
- 21. Exact Recherche dans Apache Solr
- 22. Solr recherche dans plusieurs collections
- 23. Solr comportement de recherche bizarre
- 24. Solr RECHERCHE PAR nom d'entité
- 25. solr facette recherche mots tronqués
- 26. Solr Field Alias dans Solr La recherche ne fonctionne pas
- 27. Solr recherche avec échapper solr réservés mots-clés
- 28. Solr: Recherche avec caractère spécial à la recherche d'expression
- 29. Solr - résultats de recherche identiques pour plusieurs termes de recherche?
- 30. Recherche de Solr: Nom de la recherche par ordre alphabétique
merci pour votre réponse rapide. Je veux juste confirmer que si je copie tous les champs cela causera un problème de performance. Je veux dire en raison de copyfield sont les valeurs stockées deux fois. – user1025397
Cela augmentera la taille de votre index mais pas le temps de recherche (par rapport à l'affichage explicite de tous les champs de votre requête) Aussi puisque le paramètre 'stored' est faux, les données d'origine ne sont pas stockées, donc l'index devrait être modéré. –
merci encore. Dernier mais non le moindre, j'ai trois tables différentes, toutes ayant des noms de champs différents, après l'indexation et la recherche, je reçois la liste des résultats de recherche. d'ici comment puis-je distinguer différents enregistrements de table? – user1025397