LINUX.ORG.RU

PostgreSQL 10 вышел

 


2

3

5 октября 2017 Всемирная группа разработки PostgreSQL объявила о выпуске PostgreSQL 10, новой версии реляционной системы управления базами данных с открытым исходным кодом.

Критически важная особенность современных высоконагруженных систем — способность распределять данные на несколько узлов для обеспечения более быстрого доступа, управления и анализа, что известно как стратегия «разделяй и властвуй». PostgreSQL 10 содержит ряд существенных улучшений, позволяющих эффективно применять данную стратегию: нативная логическая репликация, декларативное партиционирование таблиц и улучшенное параллельное исполнение запросов.

«Наше сообщество разработчиков сфокусировано на развитии таких свойств системы, которые позволяют наиболее полно использовать возможности современных инфраструктур с распределённым характером нагрузки», — говорит Магнус Хагандер (Magnus Hagander), член основной команды Всемирной группы разработки PostgreSQL. — «Такие функции как логическая репликация и улучшенный параллелизм исполнения запросов отражают годы работы и демонстрируют постоянный фокус сообщества на обеспечении лидирующей роли PostgreSQL в условиях растущих технологических требований».

С появлением данного релиза меняется схема версий PostgreSQL, новый формат — «x.y». Это означает, что следующее минорная версия будет 10.1, а следующий мажорный релиз — 11.

Логическая репликация — фреймворк для распространения данных по модели «публикация/подписка»

Логическая репликация расширяет дополняет существующий набор видов репликации в PostgreSQL за счёт возможности передавать данные о модификации данных на уровне конкретной базы данных или на уровне таблиц в другие базы данных PostgreSQL. Пользователи теперь могут определять, какие именно данные нужно реплицировать. Кроме этого, появляется возможность выполнять переход на новые мажорные версии PostgreSQL без простоя и за счёт встроенных в ядро СУБД средств.

«Мы активно используем PostgreSQL, начиная с версии 9.3, и очень рады появлению версии 10, так как она содержит долгожданные возможности партиционирования и встроенной логической репликации. Это позволит нам использовать PostgreSQL в ещё большем количестве сервисов», — заявил Владимир Бородин, компания «Яндекс».

Декларативное партиционирование таблиц

Возможность партиционирования таблиц долгие годы присутствовала в PostgreSQL, но при этом требовала от пользователя значительных усилий по поддержке нетривиального множества правил и триггеров. В PostgreSQL 10 представлен синтаксис для партиционирования, позволяющий пользователям с лёгкостью создавать и поддерживать таблицы с интервальной или списочной схемой партиционирования. Добавление синтаксиса партиционирования — первый шаг из запланированной серии изменений, ведущих к высокопроизводительному фреймворку партиционирования в PostgreSQL.

Улучшенный параллелизм выполнения запросов

PostgreSQL 10 содержит улучшенную поддержку параллелизации выполнения запросов — ещё больше частей плана выполнения запроса теперь могут исполняться параллельно. Улучшения заключаются в том, что ещё больше типов операций сканирования данных поддаются параллелизации, а также в том, что в некоторых случаях (например, когда данные уже отсортированы) проводится дополнительная оптимизация. В итоге, пользователь получает данные намного быстрее.

Кворум-коммит для синхронной репликации

В PostgreSQL 10 появился кворум-коммит для синхронной репликации, обеспечивающий гибкость процесса оповещения основной БД о том, что изменения успешно записаны на удалённые реплики. Администратор может теперь указывать, что если определённое число реплик получило информацию об изменении, данное изменение можно рассматривать как надёжно зафиксированное.

«Кворум-коммит для синхронной репликации в PostgreSQL 10 даёт нам больше вариантов расширять нашу инфраструктуру баз данных с временем простоя работы приложений, стремящимся к нулю. Это позволяет нам непрерывно выкатывать изменения и обновлять нашу инфраструктуру без необходимости объявления длительных периодов обслуживания», — сказал Курт Микол (Curt Micol), инженер инфраструктуры в компании Simple Finance.

