Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Есть распределенная СУБД для таких задач?  [new]
0108
Guest
Здравствуйте. Возникла задача выбора СУБД с несколькими условиями.
Первым из условий заказчика для выполнения работы является физическое дублирование данных БД на нескольких (не менее двух) машинах (мощных desktop-класса или серверов) в локальной гигабитной сети. Примерная схема представлена на рисунке ниже. Сеть содержит 9 узлов, узлы (1,2), (3,8), (4,5,9) и (6,7) дублируют друг друга (выделены одним и тем же цветом).
Вторым из условий заказчика является логическое распределение данных. На рисунке ниже каждый цвет означает свою часть базы данных (это не ссылочная целостность, скорее разные БД, привожу для полноты). На каждом из узлов установлен клиентский софт, работающий со всей базой данных в целом.

Картинка с другого сайта.

При нормальном функционировании всех машин в сети СУБД должна позволять хранить полные копии своей части данных из базы на всех узлах соответствующего цвета. При выходе из строя одного из узлов оставшиеся узлы сети продолжают функционирование в нормальном режиме, но при вводе в действие вышедшего из строя узла необходимо скопировать изменения с работоспособного узла.
Нужна СУБД, которая смогла бы осуществить прозрачное (т.е. желательно, чтобы они не знали о распределенности СУБД) для клиентских приложений распределенное хранение данных и обработку запросов.
1 авг 11, 17:39    [11054735]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
ARTURV
Member

Откуда: Санкт-Петербург
Сообщений: 314
0108,

Взгляните на системы репликации разных СУБД, если есть уникальные ключи
Например, в Sybase Anywhere похоже эта задача решается
1 авг 11, 17:49    [11054832]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
SERG1257
Member

Откуда:
Сообщений: 2933
> физическое дублирование данных БД на нескольких (не менее двух) машинах (мощных desktop-класса
> хранить полные копии своей части данных из базы на всех узлах соответствующего цвета
TJ7

По сабжу у заказчика очень странные требования. Не его заказчика дело как там что хранится - обрабатывается. Его заказчика дело сформулировать измеряемые требования к системе, обеспечить деньги и проверить работу.
1 авг 11, 17:50    [11054839]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54799

Вопрос, как обычно, а какую СУБД знает топик стартер. Сделать такую хрень можно
практически в любой - вопрос только затрат времени и сил.

Posted via ActualForum NNTP Server 1.4

1 авг 11, 17:54    [11054873]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
А почему узлов (4,5,9) - три?
1 авг 11, 17:57    [11054893]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
0108
Guest
pkarklin
А почему узлов (4,5,9) - три?
потому что три больше двух, а два минимальная избыточность, можно и больше.
1 авг 11, 18:00    [11054917]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
0108
Guest
Dimitry Sibiryakov
Вопрос, как обычно, а какую СУБД знает топик стартер. Сделать такую хрень можно
практически в любой - вопрос только затрат времени и сил.

а чтобы сразу была распределенная и усилий минимум? писать не мне, выбирать субд мне.
1 авг 11, 18:04    [11054945]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
0108,

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



Необходима ли балансировка нагрузки между узлами одного "пула"?
1 авг 11, 18:06    [11054956]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54799

0108
а чтобы сразу была распределенная и усилий минимум? писать не мне, выбирать субд мне.

Тогда выбирай ту, которую знает тот, кто будет писать. Иначе он тебя проклянёт и будет прав.

Posted via ActualForum NNTP Server 1.4

1 авг 11, 18:21    [11055048]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
0108
Guest
pkarklin
Необходима ли балансировка нагрузки между узлами одного "пула"?

Нет, задача - повышение надежности.
Dimitry Sibiryakov, при прочих равных нужна СУБД с репликацией?
1 авг 11, 19:02    [11055252]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54799

0108
при прочих равных нужна СУБД с репликацией?

Репликация относится к "прочим равным". СУБД без неё можно не рассматривать. Впрочем,
таких на данный момент уже не существует (если не вытаскивать из могилы Акцесс или Фокс).

Впрочем, я чую нулевой бюджет... Так что делай так:
1) Выбираешь Oracle MySQL Community Edition.
2) Заказчику впариваешь, что это Оракул, а значит аффигеть как круто.
3) По учебнику ставишь ноды 1-2 в мультимастер репликацию, остальные в read only slave.
4) Приложение работает исключительно с нодами 1-2, остальные стоят для декорации.
5) Берёшь деньги и быстро-быстро исчезаешь из области видимости.

Posted via ActualForum NNTP Server 1.4

1 авг 11, 19:12    [11055294]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Dimitry Sibiryakov
1) Выбираешь Oracle MySQL Community Edition.


Он каким-то образом поддерживает "логическое распределение данных"?
1 авг 11, 20:05    [11055450]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
0108
Нет, задача - повышение надежности.


Тогда, таки непонятно, зачем три узла (4,5,9). И да, бюджет бы стоило огласить.
1 авг 11, 20:07    [11055451]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54799

pkarklin
Он каким-то образом поддерживает "логическое распределение данных"?

Ты сообщения-то дочитывай прежде чем кнопку "ответить" мачкать...

Posted via ActualForum NNTP Server 1.4

