Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Бесплатный OLTP кластер.  [new]
oltp
Member

Откуда:
Сообщений: 16
Добрый день, господа.

Нужно выбрать СУБД для высоконагруженной OLTP системы. Характер нагрузки - в основном update и select. Пользователей - около 5000. Объёмы порядка нескольких гигабайт. Может быть десятков гигабайт. Подключаться будут они не напрямую а через промежуточный слой, но тем не менее :) Дополнительное ограничение - цена. Первым делом рассматриваются бесплатные и урезанные версии платных субд :)


Полный список хотелок.

Возможность горячего бэкапа
Версионник.
Полноценные транзакции и ограничения целостности.
Возможность создания кластера
Возможности оптимизации хранения данных (partitioning, IOT и тп).
Способность работать с тысячей коннектов (shared server?)
Поддержка 64 разрядной ОС.
30 сен 09, 17:51    [7726460]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
miksoft
Member

Откуда:
Сообщений: 38918
oltp
Пользователей - около 5000.
Одновременно или всего?
30 сен 09, 17:53    [7726480]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
Dimitry Sibiryakov
Member

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

oltp

Первым делом рассматриваются бесплатные и урезанные версии платных субд :)

Firebird.

Posted via ActualForum NNTP Server 1.4

30 сен 09, 17:54    [7726486]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
Senya_L
Member

Откуда: Москва
Сообщений: 5381
Dimitry Sibiryakov

oltp

Первым делом рассматриваются бесплатные и урезанные версии платных субд :)

Firebird.
Не подойдет. Автору треба
автор
Возможности оптимизации хранения данных (partitioning, IOT и тп).
30 сен 09, 17:58    [7726525]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
oltp
Member

Откуда:
Сообщений: 16
miksoft,

Логически одновременно. 5000 клиентов будут достаточно быстро долбить update-select-ы с некоторыми паузами между ними. Часть нагрузки мы наверное сможем снять промежуточным сервером.. Ну допустим порядка 300 update-ов в секунду.
30 сен 09, 17:59    [7726546]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
oltp
Member

Откуда:
Сообщений: 16
Неточно выразился. Не 300 update-ов мы снимем, а 300 update-ов оставим :)
30 сен 09, 18:01    [7726569]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
miksoft
Member

Откуда:
Сообщений: 38918
oltp
miksoft,

Логически одновременно. 5000 клиентов будут достаточно быстро долбить update-select-ы с некоторыми паузами между ними. Часть нагрузки мы наверное сможем снять промежуточным сервером.. Ну допустим порядка 300 update-ов в секунду.
Именно update-ов?
Можно поподробнее о характере нагрузки? Терзают меня смутные сомнения, что правильно примененная буферизация может снизить требования на порядок-два.
30 сен 09, 18:04    [7726582]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
oltp
Member

Откуда:
Сообщений: 16
miksoft
oltp
miksoft,

Логически одновременно. 5000 клиентов будут достаточно быстро долбить update-select-ы с некоторыми паузами между ними. Часть нагрузки мы наверное сможем снять промежуточным сервером.. Ну допустим порядка 300 update-ов в секунду.
Именно update-ов?
Можно поподробнее о характере нагрузки? Терзают меня смутные сомнения, что правильно примененная буферизация может снизить требования на порядок-два.

Именно update-ов.
У 5000 датчиков есть параметры которые они меняют раз в секунду. Надо в базе всегда держать последнее состояние параметров, допустимо потерять не более 10 секунд. Решение напрашивается - раз в 10 секунд сбрасывать состояния в базу) Вот и получаем 500update/sec.
Если изменить update на инсерт последнего состояния, то через некоторое время быстро сделать select для определения последнего состояния будет невозможно, да и база вырастет :)
30 сен 09, 18:09    [7726619]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
miksoft
Member

Откуда:
Сообщений: 38918
oltp
У 5000 датчиков есть параметры которые они меняют раз в секунду. Надо в базе всегда держать последнее состояние параметров, допустимо потерять не более 10 секунд. Решение напрашивается - раз в 10 секунд сбрасывать состояния в базу) Вот и получаем 500update/sec.
Во-первых, получается 5000 update-ов в 10 секунд, что несколько не то же самое.
Во-вторых, у меня напрашивается другое решение. Раз в 10 секунд делать табличке truncate и грузить загрузчиком (а не INSERT-ами) туда данные. Думаю, в секунду уложитесь даже на десктопном железе.

