powered by simpleCommunicator - 2.0.29     © 2024 Programmizd 02
Map
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Что есть в oracle и нет в postgresql?
25 сообщений из 271, страница 8 из 11
Что есть в oracle и нет в postgresql?
    #40115533
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Собственно да, тест на размер кошелька слон заведомо проиграет.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40115547
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как я обожаю подобных врушек. Помимо прочего, они то ли считают других заведомыми идиотами, которым в состоянии скормить любую чушь, то ли расписываются в том, что сами никогда не заходили на сайт, не смотрели, как считаются результаты и не могут себе вообразить, что в мире есть не идиоты.
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40115557
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Те, кто заходили на сайт, в курсе, что:
1) Организация TPC не проводит тесты, а просто за деньги публикует то, что
сообщил заказчик (делая вид, что верифицирует методику).
2) Нет опубликованных исходников TPC-C теста, каждый лепит его в меру понимания
спецификации, "оптимизируя" под свои нужды.
3) Спецификация как таковая служит единственной цели: продемонстрировать, что
"partitioning рулит", предписывая ничтожный процент cross-warehouse операций.
4) Оракула нет в топе вследствие предыдущих двух пунктов.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40115624
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boobymvcc - это всего лишь зонтик, шапочная идея общего вида.
Ее реальное исполнение может выражаться если не тысячами, то десятками несовпадающих реализаций.
Известно, что первая реализация от IBM просто не была выпущена именно потому, что авторы признали
фактические ее характеристики негодными для боевого использования даже для тех мизерных объемов,
под которые проектировалась система в 70е.

Признанный по суду умершим Джим Грей очень долго, почти до последнего дня считал, что mvcc это не просто отстойная
в инженерном отношении конструкция, которую принципиально нельзя заставить работать быстро, из-за неизбежно необходимого
сборщика мусора
что за хня.... Что вы несёте-то. Первый доклад про версионность в СУБД был в 1974 году, теоретический. Первая коммерческая реализация была в InterBase, в 1984 году. После чего где-то в начале 90х это повторил Оракл, в 1995 году - Постгрес, а в2005 году даже микрософт себе сделал версионность.
Я уж молчу про всякие промежуточные InnoDB MySQL и прочее. Версионность теперь везде.
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40115629
booby
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv, не могли бы вы оказать любезность и указать точно, что именно из процитированного вами вы посчитали х-ней.

Касательно ваших замечаний:
а) диссертация Рида относится к 1978 году,

а "теоретическая статься" Бернштейна и Гудмана, которую, вероятно, вы подразумевали, и которая ссылается на Рида как на "первооткрывателя", относится к 1981му


в) в 1984 году Interbase еще как торговый марки не существовало. Она случилась примерно годом позже.
Но существовал Джим Старки, который уже успел написать свою реализацию для DEC, обидеться и уйти с нажитым.
Сейчас википедии пишут, что писал он её для DEC Rdb. И, похоже, что это не совсем так, или совсем не так.
Скорее он работал над неким pet-проектом в расчете на последующее промышленное применение в Rdb,
и уход из Dec, почти наверно, был связан именно с отказом приема его реализации в Rdb как стандартного способа обеспечения
concurrency, а не с тем, что там он все сделал и больше ему делать было нечего.

Да, и еще, у Джима не было физической возможности сказать, что он знать никогда не знал Бернштейна и в глаза его не видел,
просто потому, что они несколько лет работали вместе.
Но он смог сказать, что всё, что придумал, он придумал сам, не читая ничьих статей.
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40115630
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv
Первая коммерческая реализация была в InterBase, в 1984 году. После чего где-то в начале 90х это повторил Оракл

атака клоунов
https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=625981&msg=6616324
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40115723
SQL*Plus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv
boobymvcc - это всего лишь зонтик, шапочная идея общего вида.
Ее реальное исполнение может выражаться если не тысячами, то десятками несовпадающих реализаций.
Известно, что первая реализация от IBM просто не была выпущена именно потому, что авторы признали
фактические ее характеристики негодными для боевого использования даже для тех мизерных объемов,
под которые проектировалась система в 70е.

Признанный по суду умершим Джим Грей очень долго, почти до последнего дня считал, что mvcc это не просто отстойная
в инженерном отношении конструкция, которую принципиально нельзя заставить работать быстро, из-за неизбежно необходимого
сборщика мусора

что за хня.... Что вы несёте-то.
Первый доклад про версионность в СУБД был в 1974 году, теоретический.
Первая коммерческая реализация была в InterBase, в 1984 году.
После чего где-то в начале 90х это повторил Оракл...
Не горячитесь и будьте внимательны, проверяйте факты, всплывшие из ненадёжной памяти.
https://en.wikipedia.org/wiki/Multiversion_concurrency_control Multiversion concurrency control is described in some detail in the 1981 paper
"Concurrency Control in Distributed Database Systems"
by Phil Bernstein and Nathan Goodman, then employed by the Computer Corporation of America.
Bernstein and Goodman's paper cites a 1978 dissertation by David P. Reed
which quite clearly describes MVCC and claims it as an original work.