1 авг 11, 20:07    [11055452]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Dimitry Sibiryakov
Ты сообщения-то дочитывай прежде чем кнопку "ответить" мачкать...


Ты успокойся, пожалуйста, и объясни, каким образом мульти-мастер репликация позволит размазать данные по узлам, при этом "смогла бы осуществить прозрачное (т.е. желательно, чтобы они не знали о распределенности СУБД) для клиентских приложений распределенное хранение данных и обработку запросов."
1 авг 11, 20:10    [11055465]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54799

Повторяю ещё раз, медленно: приложение работает исключительно с нодами 1-2 (т.е.
теми, на которых лежит полная база), остальные стоят для декорации. Никакого распределения
хранения данных и обработки запросов за исключением стандартного load balancing нет, это
фокус, иллюзия.

Posted via ActualForum NNTP Server 1.4

1 авг 11, 20:21    [11055494]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
0108
Guest
pkarklin
0108
Нет, задача - повышение надежности.


Тогда, таки непонятно, зачем три узла (4,5,9). И да, бюджет бы стоило огласить.

Ну могут два из трех отказать, хотя шансов меньше, чем откажет один из двух.
А насчет логического разделения мне объяснили так: есть много таблиц, части не связаны, но для клиентского софта это одна база данных
1 авг 11, 20:22    [11055498]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
0108
Ну могут два из трех отказать, хотя шансов меньше, чем откажет один из двух.


Похоже на параною.

0108
А насчет логического разделения мне объяснили так: есть много таблиц, части не связаны, но для клиентского софта это одна база данных


Т.е. это ни есть горизонтальное партицирование данных каждой таблицы по нескольким серверам? А клиентскому софту не пофигу, к какому количествую бд обращаться?

ЗЫ. Вообщем заказчику порекомендовать выбрасить эту хрень и пригласить нормального архитектора - задачу упроститься. До выбора СУБД тут еще далеко.
1 авг 11, 20:27    [11055508]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
в виде единой базы
Guest
0108
А насчет логического разделения мне объяснили так: есть много таблиц, части не связаны, но для клиентского софта это одна база данных

Тут вопрос "зачем". Зачем такое логическое разделение и зачем это представлять в виде единой базы?
1 авг 11, 20:41    [11055532]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
0108
Guest
pkarklin
Т.е. это ни есть горизонтальное партицирование данных каждой таблицы по нескольким серверам? А клиентскому софту не пофигу, к какому количествую бд обращаться?

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

pkarklin
Вообщем заказчику порекомендовать выбрасить эту хрень и пригласить нормального архитектора - задачу упроститься. До выбора СУБД тут еще далеко.

Задача стоит под заданную область сделать макет такого распределенного софта. Основное требование - надежность. Если СУБД позволит решить задачи обращения к многим БД как к одной, чем это плохо?
1 авг 11, 20:54    [11055563]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54799

0108
Основное требование - надежность. Если СУБД позволит решить задачи обращения к многим БД
как к одной, чем это плохо?

Как раз тем, что понижает надёжность, увеличивая число точек отказа.

Posted via ActualForum NNTP Server 1.4

1 авг 11, 20:59    [11055577]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
pkarklin
Member

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


Ответьте, пожалуйста, на вопрос - какую задачу Вы решаете "выполняя именно разброс групп связанных таблиц по узлам в сети"?

автор
Задача стоит под заданную область сделать макет такого распределенного софта. Основное требование - надежность.


Надежность - это кластера как с общей СХД, так и географически распределенные, это зеркалирование, репликация и т.п. Когда в ТЗ всплывает "мощных desktop-класса" и гиморная архитектура - ни о какой надежности речи не может идти.
1 авг 11, 21:03    [11055588]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
0108,

И про надежность - сколько вам 9ок нужно?
1 авг 11, 21:04    [11055590]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
0108
Guest
pkarklin
автор
Нет, это именно разброс групп связанных таблиц по узлам в сети. Строго говоря не пофигу, нужно же решать задачу проверки доступности узлов сети, иначе нужно хранить информацию обо всех узлах сети, в которых своя БД. С одной БД нужно знать только адрес мастер-узлов.


Ответьте, пожалуйста, на вопрос - какую задачу Вы решаете "выполняя именно разброс групп связанных таблиц по узлам в сети"?

автор
Задача стоит под заданную область сделать макет такого распределенного софта. Основное требование - надежность.


Надежность - это кластера как с общей СХД, так и географически распределенные, это зеркалирование, репликация и т.п. Когда в ТЗ всплывает "мощных desktop-класса" и гиморная архитектура - ни о какой надежности речи не может идти.

задача - упрощение работы с БД, есть одна БД, ничего не надо настраивать на множество БД, пусть это решает слой СУБД.

Насчет desktop - согласен. Но как размещать два кластера в разных концах страны?
1 авг 11, 21:48    [11055707]     Ответить | Цитировать Сообщить модератору
 Re: Есть распределенная СУБД для таких задач?  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
автор
задача - упрощение работы с БД, есть одна БД, ничего не надо настраивать на множество БД, пусть это решает слой СУБД.


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

автор
Но как размещать два кластера в разных концах страны?


И какие, собственно, проблемы?! В "двух концах страны" нет датацентров, объединенных каналами связи?
1 авг 11, 21:55    [11055727]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Сравнение СУБД Ответить