Аутентификация SCRAM-SHA-256

SCRAM (The Salted Challenge Response Authentication Mechanism), описанный в RFC5802, определяет протокол безопасного хранения и передачи паролей за счёт использования специального фреймворка для более строгого сопоставления паролей. В PostgreSQL 10 представлена поддержка метода SCRAM-SHA-256, описанного в RFC7677. Данный подход является намного более безопасным, чем существующий метод аутентификации с использованием MD5.

>>> Подробности



Проверено: leave ()
Последнее исправление: cetjs2 (всего исправлений: 4)
Ответ на: комментарий от iron

должно быть в онлайне минимальное количество нод чтоб кластер не развалился

Нод на запись ты имеешь ввиду?

autonomous ★★★★★
()
Ответ на: комментарий от borisych

ну как? с 8i теперь может потягаться или до сих пор отстает?

Чуваки из яндекс почты (или кто там мигрировал на Postgres) уже ответили на твой вопрос. Но, ответ, сильно зависит от твоей задачи (а ты не предоставил никакой конкретики). Например, для задачи попила, Postgres плохо подходит.

anonymous
()
Ответ на: комментарий от krotozer

Но тут ключевым моментом является количество телодвижений, необходимых, чтобы добиться от PgSQL того же результата, что и, скажем, от MySQL. C последним всё намного проще.

Давно известный косяк Postgres в том, что его нужно конфигурировать под свое железо и задачу. Во всем остальном он заруливает MySQL всухую.

anonymous
()
Ответ на: комментарий от anonymous

Чуваки из яндекс почты (или кто там мигрировал на Postgres) уже ответили на твой вопрос

к «чувакам из яндекса», как-то доверия нет, от слова вообще, потому то, что они пишут, чем-то кроме бреда назвать сложно. Вот например: https://habrahabr.ru/company/yamoney/blog/326998/

При выполнении запросов сервис пользовательских профилей не указывал порядок сортировки выводимых значений (ORDER BY), так как в Oracle отсутствие признака означает вывод в хронологическом порядке

borisych ★★★★★
()
Ответ на: комментарий от autonomous

Нод на запись ты имеешь ввиду?

Да, консистентные ноды в кластере.

iron ★★★★★
()
Последнее исправление: iron (всего исправлений: 1)
Ответ на: комментарий от anonymous

Например, для задачи попила, Postgres плохо подходит.

Это, видимо, вообще основной его недостаток. До сих пор помню эмоциональное заявление одного м-м-менеджера среднего звена: «Бесплатные СУБД - это гэ на палочке!» Правда, дело было лет 8 назад, теперь он куда осторожнее.

hobbit ★★★★★
()
Ответ на: комментарий от borisych

Ну не то, что бред, судя по этому отрывку, чуваки осознали, что использовали UB в SQL. На ЛОРе, судя по некоторым темам в Development, некоторые сознательно пользуются UB и считают, что это нормально.

hobbit ★★★★★
()
Ответ на: комментарий от Legioner

Ну вот прямо сейчас у меня документации Оракла нет, но хорошо помню, как надцать лет назад мы под него начинали писать, и нас учили, что если ты пишешь select без order by и ждёшь, что данные будут выводиться в каком-то осмысленном порядке - ты ССЗБ.

В обычных ЯП, кстати, тоже про UB говорят обычно в контексте стандарта языка, для конкретного компилятора оно может быть вполне DB. :)

hobbit ★★★★★
()
Последнее исправление: hobbit (всего исправлений: 1)
Ответ на: комментарий от borisych

к «чувакам из яндекса», как-то доверия нет, от слова вообще,

А, ну да, чуваки, которые перенесли нагруженный проект с многолетней историей на другую базу без перерыва сервиса, полные лохи. Другое дело непризнанный гений с лора.

Вот например:

Ага, то что ты нашел до чего докопаться, конечно, гораздо важнее того, что сервис как раньше работал под большой нагрузкой, так и сейчас продолжает. Ты просто ГЕРОЙ.

anonymous
()

