Azure Search DataSource с локальным SQL Server и передовыми методами?
Документация по поиску Azure говорит, что я могу использовать сервер Azure Sql в качестве источника данных ( https://azure.microsoft.com/en-us/documentation/articles/search-howto-connecting-azure-sql-database-to-azure-search-using-indexers-2015-02-28/). Могу ли я сделать то же самое с локальным сервером SQL?
У меня есть типичная структура отношений, как
Таблица пользователей -> Таблица адресов
Таблица пользователей -> Таблица пользовательских данных
так далее..
Все связаны друг с другом через внешние ключи. Мой поиск должен заканчиваться UserId, поэтому я могу связать свой UserDetailsPage.aspx?UserId=xxx
Каков наилучший способ создания источника данных? Должен ли я создать представление и применить к нему отслеживание изменений? или я должен создать разные источники данных для каждой таблицы и синхронизировать соответствующий индекс?
Просьба пролить свет на лучшие практики в типичном сценарии реляционной базы данных.
1 ответ
Вам нужно будет разрешить IP-адрес вашей службы поиска для подключения к вашей локальной БД. С точки зрения просмотра и нескольких индексаторов, ориентированных на один и тот же индекс - оба подхода могут работать. Какую информацию будут искать ваши пользователи - адрес, данные или и то, и другое? Если это только один из них, вам не придется индексировать обе таблицы.
Имейте в виду, что если вы решите индексировать представление, объединяющее обе таблицы, вы не сможете использовать интегрированное отслеживание изменений SQL, и вам придется полагаться на столбец версий строк или меток времени в представлении.
НТН