Объемы данных, накопленных предприятиями и организациями, стремительно растут. В некоторых случаях их количество описывается формулировкой «больше, чем очень много». Для обработки таких объемов информации предназначены решения массивно-параллельной архитектуры. Соответствующий рынок поделен немногочисленными игроками, есть среди них и российская компания 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 можно ознакомиться на его странице.

* Организация и социальная сеть, деятельность которой запрещена на территории РФ.

Вернуться на главную страницу партнерской зоны

Реклама ООО «Мерлион», ИНН: 7719269331