Обзорная статья в IT Channel News: Arenadata DB - российская массивно-параллельная СУБД

30 янв 2024

О системе, которая способна хранить и обрабатывать десятки петабайт данных, её архитектуре, возможностях, особенностях. Систему можно протестировать в демоцентре Merlion.

it channel news

Издание: IT Channel News
Дата: 11 декабря 2023 г.

Обзорная статья в IT Channel News: Arenadata DB - российская массивно-параллельная СУБД

В декабре 2023 года – январе 2024 года на сайте издания IT Channel News развернута партнерская зона Merlion, где опубликовано шесть обзорных статей, освещающих деятельность демоцентра Merlion. Предлагаем вашему вниманию пятую статью из этого цикла.

Arenadata DB: российская массивно-параллельная СУБД

Объемы данных, накопленных предприятиями и организациями, стремительно растут. В некоторых случаях их количество описывается формулировкой «больше, чем очень много». Для обработки таких объемов информации предназначены решения массивно-параллельной архитектуры. Соответствующий рынок поделен немногочисленными игроками, есть среди них и российская компания Arenadata, предлагающая СУБД Arenadata DB. В сентябре 2022 года к продвижению продуктов Arenadata подключился дистрибьютор Merlion, создавший у себя демо-центр по продукту.


OLAP и OLTP в одном флаконе

Количество данных, используемых предприятиями, стремительно растет. И все чаще к одной и той же базе данных обращаются и с несложными, но многочисленными транзакционными запросами, и с более сложными аналитическими. Традиционно эти задачи возлагались на OLTP- и OLAP-системы. Однако все более популярны решения «два в одном» на базе массивно-параллельных (massive parallel processing, MPP) аналитических систем управления базами данных, которые можно горизонтально масштабировать при росте транзакционной нагрузки.

MPP-системы строятся из отдельных узлов, имеющих собственные центральные процессоры, оперативную память, коммуникационные процессоры или сетевые адаптеры, другое оборудование. Каждый узел работает независимо от других, к оперативной памяти узла и его жестким дискам имеет доступ только «свой» процессор. Узлы соединяются между собой и с управляющим мастер-сервером скоростными коммуникационными каналами, работающими со скоростью 10 Гбит/с и более).

Главные преимущества MPP-систем:

  • быстрая обработка больших объемов данных при выполнении сложных SQL-запросов за счет распараллеливания операций и отсутствия «расшаривания» ресурсов, которое требует потактовой синхронизации процессоров;
  • простота горизонтального масштабирования до сотен узлов;
  • отказоустойчивость за счет зеркалирования и резервирования.

Долгое время рынок аналитических массивно-параллельных СУБД был фактически поделен между четырьмя решениями — Vertica (OpenText), Teradata (Teradata), Netezza (Netezza) и Greenplum (разработана одноименной компанией, вместе с ней неоднократно переходила «из рук в руки»).

Greenplum — это горизонтально масштабируемая массивно-параллельная реляционная СУБД для хранилищ со столбцовым хранением данных. Она базируется на взаимосвязанных СУБД PostgreSQL, объединенных в кластеры. Каждый узел кластера, как это положено в MPP-архитектуре, имеет собственную память, операционную систему и жесткие диски.

Отличительная особенность Greenplum в том, что кроме «обычного» главного сервера есть резервный, который включается при проблемах на основном. Это дополнительно повышает отказоустойчивость системы.

В 2017 году компания Pivotal, которой тогда принадлежала Greenplum, опубликовала исходный код СУБД под свободной лицензией Apache. На базе этого кода российская компания Arenadata, основанная выходцами из Pivotal и еще одной известной компании, Mirantis, представила собственное решение — Arenadata DB (ADB).


«Российский Greenplum»: архитектура, возможности, особенности

Arenadata DB, как и ее «материнское» решение — реляционная СУБД, имеющая массово-параллельную архитектуру без разделения ресурсов, способная хранить и обрабатывать десятки петабайт данных.

Архитектура ADB представляет собой классический кластер. Она включает основной и резервный мастер-серверы и несколько серверных сегментов, соединенных между собой быстрыми интерконнектами. В каждом серверном сегменте есть несколько сегментов PostgreSQL, содержащих данные. В случае отказа одного или нескольких сегментов они помечаются как сбойные и вместо них запускаются их «зеркала», репликация данных для которых происходит посредством используемой в СУБД PostgreSQL технологии опережающей записи (Wright Ahead Log, WAL — все изменения таблиц и индексов записываются в файл только после их занесения в журнал).

Такая система резервирования помогает развернуть кластер с заранее заданным уровнем отказоустойчивости, позволяя СУБД работать даже при выходе из строя половины серверов.

Использование нескольких интерконнектов дает возможность повысить пропускную способность канала взаимодействия сегментов между собой и обеспечить отказоустойчивость кластера за счет перераспределения трафика. Распределение сегментов по сетевым интерфейсам выбирается индивидуально и может подстраиваться под задачи кластера — так, например, все основные сегменты можно заставить использовать один сетевой интерфейс, резервные же будут использовать второй.

В ADB реализуется классическая схема разделения данных — каждая таблица состоит из N таблиц, размещаемых на N сегментах кластера. Для каждой отдельной колонки в таблице можно задать свой тип и уровень сжатия. Помимо изначально доступных в Greenplum типов компрессии — zlib и RLE delta compression в ADB можно использовать алгоритм zstandard, разработанный компанией Facebook* и имплементированный в Greenplum командой Arenadata. Этот алгоритм обеспечивает почти в четыре раза более высокую производительность по сравнению с zlib.

