У меня нет опыта в mongodb. Есть объекты, например. книги, я мог бы хранить их какЗапрос на mongodb
{
"_id" : ObjectId("52ed37cb395d461424d81d51"),
"book" : {
"@id" : "1",
"@date" : "2012-02-01",
"title" : "XML Developer's Guide",
"price" : "44.95",
"description" : "An in-depth look at creating applications with XML."
}
}
{
"_id" : ObjectId("52ed37cb395d461424d81d52"),
"book" : {
"@id" : "2",
"@date" : "2013-10-16",
"author" : "Mark Colsberg",
"title" : "Dolor sit amet",
"price" : "5.95",
"description" : "Lorem ipsum"
}
}
или в одном файле, как
{
"_id" : ObjectId("52ed1df5395d46189868ae96"),
"catalog" : {
"book" : [{
"@id" : "1",
"@date" : "2012-02-01",
"title" : "XML Developer's Guide",
"price" : "44.95",
"description" : "An in-depth look at creating applications with XML."
}, {
"@id" : "2",
"@date" : "2013-10-16",
"author" : "Mark Colsberg",
"title" : "Dolor sit amet",
"price" : "5.95",
"description" : "Lorem ipsum"
}]
}
}
Какой вариант является лучшим способом хранения информации для создания поиска фацета на нем?
С помощью поиска фасета я думаю о расширенной функции поиска, похожей на sql-запросы. Поэтому, если я храню информацию в mongodb или рациональном db, я хочу запросить их. Я не знаком с языком запросов для mongodb, но могу себе представить, что нет никакой разницы в поиске в каталоге или в коллекции книг. – user3206010
Существуют некоторые различия между запросом реляционной системы и MongoDB. В таких системах, как CouchDB или MongoDB, вы можете использовать, например, Map/Reduce или в случае MongoDB структуру агрегации для запросов. –
Я думаю, что ответ Horizon_Net слишком общий. Для стартера темы - если вы используете мой подход - каждая книга представляет собой отдельный документ в коллекции документов, вы можете выпускать поиск по названию книги, описанию, автору и т. Д. – vodolaz095