2017-01-01 6 views
0

Я храню данные для моей базы данных Azure Document DB. Чтобы разрешить поиск по полю описания моих данных, я связал свой репозиторий базы данных документов с Azure Search, как описано здесь: https://docs.microsoft.com/en-us/azure/documentdb/documentdb-search-indexerПреимущества использования DB документа после соединения с Azure Search

Мне также нужно отфильтровать результаты поиска по нескольким параметрам. Я обнаружил, что добавляю больше полей для своих индексаторов поиска Azure, вплоть до того момента, когда я почти дублирую объекты базы данных на объекты поиска Azure.

Вопрос - Если мне нужно выполнить поиск по моим данным и решить использовать поиск Azure, есть ли какая-либо польза для хранения данных в БД документа, или будет лучше смоделировать его снова, используя только Azure Search?

+0

Вы сравниваете яблоки и апельсины. Azure Search не создан как база данных и не заменяет ваши индексы базы данных. Служит совсем другой цели, когда дело доходит до поиска (например, полнотекстового поиска). Я не могу себе представить, как вы бы моделировали базу данных в Azure Search, как бы вы масштабировали, как вы будете делать расширенные запросы, запускать хранимые процедуры и т. Д. –

ответ

0

Бланк документа обеспечивает согласованность, гарантирующую, что Azure Search этого не делает. Обычно мы не рекомендуем использовать Azure Search в качестве основного хранилища. См. Мой ответ на этот другой вопрос SO для конкретных оговорок: Can Azure Search be used as a primary database for some data?

+0

Привет, Брюс, спасибо за ссылку, я не знал из многих из этих пунктов. При использовании комбинации Azure Search и DocDB существует ли способ упростить тот факт, что мне нужны две модели данных для моих данных? (То есть один для DocDB и более легкий для поиска Azure). Мне нужно будет фильтровать и сортировать по нескольким полям в моем документе. – PartlyCloudy

+0

@Eran Gat Не сейчас, но управление схемами в Azure Search проще и гибче - это верх ума для меня в эти дни. –