[英]How to design db schema for complex mongodb searching
目前,我的文檔(架構)看起來像這樣。
var Schema = {
name: "fish",
location: "United States, Michigan, Ann Arbor",
description: {
en: "newspaper",
de: "zeitung",
ch: "報紙"
}
}
我設置了一個文本索引,如下所示:
db.collection.createIndex( { "$**": "text" } )
最佳的情況是,即使用戶搜索的“報紙”不完全相同,也可以正常工作。
db.collection.find({$text: {$search: "newspapers"}}) // ( ͡◉ ͜ʖ ͡◉)
但是,當短語使用unicode字符或非英語時,搜索不會返回上述文檔。
db.collection.find({$text: {$search: "zeitungen"}}) // no result
db.collection.find({$text: {$search: "大報紙"}}) // no result
db.collection.find({$text: {$search: "news"}}) // no result
有誰知道如何解決這個問題? 在mongodb中可以解決嗎?
您可以看一下mongodb的ful文本搜索。 它可能對您有幫助,但是它不能替代Elastic serach,solr,但可以解決您的問題。 [參考] :( https://docs.mongodb.org/manual/reference/operator/query/text/ )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.