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

Откуда:
Сообщений: 7
Вообщем расклад такой - таблица, в ней следующие поля - INT(11) INT(20) VARCHAR(6) VARCHAR(15).
В таблицу будет примерно 100-200 инсертов в секунду, и 5-10 селектов в секунду (селекты большие, до 10к строк). Нужна субд способная всё это переварить с минимальными затратами процессорного времени, и при этом иметь вменяемый размер бд . Записей в таблице будет несколько миллиардов . Пока что выбор пал на MongoDB, но уж очень прожорливый он что касается дискового пространства. Спасибо.
5 апр 12, 00:22    [12368000]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
Siemargl
Member

Откуда: 010100
Сообщений: 6645
Wol_fi
Пока что выбор пал на MongoDB, но уж очень прожорливый он что касается дискового пространства. Спасибо.

Это не так. BSON достаточно компактный формат.
5 апр 12, 00:28    [12368018]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
Dimitry Sibiryakov
Member

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

Wol_fi
В таблицу будет примерно 100-200 инсертов в секунду, и 5-10 селектов в секунду (селекты
большие, до 10к строк).

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

Posted via ActualForum NNTP Server 1.5

5 апр 12, 00:45    [12368059]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
Alexander Ryndin
Member

Откуда:
Сообщений: 4919
Блог
Какая-то прям мода на MongoDB. Коллективное помешательство. :)
5 апр 12, 01:17    [12368126]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
Евгений Мирошниченко aka mir
Member

Откуда:
Сообщений: 62
Wol_fi
Нужна субд способная всё это переварить с минимальными затратами процессорного времени, и при этом иметь вменяемый размер бд

Поскольку вас волнует только скорость вставки и размер БД, идеальный выбор для вас -- просто писать в файл. Наивысшая скорость и компактность.
5 апр 12, 05:53    [12368318]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
Wol_fi
Member

Откуда:
Сообщений: 7
Евгений Мирошниченко aka mir
Поскольку вас волнует только скорость вставки и размер БД, идеальный выбор для вас -- просто писать в файл. Наивысшая скорость и компактность.

А самое главное асинхронность, попробуйте одновременно со 100 клиентов писать в файл, что получите? Или пардон, их в очередь ставить как на почте России?:)
5 апр 12, 06:40    [12368337]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
Siemargl
Member

Откуда: 010100
Сообщений: 6645
Wol_fi
Евгений Мирошниченко aka mir
Поскольку вас волнует только скорость вставки и размер БД, идеальный выбор для вас -- просто писать в файл. Наивысшая скорость и компактность.

А самое главное асинхронность, попробуйте одновременно со 100 клиентов писать в файл, что получите? Или пардон, их в очередь ставить как на почте России?:)
Есть стандартные приемы. Думаешь СУБД не в файл пишут, а параллелят запись с помощью святого духа? )))
5 апр 12, 09:27    [12368580]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
Dimitry Sibiryakov
Member

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

Wol_fi
Или пардон, их в очередь ставить как на почте России?:)

А хотя бы и ставить. На 200 записях в секунду это совершенно пофиг.

Posted via ActualForum NNTP Server 1.5

5 апр 12, 12:28    [12369706]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
Сергей Арсеньев
Member

Откуда:
Сообщений: 4118
Dimitry Sibiryakov
На 200 записях в секунду это совершенно пофиг.

А 10 фулсканов по 50ГБ каждый?
5 апр 12, 17:09    [12371800]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
SergSuper
Member

Откуда: SPb
Сообщений: 5488
Сергей Арсеньев
Dimitry Sibiryakov
На 200 записях в секунду это совершенно пофиг.

А 10 фулсканов по 50ГБ каждый?
вроде топикстартеру читать не нужно, только писать
5 апр 12, 18:11    [12372281]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
MasterZiv
Member

Откуда: Питер
Сообщений: 34709


> вроде топикстартеру читать не нужно, только писать

Тогда пусть пишет в /dev/null и не парицо!
Производительность будет огого!

Posted via ActualForum NNTP Server 1.5

5 апр 12, 18:13    [12372293]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
servit
Member

Откуда: г. Кишинёв, Республика Молдова
Сообщений: 3148
Блог
SergSuper
вроде топикстартеру читать не нужно, только писать
Wol_fi
В таблицу будет примерно 100-200 инсертов в секунду, и 5-10 селектов в секунду (селекты большие, до 10к строк).
5 апр 12, 18:15    [12372308]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
Сергей Арсеньев
Member

Откуда:
Сообщений: 4118
SergSuper
вроде топикстартеру читать не нужно, только писать

