openGauss — это система управления реляционными базами данных с открытым исходным кодом, созданная инженерами Huawei. Новая версия 1.0.1, ставшая доступной в октябре 2020 года, существенно расширяет возможности СУБД и делает ее перспективным выбором для решения ряда ИТ-задач, прежде всего в крупных корпоративных проектах.
Ядро openGauss построено на базе объектно-реляционной системы управления базами данных PostgreSQL. Его функциональность была улучшена для решения задач корпоративного уровня.
Концептуально openGauss представляет собой многоцелевую базу данных: строковое хранилище в ней позволяет поддерживать сервисы с интенсивным обновлением данных, столбчатое хранилище ускоряет выполнение аналитических задач, а механизм в памяти увеличивает пропускную способность при решении задач, чувствительных ко времени ответа.
Решение развертывается как в контейнерах, так и на физических серверах с процессорами x86-64 или Kunpeng разработки Huawei. Официальный запуск первой версии openGauss состоялся 1 июля 2020 года.
А уже в середине осени вышел релиз 1.0.1, включавший более двадцати улучшений.
В своей текущей реализации openGauss обладает широким спектром примечательных возможностей.
Прежде всего, он поддерживает многоядерную архитектуру с контролируемым параллелизмом.
Следует также отметить, что интеллектуальная настройка параметров, медленная диагностика SQL, многомерный самоконтроль производительности и онлайн-прогнозирование выполнения SQL значительно упрощают эксплуатацию и обслуживание.
Заслуживают упоминания показатели производительности openGauss. В частности, система выполняет до 1,5 млн tpmC на двух 64-ядерных процессорах Kunpeng и обеспечивает аварийное переключение менее чем за 10 секунд. Кратко опишем функции openGauss, определяющие его преимущества.
- Высокая доступность.
Функции ведения журнала — WAL (журналы с упреждающей записью) — обеспечивают возможности горячего резервного копирования и восстановления.
Утилита gs_basebackup позволяет сделать полную резервную копию базы данных, в том числе сжатую.
В мире PostgreSQL вопрос инкрементное резервное копирование остается открытым, поэтому компаниям приходится решать эту проблему самостоятельно в каждом конкретном случае.
Новая версия 1.0.1 поддерживает функцию инкрементального резервного копирования, когда включена опция GUC Enable_cbm_tracking (и тогда база данных будет отслеживать изменения в страницах данных).
Катастрофоустойчивость OpenGauss решается за счет организации Standby на удаленной площадке, а синхронизация данных возможна в синхронном и асинхронном режиме.
Текущая версия СУБД поддерживает до четырех реплик на физическом уровне.
- Высокая производительность.
В openGauss таблица, включая ее индексы, может полностью размещаться в памяти.
Это возможно благодаря таблицам, оптимизированным для памяти (MOT), высокопроизводительному механизму OLTP для обработки данных в памяти.
MOT поддерживает работу с таблицами в формате строк, при этом доступен весь функционал openGauss, включая транзакции и отказоустойчивость.
Особенности реализации ТО и результаты его тестирования на работоспособность TPC-C приведены в отдельный документ .
Также необходимо упомянуть о возможности создания Материализованного Представления – срез данных с заранее рассчитанными показателями (агрегатами) хранится на уровне таблиц базы данных, что существенно ускоряет выполнение аналитических задач. - Управляемость значительно улучшено благодаря автоматическим отчетам о производительности (WDR).
Чтобы включить эту функцию, просто установите параметр Enable_wdr_snapshot=on и укажите количество дней хранения для параметра wdr_snapshot_retention_days. Далее ядро базы данных автоматически сохранит снимки с показателями производительности, включая медленный SQL. WDR позволяет создавать отчеты о производительности за определенные периоды времени (снимки) в формате HTML или PDF.
- Гибкость.
Интеграция с внешними источниками данных осуществляется через Foreign Data Wrappers (FDW).
Текущая версия поддерживает интеграцию с Oracle, MySQL, openGauss. Особого внимания заслуживают глобальные временные таблицы (GTT).
Сам объект создается в базе данных один раз, затем GTT используется повторно для хранения промежуточных результатов транзакций или сессий.
Данные во временной таблице видны только для текущего сеанса, независимо от того, зафиксирована ли транзакция.
Данные теряются после отключения и завершения сеанса.
Это важная функция для ETL или систем отчетности.
Исходный код проекта полностью доступен в его репозитории .
Напомним, что Huawei является платиновым партнером разработчиков программного обеспечения с открытым исходным кодом Linux, Apache и Openstack, а также стратегическим членом Eclipse Foundation. Мы активно участвуем в проектах по созданию решений с открытым исходным кодом, в том числе:
- Дистрибутив Linux openEuler ;
- основа для задач глубокого обучения РазумСпора ;
- интеллектуальная платформа для обеспечения автономности открытых данных СОДА ;
- формат хранения больших данных Apache CarbonData ;
- платформы микросервисов Apache ServiceComb ;
- инфраструктура периферийных вычислений CNCF КубеЭдж ;
- высокопроизводительная система управления периодическим процессом CNCF Вулкан .
-
Создание «Искусственной Жизни» На Компьютере
19 Oct, 24 -
Бессмысленная Эволюция Спама
19 Oct, 24 -
Конференция «Монго» В Москве – 16 Мая.
19 Oct, 24 -
Виртуализированный Рынок
19 Oct, 24 -
Firefox 3: Выпущен!!!
19 Oct, 24 -
Шпионский Терминатор – Угроза Шпионов
19 Oct, 24