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

Откуда:
Сообщений: 26
Выбираю какую базу данных использовать. Предполагается, что количество записей будет более 100 миллионов , скорее всего в районе 500 миллионов, но точно не более 1 миллиарда. Структура базы очень простая, первая таблица ~ 10-50 миллионов записей, вторая ~100-500 миллионов записей. Между записями свзязь many-to-many.

Наиболее частый запрос - выбрать запись (либо набор записей не более чем 10к), либо из первой, либо из второй таблицы, и связанные с ней значения из второй.

Размер записи мал ~10 полей. Нагрузка также невелика, не более 100 запросов в секунду.

Пока склоняюсь в сторону PostgeSQL, но боюсь что может не справиться.
27 апр 08, 19:50    [5601817]     Ответить | Цитировать Сообщить модератору
 Re: База данных для Linux. Сотни миллионов записей.  [new]
Yo.!
Guest
структура простая, значит навороченость оптимизатора большой роли не сыграет и скорострельность будет упиратся в i/o. Postgres неплохой кандидат, но постгрес и другие опен соурс субд не умеют многоблочного чтения, что похоже на вашей задаче может сильно помочь. так что смотрите на платный оракл или db2 luw (100 запросов в секунду наверно не оставляет шансов бесплатной редакции db2 express-C)
27 апр 08, 20:41    [5601917]     Ответить | Цитировать Сообщить модератору
 Re: База данных для Linux. Сотни миллионов записей.  [new]
DPH3
Guest
Гм, а что помешает Express C на таких объемах дать 100 запросов в секунду?
Я гонял ExpressC на весьма слабом сервере, пару сотен запросов в секунду без проблем для десятков млн. записей (больше не гонял, увы).

Тут скорее стоит думать о необходимости 24*7 и решать, что проще - купить за 6K$ лицензию с HADR для ExpressC или настраивать Postgress ручками (мне кажется, что купить будет дешевле - но это для каждого конкретного случая нужно решать).

Впрочем, все едино, нужно поставить всех кандидатов (благо ставится легко) и погонять даже на коробочных настройках. Или исходить из того, какой DBA доступнее :)
28 апр 08, 00:18    [5602301]     Ответить | Цитировать Сообщить модератору
 Re: База данных для Linux. Сотни миллионов записей.  [new]
reality
Member

Откуда:
Сообщений: 26
500 миллионов - 1 миллиард - это цифра, которая вероятнее всего будет достигнута при работе приложения в течении довольно длительного времени. То есть прямо вот сразу держать такое количество записей задача не стоит, но предусмотреть такую ситуацию все таки надо. В начале количество записей будет измеряться десятками миллионов. Завтра буду ставить и тестировать DB2 Express-c.

Насколько я понимаю, в случае нехватки возможностей express-c версии, переход на полноценную выполняется элементарно?
28 апр 08, 01:08    [5602374]     Ответить | Цитировать Сообщить модератору
 Re: DB2 vs. PostgreSQL vs. MySQL  [new]
Favn
Member

Откуда:
Сообщений: 585
100 запосов на чтение в секунду - для Express-C (на хорошем железе) совсем немного. Даже на запись - немного. Локальный коннект (напр, через сервер приложений на том же серевре) м.б. быстрее. Есть некоторые ускоряющие обработку хитрости, имеет смысл заглянуть в профильную конфу по соседству.
Ставить имеет смысл Express-C 9.5 и перед тестами прогнать на БД Configuration Advisor (из Control Center, несколько тыков мышом), выдав ему 100% ресурсов - с настройками по умолчанию DB2 скромничает :)
Если база большая и опыт в администрировании есть, можно попробовать Express-C 9.1.2 - ему доступно вдвое больше ресурсов.

На все до Enterprise переход тривиален. Можно сказать, что основные отличия между "младшими" версиями - в файле лицензии :)
28 апр 08, 14:32    [5604255]     Ответить | Цитировать Сообщить модератору
 Re: База данных для Linux. Сотни миллионов записей.  [new]
VoDA
Member

Откуда: сеРверная пальмира :)
Сообщений: 4898
reality
Пока склоняюсь в сторону PostgeSQL, но боюсь что может не справиться.
А вы не бойтесь, а сделайте тест.

Без реальной проверки ничего сказать нельзя. А сколько ориентировочно будут занимать места оперативные данные? Если не много (до 16 Гб), то можно попытаться за счет большого кэша держать все данные в памяти.


Но нужно проверять и тестировать
28 апр 08, 14:44    [5604314]     Ответить | Цитировать Сообщить модератору
 Re: База данных для Linux. Сотни миллионов записей.  [new]
miksoft
Member

Откуда:
Сообщений: 38920
reality
Между записями свзязь many-to-many.
И сколько таких связей?
28 апр 08, 18:14    [5605580]     Ответить | Цитировать Сообщить модератору
 Re: База данных для Linux. Сотни миллионов записей.  [new]
Краем_уха_слышал
Guest
HBase
28 апр 08, 18:24    [5605604]     Ответить | Цитировать Сообщить модератору
 Re: База данных для Linux. Сотни миллионов записей.  [new]
