Научная статья на тему 'Способы хранения и обработки большого объема данных с использованием MapReduce и percona server'

Способы хранения и обработки большого объема данных с использованием MapReduce и percona server Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
401
73
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
БОЛЬШИЕ ДАННЫЕ / ПАРАЛЛЕЛЬНЫЕ ВЫЧИСЛЕНИЯ / MAP / REDUCE / MAPREDUCE / PERCONA SERVER / GIG DATA / CONCURRENT COMPUTING

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Янишевская А.Г., Чурсин М.А.

Работа с большими данными подразумевает работу с информацией огромного объема и содержания, быстро обновляемой, находящейся в разных источниках. Задачи работы с большими данными требуются для эффективности работы, применяются для создания новых продуктов и повышения конкурентоспособности. В данной статье рассмотрены следующие методы работы с большими объемами данных: MapReduce разработка компании Google в области моделей распределенных вычислений. Используется самой компанией для параллельных вычислений над большими наборами данных; Percona server сборкой MySQL изначально предназначенной и оптимизированной для работы с большими данными.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Methods for storing and processing large amounts of data using mapreduce and percona server

Working with big data work involves a huge amount of information and content, rapidly renewable, located in different sources. Tasks work with large data required for efficiency, are used to create new products and enhance competitiveness. This article describes the following methods for working with large volumes of data: MapReduce, Percona server.

Текст научной работы на тему «Способы хранения и обработки большого объема данных с использованием MapReduce и percona server»

Способы хранения и обработки большого объема данных с использованием MapReduce и Percona Server

А.Г. Янишевская, М.А. Чурсин Омский Государственный Технический Университет

Аннотация: Работа с большими данными подразумевает работу с информацией огромного объема и содержания, быстро обновляемой, находящейся в разных источниках. Задачи работы с большими данными требуются для эффективности работы, применяются для создания новых продуктов и повышения конкурентоспособности. В данной статье рассмотрены следующие методы работы с большими объемами данных: MapReduce - разработка компании Google в области моделей распределенных вычислений. Используется самой компанией для параллельных вычислений над большими наборами данных;

Percona server — сборкой MySQL изначально предназначенной и оптимизированной для работы с большими данными.

Ключевые слова: Большие данные, параллельные вычисления, map, reduce, mapreduce, percona server.

Под большими данными (Big data) в информационных технологиях понимается серия подходов, а также инструментов и методов, обработки структурированных и неструктурированных данных огромных объемов для получения из них воспринимаемых человеком результатов, эффективных в условиях непрерывного прироста, распределения по многочисленным узлам вычислительной сети. Первые методы работы с большими данными были сформированы в конце 2000-х годов и стали альтернативой традиционным системам управления базами данных и решениями класса Business Intelligence. В данную серию включат, прежде всего, такие средства массово-параллельной обработки неопределенно структурированных данных как решения категории NoSQL, а так же алгоритмы MapReduce и программные каркасы и библиотеки проекта Hadoop.

В качестве основных характеристик при работе с большими данными отмечают "три V": объём (volume), скорость (Velocity, скорость прироста, скорость обработки и получения результатов), многообразие (Variety, возможность одновременной обработки различных типов данных). Основными источниками больших данных можно назвать:

1. данные измерительных устройств и приборов, поступающие непрерывно;

2. потоки данных из социальных сетей;

3. данные метеорологических служб;

4. данные о местонахождения абонентов сотовой связи.

Благодаря развитию и широкому распространению этих источников ожидается проникновение технологий больших данных, как в научно-исследовательскую сферу, так и в коммерческий сектор и в сферу государственного управления. Обработка больших объемов данных зачастую становится самой трудной и самой проблемной областью в создании крупных агрегационных сервисов. Это привело к созданию довольно эффективных способов решения проблемы.

Подробнее остановимся на двух наиболее распространенных решениях: модель распределенных вычислений MapReduce и Percona server - сборкой MySQL изначально предназначенной и оптимизированной для работы с большими данными.

MapReduce

MapReduce — модель распределённых вычислений, представленная компанией Google, используется компанией в компьютерных кластерах для параллельных вычислений над очень большими, даже несколько петабайт, наборами данных.

MapReduce — это фреймворк для работы с набором распределенных задач, использующий большое количество компьютеров (называемых «нодами»), образующих структуру кластера. Работа фреймворка состоит из двух шагов:

1. Map-шаг. Происходит предварительная обработка входных данных. Компьютер - главный узел (master node) получает входные данные. Происходит разделение исходного набора данных на части и передача другим компьютерам - рабочим узлам (worker node) для предварительной обработки. Название шаг берет от одноименной функции высшего порядка;

2. Reduce-шаг. Шаг заключается в свертке обработанных данных. От рабочих узлов в главный узел поступают отчеты и на их основе формируется результат - решение изначальной задачи.