Критически важная особенность современных высоконагруженных систем — способность распределять данные на несколько узлов для обеспечения более быстрого доступа, управления и анализа, что известно как стратегия «разделяй и властвуй».

«разделяй и властвуй»

Мастер-сервер устраивает вражду и конфликты среди серверов-рабов? В следующих версиях мастер-сервер научится провоцировать ошибки в обмене данными у серверов-рабов, с тем чтобы они почаще ссорились и отправляли больше запросов даже когда БД простаивает, чтобы им некогда было договориться и свергнуть мастера.

Napilnik ★★★★★
()

оффтоп: а как нонче принято решать code<->sql<->data боттл нек?

anonymous
()
Ответ на: комментарий от AVL2

Да не такой он и жирный, по сравнению с одной «легкой и простой» вообще задохлик:

[SRPMS]$ ls -s postgresql10-10.0-alt1.src.rpm 12172 postgresql10-10.0-alt1.src.rpm [SRPMS]$ ls -s mariadb-10.1.27-alt1.S1.src.rpm 42168 mariadb-10.1.27-alt1.S1.src.rpm

anonymous
()
Ответ на: комментарий от anonymous

А, ну да, чуваки, которые перенесли нагруженный проект с многолетней историей на другую базу без перерыва сервиса, полные лохи. Другое дело непризнанный гений с лора.

Правильно было бы писать так: сотрудники ООО «Рога и Копыта» перенесли сервис «Говно и Палки» на другую СУБД, при этом сотрудники ООО «Рога и Копыта» утверждают, что 9 из 10 клиентов-калек переноса не заметили.

А какой у них код - это просто заглядение:

Были сложности и с транзакциями при установленном флаге AutoCommit-OFF. В PostgreSQL код падал, если при его выполнении предварительно не была открыта транзакция. Oracle вел себя иначе: транзакция откатывалась или завершалась кодом, который пришёл в этот же поток выполнения. Решение для PostgreSQL — написать код, который бы проверял наличие явно открытой транзакции для всех запросов на изменение данных.

Т.е. чуваки в своем коде нигде транзакции не открывали, а потом удивились, что работает оно как-то странно, поэтому написали еще более странный код:

    @Override
    public int update(String sql, Object... args) {
        requireOpenTransaction(sql);
        return super.update(sql, args);
    }

    private static void requireOpenTransaction(String sql) {
        if (!TransactionSynchronizationManager.isActualTransactionActive()) {
            log.error("No active transaction for sql {}, stack {}", sql, getStackTrace());
        }
    }

ага, require такой require ...

borisych ★★★★★
()
Ответ на: комментарий от denkin

простите, куда вышел?

ну откинулся, чё не ясно?

anonymous
()

Геораспределённый master-master-master умеет?

KRoN73 ★★★★★
()
Ответ на: комментарий от EuGeneus

Мастер-мастер ещё и в 99.9% не нужен. Ну т.е. нет такой проблемы с постгресом.

Ага, ясно. Ну, значит, пока остаёмся на MySQL :) В котором тоже нет такой проблемы, но по причине наличия master-master :)

KRoN73 ★★★★★
()
Ответ на: комментарий от anonymous

для 'select *' действительно никакой разницы в функционале. ну а всё хорошее в этом мире стоит денег.

anonymous
()
Ответ на: комментарий от anonymous

Честно говоря, даже лень проверять, потому что размер на диске, тем более исходников, вообще не имеет значения.

Важно, насколько быстро и понятно программа разворачивается, как быстро работает и сколько ресурсов при этом жрет.

Возможности репликации постгре очень хороши. Возможности конфигурации аутентификации тоже гораздо богаче. Но и ресурсы он жрет ой как жадно.

AVL2 ★★★★★
()
Ответ на: комментарий от hobbit

«Бесплатные СУБД - это гэ на палочке!» Правда, дело было лет 8 назад,

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

anonymous
()
Ответ на: комментарий от anonymous

потихоньку подтягиваются, партишены наконец запилили, в 2017 году-то.

Ничего там не запилили, просто что-то поменялось, но не особо принципиально, как не работало толком так и не работает, просто в синтаксис сахара добавили и все:

