научная статья по теме ГИБРИДНЫЕ СИСТЕМЫ БАЗ ДАННЫХ ДЛЯ ХРАНЕНИЯ И ОБРАБОТКИ ИНФОРМАЦИИ Общие и комплексные проблемы естественных и точных наук

Текст научной статьи на тему «ГИБРИДНЫЕ СИСТЕМЫ БАЗ ДАННЫХ ДЛЯ ХРАНЕНИЯ И ОБРАБОТКИ ИНФОРМАЦИИ»

Котова А.А., аспирант Московского государственного технического университета им. Н.Э. Баумана

ГИБРИДНЫЕ СИСТЕМЫ БАЗ ДАННЫХ ДЛЯ ХРАНЕНИЯ И ОБРАБОТКИ

ИНФОРМАЦИИ

Рассмотрены основные направления в обработке и хранении информации. Приведены достоинства и недостатки как параллельных систем баз данных, так и баз данных, основанных на парадигме NoSQL и MapReduce. Представлено новое направление гибридных баз данных, которое нацелено на устранение недостатков существующих систем.

Ключевые слова: СУБД, гибридная параллельная база данных, технология MapReduce, база данных NoSQL.

HYBRID DATABASE SYSTEMS FOR STORING AND PROCESSING INFORMATION

Considered the main directions in the processing and storage of information. The Advantages and disadvantages are given for both parallel database systems and databases based on the paradigm of NoSQL and MapReduce. Presented new direction of hybrid database that aims to overcome the disadvantages of existing systems.

Key words: database, hybrid parallel database, MapReduce technology, NoSQL database.

Введение

Следует обосновать, зачем рассматривать исследуемый класс систем. За последнее десятилетие значительно увеличился объем информации, для которой требуется аналитическая обработка [1]. Поскольку передовые методы управления предприятием все чаще основываются на принятии решений на основе данных и неопровержимых фактов, а не на основе предположений, у компаний возрастает интерес к системам, которые способны управлять данными, обрабатывать их, хранить и анализировать на разных уровнях детализации. Нередко приходится слышать о компаниях, ежедневно загружающих в свои аналитические системы баз данных более терабайта структурированных данных и обладающих более чем пета-байтными хранилищами данных. Постоянный рост объемов, обрабатываемых данных, требует соответствующего наращивания вычислительных ресурсов, для этого используемая вычислительная среда должна обладать высокой масштабируемостью.

Многие компании отказываются от размещения своих аналитических баз данных на дорогостоящих специализированных суперкомпьютерах и переходят к использованию более дешевой аппаратуры массового спроса, которая обладает отличной масштабируемостью [2]. Рассмотрим существующие параллельные системы баз данных (ПСБД).

1. Достоинства и недостатки ПСБД

Существующие строчные и колоночные параллельные системы бах данных (ПСБД) обеспечивают высокую производительность при невысокой селективности запросов к структурированным данным [3]. Но имеют следующие недостатки:

- ограничена масштабируемость;

Еще несколько лет назад было достаточно иметь кластер из 100 узлов, но в настоящее время из-за стремительного роста информации потребуются кластеры с тысячами узлов. Параллельные СУБД демонстрируют реальную масштабируемость до десятков узлов (нередко эта масштабируемость близка к линейной), однако они никогда не испытывались в кластере из тысячи узлов, и как поведут себя, просто неизвестно. Могут встретиться непредвиденные инженерные трудности. В работах [1, 4] рассматриваются задачи до 100 узлов в кластере, что не дает возможность судить о поведение системы с увеличением числа узлов.

- сложность в установке, настройке и использовании системы;

В работе [1] авторы обращают внимание на то, что для эффективной работы системы необходимо при инсталляции СУБД знать тонкости в настройке системных параметров. Возникали трудности при конфигурации системы, которые невозможно было решить без привлечения помощи со стороны компании-поставщика. Опыт проводился на двух параллельных системах баз данных: строчной и колоночной; и на обеих системах трудности в установке, настройке и использовании системы оставили неутешительное впечатление.

- стоимость;

Параллельные системы баз данных стоят недешево, часто составляют семизначное число для крупных установок.

- теряют преимущество в производительности при высокой селективности запросов и наличии сортировки данных;

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

- в основном обеспечивают доступ к структурированным данным, обработка неструктурированных данных затруднена;

Язык SQL плохо приспособлен для обработки неструктурированных данных.

- отказоустойчивость;

При возрастании числа узлов более часто возникают отказы, а параллельные системы баз данных обычно разрабатываются в том предположении, что отказы случаются редко. С увеличением размеров кластеров вероятность отказов узлов существенно вырастет, а повторное выполнение запросов станет неприемлемым. Велико время восстановления работоспособности при аппаратных сбоях.

2. Достоинства и недостатки ПСБД, основанных на парадигме NoSQL и MapReduce

