Лучшие практики для экспорта коллекций Монго в SQL Server - PullRequest
7 голосов
/ 22 февраля 2012

мы используем MongoDB (в Linux) в качестве основной базы данных.Однако для запуска аналитики нам необходимо периодически (например, по ночам) экспортировать некоторые коллекции из Mongo на сервер MS SQL.

Я думаю о следующем подходе:

  1. Резервное копированиебаза данных Mongo (вероятно, из реплики) с использованием mongodump
  2. восстановление базы данных на машине Windows, на которой установлено Mongo
  3. создание пользовательского приложения для импорта коллекций из Mongo в SQL (возможно, обработкалюбая необходимая нормализация).
  4. Запускать аналитику при установке Windows SQL Server.

Существуют ли другие "проверенные и верные" альтернативы?

Спасибо, Стефано

РЕДАКТИРОВАТЬ : для пункта 4 аналитика должна выполняться на SQL Server, а не на Mongo.

1 Ответ

3 голосов
/ 22 февраля 2012

В целом выглядит хорошо, но я могу предложить две вещи:

  1. Пропустить шаги резервного копирования / восстановления и считывать данные непосредственно из linux mongodb, потому что резервное копирование / восстановление базы данных будет все сложнее, так какбудет расти.
  2. Вместо пользовательского приложения используйте Quartz.net для ночного экспорта, он прост в использовании и может решать любые другие задачи расписания.

Также я могу предложить взглянуть на такие новые подходы, как cqrs и источник событий , которые в основном позволяют избежать задач экспорта.Вы можете просто обрабатывать сообщения и сохранять данные в двух источниках данных (linux mongodb, windows sql server) в режиме реального времени с небольшой задержкой или даже анализировать данные из сообщений и сохранять их в mongodb.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...