В Arenadata DB используется полиморфное хранение данных: например, одну таблицу можно разделить на вертикальные разделы (партиции), часть из которых будет храниться в виде строк, а часть — как колоночные объекты. При этом для пользователя такая таблица будет выглядеть одним объектом.

Безопасность в данных ADB обеспечивается за счет шифрования данных и соединений «сервер-клиент» по протоколу SSL на всех этапах их жизненного цикла. Кроме этого, все внутренние взаимодействия компонентов СУБД ADB также могут быть зашифрованы с помощью протокола SSL, а данные, хранящиеся на дисках кластера, — зашифрованы с помощью ключей PGP (на уровне таблиц или колонок в таблицах).

Другой механизм обеспечения безопасности — разграничения зон видимости данных и прав доступа, который обеспечивается благодаря ролевой модели, позволяющей реализовать гибкие правила разграничения доступа. Так, например, можно создать схемы ограничения доступа к таблицам и другим объектам СУБД, а также к строкам и столбцам отдельных таблиц.

Одно из важнейших качеств аналитической СУБД — высокая производительность при обмене данными с внешними системами. В ADB реализован протокол параллельного обмена данных, который обеспечивает взаимодействие с внешней системой одновременно всех сегментов кластера. Если система-источник также представляет собой кластер, то можно использовать кластерное взаимодействие с обеих сторон, что позволяет повысить производительность, причем скорость взаимодействия будет расти по мере расширения кластеров.

Установка Arenadata DB возможна как on-premise, так и в облаке. В частности, можно воспользоваться «базой данных как сервисом» в облаках крупнейших российских провайдеров — VK Cloud Solutions, Cloud.ru, beeline cloud, DataLine (входит в «Ростелеком-ЦОД») и ряда других.


По-настоящему отечественная

Многие российские разработки в той или иной степени основаны на продуктах с открытым кодом. Это вполне естественно, однако вопрос состоит в том, насколько реально усовершенствован исходный продукт, имеет ли место серьезная доработка или пресловутая «переклейка шильдика».

С Arenadata DB этот вопрос не стоит, поскольку саму Greenplum в немалой степени можно назвать «российской». В 2022 году 44% от всех одобренных запросов на принятие изменений, поступивших от международного сообщества разработчиков, в последнюю на текущий момент, шестую версию этой Greenplum внесены компанией Arenadata. На втором месте — китайский гигант Alibaba (15%), а на четвертом — еще одна российская компания, «Яндекс» с 13%. Схожая картина имела место и в 2021-м: 30% у Arenadata, 18% — у Alibaba, 18% — у «Яндекса».

Хотя эта статистика учитывает только изменения, вносимые независимыми контрибьюторами, без учета усовершенствований со стороны владельца продукта — компании VMwareTanzu, она достаточно показательна. Среди важнейших усовершенствований от Arenadata, например, — упоминавшийся выше алгоритм сжатия zstandard, появившийся сначала в ArenadataDB 5, а потом внедренный в Greenplum 6.

Важное достоинство Arenadata DB — то, что она не «одинока». Arenadata разработала семейство продуктов, образующих платформу управления данными, что делает работу с СУБД более эффективной.

В 2020–2022 годах семь основных продуктов компании включены в Реестр российского программного обеспечения. А в 2023 году Arenadata получила лицензии Федеральной службы по техническому и экспортному контролю на осуществление деятельности по разработке и производству средств защиты конфиденциальной информации и деятельности по технической защите конфиденциальной информации.

Сама же Arenadata DB получила сертификат соответствия ФСТЭК РФ № 4675 от 2 июня 2023 года, став первой в России сертифицированной аналитической, распределенной СУБД, построенной на MPP-системе с открытым исходным кодом.


На пути «в народ»

Одним из этапов на пути продуктов Arenadata к российским заказчикам стало заключение соглашения с Merlion. Согласно нему, компании будут вовлекать в экосистему вендора партнеров дистрибьютора, помогать их заказчикам мигрировать на отечественные решения в области хранения и обработки данных. В Arenadata особо отметили большой опыт работы Merlion с зарубежными вендорами.

В соответствии с соглашением в демо-центре Merlion в виртуальной среде развернут кластер ADB в составе двух управляющих серверов (основной и резервный) и трех серверов обработки данных. Кроме того, развернут сервер управления кластерами Arenadata и сервер наблюдения и оповещения. В СУБД загружены тестовые наборы данных, которые позволяют смоделировать работу с типовыми аналитическими данными.

Демонстрация включает в себя как административные действия по обслуживанию и поддержке базы данных, так и типовые операции с аналитическими данными, включающие в себя загрузку данных в таблицы с разными способами хранения. На демонстрации будут показаны следующие действия:

  • знакомство с оркестратором платформы Arenadata (ADCM);
  • демонстрация восстановления ADB после аварии;
  • создание и заполнение таблиц с различными типами хранения;
  • демонстрация разных способов распределения таблиц;
  • мониторинг проблем производительности средствами ADB Control.

Запросить демонстрацию можно здесь.

С полным спектром предложений демо-центра Merlion можно ознакомиться на его странице.

Источник: https://www.novostiitkanala.ru/partners/partnership/detail.php?ID=173295

Сайт использует cookie. Подробнее