Преимущество MapReduce заключается в возможности распределенно производить операции предварительной обработки и свертки. Операции предварительной обработки могут производиться параллельно так, как работают независимо друг от друга. Однако, процесс может быть менее эффективным по сравнению с более последовательными алгоритмами, так как целью алгоритма MapReduce является применение его к большим объёмам данных, которые могут обрабатываться большим количеством серверов. Тем не менее, MapReduce может быть использован для сортировки огромного количества данных, и требует лишь несколько часов даже на объемы порядка петебайта данных. Также параллелизм предоставляет возможности восстановления после частичных сбоев: если возникает сбой в рабочем узле, то его работа может быть передана другому рабочему узлу. Таким образом, хотя фактически семантика отличается от прототипа, в основе фреймворка лежат функции мар и reduce, широко применяемые в функциональном программировании.

Percona server

Percona server — это сборка MySQL от российской команды под руководством Петра Зайцева — эксперта по производительности MySQL, бывшего руководителем группы High Perfomance в MySQL Inc и ведущего блог MySQLPerformanceBlog.com.

Этой сборке по умолчанию включен XtraDB storage engine, который отличается от MySQL+InnoDB plugin. Ключевыми показателями является лучшая производительность/масштабируемость, особенно на современных многоядерных серверах. Также улучшена функциональность — добавлено много полезной для оптимизации статистики. Percona server собирается наверсиях MySQL 5.0 и 5.1. Сервер полностью совместим с таблицами innodb, что означает возможность перехода от innodb к xtradb и обратно без проблем, за исключением случаев, когда используются некоторые харрактерные только для xtradb функции. Хранилище XtraDB основано на InnoDB-plugin и полностью совместимо с ним, однако, отличается более высокой производительностью, благодаря интеграции патчей от компаний Google и Percona, а именно:

1. улучшена работа с памятью;

2. изменена подсистема ввода/вывода;

3. расширены возможности по масштабированию для больших проектов;

4. система организации блокировок адаптирована для работы на системах с большим числом CPU;

5. реализованы дополнительные возможности для накопления и анализа статистик;

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

выборка данных (read-ahead), адаптивная установка контрольных точек (adaptive checkpointing).

Литература

1. MapReduce: Simplified Data Processing on Large Clusters /Jeffrey D., Sanjay G. //COMMUNICATIONS OF THE ACM January 2008/Vol. 51, No. 1 13 p.

2. Percona // Percona Server 5.6 - Documentation — 2014. — URL: percona.com/software/documentation/5.6/

3. Натальченко И.А. Анализ механизмов передачи крупных массивов данных через сеть интернет с помощью технологии веб-сервиса // Инженерный вестник Дона, 2015, №2 URL: ivdon.ru/ru/magazine/archive/n4y2008/98.

4. Шарапов Р.В. Аппаратные средства хранения больших объёмов данных // Инженерный вестник Дона, 2015, №2 URL: ivdon.ru/magazine/archive/n4p2y2012/1371.

5. Pete Warden Big Data Glossary. O'Reilly, 2011. 62 p.

6. Виктор Майер-Шенбергер, Кеннет Кукьер Большие данные. Революция, которая изменит то, как мы живем, работаем и мыслим. Манн, Иванов и Фербер, 2014. 240 с.

7. Karan Dabhade Big Data Overview. LAP Lambert Academic Publishing, 2015. 52 p.

8. Michael Gage A Stand-Alone Methodology for Data Exploration. LAP Lambert Academic Publishing, 2013. 116 p.

9. John R. Talburt, Yinle Zhou Entity Information Life Cycle for Big Data. Elsevier / Morgan Kaufmann, 2015. 254 p.

10. Чарльз Белл, Мэтс Киндал, Ларс Талманн Обеспечение высокой доступности систем на основе MySQL. БХВ-Петербург, Русская Редакция 2011. 624 с.

References

1. MapReduce: Simplified Data Processing on Large Clusters. Jeffrey D., Sanjay G. COMMUNICATIONS OF THE ACM January 2008/Vol. 51, No. , 13p.

2. Percona. Percona Server 5.6 - Documentation. 2014. URL: percona.com/software/documentation/5.6/

3. Natalchenko I.A. Inzenernyj vestnik Dona (Rus), 2015, №2 URL: ivdon.ru/ru/magazine/archive/n4y2008/98.

4. Sharapov R.V. Inzenernyj vestnik Dona (Rus), 2015, №2 URL: ivdon.ru/magazine/archive/n4p2y2012/1371.

5. Pete Warden Big Data Glossary. O'Reilly, 2011. 62 p.

6. Viktor Mayer-Shenberger, Kennet Bolshie Dannie. Revoluciya, kotoraya izmenit to, kak mi jivem, rabotayem i mislim. [ Big Data: Revolution That Will Transform How We Live, Work, and Think] Mann, Ivanov I (Rus), 2014. 240 p.

7. Karan Dabhade Big Data Overview. LAP Lambert Academic Publishing, 2015. 52 p.

8. Michael Gage A Stand-Alone Methodology for Data Exploration. LAP Lambert Academic Publishing, 2013. 116 p.

9. John R. Talburt, Yinle Zhou Entity Information Life Cycle for Big Data. Elsevier. Morgan Kaufmann, 2015. 254 p.

10. СИагк Ве11, Мйб Ктёа1, ЬагБ ОЬеврееИете у1Бокоу ёов1ирпов1у в1в1еш па оБпоуе МуБОЬ. BHV-PeterЬurg (Яш), 2011. 624 р.

i Надоели баннеры? Вы всегда можете отключить рекламу.