Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
 PostgreSQL vs DB2 9.7 Express C  [new]
sanyock2
Member

Откуда:
Сообщений: 3882
Интересно при использовании в тематических поисковых движках типа mamba.ru, price.ru и т.п.
при предположительно прочих равных условиях, как оптимальность проги для соотвествующей БД, одинаковом железе, использовании db2 "currently committed" (хотя наверно конкурентность в таких условиях небольшая).

1) Какую максимальную нагрузку может выдержать бесплатный DB2, и как себя ведет PostgreSQL на подобных нагрузках на том же железе?
2)Если рассматривать бОльшую нагрузку, то на какой нагрузке стоимость железки становится сопоставимой по цене с лицензией DB2. Опять же, как себя ведет PostgreSQL на такой нагрузке?

Если не принимать во внимание различные навороты db2, не связанные с производительностью, то будет ли db2 лучше, чем PostgreSQL?
3 авг 09, 11:10    [7489831]     Ответить | Цитировать Сообщить модератору
 Re: PostgreSQL vs DB2 9.7 Express C  [new]
Yo.!
Guest
бесплатный db2 может использовать только половину, а то и четверть современного процессора (2 ядра) и только 2Gb RAM, поэтому даже если опустить флейм версионник vs блокировочник все будет зависеть от железки. чем мощнее железка тем больше преимущества постгрес. db2 значительно лучше оптимизатор, но на сайтиках обычно запросы не слишком наворочены, поэтому наврядле даже в пределах 2Gb RAM у db2 будет значительное преимущество.
3 авг 09, 11:29    [7489956]     Ответить | Цитировать Сообщить модератору
 Re: PostgreSQL vs DB2 9.7 Express C  [new]
Victor Metelitsa
Member

Откуда: Тюмень
Сообщений: 2559
Даже в пределах 2GB в пользу DB2 может сработать, например, такая фича, как автоматическое распределение памяти, обеспечив гигантскую разницу (скажем, на сортировке - а без сортировок баз практически не бывает).

Мне кажется, не стоит фиксироваться на одной СУБД. Если я правильно помню, в PostgeSQL есть слой совместимости с ораклячьим PL/SQL (откуда IBM-еры для DB2 его и взяли). В Express-C нет поддержки PL/SQL, но всё ещё доступен DB2 Migration Toolkit, который может переводить PL/SQL в диалект DB2 9.5.

Короче, я думаю, что, если при написании ограничивать себя, не пользоваться пакетами PL/SQL (в DB2 это только за деньги) и объектными типами, то можно делать более-менее переносимую систему, которая будет работать на Oracle XE, PostgreSQL и DB2 Express-C (после трансляции МТК) без особых изменений. А там можно будет и сравнить.
3 авг 09, 16:18    [7491604]     Ответить | Цитировать Сообщить модератору
 Re: PostgreSQL vs DB2 9.7 Express C  [new]
sanyock2
Member

Откуда:
Сообщений: 3882
Кстати, интересно если в db2 минимизировать кэширование через buffer pools и в то же время использовать файловую систему с обильным кэшированием операций записи на сервере с большим объемом памяти (16 и более гиг), то как это повлияет на производительность DB2 Express C, у которого тогда все 2 гига уйдут под вычислительные нужды и соединения? Чтение Linux и так всегда кэширует. Раз в 5-10 минут можно делать sync напару с архивированием логов на другой носитель. Думаю для поисково-накопительной системы потенциальная возможность потери данных за последние 5-10 минут 1 раз в несколько лет не опасна.
3 авг 09, 16:52    [7491802]     Ответить | Цитировать Сообщить модератору
 Re: PostgreSQL vs DB2 9.7 Express C  [new]
Victor Metelitsa
Member

Откуда: Тюмень
Сообщений: 2559
Посмотрел сейчас на PL/pgSQL. У DB2 9.7 PL/SQL куда более продвинут, да и её родной язык в 9.5 попродвинутее будет. А это значит, что с трансляцией PostgreSQL -> DB2 посредством MTK особых проблем быть не должно.

Про пользу от кеширования DB2-шных файлов ничего сказать не могу. Разве то, что теоретически это не должно сильно влиять на сохранность данных (хотя я всё равно бы рисковать не стал). Ибо, кешировать ли средствами ОС (или нет) табличные пространства, указывается при их создании (т.е. СУБД в курсе), а транзакционные логи всё равно должны записываться синхронно.
3 авг 09, 17:06    [7491869]     Ответить | Цитировать Сообщить модератору
 Re: PostgreSQL vs DB2 9.7 Express C  [new]
Yo.!
Guest
sanyock2
и в то же время использовать файловую систему с обильным кэшированием операций записи на сервере с большим объемом памяти (16 и более гиг), то как это повлияет на производительность DB2 Express C

тогда и многоблочное чтение придется отключать, но подозреваю, что оптимизатор такое не оценит, планы то он строит с учетом знаний сколько блоков таблицы у него в буферном. без многоблочного чтения, еще и с уверенностью, что придется читать с HDD думаю db2 начнет строить весьма загадочные планы ...