There is no facility available to create the matching indexes on all partitions automatically. Indexes must be added to each partition with separate commands. This also means that there is no way to create a primary key, unique constraint, or exclusion constraint spanning all partitions; it is only possible to constrain each leaf partition individually.

Since primary keys are not supported on partitioned tables, foreign keys referencing partitioned tables are not supported, nor are foreign key references from a partitioned table to some other table.

Using the ON CONFLICT clause with partitioned tables will cause an error, because unique or exclusion constraints can only be created on individual partitions. There is no support for enforcing uniqueness (or an exclusion constraint) across an entire partitioning hierarchy.

An UPDATE that causes a row to move from one partition to another fails, because the new value of the row fails to satisfy the implicit partition constraint of the original partition.

Row triggers, if necessary, must be defined on individual partitions, not the partitioned table.

borisych ★★★★★
()
Ответ на: комментарий от anonymous

перенесли нагруженный проект с многолетней историей на другую базу без перерыва сервиса, полные лохи.

как будто это что-то из ряда вон выходящее. и только лохи написали об этом целую статью, ну и собсно лохи же и развесили уши. ahuizotl toko тонко наекае.

anonymous
()
Ответ на: комментарий от borisych

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

anonymous
()
Ответ на: комментарий от anonymous

вся суть гнутого опенсурса в нескольких абзацах

там не GNU, MySQL вот под GPL, а у сабжа:

PostgreSQL is released under the PostgreSQL License, a liberal Open Source license, similar to the BSD or MIT licenses.

borisych ★★★★★
()
Ответ на: комментарий от borisych

имелась ввиду не конкретно лицензия, а модель разработки и тот базар, что характерен гнутому сообществу.

anonymous
()
Ответ на: комментарий от anonymous

там совсем другая модель разработки-то: есть пара-тройка контор (https://www.2ndquadrant.com/, https://www.enterprisedb.com/), которые зарабатывают тем, что оказывают платную поддержку (ой-ой-ой, прямо как в Oracle и MSSQL (кстати 2 октября 2017 зарелизился, да еще и на линуксах работает)) и продают «свою версию» PostgreSQL, а в общедоступную версию перепадают какие-то объедки чтобы хайп кое-как поддерживать на должном уровне.

borisych ★★★★★
()
Ответ на: комментарий от borisych

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

anonymous
()
Ответ на: комментарий от anonymous

так они и были примерно в таком состоянии и ничего сложнее селекта в секунду для бложика не в состоянии обслужить.

Ничего так себе в PostgreSQL оптимизатор, не то что в коммерческих СУБД, конечно, но с большинством запросов справляется приемлемо.

потихоньку подтягиваются, партишены наконец запилили, в 2017 году-то

Партишены-то тут причём? Они вообще нужны для облегчения обслуживания таблиц некоторого назначения.

anonymous
()
Ответ на: комментарий от AVL2

Но и ресурсы он жрет ой как жадно.

СУБД для этого и нужна, вообще-то. ;) Т.е. её задача выполнять запросы как можно быстрее, используя все доступные ресурсы. Т.е. та, которая «жрёт» меньше, но работает медленнее, просто хуже.

anonymous
()
Ответ на: комментарий от borisych

есть пара-тройка контор которые зарабатывают тем, что оказывают платную поддержку

А как ещё на бесплатной СУБД заработать-то.

и продают «свою версию» PostgreSQL

Версии. Чтобы их реально использовать, надо быть немного сдвинутым, IMHO. Т.к. их user base в 2.52 анонимуса внушает серьёзные сомнения в их надёжности.

а в общедоступную версию перепадают какие-то объедки чтобы хайп кое-как поддерживать на должном уровне.

Просто лжёшь. Вышеупомянутые не являются основными contributors, и их некоторые попытки внедрения своих «прекрасных» доработок в PostgreSQL заканчивались реакцией сообщества «we don't need this crap».

anonymous
()
Ответ на: комментарий от anonymous