Кстати, и как отсюда вытекают "Объёмы порядка нескольких гигабайт"? Или это какие-то другие объемы?
30 сен 09, 18:15    [7726662]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
Dimitry Sibiryakov
Member

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

Senya_L
Автору треба

На его-то нагрузку? Не смешите мои подковы!

oltp

Решение напрашивается - раз в 10 секунд сбрасывать состояния в базу) Вот
и получаем 500update/sec.

Это неправильное решение. В особенности для версионников. Последнее
состояние датчиков лучше держать в промежуточном слое, а в базу
сбрасывать только суммарные данные для отчётов, тарификации (или что там
у вас).

Posted via ActualForum NNTP Server 1.4

30 сен 09, 18:17    [7726673]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
Yo.!
Guest
обычно датчики пишут в файл, а уже из файла раз в какое-то время выгружают в БД, где уже анализируют данные ...
30 сен 09, 18:24    [7726712]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
oltp
Member

Откуда:
Сообщений: 16
miksoft
oltp
У 5000 датчиков есть параметры которые они меняют раз в секунду. Надо в базе всегда держать последнее состояние параметров, допустимо потерять не более 10 секунд. Решение напрашивается - раз в 10 секунд сбрасывать состояния в базу) Вот и получаем 500update/sec.
Во-первых, получается 5000 update-ов в 10 секунд, что несколько не то же самое.

Согласен.
miksoft
Во-вторых, у меня напрашивается другое решение. Раз в 10 секунд делать табличке truncate и грузить загрузчиком (а не INSERT-ами) туда данные. Думаю, в секунду уложитесь даже на десктопном железе.
Надо подумать. Но на вскидку.. Делаем truncate и электричество выключается. ППЦ. Другие хинты вроде двух таблиц и переименований будут делать блокировку всех данных таблицы, пока переименование не закончиться. В эту таблицу могут писать и из неё могут читать и другие. Блочить всех раз в 10 секунд, пусть и на полсекунды.. в нашем случае это неприемлимо. Но мысль понятна, буду думать.

miksoft
Кстати, и как отсюда вытекают "Объёмы порядка нескольких гигабайт"? Или это какие-то другие объемы?

Это другие объёмы. Я описал отчего происходит основная нагрузка. Все остальные варианты использования вместе взятые генерят ещё примерно половину от этой нагрузки + большую часть данных.


Обсуждение снижения нагрузки, это конечно хорошо, но хотелось бы всё-таки вернуться к обсуждению субд. Что, в контексте моей проблемы, народ скажет про "основных игроков" postgresql и mysql ?
30 сен 09, 18:26    [7726723]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
oltp
Member

Откуда:
Сообщений: 16
Yo.!
обычно датчики пишут в файл, а уже из файла раз в какое-то время выгружают в БД, где уже анализируют данные ...

Это хитрые датчики :) Их показатели не для аналитики, а для реал таймового принятия решений используются.
30 сен 09, 18:28    [7726730]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
oltp
Member

Откуда:
Сообщений: 16
Dimitry Sibiryakov

Senya_L
Автору треба

На его-то нагрузку? Не смешите мои подковы!

Требуется очень маленькое время отклика. Я готов партиционировать даже табличку в 1000 строк, если это поможет. А это может помочь :) Да и полный характер нагрузки я не знаю, постановка задачи ещё не закончена.
30 сен 09, 18:30    [7726741]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
Yo.!
Guest
oltp

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

ну и нах тогда в базу что-то писать ? субд тут каким боком ? или масив на 5000 элементов в памяти у вас не помещается ??
30 сен 09, 18:32    [7726748]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
oltp
Member

Откуда:
Сообщений: 16
Yo.!
oltp

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

ну и нах тогда в базу что-то писать ? субд тут каким боком ? или масив на 5000 элементов в памяти у вас не помещается ??


Дубль два. Надо в базе всегда держать последнее состояние параметров, допустимо потерять не более 10 секунд.
30 сен 09, 18:34    [7726757]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
miksoft
Member

Откуда:
Сообщений: 38918
oltp
Делаем truncate и электричество выключается. ППЦ.
Если "электричество выключается", то не все ли равно - не получат клиенты пустую табличку или они не получат данные с датчиков? Они же все равно ничего не получат...

oltp
Обсуждение снижения нагрузки, это конечно хорошо, но хотелось бы всё-таки вернуться к обсуждению субд. Что, в контексте моей проблемы, народ скажет про "основных игроков" postgresql и mysql ?
Неправильным проектированием загубить можно БД на любой СУБД.
MySQL хорош тем, что у него есть движок для хранения данных только в памяти. Т.е. загрузка данных может быть сведена вообще до миллисекунд. Но этот движок не транзакционен.
30 сен 09, 18:37    [7726772]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
Yo.!
Guest
oltp