The first shipping, commercial database software product featuring MVCC was VAX Rdb/ELN,
released in 1984, and created at Digital Equipment Corporation by Jim Starkey.
Starkey went on to create the second commercially successful MVCC database - InterBase.
Поясняю по-русски.
Статью "Управление одновременным доступом в распределенных системах баз данных"
написали в 1981 году Фил Бернштейн и Натан Гудман.
В этой статье они процитировали диссертацию Дэвида Рида 1978 года,
в которой довольно четко описывается MVCC и утверждается,
что она является оригинальной работой.

Первую коммерческую реализацию MVCC осуществил в 1984 году Джим Старки
в компании Digital Equipment Corporation (DEC).
Затем Старки ушел из DEC, продолжил работу и создал вторую коммерчески успешную реализацию - InterBase.
(Год Википедии не указан, но пусть тоже будет 1984).

Однако, в том же 1984 году вышла ORACLE v4, в которой тоже был введен "контроль целостности по чтению",
который гарантировал, что в результате запроса пользователь получит данные, соответствующие тому их состоянию,
в котором эти данные были на момент начала выполнения этого запроса.
Начиная с ORACLE v4 "читатели" никогда не блокируют ни других "читателе", ни "писателей".
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40115760
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL*Plus,

ну ок, хрен с ним, хотя у меня в памяти четко отложилось что где-то есть документ именно 1974 года про теорию версионности.
В любом случае, первоочередность InterBase тут вроде никто не отрицает. В PostgreSQL с 1995 года "вакуум" всех задолбал, как я понимаю. Бороться они с ним умудрились вроде только пару лет назад. При том что в IB он уже был параллельный и бесконфликтный.

выше вам привели ссылку на мой же коммент, который никто пока не опроверг 6616324 . В Оракле read consistency - да, 1984. Но версионность-ли это - большой вопрос.
К слову, тогда все эти парни (Старки, Эллисон и прочие) запросто обсуждали всякое и чуть-ли не бухали совместно. Коллаборация была куда мощнее, чем сейчас, собственно :-)
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40115840
ОКТОГЕН
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я хоть и с ореклом мало общался, но вот ощущение есть у меня. Айтишно-техническая чуйка говорит, что нет золотой пули. Как бы некоторые адепты oracle не пытались выставить свою(несомненно, крутую) СУБД, но она золотой пулей не является. И являться не может. PG сможет заменить её на многих задачах, особенно, если это какой-нибудь триал типа экспресса. Не каждый проект может похвастаться тем, что у него 100500 миллионов читающих и столько же пишущих транзакций в секунду. Зато каждый проект может встать колом в случае, если завтра забугорная корпорация прервёт обслуживание потому что Путин чего-то не то делает, что хочет Условный Запад. PG позволяет хреново, но работать в этом случае. Это лучше, чем не работать вообще никак.
Кроме того, есть варианты допилить слона своей реализацией какой-нибудь узкоспецифичной штуки. Доработка PG небесплатна, но и покупка полной версии недёшева, если посчитать.
Кстати, не факт, что покупка полной версии oracle не потребует дополнительного секса, связанного с очень нужной фичей, которая нужна конкретному проекту(хорошо, не разработка, а настройка если она есть), но корпорация-гигант не станет из-за этого дорабатывать сервер. Как кстати относятся корпорации к своим клиентам?
Считаю, что ORACLE лучше PG, но не на порядки, а в разы. А это уже открывает варианты.
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40115859
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv
В Оракле read consistency - да, 1984. Но версионность-ли это - большой вопрос.

это вопрос лишь для пары неадекватов из мертвого мира интербайз. у остального мира столь абсурдные вопросы не возникали.

ОКТОГЕН
Я хоть и с ореклом мало общался, но вот ощущение есть у меня. Айтишно-техническая чуйка говорит, что нет золотой пули. Как бы некоторые адепты oracle не пытались выставить свою(несомненно, крутую) СУБД, но она золотой пулей не является. И являться не может.


может и является. просто подавляющее большинство вполне может жить и с пулями попроще. мода на микросервисы снижает требования к базе и консистентности, так что в новом проекте встретить монстроидальную единую субд уже проблематично. потому теперь такой уж жесткой необходимости именно в оракле нет.
но если говорить о золотом стандарте, то да. у оракла отдельный redo лог и к этому золотому стандарту идут все, от mysql и mssql, до postgres с его zHeap. начиная с v4 oracle безусловный лидер, к 21 веку подмявший 50+% рынка и UNDO тут важнейшее преимущество.
далее у оракла версионность наложена на блоки, а не строки как у остальных. плюс блокировки атрибут блока данных, а не списо в памяти. это ему позволило нагородить полноценный кластер с единым, размазанным по всем нодам кешом. пока ни у кого нет ничего близкого (если не считать МФ и его parallel sysplex).
вот только цена все эти фишки перечеркивает.
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40115892
booby
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОКТОГЕН,

