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

Откуда:
Сообщений: 19
Добрый день! Посоветуйте, пожалуйста, что будет лучше в данной ситуации:

В БД мало таблиц (<10), основная нагрузка ляжет на 1.
Характер нагрузки: много вставок по одной строке, много обновлений по одной строке, редко - большие запросы на выборку. Планируется, что нагрузка будет плавно возрастать от минимальной (меньше 1 запроса в секунду) до ... (а вот тут уже сложно сказать, насколько она вырастет)
Надежность тоже немаловажный фактор, ибо каждая строка - это чьи-то деньги, пусть и небольшие.
Начальство расставило приоритеты так: сделать сначала быстро, потом надёжно.
У меня есть кое-какой опыт в работе с MySQL (знаю команду EXPLAIN и для чего она используется ;) ), с PostgreSQL опыта 0.

Я лично вижу три варианта развития событий:
1. Я делаю всё на MySQL
2. Я делаю всё на MySQL, по мере сил закладываю возможность миграции на PostgreSQL
3. Забиваю на мнение начальства и делаю всё в PostgreSQL
Какие плюсы и минусы я получу от каждого варианта?
20 окт 08, 02:00    [6327298]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
Sad Spirit
Member

Откуда:
Сообщений: 569
Серго44

2. Я делаю всё на MySQL, по мере сил закладываю возможность миграции на PostgreSQL

Вот этот вариант рекомендую исключить сразу. А то потом как всегда будет: "PostgreSQL --- г-но, потому что криво написанное и кое-как оптимизированное под MySQL приложение на ём тормозит!!!"
20 окт 08, 12:13    [6328727]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
Sad Spirit
Member

Откуда:
Сообщений: 569
Серго44

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

Если речь о деньгах, значит в MySQL придётся использовать транзакционный движок. Единственный стабильный на данный момент --- InnoDB. InnoDB принадлежит фирме Oracle.

=> Разрабатывать под MySQL --- надеяться на добрую волю фирмы Oracle. :)
20 окт 08, 12:17    [6328743]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
Серго44
Member

Откуда:
Сообщений: 19
Sad Spirit
криво написанное и кое-как оптимизированное под MySQL приложение


Спасибо, конечно, за заочную, но, несомненно, объективную оценку моих способностей, но вопрос был немножко в другом: стоит ли напрягаться и использовать специфические приемы оптимизации под MySQL, когда можно написать на "чистом" SQL, который при небольших нагрузках будет и так приемлимо работать, а когда всё упрётся в производительность - с минимальными усилиями перехать на PostgreSQL и затачивать уже под неё?
20 окт 08, 12:36    [6328874]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
miksoft
Member

Откуда:
Сообщений: 38919
я бы посоветовал PostgreSQL, т.к. MySQL может не подойти по лицензионным соображениям.
20 окт 08, 13:03    [6329061]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
Кифирчик
Member

Откуда: СПб
Сообщений: 939
скорей всего, производительность и той и другой СУБД упрётся в сокорость жесткого диска... по этому если вдруг и начнут тормозить, то примерно одинаково...

PostgreSQL и бесплатней, и круче чем mySQL... что мешает вам писать на "чистом SQL" сразу под постгрис? ну дня два максимум на установку, настройку IDE, опробование, разобраться с компанентами...
по мере написания, будете больше узновать постгрис, и пробовать под него затачивать
20 окт 08, 13:09    [6329099]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
Серго44
Member

Откуда:
Сообщений: 19
Кифирчик
что мешает вам писать на "чистом SQL" сразу под постгрис?

Дело в том, что есть уже настроенный сервер с MySQL, перевод его на PostgreSQL потребует некоторого количества денег, причем необходимость перевода нужно обосновать сейчас. На своей машине, конечно, поставить сервер проблем нет
20 окт 08, 13:37    [6329331]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
Кифирчик
Member

Откуда: СПб
Сообщений: 939
Серго44
Дело в том, что есть уже настроенный сервер с MySQL, перевод его на PostgreSQL потребует некоторого количества денег, причем необходимость перевода нужно обосновать сейчас

самый главный аргумент, это то, что MySQL не такой уж и лицензионно чистый (особенно, как уже подсказали, InnoDB)
второй аргумент: постгрис - более функциональный, ссылочная целостность, транзакции, схемы... можно сказать, это другой "класс" СУБД. И когда дело касается денежек, то эти фенечки (хотябы таже проверка ссылочной целостности) очень даже пригодятся, важна "надёжность".