Дубль два. Надо в базе всегда держать последнее состояние параметров, допустимо потерять не более 10 секунд.

не вьезжаю. для реалтайма есть масив в памяти (снимать данные нуна в память как не крути), для БД пишутся файлы. в чем смысл чего-то терять ? если комп вырубается когда он поднимится всегда есть возможность из файлов в БД загрузить последние записанные в файлик данные ...
30 сен 09, 18:40    [7726780]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
miksoft
Member

Откуда:
Сообщений: 38918
oltp
Yo.!
oltp
Это хитрые датчики :) Их показатели не для аналитики, а для реал таймового принятия решений используются.
ну и нах тогда в базу что-то писать ? субд тут каким боком ? или масив на 5000 элементов в памяти у вас не помещается ??
Дубль два. Надо в базе всегда держать последнее состояние параметров, допустимо потерять не более 10 секунд.
Назовите этот массив термином "база". Полушутка
30 сен 09, 18:40    [7726782]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
Dimitry Sibiryakov
Member

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

oltp

Я готов партиционировать даже табличку в 1000 строк, если это поможет. А
это может помочь :)

Мнда... Я передумал: ни в коем случае не ходи в сторону Firebird,
оставайся на Oracle.

Posted via ActualForum NNTP Server 1.4

30 сен 09, 18:42    [7726790]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
oltp
Member

Откуда:
Сообщений: 16
miksoft
oltp
Делаем truncate и электричество выключается. ППЦ.
Если "электричество выключается", то не все ли равно - не получат клиенты пустую табличку или они не получат данные с датчиков? Они же все равно ничего не получат...


Дубль три. Надо в базе всегда держать последнее состояние параметров, допустимо потерять не более 10 секунд.

oltp
Неправильным проектированием загубить можно БД на любой СУБД.
MySQL хорош тем, что у него есть движок для хранения данных только в памяти. Т.е. загрузка данных может быть сведена вообще до миллисекунд. Но этот движок не транзакционен.
Над in memory database я подумаю, спасибо за напоминание. Непонятно только , обеспечивает ли она сохранение данных при выключении электричества :) Если не обеспечивает - нужна ещё одна, для постоянных данных.

Всем: НЕ ЗАМОРАЧИВАЙТЕСЬ НА ДАТЧИКАХ. Кроме этого в БД есть ещё много всего. Не пытайтесь оптимизировать нагрузку, я создам соответствующий тред, если сам не справлюсь. Даже если убрать датчики нафиг, мои требования изложенные в первом посте всё ещё актуальны. Посоветуйте лучше что-нибудь по первому вопросу.
30 сен 09, 18:44    [7726800]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
miksoft
Member

Откуда:
Сообщений: 38918
oltp
miksoft
oltp
Делаем truncate и электричество выключается. ППЦ.
Если "электричество выключается", то не все ли равно - не получат клиенты пустую табличку или они не получат данные с датчиков? Они же все равно ничего не получат...
Дубль три. Надо в базе всегда держать последнее состояние параметров, допустимо потерять не более 10 секунд.
К базе на выключенном сервере это тоже относится???
30 сен 09, 18:48    [7726816]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
miksoft
Member

Откуда:
Сообщений: 38918
oltp
Кроме этого в БД есть ещё много всего. Не пытайтесь оптимизировать нагрузку, я создам соответствующий тред, если сам не справлюсь. Даже если убрать датчики нафиг, мои требования изложенные в первом посте всё ещё актуальны. Посоветуйте лучше что-нибудь по первому вопросу.
А про это вы ничего, кроме общих слов, не сказали.
30 сен 09, 18:49    [7726823]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
oltp
Member

Откуда:
Сообщений: 16
miksoft,

Аксиома :) Если система упадёт, упадёт она вся. Промежуточный слой тоже. Клиенты принудительно отключаются.

Требование - При включении после краша, данные в системе должны отставать не более чем на 10 секунд от предкрашевого состояния.
30 сен 09, 18:52    [7726834]     Ответить | Цитировать Сообщить модератору
 Re: Бесплатный OLTP кластер.  [new]
oltp
Member

Откуда:
Сообщений: 16
miksoft
А про это вы ничего, кроме общих слов, не сказали.
Потому что пока не могу, т.к. большая часть идей ещё в разработке.
30 сен 09, 18:54    [7726839]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Сравнение СУБД Ответить