золотой пули одной, годной на вообще все уже мыслимые или еще вперед не придуманные ситуации быть не может.
Почему вы, кстати, не вспоминаете про MySql, например?
После появления MariaDb он вполне встал в ряд архитектурно современных конструкций, годных для практического использования.
Общая стоимость владения у него, вероятно, ниже, чем у Postgress и развивается он, может быть и не столь бурно, как Postgress,
но вполне отчетливо.

Что касается взгляда из очень высокого высока, то Oracle и Postgress - это просто одно и то же,
поскольку в главных общих чертах совпадает их архитектура, определяемая тем, что в обоих случаях речь идет
о disk-oriented, row-stored системах с блочным хранением информации и стоимостным оптимизатором sql-запросов.
И исторически первым полностью архитектурно сформированным образцом системы такого сорта был именно Dec Rdb (теперь - Oracle Rdb)

А то количество чертей, которое сидит в деталях, с дальнего расстояния не видно.
Разглядывание их вблизи позволяет точнее разнести типичные сценарии использования.

Так, Oracle, например, очевидно, точно и мастерски (среди систем с версионным управлением конкурентным доступом)
заточен в первую очередь именно под "типичную" OLTP-нагрузку.
Это непосредственно и прямо следует из того, что его схема не просто хорошо согласована с блочным способом хранения
информации, но и из того, что между писателем и читателем приоритет явно отдан писателю.
Такой ход в голову не сможет придти, если ты не думаешь сосредоточенно о том, какие главные характеристики производительности ты обязан сохранить, не взирая на приляпывание в свою систему версионности.
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40115893
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне кажется что проблемы обычно бывают у систем которые смешивают OLTP/DWH нагрузку в одном инстансе.
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40115988
Фотография Кобанчег
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще для хранилищ может быть весьма критична фича DML error logging. Которая есть только в Оракл.
Когда third party ETL process вставляет сто мильонов строк из которых 10 штук проблемные не хотелось бы чтоб падал весь процесс.
В Оракл можно настроить чтоб проблемные строки вставлялись в так называемый error log.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
SQL> create table tc (id int constraint pk_tc primary key, value int, constraint chk_value check (value > 0));

Table created.

SQL> exec dbms_errlog.create_error_log(dml_table_name => 'tc');

PL/SQL procedure successfully completed.

SQL> insert into tc
  2  select 1, 1 from dual
  3  union all select 1, 2 from dual
  4  union all select 2, -1 from dual
  5  log errors reject limit unlimited;

1 row created.

SQL> select * from tc;

        ID      VALUE
---------- ----------
         1          1

SQL> column ora_err_mesg$ format a60
SQL> column id format a5
SQL> column value format a5
SQL> select ora_err_mesg$, id, value from err$_tc;

ORA_ERR_MESG$                                                ID    VALUE
------------------------------------------------------------ ----- -----
ORA-02290: check constraint (TEST.CHK_VALUE) violated        2     -1
ORA-00001: unique constraint (TEST.PK_TC) violated           1     2


Уникальность в PG более-менее можно порулить через insert + on conflict + (триггер на update если надо).

А вот обработку check constraints можно разве что "улучшить" через statement level trigger (в котором придётся продублировать логику check onstraints),
но сомневаюсь что производительность будет сопоставимая.
В Оракл DML error logging не имеет сколь нибудь заметного эффекта на производительность.

Вообще есть хоть один еще вендор кроме Оракла который реализовал подобное???
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40115994
Бумбараш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кобанчег,

осталось только найти тех, кто сейчас до сих пор хранилища на оракле делает
но это будет очень сложно
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40115996
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У Оракла есть SQLLoader и режим direct_path. Полезная штука.

У постгреса есть утилита копирования... но есть ли у нее такие "лихие хуки" чтоб срезать повороты?
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40116005
booby
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кобанчег,

я именно за темой dml error logging не слежу, по сути, но на память помню, что ее исходная функциональность была достаточно ограниченной, чтобы вообще принимать за интересную для боевой в случае OLTP ситуации.
Пропуск dup_val_on_index автоматически обесценивает "фичу" для случая OLTP-нагрузки, а отказ отслеживать direct path load по сути обесценивает ее и для прочих сценариев, оставляя очень узкое окно возможностей.
Это все лишь подчеркивает, что когда ты стремишься объять необъятное - неизвестно заранее, смешным ты окажешься
или не очень.