Ничего так себе в PostgreSQL оптимизатор, не то что в коммерческих СУБД, конечно, но с большинством запросов справляется приемлемо.

На текущий момент PostgreSQL даже план выполнения запроса не в состоянии правильно показать, ниже пример.

--
-- Создаем табличку на 5Gb, а explain analyze
-- радостно рапортует о том, что прочтет ее
-- за 1ms, у меня оказывается не ноутбук
-- а суперкомпьютер
--
postgres=# create table t1 as select lpad('x',100,'x') as a1, 
postgres-#                  (SELECT array_to_string(ARRAY(SELECT chr((65 + round(random() * 25)) :: integer) 
postgres(#                    FROM generate_series(1,1024*1024)), '')
postgres(#                  ) as a2 from generate_series(1,5*1024);
SELECT 5120
postgres=# explain analyze select a2 from t1;
                                             QUERY PLAN                                              
-----------------------------------------------------------------------------------------------------
 Seq Scan on t1  (cost=0.00..145.20 rows=5120 width=18) (actual time=0.023..0.758 rows=5120 loops=1)
 Planning time: 3.140 ms
 Execution time: 0.963 ms
(3 rows)
 
postgres=# explain analyze select a2 from t1;
                                             QUERY PLAN                                              
-----------------------------------------------------------------------------------------------------
 Seq Scan on t1  (cost=0.00..145.20 rows=5120 width=18) (actual time=0.010..1.056 rows=5120 loops=1)
 Planning time: 0.033 ms
 Execution time: 1.380 ms
(3 rows)
 
postgres=#

Т.е. если данные попали в TOAST то, как видно, PostgreSQL показывает совсем не то что нужно.

borisych ★★★★★
()
Ответ на: комментарий от anonymous

и ничего сложнее селекта в секунду для бложика не в состоянии обслужить

Вот уж не надо бред откровенный нести, уже PostgreSQL 8 был весьма шустрый, а уж сейчас...

hobbit ★★★★★
()
Ответ на: комментарий от anonymous

А как ещё на бесплатной СУБД заработать-то.

ну т.е. Oracle для попилов, а PostgreSQL для откатов (у Oracle-то прайслист общедоступен, что вызывает некие трудности для возможности откатов, да еще и правительство US такие вещи активно палит, а на сервисах для «бесплатной» СУБД можно откатывать сколько хочешь).

Версии. Чтобы их реально использовать, надо быть немного сдвинутым, IMHO. Т.к. их user base в 2.52 анонимуса внушает серьёзные сомнения в их надёжности.

Мде...

EDB has more than 3500 enterprise and government customers including 87 of the F500.

87 компаний из Fortune 500 - это 2.52 анонимуса, у 2ndquadrant скорее всего сравнимо.

Просто лжёшь. Вышеупомянутые не являются основными contributors, и их некоторые попытки внедрения своих «прекрасных» доработок в PostgreSQL заканчивались реакцией сообщества «we don't need this crap».

да ну?

Key Features/Community Contributions from 2ndQuadrant experts include:

  • Point-in-time Recovery (PITR)
  • Log Shipping Replication
  • Hot Standby
  • Synchronous Replication
  • Asynchronous Commit
  • Partitioning
  • Parallel Aggregates
  • Logical decoding
  • Logical Replication
  • WARM
borisych ★★★★★
()
Ответ на: комментарий от borisych

«у Oracle-то прайслист общедоступен, что вызывает некие трудности для возможности откатов, да еще и правительство US такие вещи активно палит, а на сервисах для «бесплатной» СУБД можно откатывать сколько хочешь»

Да ты шутишь. Ценник Оракла заранее включает в себя ~40% на расходы канала, в том числе и откаты. А уж дополнительные лицензии и соглашения о поддержке и вовсе снимают все вопросы с ценообразованием...

AVL2 ★★★★★
()

А MS уже заложила в бюджет бадение продаж сиквела в связи с этой ожидаемой датой?

Plushev
()
Ответ на: комментарий от AVL2

Да ты шутишь. Ценник Оракла заранее включает в себя ~40% на расходы канала, в том числе и откаты. А уж дополнительные лицензии и соглашения о поддержке и вовсе снимают все вопросы с ценообразованием...

Да нет не шучу, стандартная оракловая скидка - 10%, если же покупать через партнеров (основной канал продаж), то обычно 15-30%, партнер потенциально может пробить и 60% скидку - так если партнер какие-то там непонятные дела проворачивает, причем тут компания Oracle вообще?

borisych ★★★★★
()
Ответ на: комментарий от borisych

правительство US такие вещи активно палит

Причём тут какое-то там правительство? Или СУБД, по-твоему, используются «шоб было», а на самом деле не нужны?

EDB has more than 3500 enterprise and government customers including 87 of the F500.
87 компаний из Fortune 500 - это 2.52 анонимуса, у 2ndquadrant скорее всего сравнимо.

Да, именно так. Дело, видишь ли, в том, что, например, у одного только MS SQL пользователей миллионы. Т.е. вот это вот не составляет даже десятой доли процента от usage share.

да ну?

Ну да. Ведёшься на маркетинговый bullshit?

Вчитайся вот в эту фразу:

Key Features/Community Contributions from 2ndQuadrant experts include:

Т.е. не «Contributions from 2ndQuadrant», а вклад тех, кто там работает, и неважно, когда он этот самый влад сделал, они как бы записали себе в актив. И формально-то фраза верна. ;)

anonymous
()
Ответ на: комментарий от borisych

На текущий момент PostgreSQL даже план выполнения запроса не в состоянии правильно показать

Хмм. Ты же понимаешь, что это отладочная информация, которую он мог бы не показывать вообще? И это не единственный случай, когда план опускает какие-то ресурсоёмкие детали, кстати.

anonymous
()
Ответ на: комментарий от borisych

Я собственно, ничего про оракула и не говорю. Мне плевать, при чем тут компания или не при чем.

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

AVL2 ★★★★★
()
Ответ на: комментарий от anonymous

Все здорово, но они их зарплаткой обеспечивают. И люди работают в открытых проектах в том числе рассчитывая на свою востребованность потом в таких фирмах.

AVL2 ★★★★★
()
Ответ на: комментарий от anonymous

у одного только MS SQL пользователей миллионы

нет у MSSQL миллионов, миллион можно получить разве что учитывая инсталляции, которые делает Visual Studio. Вот, например, более адекватные цифры: http://www.cmswire.com/cms/big-data/microsoft-sql-server-wins-in-a-big-data-w... - 2000 клиентов за два года, сумарно клиентов у MSSQL наверное до 500 тыс, даже скорее до 300, но никак не миллионы.

Т.е. не «Contributions from 2ndQuadrant», а вклад тех, кто там работает, и неважно, когда он этот самый влад сделал, они как бы записали себе в актив. И формально-то фраза верна. ;)

