несколько дБ соединений по сравнению с централизованным / избыточным дБ - PullRequest
2 голосов
/ 22 сентября 2009

У меня есть проект по созданию панели мониторинга, которая будет подключаться к существующим системам, а также создавать новые функции на основе объединения данных из существующих систем. Например, приборная панель сможет генерировать «заказы», ​​содержащие данные, объединенные из «членов» (БД MS Access), «сотрудников» (БД MySQL) и «продуктов» (плоский файл), а также появятся новые атрибуты, в частности на "заказы".

Сначала я подумал, что было бы наиболее эффективно, если бы мое приложение подключалось к каждой из систем в отдельности и выполняло соединения между поставщиками между различными базами данных. Но потом я подумал, что создание централизованного / избыточного БД (созданного с помощью сценариев, передающих и извлекающих данные между системами) также может быть полезным, поскольку это позволит некоторым полутехническим сотрудникам использовать такие продукты, как OOBase, которые могут устанавливать только одно соединение.

Есть ли какие-либо другие преимущества для создания централизованной / избыточной БД, подобной той, о которой я говорю? Или несколько прямых соединений - лучший подход?

Заранее благодарим за любые советы.

Ответы [ 2 ]

2 голосов
/ 22 сентября 2009

Чтобы дать вам короткий ответ: да, вы хотите центральное хранилище данных.

Вы не хотите запускать сложные отчеты в вашей действующей базе данных. По мере того, как ваша живая база данных будет расти, вы захотите провести уборку и очистить ее, но сохраните данные для анализа.

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

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

Возможно, вам стоит почитать о хранилищах данных ( wikipedia ) и бизнес-аналитике ( wikipedia ).

Если вы хотите добавить «новые функции» в эту систему, вы также можете посмотреть оркестровку ( wikipedia . Это позволит вам связать гетерогенные бизнес-процессы вместе.

Все это довольно специализированные и сложные дисциплины сами по себе, поэтому вы можете обратиться к специалисту, который проконсультирует вас.

1 голос
/ 22 сентября 2009

Будьте очень, очень осторожны, чтобы скопировать много данных вокруг. Если да, вот несколько важных рекомендаций:

  1. Убедитесь, что одна система определена как ведущая, и никакая другая система не может вмешиваться в данные.

  2. Всегда копировать данные с ведущего устройства на подчиненные.

  3. При копировании данных используйте какую-либо контрольную сумму, чтобы убедиться, что все данные скопированы. Убедитесь, что вы можете обработать «вчера, копия не удалась».

  4. Если ведомое устройство должно внести изменение, нажмите изменение на ведущее устройство и затем используйте стандартный путь «обновления», чтобы объединить его с ведомым устройством. Избегайте «сохранять изменения на ведомом устройстве и обновлять мастер в будущем».

...