Моё знакомство с Aster Data
Автор: Константин Лисянский
Немного поближе познакомившись с технологиями DATAllegro и Greenplum я решил продолжить знакомство с “альтернативными” технологиями для хранилищ данных (DWH). В этот раз такой технологией стала технология Aster nCluster компании Aster Data.
Общая информация
Компания Aster Data Systems является производителем СУБД для хранилищ данных под названием Aster nCluster. Основали компанию сравнительно недавно три выпускника Стэндфордского университета, которые специализировались на параллельных вычислениях.
Проукт пока не попал в магический квадрат Gartner, однако, они упоминают о нём (обещают наблюдать за ним в течение 2009 года).
Информация о продукте доступна на сайте Aster Data Systems.
В отличие от компании Greenplum, которая предоставляет возможность скачать документцию по СУБД, Aster такой возможности не предоставляет. По крайней мере, мне не удалось найти такой возможности. Хотя, для того, чтобы понять основные принципы, подробной документации не нужно. Достаточно и тех статей, которые опубликованы на сайте (чтобы их почитать нужно будет зарегистрироваться).
Технология
Для начала, заметим, что речь идёт о массивно-параллельной системе (MPP), которая собирается из доступных компонентов (чтобы сделать решение более дешёвым) - в качестве узлов используются commodity-серверы, в качестве коммутатора - Gigabit Ethernet, в качестве дисковой подсистемы - direct-attached storage (DAS).
Основной упор делается на несколько моментов:
- лёгкость администрирования (за счёт автоматиации большого количества административных задач)
- масштабируемость (за счёт архитектуры MPP)
- постоянная доступность (за счёт очень быстрого восстановления после сбоев)
- in-database analytics (посредством поддержки MapReduce)
Как я понял, сам софт (то есть СУБД) написан с нуля, в отличие, скажем, от Greenplum, основанного на PostgreSQL и DATAllegro (пока) основанного на Ingres. По крайней мере, я нигде у них не нашёл упоминания о том, на чём основана их СУБД. Это может означать, что, с одной стороны, в продукте используются определённые инновационные идеи, а с другой - что в его функциональность должна быть ещё не так продвинутой, поскольку продукт молодой.
В отличие от других разработок класса MPP, в СУБД Aster nCluster существует несколько видов узлов (точнее будет сказать несколько специализированных блоков программного обеспечения) - Queen, Worker, Loader, Backup. Queen - это мастер-узел, общающийся со внешним миром, Worker - рабочий узел, выполняющий обработку данных, Loader - узел, предназначенный для загрузки (data loading) и выгрузки данных (data export). Backup - узел, специально предназначенный для выполнения операций резервного копирования и восстановления. Заявляется также о возможности временно изменять назначения узлов (то есть, если вышел из строя рабочий узел, его можно временно заменить узлом для загрузки данных). Можно также совмещать специализацию узлов (то есть, один и тот же узел может одновременно являться и мастер-узлом, и узлом для резервного копирования/восстановления.
nCluster поддерживает компрессию данных (data compression). Заявляется степень сжатия от 3 до 12 раз. При этом существует три степени сжатия данных (низкое, среднее, высокое). Разную степень сжатия можно применять к различным фрагментам таблицы. Например, данные за более старые периоды времени можно сжимать сильнее (что отнимает больше процессорного времени на последующее распаковывание), чем свежие данные, таким образом реализуя концепцию multi-temperature data warehousing (она же information lifecycle management).
Пока не удалось найти деталей того, как устроена СУБД на более детальном уровне, кроме, пожалуй того, что кроме хэш-распределения данных используются алгоритмы, “анализирующие природу загружаемых данных, и размещающие их таким образом, чтобы минимизировать пересылку данных между узлами во время выполнения запросов”.
Нигде также не сказано о том, какой тип хранения записей используется - по строкам или по столбцам (columnar database). Но, если бы было хранение по столбцам, то заявлялось бы более сильно сжатие, и о хранении по столбцам обязательно бы упоминалось. Делаем вывод - данные хранятся по строкам (как в случае с DATAllegro и Greenplum).
Очень жаль, что они раскрывают так мало информации об устройстве СУБД. Скажу честно - мне их white paper пока понравились больше всех - написаны очень грамотно. Интересно было бы почитать документацию.
Позиционирование
В отличие от DATAllegro и Greenplum, которые в открытую позиционируются как дешёвая замена Teradata, продукт Aster Data позиционируется для борьбы с вызовами, которые бросают технологиям современные требования хранилищам данных, за счёт основных свойств - масштабируемости, доступности, поддержки in-database analytics.
Стоимость
К сожалению, точной информации о стоимости найти мне неудалось. Здесь упоминается о том, что цена образуется на основе объёмов данных и не зависит от размера кластера. Здесь сказано о том, что стоимость в версии cloud computing начинается от 100 тыс. долларов в год.
Клиенты
На момент написания этой статьи в разделе “Клиенты” на сайте Aster Data числится 6 компаний (поменьше, чем, например, у Greenplum), которые, в основном, являются медиа- и интернет-компаниями. Естественно, это довольно скромная клиентская база (очевидно, это явилось одним из критериев, по которым Gartner не включили их в магический квадрат).
Заключение
Технология Aster Data, на мой взгляд, является довольно перспективной. Об этом говорят принципы, которые закладываются в её основу. Интересно, что станет дальше с этой компанией? Купит ли её более крупный игрок, как это произошло с DATAllegro, или она будет развиваться независимо? Посмотрим через некоторое время.
Для удобства отслеживания новых публикаций рекомендуем подписаться на рассылку или на канал RSS.