The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги ]

07.01.2016 21:29  Релиз СУБД PostgreSQL 9.5

После года разработки представлена новая стабильная ветка СУБД PostgreSQL 9.5 (русскоязычный пресс-релиз). Выпуск обновлений для ветки 9.5 будет осуществляться в течение пяти лет до января 2021 года.

Основные новшества:

  • Функциональность "UPSERT" (добавить-или-модифицировать), реализованная через новое выражение "INSERT ... ON CONFLICT DO NOTHING/UPDATE", позволяющая обработать ситуацию невозможности добавления данных через "INSERT", например, из-за нарушения условий уникальности или недопустимости значения одного из полей. Вместо вывода ошибки теперь можно игнорировать выполнение оператора или изменить связанные с ключевым полем данные (т.е. если запись уже существует, вместо INSERT выполнить UPDATE);
  • Ограничение доступа на уровне строк (Row-Level Security, RLS). Доступ пользователей к данным в таблице теперь можно разграничивать на уровне отдельных строк, например, можно запретить определённой категории пользователей просмотр строк, в которых хранятся данные, добавленные другим пользователем. Для активации RLS следует использовать директиву "ALTER TABLE tablename ENABLE ROW LEVEL SECURITY", после чего следует задать правила доступа при помощи выражения "CREATE POLICY";
  • BRIN-индексы ("индексы блоковых зон", Block Range Index), позволяющие сверхкомпактно индексировать очень большие таблицы, без применения традиционных B-деревьев. Суть BRIN-индексов сводится к разбиению общего индекса на блоки, каждый из которых содержит данные индекса только для определённого диапазона значений. В тесте подобный метод оказался примерно в два раза медленнее b-деревьев при осуществлении операций выборки данных, но в 3-4 раза быстрее при создании и обновлении индекса, а также занял значительно меньше места на диске (64 Кб против 28 Мб);
  • Новые функции и операторы для типа данных JSONB. Для изменения значений в документе JSONB теперь можно обойтись без извлечения и переопределения всего документа, благодаря появлению функции jsonb_set(). Также добавлены функции json_strip_nulls (удаление атрибутов, содержащих значения NULL) и jsonb_pretty (вывод в отформатированном JSON). Добавлен оператор "||" для соединения двух значений JSONB;
  • Инструмент pg_rewind, позволяющий существенно упростить процесс восстановления отказоустойчивых конфигураций после переключения на резервный сервер. После возвращения в строй основного сервера возникает задача синхронизации его состояния с продолжившим работу запасным сервером, который успел накопить свою порцию изменений. Утилита pg_rewind пытается восстановить состояние первичного сервера по WAL-логу транзакций, перебирая их начиная с момента незадолго до сбоя, определяя изменённые данные и перенося только изменившиеся блоки, что позволяет обойтись без восстановления полной копии с работающего резервного сервера.
  • Существенные оптимизации скорости сортировки и хэширования в памяти. Благодаря применению нового метода сортировки строковых значений и чисел, удалось до 20 раз увеличить скорость создания индексов, а время выполнения запросов требующих сортировки больших объёмов данных, сократить в 2-12 раз;
  • Добавлена поддержка выражения TABLESAMPLE, позволяющего сформировать выборку над неполным объёмом данных из больших таблиц, без выполнения ресурсоёмких операций сортировки над всей таблицей. Например, запрос "SELECT * FROM test TABLESAMPLE SYSTEM(10)" сформирует вывод, охватив только 10% от таблицы test. Доступно несколько алгоритмов отсеивания значений в процессе неполной выборки;
  • Существенные улучшения масштабирования на системах с большим количеством процессорных ядер и оперативной памяти. Например, на системе с 24 ядрами CPU и 496 Гб ОЗУ в тесте EnterpriseDB при нагрузке в 64 одновременных соединения PostgreSQL 9.5 показал прирост производительности в 96% по сравнению с PostgreSQL 9.4;
  • Автоматизированное управление размером лога транзакций. Возможность исключения отражения таблиц в логе транзакций (ALTER TABLE ... SET LOGGED / UNLOGGED);
  • Аналитические возможности "GROUPING SETS", "CUBE" и "ROLLUP", позволяющие формировать вывод с группировкой по набору полей и рассчитывать число комбинаций различных категорий;
  • Улучшения репликации и средств повышения отказоустойчивости. Добавлен механизм отслеживания состояния выполнения репликации, в том числе реализованы методы для определения причины возникновения отдельных изменений в процессе выполнения логической репликации;
  • Множественные улучшения в механизме Foreign Data Wrappers, включая выражение "IMPORT FOREIGN SCHEMA", которое позволяет автоматизировать импорт всех связанных внешних таблиц для уже существующих таблиц с выбранной меткой сервера. Кроме того, обеспечена возможность наследования внешних таблиц в локальных таблицах и наоборот, например, "CREATE local_customers () inherits (remote.customers);"
  • В утилиту vacuumdb добавлена опций "-j", позволяющая запускать VACUUM в несколько одновременно выполняемых потоков.


  1. Главная ссылка к новости (http://www.postgresql.org/abou...)
  2. OpenNews: В СУБД PostgreSQL добавлена поддержка распараллеливания запросов
  3. OpenNews: Началось альфа-тестирование СУБД PostgreSQL 9.5
  4. OpenNews: Для PostgreSQL представлена реализация условных индексов
  5. OpenNews: Релиз СУБД PostgreSQL 9.4
  6. OpenNews: Представлена инфраструктура по организации параллельных вычислений в PostgreSQL
Лицензия: CC-BY
Тип: Интересно / Программы
Ключевые слова: postgresql, database
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Линейный вид | Ajax | Показать все | RSS
 
  • 1.1, Я, 22:07, 07/01/2016 [ответить] [смотреть все]
  • +24 +/
    Торт!
     
  • 1.2, VoDA, 22:49, 07/01/2016 [ответить] [смотреть все]
  • +11 +/
    Поздравляю всех с выходом новой версии Слона! )))

    С каждым резилом становится все лучше и лучше.

     
     
  • 2.3, Michael Shigorin, 23:23, 07/01/2016 [^] [ответить] [смотреть все] [показать ветку]
  • +3 +/
    Присоединяюсь Кстати, интересный термин получился -- только эт скорее когда мы... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.5, ACCA, 00:09, 08/01/2016 [^] [ответить] [смотреть все]  
  • +/
    Таки да - UPSERT лет 15 ждали. А они долго объясняли, почему он не нужен.
     
     
  • 4.6, VoDA, 00:24, 08/01/2016 [^] [ответить] [смотреть все]  
  • +/
    Сейчас то же самое с multi-master кластером Раньше объясняли почему не надо и к... весь текст скрыт [показать]
     
     
  • 5.21, Fantomas, 21:18, 08/01/2016 [^] [ответить] [смотреть все]  
  • –3 +/
    До Мускула по репликации так и не дотягивает, обещали сделать хорошо, не сделали... весь текст скрыт [показать]
     
     
  • 6.22, Аноним, 01:22, 09/01/2016 [^] [ответить] [смотреть все]  
  • +4 +/
    Спасибо, но репликации как в mysql нам не надо.
     
     
  • 7.24, Perl_Jam, 05:47, 09/01/2016 [^] [ответить] [смотреть все]  
  • –1 +/
    +1
     
  • 7.41, Аноним, 00:39, 13/01/2016 [^] [ответить] [смотреть все]  
  • +/
    Сразу по горячим следам Google PostgreSQL vs MySQL - habrhabr Репликаци... весь текст скрыт [показать]
     
     
  • 8.42, Andrey Mitrofanov, 10:26, 13/01/2016 [^] [ответить] [смотреть все]  
  • +/
    habrAhabr - поленился ссылку капчить, хоть буковки б для поиска правилные написа... весь текст скрыт [показать]
     
     
  • 9.43, Аноним, 16:35, 13/01/2016 [^] [ответить] [смотреть все]  
  • +/
    Да, фас Вслед за Митрофановым, он - вожак этой стаи Ведь это же так важно в да... весь текст скрыт [показать]
     
  • 6.30, VoDA, 17:05, 10/01/2016 [^] [ответить] [смотреть все]  
  • +/
    А чего не хватило PS Кроме зацикливания репликации для получения двунаправленно... весь текст скрыт [показать]
     
  • 4.11, Аноним, 02:12, 08/01/2016 [^] [ответить] [смотреть все]  
  • +6 +/
    Объясняли почему его сложно сделать корректно, а не почему не нужно.
     
  • 4.16, Аноним, 12:00, 08/01/2016 [^] [ответить] [смотреть все]  
  • +1 +/
    апсерт зло.
    Уже видно, как потянулись сопли частных случаев.
     
  • 2.8, Аноним, 00:26, 08/01/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • –1 +/
    что не скажешь про дельфина и машу(
     
     
  • 3.28, Ape, 12:42, 10/01/2016 [^] [ответить] [смотреть все]  
  • +/
    А, что тебе в маше не так Ты свои руки прикрути правильно к телу и будет возмож... весь текст скрыт [показать]
     
  • 1.4, Аноним, 23:52, 07/01/2016 [ответить] [смотреть все]  
  • +/
    В этой версии при добавлении нового поля теперь есть поддержка BEFORE/AFTER?!
     
  • 1.7, Аноним, 00:25, 08/01/2016 [ответить] [смотреть все]  
  • +2 +/
    что уж мелочится, тортище!
     
  • 1.9, Аноним, 01:05, 08/01/2016 [ответить] [смотреть все]  
  • –2 +/
    Cake!!!
     
  • 1.10, Аноним, 01:08, 08/01/2016 [ответить] [смотреть все]  
  • +/
    Даже любители сортов тюления приятно удивлены! Поздравляю!!!
     
  • 1.12, Вареник, 02:35, 08/01/2016 [ответить] [смотреть все]  
  • +1 +/
    Виват разработчикам! Лучшая реляционная СУБД стала еще лучше.
     
  • 1.13, Ilya Indigo, 03:03, 08/01/2016 [ответить] [смотреть все]  
  • +/
    > BRIN-индексы

    Интересная вещь, если, конечно, использовать с умом, а не лепить где попало вместо B-Tree.

     
  • 1.14, Аноним, 04:28, 08/01/2016 [ответить] [смотреть все]  
  • –1 +/
    ждем ебилдов от 1с
     
     
  • 2.17, Anonymous1, 12:05, 08/01/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    А что, в 1С уже 9.4 используем? У меня не получилось, к сожалению.
     
     
  • 3.19, Аноним, 14:31, 08/01/2016 [^] [ответить] [смотреть все]  
  • +2 +/
    http://www.postgrespro.ru/products/1c_build
     
     
  • 4.20, Anonymous1, 19:57, 08/01/2016 [^] [ответить] [смотреть все]  
  • +/
    Знаю, что она там ЕСТЬ Но база 1С УПП, платформа 8 3 несколько релизов при поп... весь текст скрыт [показать]
     
     
  • 5.32, 1, 10:29, 11/01/2016 [^] [ответить] [смотреть все]  
  • –1 +/
    А напишите в суппорт postgrespro Там вполне доброжелательно относятся к выяснен... весь текст скрыт [показать]
     
  • 5.45, Аноним, 16:01, 16/01/2016 [^] [ответить] [смотреть все]  
  • +/
    работает
     
  • 3.38, 1, 15:23, 12/01/2016 [^] [ответить] [смотреть все]  
  • –1 +/
    Кстати - на сайте 1с - для продакшена 9.4.2
     
  • 1.15, Аноним, 04:59, 08/01/2016 [ответить] [смотреть все]  
  • –1 +/
    слишком быстро, тестировать можно, переходить боязно
     
     
  • 2.18, Andrey Mitrofanov, 12:25, 08/01/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    Угу, надо на досуге релиз-ноутсы миноров 9 3 пере-почитать -- кончили они ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.34, Andrey Mitrofanov, 15:58, 11/01/2016 [^] [ответить] [смотреть все]  
  • +/
    С другой стороны Да-да, я не прочитал новость наверху - сразу Josh Berk... весь текст скрыт [показать]
     
  • 2.23, Аноним, 01:23, 09/01/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Угу, 9 5 1 уже анонсирован, будет в феврале ... весь текст скрыт [показать] [показать ветку]
     
  • 2.26, Аноним, 20:19, 09/01/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • –1 +/
    Перешел вчера на 3 боевых серверах (репликация, все дела) полет нормальный
     
     
  • 3.36, Аноним, 09:51, 12/01/2016 [^] [ответить] [смотреть все]  
  • +/
    Данные не "критично" нужные?
     
     
  • 4.40, Аноним, 20:24, 12/01/2016 [^] [ответить] [смотреть все]  
  • +/
    Критично но не смертельно А вообще за 7 лет еще ни разу не упарывался чтобы при... весь текст скрыт [показать]
     
  • 1.25, Anonymous1, 11:56, 09/01/2016 [ответить] [смотреть все]  
  • –1 +/
    Извиняюсь, не посмотрел внимательно. Спасибо, буду пробовать - есть видимые отличия от стандартной 1С поставки PGSQL.
     
  • 1.27, Аноним, 20:29, 09/01/2016 [ответить] [смотреть все]  
  • +1 +/
    Ну по функционалу слава богу более-менее закрыли, upsert и jsonb_set радуют , в ... весь текст скрыт [показать]
     
     
  • 2.37, Аноним, 09:52, 12/01/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Верится с трудом, слишком много подводных камней в т ч добавляемых upsert-ами... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.39, Аноним, 19:58, 12/01/2016 [^] [ответить] [смотреть все]  
  • +/
    Полный перебор в 9 6 вроде уже закомитили, говорят есть большой прогресс по сорт... весь текст скрыт [показать]
     
  • 1.31, Anonymous4245345, 00:15, 11/01/2016 [ответить] [смотреть все]  
  • +/
    А как правильно теперь настроить этот мульти-мастер реплику?
    Если фактически вторая нода будет использовать только для чтений и для быстрого переключения перебросом IP куда клиенты коннектятся на второй мастер при крушении первого
     
     
  • 2.33, Fantomas, 14:14, 11/01/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    да нет там никакого мультимастера, не сделали, осталась постгря без репликации.
     
  • 2.35, Andrey Mitrofanov, 16:13, 11/01/2016 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    > А как правильно теперь настроить этот мульти-мастер реплику?

    Его там наверху нет. Он есть "не там" (см. 2ndquadrant).  #По-прежнему не в апстриме.

    -- http://blog.2ndquadrant.com/why-logical-replication/

    > Если фактически вторая нода будет использовать только для чтений

    Для только этого достаточно UDR -- _он_ то есть в апстриме. С 9.4 afair.

    > и для быстрого переключения перебросом IP куда клиенты коннектятся на второй мастер при крушении первого

    А вот эта часть, да, уже мастер-мастер... Возможны варианты, да, UDR + переключение ==как и streaming(hot-чего-то там) + переключение

    http:/openforum/vsluhforumID3/ubb/103468.html#7 и далее везде
    http:/openforum/vsluhforumID3/105100.html#67 "работает, как streaming replication, выглядит, как"

    ...и да, к переключениям (не знам, кторому из двух, или обоим) теперь(9.5+) pg_rewind донесли до апстрима. Раньше он был внеш.расширением.

     
  • 1.44, Аноним, 15:06, 15/01/2016 [ответить] [смотреть все]  
  • –1 +/
    Греф рассказал, что в ближайшее время Сбербанк полностью поменяет свою платформу... весь текст скрыт [показать]
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2017 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by Ihor TopList