если развивать ИС дальше, это более перспективная СУБД (ИМХО)

если писать на чистом SQL, то разницы особой не будет...

я, когда начал писать на постгрисе (после MySQL) долго плевался... но в принципе за неделю разобрался в особенностях. в соседнем разделе всё расжеванно
20 окт 08, 16:15    [6330557]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
MasterZiv
Member

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

Кифирчик wrote:

> самый главный аргумент, это то, что MySQL не такой уж и лицензионно
> чистый (особенно, как уже подсказали, InnoDB)
> второй аргумент: постгрис - более функциональный, ссылочная целостность,
> транзакции, схемы... можно сказать, это другой "класс" СУБД.

+1
> если развивать ИС дальше, это более перспективная СУБД (ИМХО)
+1

+ ничего почти не бывает на "чистом SQL".

> я, когда начал писать на постгрисе (после MySQL) долго плевался... но в
> принципе за неделю разобрался в особенностях. в соседнем разделе всё
> расжеванно

Ты бы объяснил, в какую сторону плевался

Posted via ActualForum NNTP Server 1.4

20 окт 08, 20:18    [6331905]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
DPH
Guest
Если чьи-то деньги, то я бы вообще делал на DB2 Express C :)
Денег не стоит, поддержка (с репликацией и HADR) стоит копейки (а аналога HADR, насколько я помню, в Postgress нет вообще - а для финансовых систем это может быть существенно). Ну и надежность, наверно, наивысшая на рынке.
20 окт 08, 23:19    [6332234]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
LeXa NalBat
Member

Откуда: Москва
Сообщений: 2892
Серго44
Я лично вижу три варианта развития событий:
1. Я делаю всё на MySQL
2. Я делаю всё на MySQL, по мере сил закладываю возможность миграции на PostgreSQL
3. Забиваю на мнение начальства и делаю всё в PostgreSQL
Кроме второго варианта, потому что оптимизировать приложение для работы с двумя СУБД сложнее, чем с одной.
21 окт 08, 14:45    [6335288]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
Sad Spirit
Member

Откуда:
Сообщений: 569
Серго44

...вопрос был немножко в другом: стоит ли напрягаться и использовать специфические приемы оптимизации под MySQL, когда можно написать на "чистом" SQL...

Для того, чтобы нормально написать на "чистом" SQL, надо хорошо понимать особенности всех баз, под которые пишешь. А иначе --- см. выше.
21 окт 08, 21:58    [6337513]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
Абсолют
Member

Откуда:
Сообщений: 2128
Блог
DPH
Если чьи-то деньги, то я бы вообще делал на DB2 Express C :)
Денег не стоит, поддержка (с репликацией и HADR) стоит копейки (а аналога HADR, насколько я помню, в Postgress нет вообще - а для финансовых систем это может быть существенно). Ну и надежность, наверно, наивысшая на рынке.

+1024.

А из mySql и Postgres'a только потсргресс. Хорошие факты сказал Кифирчик.
22 окт 08, 15:03    [6341141]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
Серго44
Member

Откуда:
Сообщений: 19
Так, ну более-менее картина вырисовывается, большое спасибо всем за советы.

А вообще, теоретически "версионник" PostgreSQL должен быть быстрее "блокировочника" MySQL на многочисленных вставках одиночных строк или с движком InnoDB эта разница будет незначительна? У кого-нибудь был опыт использования таких систем?
22 окт 08, 15:20    [6341313]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
MasterZiv
Member

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

Серго44 wrote:

> А вообще, теоретически "версионник" PostgreSQL должен быть быстрее
> "блокировочника" MySQL на многочисленных вставках одиночных строк

Нет, никто никому не должен.

или с
> движком InnoDB эта разница будет незначительна?

InnoDB тоже версионник.
Правда, немного другой, чем PG, насколько я знаю.

Posted via ActualForum NNTP Server 1.4

22 окт 08, 15:53    [6341631]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
тыц
Member

Откуда: центральная нигерия
Сообщений: 4214
Серго44
А вообще, теоретически "версионник" PostgreSQL должен быть быстрее "блокировочника" MySQL на многочисленных вставках одиночных строк
нет по вставке одиночных строк и селекту mysql работает быстрее всех, и так и должно быть в теории(никакого тебе redo, undo), другое дело что транзакции myisam не поддерживает
22 окт 08, 17:32    [6342439]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
Dimitry Sibiryakov
Member

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

тыц

нет по вставке одиночных строк и селекту mysql работает быстрее всех, и
так и должно быть в теории(никакого тебе redo, undo), другое дело что
транзакции myisam не поддерживает