Wol_fi
и 5-10 селектов в секунду
5 апр 12, 18:15    [12372309]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
servit
Member

Откуда: г. Кишинёв, Республика Молдова
Сообщений: 3148
Блог
Wol_fi
Евгений Мирошниченко aka mir
Поскольку вас волнует только скорость вставки и размер БД, идеальный выбор для вас -- просто писать в файл. Наивысшая скорость и компактность.

А самое главное асинхронность, попробуйте одновременно со 100 клиентов писать в файл, что получите? Или пардон, их в очередь ставить как на почте России?:)
мультиплеерная игра без сокетов и p2p (общение через файл, расположенный на сетевом ресурсе)
5 апр 12, 18:24    [12372373]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
Dimitry Sibiryakov
Member

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

Сергей Арсеньев
А 10 фулсканов по 50ГБ каждый?

Зачем "фул"? Мой телепатер говорит, что аффтару нужны исключительно выборки класса "Х
последних записей".

Posted via ActualForum NNTP Server 1.5

5 апр 12, 18:43    [12372480]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
Wol_fi
Member

Откуда:
Сообщений: 7
Siemargl
Wol_fi
пропущено...

А самое главное асинхронность, попробуйте одновременно со 100 клиентов писать в файл, что получите? Или пардон, их в очередь ставить как на почте России?:)
Есть стандартные приемы. Думаешь СУБД не в файл пишут, а параллелят запись с помощью святого духа? )))

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

Dimitry Sibiryakov

Зачем "фул"? Мой телепатер говорит, что аффтару нужны исключительно выборки класса "Х
последних записей".


Ваш телепатер барахлит, небось на aliexpress заказывали?:)

По поводу выборок - селекты могут быть как и по последним записям, так и WHERE `x`<10 AND `y`='blablabla' AND z>100

Чтобы было понятней - имеется api веб-ресурса с нагрузкой примерно 100-200 запросов в секунду, нужно записывать каждый запрос (ip, время, id-пользователя, etc), ну и далее уже из этих записей работать некоторым службам.
5 апр 12, 20:18    [12372887]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
SERG1257
Member

Откуда:
Сообщений: 2934
Wol_fi
По поводу выборок - селекты могут быть как и по последним записям, так и WHERE `x`<10 AND `y`='blablabla' AND z>100
То бишь инициатор выборок человек (не робот) и доступа к записям последней секунды не требуется.
Тогда самый простой путь: вебсервер кидает все запросы в журнал, который периодически оптом грузится в любую СУБД для анализа.
Хотя вам лично я посоветую другой путь: возьмите любую экзотическую базу и подробно напишите грабли на которые наступили.
5 апр 12, 20:41    [12372971]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
Alexander Ryndin
Member

Откуда:
Сообщений: 4919
Блог
SERG1257
Wol_fi
По поводу выборок - селекты могут быть как и по последним записям, так и WHERE `x`<10 AND `y`='blablabla' AND z>100
То бишь инициатор выборок человек (не робот) и доступа к записям последней секунды не требуется.
Тогда самый простой путь: вебсервер кидает все запросы в журнал, который периодически оптом грузится в любую СУБД для анализа.
Хотя вам лично я посоветую другой путь: возьмите любую экзотическую базу и подробно напишите грабли на которые наступили.
Да, да. Поддерживаю )
5 апр 12, 21:35    [12373163]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
Wol_fi
Member

Откуда:
Сообщений: 7
SERG1257
Wol_fi
По поводу выборок - селекты могут быть как и по последним записям, так и WHERE `x`<10 AND `y`='blablabla' AND z>100
То бишь инициатор выборок человек (не робот) и доступа к записям последней секунды не требуется.
Тогда самый простой путь: вебсервер кидает все запросы в журнал, который периодически оптом грузится в любую СУБД для анализа.
Хотя вам лично я посоветую другой путь: возьмите любую экзотическую базу и подробно напишите грабли на которые наступили.

Тоже подумал сначала в эту сторону, но сервис коммерческий, a заказчик не очень щедрый на железные ресурсы:) Каждый запрос тянет финансовую транзакцию, которая тянет статистику и биллинг, то есть данные могут понадобится real-time до секунды (пользователя запросил выплату, или статистику), и при этом весь этот механизм должен тянуть сервер Intel® Core™ i7-2600 quad core с 6тб дискового пространства и 16гб оперативки. Бекенд сервиса крутится на PHP и мускуле. Возможности все переписать с нуля на чём-то, что шустрее php - нет, взялся за недоделанную предыдущими исполнителями работу. Так вот смысл в том, что бекендом сервер и так постоянно нагружен, нужно вклинить в него при этом статистику, чтобы не слёг от перегруза. Понимаю что по нормальному, нужно отделить мух от котлет - бизнес-логику на один сервер, бд на другой, статистику на третий - но увы сервер тут один. Поэтому собственно и интересуюсь, какая субд справится с поставленной задачей с минимальным затратами ресурсов.
5 апр 12, 21:36    [12373166]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
SERG1257
Member

