powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / вопрос по проектированию БД
8 сообщений из 8, страница 1 из 1
вопрос по проектированию БД
    #39823214
Michail A.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!

Поделитесь, пож-та, практикой.

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

Собственно, вопрос, как хранить такие данные:

- делать одну огромную БД и в ней много схем? Видятся возможные проблемы с backup/restore
- делать много отдельных БД, например Источник1.Исходные_данные, Источник2.Преобразованные данные? Видятся возможные проблемы с межбазовым взаимодействием.

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

В общем, кто что посоветует?
...
Рейтинг: 0 / 0
вопрос по проектированию БД
    #39823218
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Michail A.Собственно, вопрос, как хранить такие данные:

- делать одну огромную БД и в ней много схем? Видятся возможные проблемы с backup/restore
- делать много отдельных БД, например Источник1.Исходные_данные, Источник2.Преобразованные данные? Видятся возможные проблемы с межбазовым взаимодействием.С одной БД работать проще.
Если размеры не особо большие, ну, не больше 10 Тб, то лучше одну.

Решение ещё зависит от того, насколько данные из этих разных систем "близки".
Если это совершенно разные системы (допустим одна система - это 1С база бухгалтеров, другая - база исходников для киномонтажа, третья - оперативная база турникетов на проходной), то разделение на много баз позволяет упростить управление этим бизнесом для компании.
Например, управлять разработкой разных подсистем у разных оутсорсеров, управлять финансированием, разделять разработку и модернизацию по времени, ну и так далее.
...
Рейтинг: 0 / 0
вопрос по проектированию БД
    #39823419
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Michail A.,

для трехуровневой архитектуры надо принять решение о размещении второго уровня, слоя бизнес-логики.
Если большую часть бизнес-логики Вы планируете разрабатывать на языках, отличных от T-SQL, то можно без затруднений использовать многобазовый вариант, если бизнес-логику планируете писать на T-SQL, то более практичным будет вариант размещения данных в одной базе.
...
Рейтинг: 0 / 0
вопрос по проектированию БД
    #39823805
PizzaPizza
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Michail A.,

Обратите внимание, что foreign key возможны только внутри одной базы.

Я бы смотрел насколько данные различаются по признакам уровня базы данных, типа бэкапа, логирования итп.
...
Рейтинг: 0 / 0
вопрос по проектированию БД
    #39823808
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
- stage-уровень, куда заливаются сырые данные
- расчетный слой, где расположены etl-процедуры, заливающие данные в сущности и суперсущности на основе данных предыдущего слоя(и только, отсюда больше никуда лезть нельзя), и расчетные процедуры
- база витрин, в отличии от первых двух может располагаться на другом сервере, туда лезут пользователи со своими adhoc-запросами, туда лезут кубы, туда лезут иные системы (при необходимости таких баз может быть несколько в разных местах)

Последнего слоя может и не быть, если юзеры не имеют к ним прямого sql доступа (например, данные поступают только в кубы).

Везде применяется единый принцип "тянем", а не "толкаем". То есть последующий слой сам берет данные из предыдущего. Соответственно за процесс отвечают те, кто отвечает за данный слой.

Никаких проблем с резервированием и восстановлением нет - достаточно соблюдать порядок.

Схемами в stage-области разделяют данные разных баз-источников.
Схемами в других слоях разделяют данные разных бизнес-сущностей или специальных отчетов, например rwa или raroc, если брать банковскую область, им ifx, если это данные Интерфакса и т.д.

Вообще, если возникают такие вопросы, то вам лучше сразу нанять архитектора.
Потом переделывать будет дорого и долго.
...
Рейтинг: 0 / 0
вопрос по проектированию БД
    #39823809
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PizzaPizzaMichail A.,

Обратите внимание, что foreign key возможны только внутри одной базы.

Я бы смотрел насколько данные различаются по признакам уровня базы данных, типа бэкапа, логирования итп.

В ХД fk как правило не применяются, т.к. сначала может приехать факт, а справочная запись через полчасика.
...
Рейтинг: 0 / 0
вопрос по проектированию БД
    #39823810
982183
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvgMichail A.Собственно, вопрос, как хранить такие данные:

- делать одну огромную БД и в ней много схем? Видятся возможные проблемы с backup/restore
- делать много отдельных БД, например Источник1.Исходные_данные, Источник2.Преобразованные данные? Видятся возможные проблемы с межбазовым взаимодействием.С одной БД работать проще.
Если размеры не особо большие, ну, не больше 10 Тб, то лучше одну.

Решение ещё зависит от того, насколько данные из этих разных систем "близки".
Если это совершенно разные системы (допустим одна система - это 1С база бухгалтеров, другая - база исходников для киномонтажа, третья - оперативная база турникетов на проходной), то разделение на много баз позволяет упростить управление этим бизнесом для компании.
Например, управлять разработкой разных подсистем у разных оутсорсеров, управлять финансированием, разделять разработку и модернизацию по времени, ну и так далее.

Всякое бывает.

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

Например - в бухгалтерии сотового оператора совершенно не нужна информация по каждому абоненту.
Достаточно сводных оборотов.

В БД технологической линии не нужны показания с датчиков на каждую миллисекунду.
Достаточно раз в 10 секунд.

Но вся детальная информация хранится в соответствующих базах.
...
Рейтинг: 0 / 0
вопрос по проектированию БД
    #39824022
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отделение хранения кода от данных оптимально в в весьма специфических случаях, принимать это за правило не следует.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / вопрос по проектированию БД
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]