На другой стороне именно той же самой медали находятся технологии, которые они непрерывно совершенствуют в своих реализациях Exadata.
То, что происходит там, натурально вышибает мой мозг как "наблюдающего".
Сейчас они позиционируют себя примерно так: "если у вас достаточно денег, то за ваши деньги мы сможем обеспечить
приемлемую для вас работоспособность на любых доступных для вас на сегодняшний день объемах данных".
Когда просто смотришь первым взглядом на современную Exadata, то автоматически начинаешь в это верить
от изумления, вызванного наблюденным. Но второй взгляд все-таки возрождает движение червячков: да, нет сомнения в том,
что 128-мегабайтное чтение на два порядка лучше 1-мегабайтного на фуллскане,
а кластеризация таблицы по атрибутам дает впечатление, что ты навсегда избавлен от проблем с переизбытком индексов,
трехкратная буферизация записи производит впечатление, что тебе вообще вручили волшебную палочку на запись...
Но все это поверх тщательно охраняемой исходной disk-oriented, row-stored блочной архитектуры.
Путем манипулирования железом можно довольно широко раздвигать границы применимости системы и натягивать ее на новые бизнес-кейсы, но, у хорошего специализированного решения всегда остается возможность превзойти все твои попытки показаться миру универсалом.
Как-то так я думаю.
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40116008
Никанор Кузьмич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
booby
Пропуск dup_val_on_index автоматически обесценивает "фичу" для случая OLTP-нагрузки,
Можете расшифровать эту мысль? Если вам нужно, чтобы при инсерте выстреливал dup_val_on_index, просто не пишите error logging clause.
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40116015
booby
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Никанор Кузьмич,

Мне нужно, чтобы для OLTP-случая dml error logging работал точно так же, как Save Exception,
иначе он не интересен для такого случая, даже если объем вставки не превышает возможностей обработки ошибок в forall.
А для загрузки в stage-таблицу мне было бы интересно логирование загрузки в режиме direct path/

Когда нет ни того, ни другого, указания на желтый цвет штанов становятся бессмысленными для извлечения практической пользы.
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40116027
SQL*Plus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бумбараш
Кобанчег,

осталось только найти тех, кто сейчас до сих пор хранилища на оракле делает
но это будет очень сложно

Это вы сами придумали, да?

Смотрели на потолок и считали трещины?
Или как-то иначе дошли до глупости такой?
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40116054
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
booby
даже если вы сможете свою архитектуру построить так, чтобы она жила совсем без update-а,

Так апдейт не нужен, а рбд в целом - тормозная херня. Какой хайлоад вы там хотите, не понятно.
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40116055
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1
далее у оракла версионность наложена на блоки

И гешефт от неё где? Ты выборки делаешь по этой версионности? Когда что-то надо было откатить, мы откатывали полдня на резервном серваке. Надо было это один раз за 4 года, после этого, это самое undo сделали уже на уровне данных бд.
H5N1
нагородить полноценный кластер с единым, размазанным по всем нодам кешом

Который юзлесс, потому что перед тормозной субд всё равно все ставят какой-нибудь ram кэш, а кто не ставит - те двузвенщики, что с них взять.
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40116060
booby
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
crutchmaster
...
Так апдейт не нужен, а рбд в целом - тормозная херня.

Это очень хорошо, когда update не нужен.
А по поводу тормозной херни - ну, что-то должно быть тормозной херней, в конце концов.
Это же вам не биткоин какой-нибудь в первичной реализации.

crutchmaster

Какой хайлоад вы там хотите, не понятно.

Я никакого не хочу, мне не надо. Весь "хайлоад" где-то в яве непрерывно сейчас живет.
А я без этой зверушки прекрасно обхожусь.
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40116067
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
booby
Это очень хорошо, когда update не нужен.

А когда он нужен? Почти всегда надо хранить историю операций. Ну, по крайней мере у нас.

booby
Я никакого не хочу, мне не надо

Никто не хочет. А бызнес говорит, делайте. Ну вообще я часто от своих ораклистов слышу что-то про хайлоад. Не знаю, что они имеют ввиду, вот и набрасываю.
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40116070
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я тоже не понимаю что такое хайлоад именно как определение.

В семинарах и конфах говорят что хайлоад - это когда ваше железо
занято на 100% и нет возможности уже ничего улучшить.
...
Рейтинг: 0 / 0
Что есть в oracle и нет в postgresql?
    #40116073
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Я тоже не понимаю что такое хайлоад именно как определение.

Понятно, имеют ввиду, что запросов дохрена. Именно что субъективно дохрена. На самом деле может быть и очень даже не много, но щёчки дуют.
...
Рейтинг: 0 / 0
25 сообщений из 271, страница 8 из 11
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Что есть в oracle и нет в postgresql?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]