Открыть сервис

PolarDB

PolarDB — это семейство реляционных баз данных, разработанное компанией Alibaba Group. Система позиционируется как облачная распределённая база данных, совместимая с MySQL, PostgreSQL и Oracle, и предназначенная для обработки высоконагруженных транзакционных (OLTP) и гибридных (HTAP) рабочих нагрузок. PolarDB использует архитектуру с разделением вычислительных ресурсов и ресурсов хранения (compute-storage separation), что позволяет масштабировать их независимо друг от друга.

История

Разработка PolarDB была начата в 2014 году в недрах Alibaba Group для решения проблем масштабирования и производительности, с которыми сталкивались традиционные базы данных в условиях стремительного роста электронной коммерции, особенно в периоды пиковых нагрузок, таких как «День холостяка» (11 ноября). Первая версия, совместимая с MySQL, была запущена в коммерческую эксплуатацию внутри компании в 2017 году, а в 2018 году стала доступна как облачный сервис на платформе Alibaba Cloud.

В 2020 году Alibaba Group открыла исходный код движка PolarDB для MySQL под лицензией Apache 2.0, создав проект PolarDB for PostgreSQL (также известный как PolarDB-PG) на базе PostgreSQL. В 2021 году была представлена версия, совместимая с Oracle (PolarDB for Oracle), которая поддерживает большую часть синтаксиса и функций Oracle, включая PL/SQL, что облегчает миграцию с СУБД Oracle.

Ключевые особенности и архитектура

Разделение вычислений и хранения (Compute-Storage Separation)

В отличие от традиционных монолитных СУБД, где вычислительные процессы и данные находятся на одном узле, PolarDB разделяет эти функции. Вычислительный слой (кластер из одного или нескольких узлов) отвечает за обработку запросов, управление сессиями и буферный кэш. Слой хранения (Pool Storage) представляет собой распределённую файловую систему, построенную на базе стандартных SSD-дисков и обеспечивающую трёхкратную репликацию данных для отказоустойчивости.

Такая архитектура позволяет:

  • Независимо масштабировать вычислительные ресурсы (добавлять или убирать узлы для чтения) и ресурсы хранения (увеличивать ёмкость без остановки сервиса).
  • Достичь высокой доступности: при сбое одного из вычислительных узлов или дисков система автоматически переключает трафик на здоровые узлы без потери данных.
  • Снизить затраты: плата взимается только за фактически используемые ресурсы.

Совместимость с существующими СУБД

PolarDB разработан как «drop-in replacement» для популярных реляционных баз данных. Это означает, что приложения, написанные для MySQL, PostgreSQL или Oracle, могут быть перенесены на PolarDB с минимальными изменениями кода или без них. Поддерживаются стандартные драйверы, протоколы и инструменты администрирования.

Гибридная транзакционная и аналитическая обработка (HTAP)

PolarDB поддерживает выполнение как транзакционных (OLTP), так и аналитических (OLAP) запросов в одной системе без необходимости создавать отдельные копии данных. Для ускорения аналитических запросов используется механизм In-Memory Columnar Index (IMCI), который хранит данные в столбцовом формате в оперативной памяти. Это позволяет выполнять сложные запросы с агрегацией и фильтрацией в десятки раз быстрее, чем при традиционной строчной обработке.

Автоматическое управление и отказоустойчивость

Система включает встроенные механизмы автоматического восстановления после сбоев (failover), резервного копирования и мониторинга. Обновления версий ПО и исправления безопасности могут применяться без остановки сервиса (rolling upgrade). Для обеспечения непрерывности бизнеса поддерживаются географически распределённые кластеры (multi-region deployment).

Классификация и версии

PolarDB предлагается в нескольких редакциях, различающихся по совместимости и функциональности:

  • PolarDB for MySQL: наиболее зрелая версия, полностью совместимая с MySQL 5.6, 5.7 и 8.0. Поддерживает все основные движки хранения (InnoDB, MyISAM) и расширения (например, плагины для полнотекстового поиска). Является основой для большинства коммерческих развёртываний Alibaba Cloud.
  • PolarDB for PostgreSQL: версия на базе PostgreSQL 11, 12, 14 и 15. Отличается открытым исходным кодом и активным сообществом. Поддерживает расширения PostgreSQL (PostGIS, TimescaleDB, pgvector и др.), что делает её привлекательной для геопространственных, временных рядов и AI-приложений.
  • PolarDB for Oracle: версия, предназначенная для миграции с Oracle Database. Обеспечивает совместимость на уровне синтаксиса PL/SQL, типов данных, пакетов и системных представлений. Позволяет переносить существующие приложения на Oracle без переписывания кода.

Применение

PolarDB используется в первую очередь в экосистеме Alibaba Group для обслуживания критически важных приложений электронной коммерции (Taobao, Tmall), финансовых сервисов (Alipay), логистики (Cainiao) и облачных вычислений (Alibaba Cloud). За пределами Alibaba система применяется в различных отраслях:

Критика и ограничения

Несмотря на технические достоинства, PolarDB имеет ряд ограничений:

  • Зависимость от облачной платформы: хотя существует открытая версия PolarDB for PostgreSQL, большинство продвинутых функций (автоматическое масштабирование, IMCI, географическая репликация) доступны только в рамках коммерческого сервиса Alibaba Cloud. Перенос на другую облачную платформу или on-premise развёртывание может быть затруднён.
  • Совместимость с Oracle неполная: версия PolarDB for Oracle не поддерживает все функции Oracle Database, особенно в части расширенных возможностей RAC (Real Application Clusters), Data Guard и некоторых типов данных. Миграция сложных приложений может потребовать доработки.
  • Относительная новизна: по сравнению с такими зрелыми продуктами, как Oracle Database, Microsoft SQL Server или PostgreSQL, PolarDB имеет более короткую историю эксплуатации и меньшее сообщество разработчиков. Это может влиять на доступность сторонних инструментов, библиотек и экспертизы на рынке.
  • Отсутствие официальной поддержки в РФ: на территории Российской Федерации Alibaba Cloud не имеет официального представительства. Развёртывание PolarDB возможно только через облачные сервисы Alibaba Cloud, которые могут быть недоступны или иметь ограничения для российских пользователей. Компания Alibaba Group не является организацией, признанной нежелательной или экстремистской на территории РФ, однако её деятельность регулируется китайским законодательством, что может создавать дополнительные риски для российских клиентов, связанные с обработкой персональных данных и доступом к информации.

Источники

  1. Официальная документация Alibaba Cloud по PolarDB.
  2. Репозиторий проекта PolarDB for PostgreSQL на GitHub.
  3. Технические статьи и публикации Alibaba Group в блоге Alibaba Cloud.
  4. Материалы конференций и докладов разработчиков PolarDB (например, на PGConf, Percona Live).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →