ste*_*tew 13 mongodb elasticsearch
我们正在尝试开发一种策略,使用elasticsearch在我们的mongodb实例上进行全文搜索.似乎我们想要用作过滤器的每个键都必须包含在弹性索引中.我们可能希望将mongo中的每个密钥用作过滤器 - 即对描述进行全文搜索,按日期和电话号码进行过滤.有没有人有任何真实的经验,可以分享mongo的全文?
也许我们可以将elasticsearch用作db?
Ant*_*ton 14
我没有看到任何理由将ElasticSearch与MongoDb结合使用,只需将ElasticSearch用作必须搜索的文档的单独文档存储.是的,你甚至可以作为整个数据库.当然,这取决于您的域模型和其他因素.
如果您不需要词干,模糊搜索,复杂的通配符搜索,则可以使用mongoDb进行搜索.插入新文档时,将其拆分为小写的单词,然后添加到数组"单词"中.稍后您可以使用此数组执行搜索请求regex
.你不能I
在这个正则表达式中使用(忽略大小写)选项,并且你只能搜索LIKE%
通配符(或没有通配符),否则搜索不会使用mongoDb索引.
还有一个选择 - 您可以尝试为mongoDb 找到河流
另一种选择 - Lucene
如果您使用的是Java.也许你可以通过Directory
这种方式扩展类,Lucene将在MongoDb而不是文件系统或RAM中存储索引.我没有在这方面做过任何研究,但我认为这是可能的
我通过在@Umar建议的字符串中分割单词来试验MongoDB中的全文搜索.老实说,它是一个数据库而不是搜索引擎所以我会将Mongo用于持久存储,而ElasticSearch用于搜索引擎的一部分.事实上,我会坚持使用像Postgresql这样的东西进行持久存储,然后将想要搜索的数据推送到搜索引擎.http://gdal.org/ogr/drv_elasticsearch.html 是一个驱动程序,可以让您快速将数据从一个RDBMS导出到ElasticSearch.只要数据是连接到输入源的一种方式,数据就不必是地理空间来使用GDAL.
亚当
归档时间: |
|
查看次数: |
6427 次 |
最近记录: |