Yo.!
Guest
DPH3
Гм, а что помешает Express C на таких объемах дать 100 запросов в секунду?

ну, например ограничение в 2Gb RAM которые db2 express-c сумеет использовать. да и ограничение в пол процессора не скажется положительно на перформенс.
29 апр 08, 09:49    [5606575]     Ответить | Цитировать Сообщить модератору
 Re: База данных для Linux. Сотни миллионов записей.  [new]
ДжекНепотрошитель
Member

Откуда: Донецк
Сообщений: 5308
Кстати, а связочка many-to-many на таких объемах сколько будет записей тянуть, ориентировочно?
29 апр 08, 15:24    [5609254]     Ответить | Цитировать Сообщить модератору
 Re: База данных для Linux. Сотни миллионов записей.  [new]
DPH3
Guest
Yo.!
DPH3
Гм, а что помешает Express C на таких объемах дать 100 запросов в секунду?

ну, например ограничение в 2Gb RAM которые db2 express-c сумеет использовать. да и ограничение в пол процессора не скажется положительно на перформенс.


Ну, у меня 200 запросов в секунду на паре млн. записей было на ноутбуке с одним ядром и 1 гигом памяти ;) Так что как-нибудь получится :)
4 май 08, 21:51    [5623446]     Ответить | Цитировать Сообщить модератору
 Re: База данных для Linux. Сотни миллионов записей.  [new]
al-veliev
Member

Откуда:
Сообщений: 60
reality
Выбираю какую базу данных использовать. Предполагается, что количество записей будет более 100 миллионов , скорее всего в районе 500 миллионов, но точно не более 1 миллиарда. Структура базы очень простая, первая таблица ~ 10-50 миллионов записей, вторая ~100-500 миллионов записей. Между записями свзязь many-to-many.

Наиболее частый запрос - выбрать запись (либо набор записей не более чем 10к), либо из первой, либо из второй таблицы, и связанные с ней значения из второй.

Размер записи мал ~10 полей. Нагрузка также невелика, не более 100 запросов в секунду.

Пока склоняюсь в сторону PostgeSQL, но боюсь что может не справиться.


Используйте GT.M без сомнений!

На таком объёме я её вчера испытывал.
(Результат можете посмотреть на Google comp.lang.mumps
тема "I am afraid of own routine!")

Как CGI шлюз это просто супер. Исходники смогу Вам переслать по e-mail
8 окт 08, 00:42    [6276812]     Ответить | Цитировать Сообщить модератору
 Re: База данных для Linux. Сотни миллионов записей.  [new]
Mikle83
Member

Откуда: Санкт-Петербург
Сообщений: 659
попробуйте посмотреть в сторону хранилища данных Sybase IQ... Выборки будут оч. скоростными, а еще если и дерномализуете БД :)... но вот все остальное...
8 окт 08, 11:51    [6278167]     Ответить | Цитировать Сообщить модератору
 Re: База данных для Linux. Сотни миллионов записей.  [new]
Delphi_coder
Member

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

ну, например ограничение в 2Gb RAM которые db2 express-c сумеет использовать. да и ограничение в пол процессора не скажется положительно на перформенс.


Разве не 4Gb?
9 окт 08, 19:22    [6287167]     Ответить | Цитировать Сообщить модератору
 Re: База данных для Linux. Сотни миллионов записей.  [new]
Абсолют
Member

Откуда:
Сообщений: 2128
Блог
Delphi_coder
Yo.!

ну, например ограничение в 2Gb RAM которые db2 express-c сумеет использовать. да и ограничение в пол процессора не скажется положительно на перформенс.


Разве не 4Gb?

Неа.
Db2 одназначно! 200 запросов в секунду - легко.
10 окт 08, 18:41    [6292416]     Ответить | Цитировать Сообщить модератору
 Re: База данных для Linux. Сотни миллионов записей.  [new]
kdv
Member

Откуда: iBase.ru
Сообщений: 30273
кстати, что-то я пропустил. ну две таблицы - ладно. ну связь много ко многим - ладно. но где третья таблица? которая эту m-m связь обеспечивает? :-)
13 окт 08, 00:15    [6295370]     Ответить | Цитировать Сообщить модератору
 Re: База данных для Linux. Сотни миллионов записей.  [new]
Favn
Member

Откуда:
Сообщений: 585
Абсолют
Delphi_coder
Разве не 4Gb?

Неа.
Db2 одназначно! 200 запросов в секунду - легко.
4Gb - у 9.1.2, но надо париться с настройками. 2Gb - у 9.5 с автоматическим администрированием. У нас 9.5 легко тянет и 400 в сек. + немного аналитики, причем нагрузка сервера никакая, т.е. явно может куда больше.
13 окт 08, 14:36    [6298215]     Ответить | Цитировать Сообщить модератору
 Re: База данных для Linux. Сотни миллионов записей.  [new]
Serik Akhmetov
Member

Откуда:
Сообщений: 565
PostgreSQL,
если правильно приготовить, отлично справляется с хранением астрономических данных
(т.е. БД астрономов, т.е. сотни миллионов)
24 окт 08, 13:43    [6352156]     Ответить | Цитировать Сообщить модератору
Все форумы / Сравнение СУБД Ответить