Ну вот нет смысла отрицать очевидные вещи: https://www.postgresql.org/community/contributors/ - 3 из 5 членов Core Team являются сотрудниками 2ndQuadrant и EnterpriseDB, в Major Contributors их еще пачка.

Хмм. Ты же понимаешь, что это отладочная информация, которую он мог бы не показывать вообще? И это не единственный случай, когда план опускает какие-то ресурсоёмкие детали, кстати.

это означает, только то, что в PostgreSQL возможностей диагностики вообще нет - надо писать наугад и молиться что оно худо-бедно как-то заработает (ага, широкие таблицы мы быстро не умеем (генерится куча мусора при UPDATE, а там vacuum подсирает, индексы перестраиваются и т.д.), нужно нарезать на более мелкие и соединять, а тут уже оптимизатор начинает всасывать по полной, большие блоки мы тоже не умеем, поэтому храним данные как можем, а то что не влезает засовываем в TOAST для пущего замедления, хинты мы делать не хотим по идеологическим соображениям (ага, пусть лучше у нас поддержку покупают)) - как этим вообще можно пользоваться-то? Вон, убер попользовался - и чет как-то не очень, зато для Яндекса с его select *, включенными автокоммитами, постоянным DDL и UB PostgreSQL оказался идеальным выбором.

