powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Одна БД или несколько?
8 сообщений из 8, страница 1 из 1
Одна БД или несколько?
    #32372684
guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа! Помогите советом.

Проектируется большая БД под MSSQL2000, описыващая несколько предметных областей, связанных через общие классификаторы, например контрагентов и подразделений компании.
С точки зрения проектирования и программирования целесообразно размещение всех данных в единой БД. Но не пострадает ли при этом надёжность функционирования системы в целом? Восстановление после сбоя в работе с частью данных при этом приведёт к потере последних данных всех частей системы?
Разделение единой БД на отдельные БД требует дополнительного механизма поддержания целостности.

Что разумнее выбрать?
При выборе раздельных БД как поддерживать целостность, сущестивуют ли типовые решения для этого?
...
Рейтинг: 0 / 0
Одна БД или несколько?
    #32372694
vic123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Классификаторы и справочники как минимум в отдельную БД, чтобы не было мучительно больно.
...
Рейтинг: 0 / 0
Одна БД или несколько?
    #32372716
Фотография Quark
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если говорите что с точки зрения проектирования и программирования целесообразнее в одну, то и нужно делать в одну.
Надежность при использовании МССКЛ илиОракула при этом не пострадает (насчет других просто не знаю).
Администрировать будет однозначно проще и ошибок меньше наделаете в плане Security/
Восстановление данных от размера БД не зависит. Просто надо правильно сконфигурировать. Лучший вариант - полная репликация на standby сервер, плюс железное зеркало, плюс архивы где-нибудь на лентах. И никакие молотки вам будут не страшны.
...
Рейтинг: 0 / 0
Одна БД или несколько?
    #32372747
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как хотите - ничего страшного не произойдет в любом случае. Вообще даже смысл термина БД - очень отличается у разных поставщиков DBMS. Например в случае Oracle - я так понимаю вопрос о нескольких БД вообще стоять не будет

В случае с MS SQL/ASA/ASE все что вы теряете при разделении системы это DRI - так что смысл есть только если вы не планируете высокую связность этих модулей. Кроме того можно еще поговорить о разнесении БД на разные сервера - что позволит добиться лучшей масштабируемости - но так уж это вам надо? Достаточно ли независимы и велики ваши модули?

Вообще если остались вопросы и этап анализа требований не позволил оценить сложность и взаимосвязанность этих систем - то я бы посоветовал разрабатывать в одной БД и проектировать с учетом возможного в последствии разделения на несколько
...
Рейтинг: 0 / 0
Одна БД или несколько?
    #32372781
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторВ случае с MS SQL/ASA/ASE все что вы теряете при разделении системы это DRI - так что смысл есть только если вы не планируете высокую связность этих модулей.
Я бы не ставил ASA в одну категорию с MSSQL и ASE. MSSQL и ASE могут довольно таки эффективно обрабатывать несколько БД на одном сервере, нормально оптимизируя запросы к данным различных БД, учитывая индексы и статистику. В ASA можно грузить на один сервер несколько БД, но обрабатывать он их будет автономно, т.е. каждая БД будет подключаться как внешний Remote Server и соотвествующе оптимизатор запросов не сможет создать такой же эффективный план, как у MSSQL и ASE. Я бы в ASA не рекомендовал такое делать. Единственное, когда разделение данных по разным БД наверное там имеет смысл, когда выделяется некая уже неизменяемая информация в архивную сжатую БД для работы в режиме только-чтение. Это улучшает производительность запросов за счет значительного уменьшения размеров БД (распаковать нужные страницы в памяти всегда быстрее, чем читать их с носителя), плюс так как ASA не требует постоянного подключения к удаленным серверам, вполне реально организовать хранение таких БД-архивов на сьемных носителях (те же CDROM, DVD и т.д.).
...
Рейтинг: 0 / 0
Одна БД или несколько?
    #32372887
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ASCRUS

Понятно - я имел в виду трактовку понятия БД

Насчет коментария
Спасибо - я этого не знал. Интересно а в чем смысл такой логики ASA?
...
Рейтинг: 0 / 0
Одна БД или несколько?
    #32373343
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторИнтересно а в чем смысл такой логики ASA?
Ну думаю это особенности архитектуры ASA. Изначально она все таки позиционировалась как встроенная СУБД или как Workgroup. Плюс она всегда позиционировалась как легкая в установке, не требующая никакого администрирования, независимая от используемого железа и обьемов СУБД. Из версии к версии разработчики ASA продолжают двигаться в этом направлении и если посмотреть на тот же оптимизатор запросов в современной ASA, то явно видны его развития в сторону максимального упрощения написания запросов (те же KEY JOIN, виртуальные вьюверы, иерархические запросы, повторное использование выражений в виде алиасов, добавление в UPDATE сортировки ORDER BY, привязка БД к текущим характеристикам железа, виртуальные индексы, перестройка таблицы в онлайн и т.д.). Проектировщик, правильно проектируя структуру БД и пользуясь общими рекомендациями правил оптимизации в написании запросов, благодаря самой архитектуре ASA будет для любого железа и используемых обьемов данных на автопилоте получать довольно неплохие планы запросов (конечно не на 100%).

Поэтому разработчики ASA и сделали БД максимально автономной - если в MSSQL и ASE есть БД Master, в которых и храняться характеристики сервера ( те же пользователи и группы), то в ASA все в БД. Это и хорошо, например нет геммора между переносами БД между различными серверами - достаточно ее просто скопировать и подцепить к нужному серверу, но и плохо, особенно как раз в случае, когда необходимо данные и логику растащить по нескольким БД. С учетом того, что ASA еще позиционируется как СУБД для мобильных устройств, думаю политика в данном случае правильная - БД Master на мобилах совсем не к чему :)
...
Рейтинг: 0 / 0
Одна БД или несколько?
    #32373371
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вернемься к вопросу топика, СУБД наверное все таки лучше обсуждать в соотвествующих форумах.

Лично я считаю, что если задача должна крутиться на одном сервере, то смысла бить на разные БД нет - затраты будут больше, чем обоснованные плюсы. Единственное, в чем наверное есть смысл выносить в отдельную БД - это статичные или с централизованным добавлением информации справочники, без возможности изменения или удаления информации, которые для остальных БД будут считаться, как справочная информация только для чтения.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Одна БД или несколько?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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