|
|
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov пишет: > Вообще-то - с точностью до наоборот. Отказ от выделенного фонового > сборщика позволил избавиться от просадки производительности на больших > нагрузках. Так что тип сборки мусора теперь конфигурябелен. Не буду спорить, но они сами от этой идеи отказались. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2008, 13:53 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov MasterZiv Это - самая дебильная идея в Interbase, но сейчас уже давно они от нее отказались, собирают точно так же, как и в PostgreSQL. Вообще-то - с точностью до наоборот. Вообще-то - обе крайности имеют свои преимущества и недостатки :) Но - это именно крайности. Для каждой из них есть свой "плохой" вид нагрузки. Dimitry SibiryakovОтказ от выделенного фонового сборщика позволил избавиться от просадки производительности на больших нагрузках. Так что тип сборки мусора теперь конфигурябеленЗамечу, что тут речь о FB. Я не слышал о наличии кооперативной сборки мусора ни в IB, ни в PG. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2008, 13:58 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
Зл0й У Постгреса крайне неудачная (читай - идиотская) идеология storage engine, за что отдельное спасибо товарищу Майклу Стоунбрэйкеру. Все нормальные СУБД, как "версионники" так и "блокировщики" (Oracle, DB2, Teradata, MS SQL, Sybase, ...) пишут логи отдельно от tablespaces. В Постгресе все свалено в одну кучу, в тот самый tablespace. То есть, при отсутсвии vacuum, если у нас прошло 25 update'ов на некую запись Х у нас в базе будет валяться 26 версий этой записи, из которых 25 будут помечены "сия версия записи X убита тогда-то". Логи-то гораздо удобнее, их потихоньку сархивировать можно, или на более дешевый и медленный дисковый массив или на ленту. А сборка мусора это всегда зло, процесс труднопредсказуемый. Ага. Насколько я разбираюсь, это и есть та самая плата за постреляционность, которой постгрес хвастался в девяностых. А теперь што? Балласт? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2008, 21:00 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
mayton Зл0й У Постгреса крайне неудачная (читай - идиотская) идеология storage engine, за что отдельное спасибо товарищу Майклу Стоунбрэйкеру. Все нормальные СУБД, как "версионники" так и "блокировщики" (Oracle, DB2, Teradata, MS SQL, Sybase, ...) пишут логи отдельно от tablespaces. В Постгресе все свалено в одну кучу, в тот самый tablespace. То есть, при отсутсвии vacuum, если у нас прошло 25 update'ов на некую запись Х у нас в базе будет валяться 26 версий этой записи, из которых 25 будут помечены "сия версия записи X убита тогда-то". Логи-то гораздо удобнее, их потихоньку сархивировать можно, или на более дешевый и медленный дисковый массив или на ленту. А сборка мусора это всегда зло, процесс труднопредсказуемый. Ага. Насколько я разбираюсь, это и есть та самая плата за постреляционность, которой постгрес хвастался в девяностых. А теперь што? Балласт? Если под постреляционностью подразумевается что можно забацать свой собственный тип данных и интегрировать его с СУБД (реализовать свои специализированные индексы итп) то это можно и в Оракле и DB2 сделать, наверное можно и в других "взрослых" СУБД - просто я не пробовал. Так что хранение версий в тэйблспэйсах - это дурацкая идея к объектно-реляционности и расширяемости не имеющая никакого отношения. Просто неудачный дизайн, оправдания которому я не нахожу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2008, 22:09 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
hvladДабы не судили строго, не стоит давать такие оценки (идиотская, уродцы и т.п.) Какая производительность с масштабируемостью, такие и оценки. Когда будеть другая и оценки будут другие. hvlad Насчёт сборки мусора - ты её ел, что позволяешь себе судить ? Ага, причем "удовольствия от этих похорон я не получил". Особо после Оракла с DB2. hvlad Насчёт версий в логе - а что с индексами делать будешь ? Там версии в лог не запихнёшь. Предлагаю рассказать это пацанам из Оракла. Ато пацаны-то не знают. У них все работает, и индексы и MVCC - сам проверял. hvlad Иногда стоит всё же думать, прежде чем "оценивать". Не стоит опыт, полученный в одних СУБД, слепо переносить на другие и хаять всё подряд. Опыт в других СУБД тут не при чем. hvlad Строго получилось ? :) намана. Без обид. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2008, 22:20 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
Зл0й hvladДабы не судили строго, не стоит давать такие оценки (идиотская, уродцы и т.п.) Какая производительность с масштабируемостью, такие и оценки. Когда будеть другая и оценки будут другие.Внимание, вопрос : а где указание на прямую зависимость между дизайном одной подсистемы и производительностью целой системы ? Зл0й hvlad Насчёт сборки мусора - ты её ел, что позволяешь себе судить ? Ага, причем "удовольствия от этих похорон я не получил". Особо после Оракла с DB2.Сам поищешь по форуму людей, которые в шоке от Оракла после других СУБД ? Или может быть таки есть конкретные факты\цифры, а не эмоции про похороны ? Зл0й hvlad Насчёт версий в логе - а что с индексами делать будешь ? Там версии в лог не запихнёшь. Предлагаю рассказать это пацанам из Оракла. Ато пацаны-то не знают. У них все работает, и индексы и MVCC - сам проверял.У пацанов нет версионности на уровне записей. И своих проблем там тоже хватает. А расказываешь здесь пока что ты Зл0й hvlad Иногда стоит всё же думать, прежде чем "оценивать". Не стоит опыт, полученный в одних СУБД, слепо переносить на другие и хаять всё подряд. Опыт в других СУБД тут не при чем.Угу, давай посчитаем сколько раз ты их упомянул в одном только этом посте :-) Конечно не при чём. Собственно дальше можно не продолжать. Аргументов у тебя нет, что и требовалось показать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2008, 00:42 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
hvladСам поищешь по форуму людей, которые в шоке от Оракла после других СУБД ? Или может быть таки есть конкретные факты\цифры, а не эмоции про похороны ? (пододвигаясь поближе) А ну-ка ну-ка... А вот это уже интересно. Я-бы тоже с удовольствием поискал "шокирующие факты и цифры". Т.к. с Oracle знаком не понаслышке. Однако к своему сожалению не могу придумать поисковый запрос. Что прикажете написать в поисковом выражении. "Oracle отстой" ? или "Люди в шоке" ? Окажите любезность! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2008, 11:09 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
Зл0йУ них все работает, и индексы и MVCC - сам проверял. А особенно хорошо у них налажена выдача ошибки "Snapshot is too old". Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2008, 17:44 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovА особенно хорошо у них налажена выдача ошибки "Snapshot is too old". Posted via ActualForum NNTP Server 1.4 1) Эта ошибка устраняется увеличением параметра undo_retention в большую сторону. Если вы DBA - то вы должны понимать, что версионник требует своих накладных, и выставить этот параметр в такую величину, которая разумна для вашей прикладной задачи. В конце концов, кому нужен snapshoot курсора, который был открыт на прошлой неделе? В чём будет его актуальность? 2) Если вы разработчик, и хотите обеспечить возможность длительного хранения запроса без каких либо изменений - используйте temporary tables или еще лучше персистентные таблицы-репорты. 3) Для ретроспективных запросов (начиная где-то с Oracle10g и выше) существует технология flashback. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2008, 19:34 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
mayton пишет: > Ага. Насколько я разбираюсь, это и есть та самая плата за > постреляционность, которой постгрес хвастался в девяностых. А теперь Нет, это - не она. Ты ошибся. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2008, 20:51 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov пишет: > А особенно хорошо у них налажена выдача ошибки "Snapshot is too old". Кстати, это - самая характерная проблема неверсионной реализации MVCC, в общем, неразрешимая. Она отсутствует в версионной реализации, напр. в Postgres. Промлема же - в переполнении базы при активных изменениях на фоне "зависшей" транзакции. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2008, 21:00 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
mayton пишет: > разумна для вашей прикладной задачи. В конце концов, кому нужен > snapshoot курсора, который был открыт на прошлой неделе? В чём будет его > актуальность? Это не вам решать, а разработчикам конкретного приложения. Вы не можете сказать ни о его полезности, ни о бесполезности. Есть механизм MVCC - должен работать. А рассуждать, когда он там не нужен - разговор в пользу бедных. Вам бы, если "защищаете" ораклу следовало бы написать то, что написал я, что в принципе-то проблема длительного хранения старых версий произвольное время не решается никак. > 2) Если вы разработчик, и хотите обеспечить возможность длительного > хранения запроса без каких либо изменений - используйте temporary tables > или еще лучше персистентные таблицы-репорты. Вообще-то MVCC и призван решать такие проблемы, а вы предлагаете его не использовать. Странно как-то. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2008, 21:06 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
mayton hvladСам поищешь по форуму людей, которые в шоке от Оракла после других СУБД ? Или может быть таки есть конкретные факты\цифры, а не эмоции про похороны ? (пододвигаясь поближе) А ну-ка ну-ка... А вот это уже интересно. Я-бы тоже с удовольствием поискал "шокирующие факты и цифры". Т.к. с Oracle знаком не понаслышке. Однако к своему сожалению не могу придумать поисковый запрос. Что прикажете написать в поисковом выражении. "Oracle отстой" ? или "Люди в шоке" ? Окажите любезность!Ищите здесь любой флейм "mssql против oracle", я закладок на это не держу PS Опять же - я не говорю что правы те или эти. Я не люблю, когда поливают грязью то, с чем знакомы в лучшем случае по наслышке. PPS В своё время был неприятно "обрадован" такой фичей, как мутирующие таблицы. Не знаю, насколько это актуально сейчас. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2008, 22:00 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
Мне пришлось участвовать в миграции базы Технического Учёта ГТС с Firebird на Oracle. И такое решение было принято руководством проекта не просто так, а исходя из меняющихся условий эксплуатации. И когда я слышу шум в ключе "Оракл - отстой а моялюбимаясубд лучше...", хочется напомнить слова одного средневекового учёного: "- ... как вы можете ненавидеть то в чём вы досконально не разобрались?" Вы спрашиваете защищаю ли я Оракл? Нет. Я прекрасно знаю его недостатки. Я просто отстаиваю некое (своё) видение истины и иногда вставляю свои пять копеек там, где количество мракобесия превышает границы моей терпимости. Надеюсь понятно и без обид? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2008, 23:09 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
hvlad Зл0й Какая производительность с масштабируемостью, такие и оценки. Когда будеть другая и оценки будут другие.Внимание, вопрос : а где указание на прямую зависимость между дизайном одной подсистемы и производительностью целой системы ? Ну так, а напряжометр на что? Померить сколько происходит i/o может любой мало-мальски грамотный администратор СУБД, обладающий хотя бы минимальными навыками системного администрирования. Если у вас на диске "бардак валяется" в виде многочисленных версий записи, то поскольку все современные (не мэйнфреймовые) ОС читают-пишут или блоками или группами блоков, то постгрес будет тащить в оперативную память кучу никому не нужного мусора. При типичных задачах большинство современных СУБД "затыкаются" именно на том что пропускной способности i/o подсистемы не хватает. Тут ежу понятно что происходит, никакой "ракетной науки" как говорится. hvlad Сам поищешь по форуму людей, которые в шоке от Оракла после других СУБД ? Или может быть таки есть конкретные факты\цифры, а не эмоции про похороны ? Покажите мне БД на Постгресе, терабайт на 40 в которцую данные льются практически все время (ну или с интервалом в 5 минут) и где гоняются отчеты с актуальностью на "час назад". На Оракле я со своей командой такое безобразие строил - могу продемонстрировать. Никакого шока, никаких ORA-1555: Snapshot too old. Ничего особо военного. hvladУ пацанов нет версионности на уровне записей. И своих проблем там тоже хватает. А расказываешь здесь пока что ты А зачем версионность на уровне записи если с диска читаем и пишем блок (или кучу блоков за один системный вызов)? Не про блокировку ведь речь. hvlad Угу, давай посчитаем сколько раз ты их упомянул в одном только этом посте :-) Конечно не при чём. Ну так сравнивать же с чем-то надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2008, 23:11 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
Зл0й пишет: > А зачем версионность на уровне записи если с диска читаем и пишем блок > (или кучу блоков за один системный вызов)? Не про блокировку ведь речь. А приложения, знаешь ли, записями манипулируют. А блоками манипулировать даже вообще не могут. Вот по этому. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2008, 01:47 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
MasterZiv Зл0й пишет: > А зачем версионность на уровне записи если с диска читаем и пишем блок > (или кучу блоков за один системный вызов)? Не про блокировку ведь речь. А приложения, знаешь ли, записями манипулируют. А блоками манипулировать даже вообще не могут. Вот по этому. Posted via ActualForum NNTP Server 1.4 Приложения могут не только записями манипулировать, но и их полями. Значит ли это что нужно делать версионность на уровне поля записи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2008, 01:49 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
MasterZivОна отсутствует в версионной реализации, напр. в Postgres. Промлема же - в переполнении базы при активных изменениях на фоне "зависшей" транзакции. Если коротко, то в Oracle 10.2 возможно настроить поведение "как в Postgres". Грубо говоря, существует проблема "записать неограниченное количество версий при ограниченном месте на дисках". Понятно, что она неразрешима. В Oracle администратор может выбрать, что будет происходить в случае конфликта - либо таки затирание старых, но еще потенциально нужных версий, либо отказ в выполнении новых DML. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2008, 02:24 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
Зл0й hvladВнимание, вопрос : а где указание на прямую зависимость между дизайном одной подсистемы и производительностью целой системы ? Ну так, а напряжометр на что? Померить сколько происходит i/o может любой мало-мальски грамотный администратор СУБД, обладающий хотя бы минимальными навыками системного администрирования. Если у вас на диске "бардак валяется" в виде многочисленных версий записи, то поскольку все современные (не мэйнфреймовые) ОС читают-пишут или блоками или группами блоков, то постгрес будет тащить в оперативную память кучу никому не нужного мусора. При типичных задачах большинство современных СУБД "затыкаются" именно на том что пропускной способности i/o подсистемы не хватает. Тут ежу понятно что происходит, никакой "ракетной науки" как говорится.Это всё не так прямолинейно, как хотелось бы. Есть ODS, а есть конкретные релизации, работающие с ней. Хаять ODS из-за не эффективного кода не совсем хорошо. Ну а если уж ODS настолько крива, что эффективный код с ней написать не возможно, то тогда её меняют. Но я не советую называть слепыми идиотами тех, кто достаточное кол-во лет посвятил разработке именно такой ODS и работе с ней. Они прекрасно понимают её недостатки и достоинства и видят несколько больше нюансов, здесь даже не упоминаемых. Я не знаю деталей ODS в PG, но могу делать предположения, исходя из своего скромного опыта работы над FB. Зл0йПокажите мне БД на Постгресе, терабайт на 40 в которцую данные льются практически все время (ну или с интервалом в 5 минут) и где гоняются отчеты с актуальностью на "час назад". На Оракле я со своей командой такое безобразие строил - могу продемонстрировать. Никакого шока, никаких ORA-1555: Snapshot too old. Ничего особо военного.Даже не собираюсь ничем меряться и\или поливать автора этого "безобразия", указывая на то, что его "безобразие" нафиг никому не нужно (как тут иногда принято) :) Замечу только, что актуальность отчётов на "час назад" уже говорит о том, что оперативная часть этой БД намного меньше 40TB, соответственно это число ни о чём не говорит. Зл0йА зачем версионность на уровне записи если с диска читаем и пишем блок (или кучу блоков за один системный вызов)? Не про блокировку ведь речь.Дабы меньше этих блоков нужно было писать, читать и держать в памяти. Зл0йНу так сравнивать же с чем-то надо.Сравнивать - это хорошо. Но делать выводы про A, на основе знаний о B - как минимум не корректно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2008, 12:02 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
Кстати да: оракловский UNDO пишется на диск почти синхронно, и не построчно, а целыми блоками (по 8К ЕМНИП). В постгресе же размножаются версии строк, а вакуум размазан по времени. И мне с ходу уже неясно, какая стратегия лучше при длинных транзакциях. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2008, 12:15 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
Чистейшая супесьКстати да: оракловский UNDO пишется на диск почти синхронно Это с какого перепугу ??? Также пишется как и все остальные ДАННЫЕ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2008, 14:07 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
Зл0й пишет: > Приложения могут не только записями манипулировать, но и их полями. > Значит ли это что нужно делать версионность на уровне поля записи? Угадал, они и есть действительно на уровне поля записи. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2008, 17:21 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
Gluk (Kazan) пишет: > Это с какого перепугу ??? > Также пишется как и все остальные ДАННЫЕ Нет, если это лог, то он должен писаться по концу транзакции или по переполнению буфера страницы лога. По концу транзакции - обязательно (еще возможно и даже два раза). Но вот что он пишется не построчно - это не совсем так. Да, пишется он блоками, но столько раз, сколько записей лога в этом блоке, относящихся к разным коммитящимся транзакциям. Т.е. оптимальной запись лога назвать никак нельзя. Даже наоборот - это - одно из узких мест всех транзакционных СУБД (вспомните как много постов с вопросами, как выключить логирование). А вот записи (страницы с ними) данных ВООБЩЕ НА ДИСК МОГУТ И НЕ ПИСАТЬСЯ. Версии записей могут удаляться из кэша, так никогда на диск и не попав. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2008, 17:28 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
2MasterZiv херасе, вы не отличаете UNDO от REDO и рассказываете, что блоки не оптимально а давайте вы хотя бы основные понятия MVCC изучите, прежде чем тут что-то вещать ;) ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2008, 17:52 |
|
||
|
Чем PostgreSQL хуже MS SQL?
|
|||
|---|---|---|---|
|
#18+
MasterZiv Нет, если это лог, то он должен писаться по концу транзакции или по переполнению буфера страницы лога. REDO логи безусловно пишутся синхронно (если не учитывать асинхронный commit, который следует придать анафеме), но к UNDO или RBS они имеют отношения лишь постольку, поскольку защищают произведенные в UNDO изменения при фиксации транзакции. Сам же UNDO пишется ровно также как и все остальные сегменты данных ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2008, 09:35 |
|
||
|
|

start [/forum/topic.php?fid=35&msg=35318705&tid=1552983]: |
0ms |
get settings: |
14ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
43ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
| others: | 13ms |
| total: | 162ms |

| 0 / 0 |