А потому на время вставки или модификации лочит насмерть всю таблицу,
так что пока идёт вставка, выборки стоят как вкопанные. Именно на это
жаловался недавно STE: https://www.sql.ru/forum/actualthread.aspx?tid=600836

Posted via ActualForum NNTP Server 1.4

22 окт 08, 19:20    [6343028]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
тыц
Member

Откуда: центральная нигерия
Сообщений: 4214
Dimitry Sibiryakov
А потому на время вставки или модификации лочит насмерть всю таблицу,
так что пока идёт вставка, выборки стоят как вкопанные. Именно на это
жаловался недавно STE: https://www.sql.ru/forum/actualthread.aspx?tid=600836
в начале не поверил вам, но погуглив убедился что правда, что чтение - блокирует запись, а запись - чтениие и запись, и при этом блокировка не на строку а на таблицу, жесть
23 окт 08, 10:25    [6344391]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
MasterZiv
Member

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

тыц wrote:

> в начале не поверил вам, но погуглив убедился что правда, что чтение -
> блокирует запись, а запись - чтениие и запись, и при этом блокировка не
> на строку а на таблицу, жесть

Не верь. Это зависит от engine. В InnoDB ничего не блокируется, там тот же
MVCC, что и в PG. А этот чел. тебе втирает про MyISAM.

Posted via ActualForum NNTP Server 1.4

23 окт 08, 12:50    [6345728]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
тыц
Member

Откуда: центральная нигерия
Сообщений: 4214
MasterZiv
Не верь. Это зависит от engine. В InnoDB ничего не блокируется, там тот же
MVCC, что и в PG. А этот чел. тебе втирает про MyISAM.
я в курсе про engine =) просто когда говорят mysql подразумевают myisam
23 окт 08, 12:53    [6345757]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
DocAl
Member

Откуда: Оккупирую западный берег
Сообщений: 10472
тыц
MasterZiv
Не верь. Это зависит от engine. В InnoDB ничего не блокируется, там тот же
MVCC, что и в PG. А этот чел. тебе втирает про MyISAM.
я в курсе про engine =) просто когда говорят mysql подразумевают myisam
Мы говорим Партия -- подразумеваем Ленин!

Кто так подразумевает-то? Автор темы, вроде как, немного MySQL знает, так что вряд ли путает движки и их предназначение.
Но если уж говорить про MyISAM, то _ЗАПИСЬ_ не блокирует чтение, вот обновления -- то да.
Постоянные удаления -- вообще смерть для MyISAM.
24 окт 08, 15:23    [6352971]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
Хрен
Member

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

А по каким лицензионным соображениям может не подойти mysql?
26 окт 08, 01:16    [6356505]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
MasterZiv
Member

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

Хрен wrote:
> А по каким лицензионным соображениям может не подойти mysql?

Бесплатности.
MySQL , несмотря на то, что он вроде бы GPL, или какая-то модификация,
очень вольно трактует эту лицензию. Ну или какую-то модификацию использует.
ну не важно в общем. В итоге MySQL использовать в коммерческих проектах
нельзя. Есть только одна кажется оговорка, если это не проект, работающий
на Web-сайте в инете.

Т.е. MySQL в общем-то нельзя отнести полностью к бесплатным (свободным).

Posted via ActualForum NNTP Server 1.4

26 окт 08, 11:53    [6356757]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
Dimitry Sibiryakov
Member

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

MasterZiv
Ну или какую-то модификацию использует.

Вообще-то у него просто две лицензии. Бесплатная GPL и платная. Т.е.
либо у тебя самого программа под GPL (распространяется с исходниками) и
ты ничего не платишь, дибо делаешь что угодно, но за деньги.

Posted via ActualForum NNTP Server 1.4

26 окт 08, 13:07    [6356846]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД: MySQL или PostgreSQL  [new]
Yo.!
Guest
не надоело нести один и тот же бред о GPL ? уже три раза тыкал, сервер mysql можно использовать как угодно хоть в интересах алькайды. никто запретить комерческое использование mysql не может, т.к. это ТУПО GPL. GPL требует всего лишь открыть исходники в случае жесткой линковки с GPL кодом, т.е. в случае mysql максимум о чем можно порасуждать так о линковки с компанентами доступа. с сервером mysql ничерта не линкуется, поэтому что там у него за лицензия обсалютно не важно.
26 окт 08, 13:47    [6356902]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
Все форумы / Сравнение СУБД Ответить