2016-11-10 2 views
1

У нас есть довольно большая база данных SQL-сервера, которая отслеживает подписчиков для рассылки бюллетеней по электронной почте (в настоящее время около 100 тыс. Пользователей), и мы создаем что-то, что будет отслеживать данные для каждого рассылаемого бюллетеня, включая вопрос о том, отбросил ли каждый человек/получил/щелкните по электронной почте. Таким образом, это может привести к миллионам строк в статистических таблицах, и мы думали о том, чтобы сначала проверить базу данных документов.Данные запроса от SQL Server и Azure DocumentDB?

Вопрос в том, можно ли одновременно запрашивать данные на SQL-сервере и в БД документа. Может быть, есть способ присоединиться напрямую или с помощью LINQ в C#. Я не эксперт, но я знаю, что вы можете одновременно запрашивать несколько баз данных SQL Server.

Главное, что мы должны иметь возможность перекрестно ссылаться на список основных подписчиков со всеми данными, хранящимися в БД документа, с использованием их уникального идентификатора абонента.

+0

насчет создания связанного объекта сервера в SQL Server, который использует драйвер MongoDB для подключения к DocumentDB? Я не тестировал это, но похоже, что он должен работать – GregGalloway

+0

@GregGalloway Я считаю, что вам придется установить драйвер ODBC MongoDB, что может быть невозможно. В любом случае, это действительно плохой «запах кода». –

ответ

1

SQL Server и DocumentDB являются полностью отдельными двигателями. Вам нужно будет создать собственный код с двумя запросами на вашем сервере клиент/приложение. И как вы это достигаете, полностью зависит от вас: нет «правильного» способа сделать это.

Примечание: Это распространенный сценарий «сохранения полиглота» - объединение нескольких механизмов хранения в одном приложении. Там нет волшебной пули, которая позволяет вам одновременно обращаться к нескольким системам хранения. Вам просто нужно иметь дело с каждой системой хранения по мере необходимости.

Это (идея запросов с несколькими базами данных) будет иметь место практически с любыми двумя разрозненными механизмами базы данных.

0

Да, вы можете ... просто связать серверы в SSMS. Загрузите драйверы ODBC отсюда https://docs.microsoft.com/en-us/azure/cosmos-db/odbc-driver. Вы также можете подключиться через Visual Studio и запускать запросы непосредственно там, где установлены драйверы ODBC. Все полностью не SQL (требуется Нет C#, если C#, используйте LINQPad)

SSMS

 Смежные вопросы

  • Нет связанных вопросов^_^