首页 >社区问答列表 >Mongodb全文索引的设置是否合理?

Mongodb全文索引的设置是否合理?

百万的数据量,不算大,有个字段,值的长度 > 100,就是很长,包含中文、英语、几乎所有的字符都存在。使用了全文索引,但是不是很理想:

1,搜索特别慢,即使是使用索引了。

db.tests.find({'$text':{'$search':'test'}})

2,当搜索存在''的时候,虽然会被转换为'\',但是没有任何反映,就好像根本没有在运行一样。反复退出,再开启(指的是客户的mongo),再查询。就会把内存(12G,除去系统能用11G)跑满,直接卡死。硬重启。

db.tests.find({'$text':{'$search':'test\1.06'}}) #想要的。
但是通过web输入会变成
db.tests.find({'$text':{'$search':'test\\1.06'}})

不知道这个样的需求适合建索引吗?
谢谢

  • 小葫芦
  • 小葫芦    2017-05-31 10:37:521楼

    全文索引目前建议还是使用专门的搜索引擎去做,MongoDB虽然支持全文索引,但是功能并不是很丰富,使用场景有局限性,很多情况下还存在问题,所以并不推荐使用。

    +0添加回复

  • 回复