borisych ★★★★★
()
Последнее исправление: borisych (всего исправлений: 1)
Ответ на: комментарий от zloelamo

Если руки из попы лучше вообще к СУБД не подходить.

Категорически не согласен! Это периодически поставляет неплохие заказы.

EuGeneus ★★
()
Ответ на: комментарий от borisych

Да нет не шучу, стандартная оракловая скидка - 10%, если же покупать через партнеров (основной канал продаж), то обычно 15-30%, партнер потенциально может пробить и 60% скидку

Т.е. по факту общедоступный прайс лист не имеет никакого отношения к цене продажи и сумма отката может доходить до 60%.

если партнер какие-то там непонятные дела проворачивает, причем тут компания Oracle вообще?

Во всем Postgres виноват, ага.

anonymous
()
Ответ на: комментарий от borisych

2000 клиентов за два года, сумарно клиентов у MSSQL наверное до 500 тыс, даже скорее до 300, но никак не миллионы.

Причём тут только Big Data?

сумарно клиентов у MSSQL наверное до 500 тыс, даже скорее до 300, но никак не миллионы.

Ну-ну. Откуда инфа?

Ну вот нет смысла отрицать очевидные вещи: https://www.postgresql.org/community/contributors/ - 3 из 5 членов Core Team являются сотрудниками 2ndQuadrant и EnterpriseDB, в Major Contributors их еще пачка.

И что? Перечитай то, что я написал. Можешь посчитать коммиты Dave Page для просветления, кстати. ;)

А я писал вот что: если, например, весь вклад Álvaro Herrera в PostgreSQL (за всю его жизнь) 2ndQuadrant этой фразой «записывает на себя» (прямо в тот день, когда они его наняли). Это нормально, по-твоему, это действительно их вклад?

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

Не умеешь --- не берись. Сотни специалистов справляются --- как же так?

(ага, широкие таблицы мы быстро не умеем (генерится куча мусора при UPDATE, а там vacuum подсирает, индексы перестраиваются и т.д.), нужно нарезать на более мелкие и соединять,

Нет, не нужно. Нужно купить адекватное железо и не заниматься фигнёй и крохоборством (и сравнить TCO с коммерческой СУБД). Ты думаешь, что базы данных --- это для нищебродов?

а тут уже оптимизатор начинает всасывать по полной,

Это т.н. безосновательное утверждение.

большие блоки мы тоже не умеем, поэтому храним данные как можем, а то что не влезает засовываем в TOAST для пущего замедления,

Замедления, замедления... СУБД --- это в основном не про производительность (surprise!). Людям, которые не понимают их назначения, использовать их не стоит.

хинты мы делать не хотим по идеологическим соображениям (ага, пусть лучше у нас поддержку покупают)) - как этим вообще можно пользоваться-то?

Десяткам тысяч вполне себе удаётся. Хинтов, кстати, в PostgreSQL не так уж мало (просто они так не называются).

Вон, убер попользовался - и чет как-то не очень,

Их история --- история вопиющей некомпетентности разработчиков и попыток спереть это на СУБД (начиная с того, что они пытались использовать RDBMS не по назначению --- конец немного предсказуем).

anonymous
()
Ответ на: комментарий от borisych

у Oracle-то прайслист общедоступен, что вызывает некие трудности для возможности откатов

Каким образом это гарантирует невозможность возврата части суммы «нужному человеку» в чемодане.

anonymous
()
Ответ на: комментарий от anonymous

Каким образом это гарантирует невозможность возврата части суммы «нужному человеку» в чемодане.

в шатах есть FCPA (The Foreign Corrupt Practices Act), который запрещает американским компаниям давать откаты за границей. А само заявление про оракл и откаты довольно глупое, я вот могу заявить что-то в духе «Российская компания Postgres Профессиональный была создана для откатов на фоне хайпа об отечественном ПО», и я больше чем уверен, что мое заявление будет куда ближе к истине, нежели то же самое про оракл.

borisych ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.