(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Вышел PostgreSQL 10

Источник: habrahabr


Итак, что же нового в этой версии PostgreSQL?

Во-первых, изменилось само версионирование. До "десятки" мы наблюдали множество минорных версий 9.x, которые выходили примерно раз в год и при этом вносили серьезные, далеко не минорные изменения. Поэтому с версии 10 было принято решение сделать нумерацию 10, 11, 12 и т.д. Кстати, MySQL, похоже пошел по тому же пути, прыгнул с 5.7 на 8.0

Ладно, это всё мелочи, перейдем к существу вопроса


Логическая репликация


Это то, чего все ждали давным-давно. Замена различным расширениям а ля slony (репликация на триггерах) и другим костылям.

Теперь вы можете из коробки делать репликацию отдельных таблиц на другие базы.

Репликация делается с помощью команд CREATE PUBLICATION и CREATE SUBSCRIPTION. Всё достаточно просто.

Понятно, что фича достаточно новая, поэтому на данный момент в логической репликации отсутствуют некоторые фичи.

  • нет репликации схемы/DDL
  • нет репликации сиквенсов
  • не реплицируется команда TRUNCATE

Тем не менее это все равно огромный шаг вперед, в каких-то случаях можно выкинуть slony!

Партиционирование


Если раньше партиции можно было накостылять через наследование таблиц, то в десятке появилось для этого встроенное средство, которое называется declarative partitioning.

Для этого у главной таблицы добавляется ключевое слово PARTITON BY RANGE (или LIST), которое говорит, что эта таблица партициирована (или как это правильно сказать по-русски?).

У конкретных партиций с помощью выражения PARTITION OF ... FOR VALUES FROM (...) TO (...)задается диапазон их данных.

У партиций есть ряд ограничений, которые стоит иметь в виду, прежде чем использовать на продакшене: Limitations of declarative partitioning in PostgreSQL 10

Identity columns


Если вкратце, то появилась возможность писать

id int GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY

вместо

id serial PRIMARY KEY

Что это дает?
Дело в том, что слово serial - это грубо говоря алиас к конструкции DEFAULT nextval('имя сиквенса'). Т.е. по сути таблица отдельно, сиквенс отдельно. Это бывает удобно, а бывает нет. Например, это приводит к тому, что если вы даете права на вставку в таблицу (GRANT INSERT), вам приходится еще отдельно давать гранты на сиквенс.

Кстати, новая запись соответствует стандарту SQL.

Прочее


  • Улучшился паралеллизм, в частности Parallel Bitmap Heap Scan, Parallel Index Scan, Parallel Merge Join и т.д. Подробно можно прочесть в блоге Роберта Хааса
  • Улучшена производительность физической репликации
  • Hash-индексы стали реплицируемы
  • Поддержка полнотекстового поиска на jsonb колонках
  • SCRAM-аутентификация
  • улучшенная поддержка работы с xml
  • улучшен планировщик запросов при использовании join: если планировщик поймет, что объединенные строки не могут произвести в джойне больше одной строки, то можно не тратить лишнее время на поиск других строк. Примеры запросов можно посмотреть в тестах этого комита

Полный список изменений можно посмотреть здесь.

Если кто-то уже успел попробовать v10 в бою, поделитесь, плиз, своими впечатлениями в комментариях.

UPDATE. Есть мнение, что система версий не очень. Надо было называть PostgreSQL X, чтобы быть в тренде :)

Ссылки по теме


 Распечатать »
 Правила публикации »
  Обсудить материал в конференции Дискуссии и обсуждения общего плана »
Написать редактору 
 Рекомендовать » Дата публикации: 09.10.2017 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
ABViewer Enterprise пользовательская
ABBYY Lingvo x6 Английская Домашняя версия, электронный ключ
ESET NOD32 Smart Security - продление лицензии на 2 года на 3ПК, Ключ
Symantec Endpoint Protection, License, 1-24 Devices
ESET NOD32 Антивирус - продление лицензии на 2 года на 3ПК
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
OS Linux для начинающих. Новости + статьи + обзоры + ссылки
СУБД Oracle "с нуля"
Windows и Office: новости и советы
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
Обсуждения в форумах
3D редакторы, плюсы и минусы (2)
Одно из многих сотен бестолковых обобщений. Прости их господи, Васей Пупкиных
 
Программы на заказ (инженеры-профессионалы, по договору) + мобильные приложения, админ-панели, ИС (1)
Несколько инженеров-профессионалов примут заказы на разработку: 1. нативных мобильных...
 
Пишу программы на заказ профессионально (2131)
Пишу программы на заказ на языках Pascal (численные методы, списки, деревья, прерывания) под...
 
Куплю программу (5)
Нужно сделать программу для рулетки в онлайн-казино. Должна показывать в виде таблицы выпадающие...
 
Пишу программы на Lazarus (16)
Предлагаю разработку программ на заказ. Примеры программ: www.itproportal.ru
 
 
 



    
rambler's top100 Rambler's Top100