В последнее время стали развиваться ПСБД, основанные на парадигме NoSQL и MapReduce, которые избавлены от недостатков, рассмотренных в пункте 1 строчных и колоночных ПСБД, поскольку они разрабатывались с самого начала в расчете на масштабирование до тысяч узлов в архитектуре без совместно используемых ресурсов и продемонстрировали свои возможности при поддержке внутренних операций Google. ПСБД, основанные на парадигме NoSQL и MapReduce обладаются следующими достоинствами:

- имеют высокую степень масштабирования (4000 узлов для Hadoop);

- просты в установке и настройке [1];

- имеется версия MapReduce с открытыми кодами (Hadoop), которую можно получить и использовать бесплатно;

- имеют преимущество в производительности при высокой селективности запросов и наличии сортировки данных [3];

- обеспечивают доступ к структурированным и неструктурированным данным;

- высокая степень живучести (за счёт многократной репликации блоков данных - работа перераспределяется без перезапуска системы и запроса.

Но эти системы имеют и недостатки:

- существенно проигрывают строчным и колоночным ПСБД в производительности при невысокой селективности запросов к структурированным данным [2];

- велики затраты времени на программирование функций Map и Reduce.

Сложились две точки зрения относительно того, какую технологию следует использовать для анализа данных на кластере более чем из 100 узлов. Сторонники параллельных баз данных утверждают, что производительность и эффективность параллельных систем баз данных делают их хорошо подходящими для выполнения такого анализа[1]. С другой стороны, другие специалисты говорят, что для этого более пригодны системы, основанные на технологии

MapReduce, из-за их исключительной масштабируемости, отказоустойчивости и гибкости при работе с неструктурированными данными. В работе [9] показано, что при сравнительно небольших объемах обрабатываемых данных СУБД имеет преимущество, но при увеличении объемов данных СУБД теряет преимущество и технология MapReduce начинает выигрывать по производительности.

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

3. Гибридные ПСБД

Созданные гибридные ПСБД по производительности и эффективности близки к параллельным системам баз данных, но при этом обладают масштабируемостью, отказоустойчивостью и гибкостью систем, основанных на MapReduce. Существует два направления развития:

- MapReduce/SQL [4] - основная идея состоит в использовании MapReduœ в качестве координатора и коммуникационного слоя над несколькими узлами, в которых выполняются экземпляры одноузловой СУБД PostgreSQL. Запросы представляются на языке SQL, транслируются в MapReduce расширенными существующими средствами (Hadoop Hive), и как можно большая часть работы передается в высокопроизводительные одноузловые СУБД;

- SQL/MapReduce [5] - в план выполнения SQL-запроса встраиваются обращения к функциям, реализующим компоненты MapReduce (обработка неструктурированной части запроса). Это многомашинный аналог UDF (функция, определяемая пользователем).

Заключение

Еще недавно ПСБД и технологию MapReduce пытались разграничить на ряд задач для каждой [10], а не объединить их достоинства. Рассмотренные гибридные системы являются новым и неисследованным направлением в науке. До недавнего времени при моделировании вычислительных систем с целью анализа их временных показателей применялся аппарат теории массового обслуживания. Но как оказалось, в этих моделях трудно учесть параметры баз данных и запросов к ней, некоторые архитектурные особенности системы. В работах [6,7,8] предложен новый подход к моделированию систем, построенных на основе баз данных. В этом подходе используется аппарат производящих функций и преобразования Лапла-са-Стилтьеса функции распределения вероятностей случайной величины. Полученные в [6,7,8] аналитические выражения для характеристик времени выполнения запросов к базе данных справедливы для строчных и колоночных ПСБД, но они не учитывают особенностей гибридных ПСБД. Актуальной задачей станет разработка моделей процессов обработки запросов в гибридных параллельных системах баз данных, так как на этапе проектирования сложно априори учесть влияние параметров будущей системы, а также специфические особенности предметной области, на характеристики производительности, а натурное моделирование на этом этапе крайне затруднено.

ЛИТЕРАТУРА

1. Эндрю Павло, Эрик Паулсон, Александр Разин, Дэниэль Абади, Дэвид Девитт, Сэмю-эль Мэдден, Майкл Стоунбрейкер. Сравнение подходов к крупномасштабном анализу данных. Труды 35-й SIGMOD Международной конференции по управлению данными, Провиденс, Род-Айленд, США, 2009г.

2. Джеффри Коэн, Брайен Долэн, Марк Данлэп, Джозеф Хеллерстейн, Кейлэб Велтон. МОГучие способности: новые приемы анализа больших да

Для дальнейшего прочтения статьи необходимо приобрести полный текст. Статьи высылаются в формате PDF на указанную при оплате почту. Время доставки составляет менее 10 минут. Стоимость одной статьи — 150 рублей.

Показать целиком