СУБД для высоких нагрузок: почему крупнейшие компании страны выбирают Postgres Pro EnterpriseИсточник: postgrespro
Postgres Pro - самая популярная* российская СУБД для enterprise-задач. Среди заказчиков системы - РЖД, "Росатом", "Газпромнефть", Федеральная налоговая служба, Федеральное казначейство, МИД, Гознак, Росфинмониторинг, а также крупнейшие частные компании России из списка "РБК 500". Почему они выбрали Postgres Pro? История компании Postgres Professional уникальна для российского рынка. Она занимает 2-е место в мире по объему вклада в развитие Open Source системы PostgreSQL, на которой базируется коммерческая СУБД Postgres Pro. Это больше вклада Microsoft, Amazon, Fujitsu, Google и Apple. В Postgres Professional работает большинство российских постгресистов: 70%, согласно данным анализа вклада разработчиков в PostgreSQL 15. Такая экспертиза и опыт позволили команде разработать Postgres Pro Enterprise - глубоко усовершенствованную коммерческую СУБД для решения самых сложных промышленных задач. Сегодня она работает в инсталляциях свыше 150 ТБ с одновременным подключением к системе более 10 000 пользователей. Серьезные доработки в области информационной безопасности и наличие первой в России сертификации по последним требованиям ФСТЭК делают Postgres Pro хорошим выбором для объектов КИИ. В обзоре мы собрали самые важные функции и преимущества СУБД Postgres Pro: УправляемостьПрозрачное управление для больших инсталляций: Postgres Pro Enterprise Manager Обычно администраторы баз данных PostgreSQL или систем на ее основе вынуждены работать в командной строке или через свободно распространяемые инструменты. Это вызывает неудобства, требует дополнительных знаний и снижает эффективность расходования рабочего времени специалистов. Пользователям любых редакций Postgres Pro доступна графическая платформа управления Postgres Pro Enterprise Manager (PPEM). Благодаря PPEM администраторы баз данных выполняют свои задачи в одном окне и могут работать эффективнее. Платформу можно использовать в работе с любой СУБД из линейки Postgres Pro, а также для гибридных ландшафтов Postgres Pro + PostgreSQL. Отказоустойчивость и масштабируемость
Традиционно пользователи PostgreSQL для обеспечения высокой доступности используют отказоустойчивые кластеры, состоящие из нескольких узлов. Для управления такими кластерами используются сторонние решения. Они требуют добавить в инфраструктуру дополнительное программное обеспечение, сложны в настройке и часто не соответствуют современным требованиям информационной безопасности для применения в объектах критической инфраструктуры. При установке Postgres Pro BiHA автоматически настраивает все необходимые параметры, что значительно упрощает работу администратора. Специальные процессы BiHA осуществляют непрерывный мониторинг состояния узлов кластера, а все участники кластера взаимодействуют по управляющему каналу, что позволяет оперативно принимать решения об исключении неисправного узла или запуске операции выбора нового лидера.
Масштаб enterprise-систем растет с каждым годом, а в реестре Минпромторга нет мощных серверов, отвечающих их размерам. Чтобы оптимизировать затраты заказчиков на инфраструктуру, специалисты Postgres Professional разработали уникальную распределенную СУБД Shardman. Система состоит из отдельных частей - шардов, каждый из которых представляет собой участника отказоустойчивого кластера с частью данных. Shardman позволяет создавать распределенную базу данных с возможностью горизонтального масштабирования. Подключение к Shardman и выполнение всех видов запросов возможно через любой шард. СУБД обеспечивает транзакционность распределенных запросов и создание согласованного бэкапа шардированной базы данных. Любой шард может выступать в качестве координатора запроса. Все это очень важно для шардирования OLTP-приложений.
Citus - расширение, которое используется для эффективной обработки аналитических данных на десятках серверов. В отличие от продукта Shardman, ориентированного на OLTP нагрузку, CITUS нацелен на аналитическую нагрузку дает пользователям Postgres Pro доступ к MPP-технологиям.
Multimaster - расширение, превращающее Postgres Pro Enterprise в синхронный кластер active-active без разделения ресурсов, который обеспечивает масштабируемость для читающих транзакций, а также высокую степень доступности с автоматическим восстановлением после сбоев. Multimaster интегрирован в ядро СУБД Postgres Pro и не требует дополнительных механизмов управления оборудованием. Позволяет обновлять СУБД без остановки кластера.
Поставляемая с СУБД Postgres Pro утилита pg_probackup отличается самой высокой скоростью создания резервных копий среди прочих решений по резервному копированию для СУБД PostgreSQL и ее форков, за счет создания инкрементальных бэкапов. Для больших баз данных актуально параллельное выполнение бэкапа, что также предусмотрено в pg_probackup. Утилита совместима российскими системами резервного копирования RuBackup и "Кибер бэкап", что подтверждают соответствующие сертификаты.
В СУБД PostgreSQL нет автономных транзакций из коробки, а использование сторонних расширений неудобно при миграции с Oracle и приводит к низкой производительности. Поэтому специалисты Postgres Professional разработали для СУБД Postgres Pro собственную наиболее производительную реализацию автономных транзакций. Производительность: быстрая работа с большими базами данных под высокой нагрузкой
Команда Postgres Professional первой в мире разработала 64-битные счетчики транзакций для Postgres, которые решают проблему переполнения счетчика транзакций у высоконагруженных систем. В ванильном PostgreSQL используется 32-битный счетчик, который быстро переполняется и создает угрозу остановки базы данных. 64-битные счетчики транзакций дают практически неограниченный запас устойчивости даже самым крупным проектам с миллиардами пользователей.
Одна из основных проблем реляционных СУБД, которые используют стоимостную модель для оптимизации SQL-запроса - ошибки при формировании плана запроса, возникающие из-за корреляций в данных или устаревшей статистики. Адаптивный оптимизатор запросов AQO 2.0 решает эту проблему, автоматически собирая статистику шагов выполнения запросов. Используя методы машинного обучения, на этапах последующего выполнения он корректирует оценку стоимости операций, что позволяет планировщику Postgres Pro выбрать более эффективный план выполнения запроса.
Приоритизация ресурсов - новый инструмент повышения эффективности использования СУБД с большим количеством пользователей. Это возможность создавать планы управления ресурсами и переключаться между ними, настраивая для сеансов приоритеты использования процессора и операций ввода/вывода.
Хранение больших объемов данных всегда обходится дорого, независимо от места их размещения - в облаке или на собственном серверном оборудовании. В Postgres Pro Enterprise имеется встроенный механизм сжатия данных CFS, который легко настраивается и позволяет уменьшить объем данных в разы. Он также ускоряет работу запросов за счет снижения объема ввода/вывода.
Ограничение в 32 ТБ данных в одной таблице все чаще становятся проблемой для крупных систем, в случае, когда прикладное ПО хранит в базе бинарные данные. Pluggable TOAST (The Oversized-Attribute Storage Technique) API позволит преодолеть такое ограничение и избежать внезапной остановки работы. Postgres Professional разработала тостеры для JSON и текста. Пользователи же смогут разрабатывать тостеры и для других типов данных.
Уникальный диагностический модуль pgpro_pwr (сокращение от Postgres Pro Workload Reporting) позволяет диагностировать и выявлять наиболее ресурсоемкие операции в базе данных. С помощью pgpro_pwr можно на регулярной основе или вручную получать снимки статистики производительности базы данных и формировать из них диагностический репозиторий. Это дает возможность анализировать производительность базы данных за период времени в прошлом. Миграция с Oracle: проще, быстрее, доступнееМиграция с Oracle - одновременно и самый частый запрос, и самая болезненная проблема заказчиков. Архитектура систем на основе PostgreSQL значительно отличается, поэтому миграция требует большого количества ресурсов: временных, финансовых и человеческих. Чтобы упростить миграцию для заказчиков, команда Postgres Pro реализовала и продолжает разрабатывать широкий ряд дополнительных функций.
БезопасностьPostgres Pro - первая и на момент подготовки статьи единственная в России СУБД, сертифицированная по новым требованиям ФСТЭК от 2023 года. Система сертифицирована по требованиям СУБД по 4-му классу, по требованиям доверия - по 4-му уровню (защита конфиденциальной информации). Обеспечивать высокий уровень безопасности в Postgres Pro Enterprise позволяет ряд серьезных доработок:
Регулярные обновления, карта совместимости и план разработокPostgres Pro - единственная в России СУБД, которая всегда базируется на последней версии PostgreSQL. Мажорные версии системы выходят через считанные недели после выхода ванильной СУБД. Благодаря этому заказчики получают доступ ко всем новейшим функциям открытой СУБД и повышенную безопасность за счет своевременного устранения уязвимостей. Postgres Pro работает более чем на 30 платформах и совместима более чем с 240 решениями, среди которых все ключевые операционные системы и прикладное ПО. Postgres Professional ведет непрерывную работу по совершенствованию возможностей СУБД. Сейчас в разработке более чем 20 дополнительных функций. Все они разрабатываются как на базе потребностей конкретных заказчиков, так и рынка в целом. Техническая поддержка, аудит и миграцияБлагодаря экспертизе и опыту команды Postgres Professional консультирует не только заказчиков, но и других вендоров СУБД, базирующих свои системы на основе PostgreSQL. Заказчикам Postgres Pro доступна стандартная и расширенная программы технической поддержки СУБД Postgres Pro и PostgreSQL в режиме 24/7. Опытные инженеры компании находятся в прямом контакте с разработчиками и могут решить даже проблемы, требующие вмешательства в программный код PostgreSQL. Для удобства пользователям компания запустила Портал техподдержки, где доступны личный кабинет заказчика и база знаний. На сайте Postgres Professional всем желающим доступна полноценная, регулярно обновляемая документация к СУБД Postgres Pro. Как протестировать СУБД?Узнать больше о редакциях и возможностях СУБД Postgres Pro, получить консультацию или заказать тестирование можно, заполнив форму на сайте Postgres Pro или обратившись на sales@postgrespro.ru. При необходимости специалисты Postgres Professional проведут аудит существующей СУБД, окажут поддержку в процессе миграции прикладных систем на Postgres Pro. Узнать больше о наших решениях для облегчения миграции можно в отдельном материале.
|