ЗЫ. вырубание буферного кеша к потерям данных не должно приводить.
3 авг 09, 18:09    [7492244]     Ответить | Цитировать Сообщить модератору
 Re: PostgreSQL vs DB2 9.7 Express C  [new]
sanyock2
Member

Откуда:
Сообщений: 3882
некоторое время, можно пытаться поддерживать объем памяти немного больший объема БД

к потере данных может привесьти выход из строя оборудования, в т.ч. резервного питания, при
кэшировании записи в файловых системах типа XFS, при объеме кэша >= объем БД

с другой стороны в такой конфигурации даже DB2 Express С наверно будет работать побыстрее, интересно насколько?
3 авг 09, 18:17    [7492286]     Ответить | Цитировать Сообщить модератору
 Re: PostgreSQL vs DB2 9.7 Express C  [new]
Yo.!
Guest
sanyock2

к потере данных может привесьти выход из строя оборудования, в т.ч. резервного питания, при
кэшировании записи в файловых системах типа XFS, при объеме кэша >= объем БД

не может. Write Ahead Log для того собственно и создавался, пока запись не пройдет в лог, транзакция не закомититься. кеш ФС и буферный это совсем другая история, логу никаким боком.

sanyock2
с другой стороны в такой конфигурации даже DB2 Express С наверно будет работать побыстрее, интересно насколько?

не факт. такой изврат мерить нужно. вообще мысль с PL/pgSQL была очень к месту (я всегда говорил даешь pl/sql стандарт вместо ansi каши), при таком расскладе когда бороться с извратом надоест - будет возможность перехать на взрослую редакцию оракла или db2 (если там миграшен кит действительно работает). хотя имхо такие вещи вешают на стандартный хостинг и не заморачиваются с лицензиями.
3 авг 09, 18:39    [7492350]     Ответить | Цитировать Сообщить модератору
 Re: PostgreSQL vs DB2 9.7 Express C  [new]
sanyock2
Member

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

Поэтому сразу предложил переносить неактивные логи на другой носитель (например с отключенным кэшированием записи и файловой системой ext3) достаточно часто.
3 авг 09, 18:55    [7492394]     Ответить | Цитировать Сообщить модератору
 Re: PostgreSQL vs DB2 9.7 Express C  [new]
sanyock2
Member

Откуда:
Сообщений: 3882
кстати, если активные логи изначально писать на другое устройство без кэширования записи,
то насколько часто будет осуществляться аппаратная запись на массив с файлами БД?
Это будет определяться только настройками FS или DB2 будет сама делать "sync" для отдельно взятых файлов (либо для всей файловой системы) ?
3 авг 09, 19:07    [7492426]     Ответить | Цитировать Сообщить модератору
 Re: PostgreSQL vs DB2 9.7 Express C  [new]
Victor Metelitsa
Member

Откуда: Тюмень
Сообщений: 2559
MTK работает... в определённых пределах. Возьмите с http://www14.software.ibm.com/webapp/download/search.jsp?pn=DB2+Migration+Toolkit и проверьте на своей базе. Сама DB2 для проверки не необходима.

(Относительно) небольшое Java-приложение вытянет исходники из Oracle'ной базы (не обязательно оттуда; можно взять просто текстовый скрипт, но желательно, чтобы там был весь код, включая create table) и переработает их (с комментариями - что удалось, а что нет).

К сожалению... не вполне user friendly... может потребоваться править батник, чтобы добавить памяти в кучу... но в конечном счёте это ерунда.

"Родной" DB2 SQL PL версии 9.7 существенно превосходит его же версии 9.5, вполне соответствуя DB2 PL/SQL 9.7.

Про работу DB2 с линуховыми файлами, извините, мне лень читать, я всегда под виндой и прямо сейчас в отпуске. Можете тут посмотреть: ftp://ftp.software.ibm.com/ps/products/db2/info/vr97/pdf/en_US/
3 авг 09, 19:50    [7492487]     Ответить | Цитировать Сообщить модератору
 Re: PostgreSQL vs DB2 9.7 Express C  [new]
Victor Metelitsa
Member

Откуда: Тюмень
Сообщений: 2559
наиболее вероятные места:

ftp://ftp.software.ibm.com/ps/products/db2/info/vr97/pdf/en_US/DB2AdminGettingStarted-db2xpe970.pdf
ftp://ftp.software.ibm.com/ps/products/db2/info/vr97/pdf/en_US/DB2AdminConfig-db2dae970.pdf
ftp://ftp.software.ibm.com/ps/products/db2/info/vr97/pdf/en_US/qs-db2-server.pdf
ftp://ftp.software.ibm.com/ps/products/db2/info/vr97/pdf/en_US/DB2PerfTuneTroubleshoot-db2d3e970.pdf
ftp://ftp.software.ibm.com/ps/products/db2/info/vr97/pdf/en_US/DB2Upgrading-db2upge970.pdf
ftp://ftp.software.ibm.com/ps/products/db2/info/vr97/pdf/en_US/DB2WhatsNew-db2q0e970.pdf
3 авг 09, 19:54    [7492498]     Ответить | Цитировать Сообщить модератору
Все форумы / Сравнение СУБД Ответить