Maison > Questions et réponses > le corps du texte
La quantité de données est d'un million, pas trop grande. Il existe un champ avec une longueur de valeur > 100, qui est très longue, comprenant le chinois, l'anglais et presque tous les caractères. L'indexation en texte intégral est utilisée, mais ce n'est pas idéal :
1. La recherche est extrêmement lente, même en utilisant l'index.
db.tests.find({'$text':{'$search':'test'}})
2. Lors de la recherche de '', il sera converti en '', mais il n'y aura aucune réflexion, comme s'il ne fonctionnait pas du tout. Quittez, rouvrez à plusieurs reprises (en vous référant au mongo du client) et interrogez à nouveau. Il remplira la mémoire (12 Go, sauf que le système peut utiliser 11 Go) et se figera directement. Redémarrage dur.
db.tests.find({'$text':{'$search':'test.06'}}) #想要的。
但是通过web输入会变成
db.tests.find({'$text':{'$search':'test\1.06'}})
Je me demande si l'indexation est adaptée à ce genre de besoins ?
Merci
高洛峰2017-05-31 10:37:52
Il est actuellement recommandé d'utiliser un moteur de recherche spécialisé pour l'indexation de texte intégral. Bien que MongoDB prenne en charge l'indexation de texte intégral, ses fonctions ne sont pas très riches, les scénarios d'utilisation sont limités et il existe des problèmes dans de nombreux cas. ce n'est pas recommandé.