• Дайджест новостей из мира PostgreSQL. Выпуск №14



      Мы продолжаем знакомить вас с самыми интересными новостями по PostgreSQL.

      Новости


      Microsoft приобрела Citus Data

      Безусловно, главная новость в мире PostgreSQL. Об этом есть сообщение на сайте Citus, равно как и на сайте MS.

      Postgres Pro Enterprise Certified

      СУБД Postgres Pro Enterprise получила сертификат ФСТЭК, и теперь в наборе Postgres Pro есть и «Сертифицированная версия Postgres Pro Enterprise». До этого сертификат, необходимый для работы с персональными данными, имела только Postgres Pro Standard («Сертифицированная версия Postgres Pro»). Подробности на сайте.

      credativ: PostgreSQL Competence Center

      Германская фирма credativ, до того известная в Европе и Азии, приобрела фирму OmniTI, чтобы выйти на американский рынок. credativ специализируется на развертывании и поддержке проектов open source. Теперь в США откроется PostgreSQL Competence Center, который будет заниматься высококритичными проектами и поддерживать БД в течение всего их жизненного цикла.
      Читать дальше →
    • Postgres в ретроспективе

      • Перевод
      Предлагаем вашему вниманию перевод статьи Джозефа Хеллерштейна «Looking Back at Postgres», опубликованной в соответствии с международной лицензией Creative Commons «С указанием авторства» версии 4.0 (CC-BY 4.0). Авторы оставляют за собой право распространять эту работу на личных и корпоративных веб-сайтах с надлежащей ссылкой на источник.

      Перевод выполнен Еленой Индрупской. От себя добавлю, что «программист, который отчаянно хотел построить систему с многоверсионностью» — судя по всему, Вадим Михеев, ну а «добровольцев из России», переписавших GiST, мы все хорошо знаем.

      Аннотация


      Это воспоминание о проекте Postgres, выполняемом в Калифорнийском университете в Беркли и возглавляемом Майком Стоунбрейкером (Mike Stonebraker) с середины 1980-х до середины 1990-х годов. В качестве одного из многих личных и исторических воспоминаний, эта статья была запрошена для книги [Bro19], посвященной награждению Стоунбрейкера премией Тьюринга. Поэтому в центре внимания статьи — руководящая роль Стоунбрейкера и его мысли о дизайне. Но Стоунбрейкер никогда не был программистом и не мешал своей команде разработчиков. Кодовая база Postgres была работой команды блестящих студентов и эпизодически—штатных университетских программистов, которые имели немного больше опыта (и только немного большую зарплату), чем студенты. Мне посчастливилось присоединиться к этой команде в качестве студента в последние годы проекта. Я получил полезный материал для этой статьи от некоторых более старших студентов, занятых в проекте, но любые ошибки или упущения являются моими. Если вы заметили какие-либо из них, пожалуйста, свяжитесь со мной, и я постараюсь их исправить.
      Читать дальше →
      • +20
      • 3,7k
      • 1
    • Скоро PGConf.Russia 2019

        PGConf.Russia 2019 не за горами — 4 февраля мастер-классы, 5-6го — доклады. В этом году, как и в прошлом, конференция проводится на экономическом факультете МГУ. Активность докладчиков в период сбора докладов была заметно выше, чем в прошлые годы, так что программа будет интересной. Даже молчаливые 1С-ники подтянулись: первый раз (вместе с Инфостартом) удалось собрать целую секцию на тему «Postgres для 1С». Итак, что нас ждёт?
        Читать дальше →
      • Дайджест новостей из мира PostgreSQL. Предновогодний (укороченный) выпуск №13



          Мы продолжаем знакомить вас с самыми интересными новостями по PostgreSQL. В этом предновогоднем выпуске не будем утомлять вас длинным перечнем новостей. С Наступающим Новым Годом!

          Релизы


          pgAdmin4 3.6

          В этой версии добавлены:

          • из панели Properties можно дропать несколько объектов одновременно;
          • можно импортировать из и экспортировать в определения серверов из базы и в базу данных конфигураций.

          pgpoolAdmin 4.0.2

          Можно скачать здесь, как и многочисленные предыдущие версии.

          dbForge Studio for PostgreSQL v2.0

          На этот раз devart выпустила Studio со Standard edition, в которой есть функциональность, не включенная в бесплатную версию Express. 30 дней можно пользоваться Standard edition бесплатно. О различиях Standard и Express можно почитать здесь.

          VOPS-2.0

          Вышла новая версия расширения PostgreSQL от Postgres Professional для эффективного исполнения векторных операций.

          pg_probackup 2.0.25

          Новая версия утилиты для бэкапа и восстановления, тоже от Postgres Professional

          pgCluu 2.9

          Новую версию этой программы на Perl для аудита производительности кластеров с PostgreSQL можно скачать здесь. pgCluu собирает статистику работы не только СУБД, но и системные ресурсы кластера.

          postgres_dba 4.0

          Вышла новая версия утилиты Николая Самохвалова для администрирования PostgreSQL. В ней появились три новых отчета: список расширений, настройка параметров PostgreSQL и Вакуум: что происходит прямо сейчас. И, конечно, доработки и исправления.
          Читать дальше →
          • +14
          • 4,8k
          • 2
        • Дайджест новостей из мира PostgreSQL. Выпуск №12



            Мы продолжаем знакомить вас с самыми интересными новостями по PostgreSQL.

            Релизы


            PostgreSQL 11.1
            Вместе с этой версией вышли также 10.6, 9.6.11, 9.5.15, 9.4.20 и 9.3.25 (это последний релиз 9.3). В этой версии есть изменения, связанные с безопасностью. Исправили выявленные ошибки. Прочитать о релизах можно здесь, а скачать здесь.


            Postgres Pro Standard 11.1.1, 10.6.1, 9.6.11.1, 9.5.15.1, Postgres Pro Enterprise 10.6.1, 9.6.11.1

            Эти релизы основаны на соответствующих ванильных версиях PostgreSQL и на предыдущих версиях Standard и Enterprise. В разделе «Замечания к выпуску» в соответствующей версии документации можно прочитать об отличиях от предыдущей версии семейства. Например, в Enterprise 10.6.1 и 9.6.11.1 добавлена поддержка операционной системы Astra Linux «Смоленск» 1.6 и улучшена стабильность автономных транзакций.

            pgAdmin 4 version 3.5.

            В этом релизе не только исправлены баги (11 штук), но и добавлены новые возможности. Среди них:
            • Миграция с Bootstrap 3 на Bootstrap 4
            • Можно останавливать сервисные процессы (Backup/Restore/Maintenance...)

            Бинарники для Windows и macOS, а также для Python Wheel, Docker-контейнеры и тарболы с исходниками можно скачать отсюда. RPMы и DEBы должны появиться в репозиториях postgresql.org в ближайшие дни.

            TimescaleDB 1.0

            В анонсе говорится, что это версия годится для использования в промышленном режиме. Эта СУБД, ориентированная на работу с временнЫми рядами, выполнена как расширение для PostgreSQL. Можно запускать разные версии TimescaleDB с одним и тем же экземпляром PostgreSQL Ядро команды разработчиков — выпускники Принстонского Университета.
            Читать дальше →
            • +15
            • 4,3k
            • 1
          • Подсветка синтаксиса PostgreSQL

              Спешу поделиться хорошей новостью: жизнь авторов статей про PostgreSQL и их читателей стала немного лучше.

              Как знают все хаброписатели, для оформления исходного кода используется специальный тег <source>, который подсвечивает синтаксис. Не секрет также, что подсветка не всегда получается идеальной, и тогда авторы (которым не все равно, как выглядят их статьи) вынуждены заниматься самодеятельностью — расцвечивать свой код с помощью <font color=...>.

              Особенно печально все было с PostgreSQL, поскольку подсветка охватывала более или менее стандартный SQL и категорически не понимала специфики нашей СУБД. Шло время, Алексей boomburum старательно исправлял мои font-ы на source (а я — обратно), пока не стало очевидно, что подсветку надо чинить. Наконец Далер daleraliyorov подсказал выход: добавить поддержку PostgreSQL в библиотеку highlightjs, которой пользуется Хабр. И вот — готово, встречайте.
              Читать дальше →
              • +25
              • 5,2k
              • 5
            • Союз R и PostgreSQL. Анализируем работу аэропортов, рассчитываем пенсии

                Часть I. R извлекает и рисует


                Конечно, PostgreSQL с самого начала создавалась как универсальная СУБД, а не как специализированная OLAP-система. Но один из больших плюсов Постгреса — в поддержке языков программирования, с помощью которых из него можно сделать что угодно. По изобилию встроенных процедурных языков ему просто нет равных. PL/R — серверная реализация R — любимого языка аналитиков — один из них. Но об этом позже.

                R – удивительный язык со своеобразными типами данных — list, например, может включать в себя не только данные разных типов, но и функции (вообще, язык эклектичный, и говорить о принадлежности его к определенному семейству не будем, чтобы не порождать отвлекающие дискуссии). В нем есть симпатичный тип данных data.frame, который подражает таблице РСУБД — это матрица, у которой столбцы содержат разные типы данных, общие на уровне столбца. Поэтому (и по другим причинам) работать в R с базами данных довольно удобно.

                Мы будем работать в командной строке в среде RStudio и соединяться с PostgreSQL через драйвер ODBC RpostgreSQL. Их несложно установить.

                Поскольку R создавался как этакий вариант языка S для тех, кто занимается статистикой, то и мы приведем примеры из простенькой статистики с простенькой графикой. У нас нет цели знакомить с языком, но есть цель показать взаимодействие R и PostgreSQL.

                Обрабатывать данные, хранящиеся в PostgreSQL, можно тремя путями.
                Читать дальше →
              • Вышел PostgreSQL 11



                  Специальный выпуск POSTGRESSO, посвященный выходу официального релиза версии 11.


                  На улице PostgreSQL праздник. После четырех beta вышла PostgreSQL 11 General Availability, то есть официальная версия. В анонсе есть даже приветственное слово Брюса Момджана: «готовя этот релиз, сообщество особенно заботилось о добавлении функциональности, необходимой для работы с очень большими базами данных. Доказано, что PostgreSQL хорошо работает с транзакционными нагрузками, а теперь новая версия — PostgreSQL 11 — облегчит разработчикам еще и создание приложений для Big Data».

                  В release notes выделяют

                  • секционирование:
                    • добавлено секционирование по хешу;
                    • PRIMARY KEY, FOREIGN KEY, индексы (см. ниже на эту тему) и триггеры;
                    • секция по умолчанию для записей, вышедших за границы созданных секций;
                    • UPDATE по ключу секционирования теперь может автоматически перемещать запись в соответствующую секцию;
                    • PostgreSQL научился исключать ненужные секции (partition pruning) во время исполнения запросов SELECT;
                  • распараллеливание:
                    • теперь можно параллельно создавать индекс в случае B-tree;
                    • при CREATE TABLE… AS, CREATE MATERIALIZED VIEW и в некоторых случаях запросов с UNION;
                    • улучшена производительность в параллельных HASH JOIN и SEQUENTIAL SCAN;
                  • появились хранимые процедуры, и в них возможно управление транзакциями;
                  • JIT-компиляция фрагментов запросов, выигрыш на вычислении выражений;
                  • оконные функции теперь поддерживают все фреймовые опции SQL:2011 стандарта, в том числе расстояния по RANGE у PRECEDING/FOLLOWING, режим GROUPS, возможность исключения строк из фрейма;
                  • появились покрывающие индексы [не покрывающие, а инклюзивные, строго говоря — прим. POSTGRESSO], использующие выражение INCLUDE при CREATE INDEX;
                  • из раздела «разное»: ALTER TABLE… ADD COLUMN c значениями NOT NULL по умолчанию: этот вариант команды теперь не перезаписывает все строки таблицы и, следовательно, работает быстро.

                  Читать дальше →
                • Дайджест новостей из мира PostgreSQL. Выпуск №10



                    Мы продолжаем знакомить вас с самыми интересными новостями по PostgreSQL.

                    Релизы


                    PostgreSQL 11 Beta 4
                    В этом релизе починили баги, выявленные после выхода Beta 3. В том числе:

                    • теперь отключена по умолчанию JIT-компиляция.
                    • имена в constraint-ах должны быть уникальны.
                    • убрали утечку памяти при обращении к XMLTABLE
                    • исправили ошибки в хранимых процедурах
                    • доработали секционирование, в том числе выбор секций в момент исполнения (runtime partition pruning)

                    Подробнее здесь.

                    PostgreSQL 10.5
                    В этом релизе несколько десятков исправлений, касающихся WAL, libpq, VACUUM и FREEZE, индексов GIN, распараллеливания запросов, OpenSSL. Вот их список.

                    Postgres Pro Enterprise 10.5.2.
                    В этой версии есть следующие нововведения по отношению к Postgres Pro Enterprise 10.5.1, они касаются pgbench:

                    • pgbench теперь поддерживает составные команды;
                    • с помощью параметра --latency-limit теперь можно ограничить время, отведённое на повторение транзакций. Если при использовании данного параметра значение --max-tries=0, транзакции могут повторяться неограниченное число раз, пока не истечёт время, заданное параметром --latency-limit;
                    • при вычислении количества обработанных транзакций и скорости выполнения (TPS) пропущенные и неуспешные транзакции больше не учитываются.

                    Напомним, за время между нашими выпусками вышел релиз Postgres Pro Enterprise 10.5.1.. Там есть существенные изменения, о них можно прочитать здесь.
                    Читать дальше →
                    • +16
                    • 3,5k
                    • 2
                  • Параллелизм в PostgreSQL: не сферический, не конь, не в вакууме



                      Масштабирование СУБД – это непрерывно наступающее будущее. СУБД совершенствуются и лучше масштабируются на аппаратных платформах, а сами аппаратные платформы наращивают производительность, число ядер, памяти — Ахиллес догоняет черепаху, но все еще не догнал. Проблема масштабирования СУБД стоит во весь рост.

                      Компании Postgres Professional с проблемой масштабирования довелось столкнуться не только теоретически, но и практически: у своих заказчиков. И не раз. Об одном из таких случаев и пойдёт речь в этой статье.

                      PostgreSQL неплохо масштабируется на NUMA-системах, если это одна материнская плата с несколькими процессорами и несколькими шинами данных. О некоторых оптимизациях можно почитать здесь и здесь. Однако есть и другой класс систем, у них несколько материнских плат, обмен данными между которыми осуществляется с помощью интерконнекта, при этом на них работает один экземпляр ОС и для пользователя такая конструкция выглядит как единая машина. И хотя формально такие системы можно также отнести к NUMA, но по своей сути они ближе к суперкомпьютерам, т.к. доступ к локальной памяти узла и доступ к памяти соседнего узла отличаются радикально. В сообществе PostgreSQL считают, что единственный экземпляр Postgres, работающий на таких архитектурах, это источник проблем, и системного подхода к их решению пока нет.
                      Читать дальше →

                    Самое читаемое