Откуда:
Сообщений: 2934
Wol_fi
какая субд справится с поставленной задачей
MySQL ибо оно уже стоит. ЛЮБАЯ другая субд это риск.
Wol_fi
данные могут понадобится real-time до секунды
Могут или понадобятся решает заказчик и только он. Нормальный вменяемый пользователь поймет, если большими буквами будет написано что данные доступны только до последнего часа или минуты (минута уже достаточно хороший интервал буферизации)
Wol_fi
Тоже подумал сначала в эту сторону, но сервис коммерческий, a заказчик не очень щедрый на железные ресурсы:)
В отличии от переделок софта, затраты на железо гораздо надежнее. Вероятность поймать проблемы после установки нового сервера (процессора, памяти, диска) конечно же есть, но она не сравнима с вероятностью огрести после установки патча или новой субд. И если заказчик на это не идет ТО ЗАКАЗЧИКА ДАННАЯ ПРОБЛЕМА НЕ ТРОГАЕТ.
Признайтесь честно, вам захотелось потрогать этот MongoDB в условиях приближенных к боевым.
5 апр 12, 22:15    [12373278]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
Wol_fi
Member

Откуда:
Сообщений: 7
SERG1257
Wol_fi
какая субд справится с поставленной задачей
MySQL ибо оно уже стоит. ЛЮБАЯ другая субд это риск.
Wol_fi
данные могут понадобится real-time до секунды
Могут или понадобятся решает заказчик и только он. Нормальный вменяемый пользователь поймет, если большими буквами будет написано что данные доступны только до последнего часа или минуты (минута уже достаточно хороший интервал буферизации)
Wol_fi
Тоже подумал сначала в эту сторону, но сервис коммерческий, a заказчик не очень щедрый на железные ресурсы:)
В отличии от переделок софта, затраты на железо гораздо надежнее. Вероятность поймать проблемы после установки нового сервера (процессора, памяти, диска) конечно же есть, но она не сравнима с вероятностью огрести после установки патча или новой субд. И если заказчик на это не идет ТО ЗАКАЗЧИКА ДАННАЯ ПРОБЛЕМА НЕ ТРОГАЕТ.
Признайтесь честно, вам захотелось потрогать этот MongoDB в условиях приближенных к боевым.

Тонко:)
Трогайте
$connection = new Mongo();
$db = $connection->test;
$time_start = microtime();
for($i=0;$i<=100000000;$i++)
{
$db->insert(array(
'a' => mt_rand(),
'b' => md5(chr(mt_rand(33,126)))
));
}
echo microtime() - $time_start;

Вы видимо работаете в параллельной вселенной. Так как в этой адекватный заказчик, понимающий все тонкости попадается редко. Это к сожалению не такой случай. А мускульные InnoDB и MyISAM очень частенько отказывают|ложатся при больших размерах, что в этом случае не очень хорошо.
5 апр 12, 23:04    [12373454]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
автор
$connection = new Mongo();
$db = $connection->test;
$time_start = microtime();
for($i=0;$i<=100000000;$i++)
{
$db->insert(array(
'a' => mt_rand(),
'b' => md5(chr(mt_rand(33,126)))
));
}
echo microtime() - $time_start;


Интересно, что ЭТИМ пытались измерить...
5 апр 12, 23:22    [12373522]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Wol_fi
Чтобы было понятней - имеется api веб-ресурса с нагрузкой примерно 100-200 запросов в секунду, нужно записывать каждый запрос (ip, время, id-пользователя, etc), ну и далее уже из этих записей работать некоторым службам.


У меня дежавю, или это уже недавно где-то было? Еще один студент с курсачем?
5 апр 12, 23:31    [12373546]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Wol_fi
должен тянуть сервер Intel® Core™ i7-2600 quad core...


Чего, простите, Вы назвали сервером???
5 апр 12, 23:46    [12373580]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте СУБД  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Wol_fi
взялся за недоделанную предыдущими исполнителями работу.


Напрасно.. работа не Вашего уровня...

Wol_fi
Понимаю


Вряд ли...
5 апр 12, 23:48    [12373587]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3 4   вперед  Ctrl      все
Все форумы / Сравнение СУБД Ответить