MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Lo stemming non funziona correttamente per l'indice di testo MongoDB

Dopo una discreta quantità di esperimenti e di grattarmi la testa ho scoperto il motivo di questo comportamento. Si è scoperto che i documenti della collezione in questione avevano l'attributo «lingua». Apparentemente la presenza e il valore di tale attributo rendevano questi documenti non ricercabili. (Il valore era 'ENG'. È possibile che modificarlo in 'eng' rendesse nuovamente ricercabile questo documento. Il campo, tuttavia, aveva uno scopo completamente diverso). Dopo aver rinominato il campo in 'lang' sono riuscito a trovare il documento contenente la parola "cani" cercando "cane" o "cani".

Mi chiedo se questo sia il comportamento previsto di MongoDB, ovvero che la presenza dell'attributo language nel documento influisca sulla ricerca del testo.