3. Сашурин А.Д. Формирование центров техногенных катастроф в зоне интенсивной добычи полезных ископаемых // Горнодобывающая промышленность Арктики, Тронхейм, Норвегия, 1996. С. 201-206. (Формирование техногенных катастроф в районах интенсивной добычи полезных ископаемых).
TECHNOLOGY REVIEW "BIG DATA" AND SOFTWARE FACILITIES APPLICABLE FOR IT ANALYSIS AND PROCESSING Nazarenko Yu.L. (Russian Federation) Email: Nazarenko431 @scientifictext.ru
Nazarenko Yuri Leonidovich - Student, DEPARTMENT OF INFORMATICS AND COMPUTER SCIENCE, DON STATE TECHNICAL UNIVERSITY, ROSTOV-ON-DON
Abstract: the article is devoted to the review of the technology of large data (Big Data) and its features. The main characteristics that allow to distinguish this technology among others, the principles of working with it, allowing to conduct the analysis as efficiently as possible are presented. The necessity of using and promising application of Big Data technologies is grounded, the results of using this technology are considered. The analysis of existing software and hardware used for analysis and processing of large data such as Hadoop, MadReduce and NoSQL is carried out, their advantages and features are highlighted.
Keywords: large data, big data, Hadoop, MapReduce, NoSQL, statistical analysis, scalability.
ОБЗОР ТЕХНОЛОГИИ «БОЛЬШИЕ ДАННЫЕ» (BIG DATA) И ПРОГРАММНО-АППАРАТНЫХ СРЕДСТВ, ПРИМЕНЯЕМЫХ ДЛЯ ИХ АНАЛИЗА И ОБРАБОТКИ Назаренко Ю.Л. (Российская Федерация)
Назаренко Юрий Леонидович - студент, факультет информатики и вычислительной техники, Донской государственный технический университет, г. Ростов-на-Дону
Аннотация: статья посвящена обзору технологии «большие данные» (Big Data) и её особенностей. Приведены основные характеристики, позволяющие выделить эту технологию среди прочих, принципы работы с ней, позволяющие проводить анализ максимально эффективно. Обоснованы необходимость использования и перспективность применения технологий Big Data, рассмотрены результаты применения этой технологии. Проведен анализ существующих программно-аппаратных средств, использующихся для анализа и обработки больших данных, таких как Hadoop, MapReduce и NoSQL, выделены их преимущества и особенности. Ключевые слова: большие данные, Big Data, Hadoop, MapReduce, NoSQL, статистический анализ, масштабируемость.
Введение. Большие данные (англ. big data) — совокупность подходов, инструментов и методов обработки структурированных неструктурированных данных огромных объёмов и значительного многообразия для получения воспринимаемых человеком результатов, эффективных в условиях непрерывного прироста,
распределения по многочисленным узлам вычислительной сети, сформировавшихся в конце 2000-х годов, альтернативных традиционным системам управления базами данных и решениям класса Business Intelligence [1].
В широком смысле о «больших данных» говорят как о социально-экономическом феномене, связанном с появлением технологических возможностей анализировать огромные массивы данных, в некоторых проблемных областях — весь мировой объём данных, и вытекающих из этого трансформационных последствий.
Что такое Big Data. Цифровые технологии присутствуют во всех областях жизни человека. Объем записываемых в мировые хранилища данных ежесекундно растет, а это означает, что такими же темпами должны изменяться условия хранения информации и появляться новые возможности для наращивания ее объема.
Согласно исследованию IDC Digital Universe, в ближайшие пять лет объем данных на планете вырастет до 40 зеттабайтов, то есть к 2020 году на каждого живущего на Земле человека будет приходиться по 5200 Гб. График роста показан на рисунке 1.
Известно, что основной поток информации генерируют не люди. Источником служат роботы, находящиеся в постоянном взаимодействии друг с другом. Это приборы для мониторинга, сенсоры, системы наблюдения, операционные системы персональных устройств, смартфоны, интеллектуальные системы, датчики и прочее. Все они задают бешеный темп роста объема данных, что приводит к появлению потребности наращивать количество рабочих серверов (и реальных, и виртуальных) — как следствие, расширять и внедрять новые data-центры.
По сути, большие данные — довольно условное и относительное понятие. Самое распространенное его определение — это набор информации, по объему превосходящей жесткий диск одного персонального устройства и не поддающейся обработке классическими инструментами, применяемыми для меньших объемов.
Рис. 1. Рост Big Data к 2020 году, прогноз IDC Digital Universe от 2012 года
Характеристики больших данных. Есть характеристики, которые позволяют отнести информацию и данные именно к Big Data. То есть не все данные могут быть пригодны для аналитики. В этих характеристиках как раз и заложено ключевое понятие биг дата. Все они умещаются в три V.
1. Объем (от англ. volume). Данные измеряются в величине физического объема «документа», подлежащего анализу;
2. Скорость (от англ. velocity). Данные не стоят в своем развитии, а постоянно прирастают, именно поэтому и требуется их быстрая обработка для получения результатов;
3.Многообразие (от англ. variety). Данные могут быть не одноформатными. То есть могут быть разрозненными, структурированным или структурированными частично.
Однако периодически к VVV добавляют и четвертую V (veracity — достоверность/правдоподобность данных) и даже пятую V (в некоторых вариантах это — viability — жизнеспособность, в других же это — value — ценность).
Принципы работы с большими данными. Исходя из определения Big Data, можно сформулировать основные принципы работы с такими данными:
1. Горизонтальная масштабируемость. Поскольку данных может быть сколь угодно много - любая система, которая подразумевает обработку больших данных, должна быть расширяемой. В 2 раза вырос объём данных - в 2 раза увеличили количество железа в кластере и всё продолжило работать [2].
2. Отказоустойчивость. Принцип горизонтальной масштабируемости подразумевает, что машин в кластере может быть много. Например, Hadoop-кластер Yahoo имеет более 42000 машин. Это означает, что часть этих машин будет гарантированно выходить из строя. Методы работы с большими данными должны учитывать возможность таких сбоев и переживать их без каких-либо значимых последствий.
3. Локальность данных. В больших распределённых системах данные распределены по большому количеству машин. Если данные физически находятся на одном сервере, а обрабатываются на другом - расходы на передачу данных могут превысить расходы на саму обработку. Поэтому одним из важнейших принципов проектирования BigData-решений является принцип локальности данных - по возможности обрабатываем данные на той же машине, на которой их храним.
Все современные средства работы с большими данными так или иначе следуют этим трём принципам. Для того чтобы им следовать - необходимо придумывать какие-то методы, способы и парадигмы разработки средств разработки данных.
Техники и методы анализа, применимые к Big Data:
• Data Mining;
• Краудсорсинг;
• Смешение и интеграция данных;
• Машинное обучение;
• Искусственные нейронные сети;
• Распознавание образов;
• Прогнозная аналитика;
• Имитационное моделирование;
• Пространственный анализ;
• Статистический анализ;
• Визуализация аналитических данных.
Горизонтальная масштабируемость, которая обеспечивает обработку данных — базовый принцип обработки больших данных. Данные распределены на вычислительные узлы, а обработка происходит без деградации производительности. Таблица эффективности работы с технологией Big Data изображена на рисунке 2.
Степень использования низкая Q средняя Ц высокая
Ввдео Изображения Текст'чнолд
Банковский сектор
Страхование
Ценные бумаги и инвестиции
Производство
Розничная торговля
Оптовая торговля
Профессиональные услуги
Развлекательные услуги
Здравоохранение
Транспортные услуги
СМИ
Коммунальные услуги
Рис. 2. Превалирующие типы информации для разных сфер деятельности
Технологии анализа и работы с большими данными. Большинство аналитиков относит к технологиям обработки и анализа больших данных следующие средства:
• MapReduce •Hadoop
• NoSQL
MapReduce - это модель распределенной обработки данных, предложенная компанией Google для обработки больших объёмов данных на компьютерных кластерах.
Мар{) Shuffle ReduceQ
Рис. 3. Общая схема работы MapReduce
MapReduce предполагает, что данные организованы в виде некоторых записей. Обработка данных происходит в 3 стадии:
1. Стадия Map. На этой стадии данные предобрабатываются при помощи функции map(), которую определяет пользователь. Работа этой стадии заключается в
предобработке и фильтрации данных. Работа очень похожа на операцию map в функциональных языках программирования - пользовательская функция применяется к каждой входной записи.
2. Стадия Shuffle. Проходит незаметно для пользователя. В этой стадии вывод функции map «разбирается по корзинам» - каждая корзина соответствует одному ключу вывода стадии map. В дальнейшем эти корзины послужат входом для reduce.
3. Стадия Reduce. Каждая «корзина» со значениями, сформированная на стадии shuffle, попадает на вход функции reduce(). Функция reduce задаётся пользователем и вычисляет финальный результат для отдельной «корзины». Множество всех значений, возвращённых функцией reduce(), является финальным результатом MapReduce-задачи.
Hadoop. Главные задачи платформы Hadoop — хранение, обработка и управление данными [3].
Основными составляющими платформы Hadoop являются:
• отказоустойчивая распределенная файловая система Hadoop Distributed File System (HDFS), при помощи которой осуществляется хранение;
• программный интерфейс Map Reduce, который является основой для написания приложений, обрабатывающих большие объемы структурированных и неструктурированных данных параллельно на кластере, состоящем из тысяч машин;
• Apache Hadoop YARN, выполняющий функцию управления данными.
Впервые о технологии Hadoop заговорили в 2007 г. и с каждым годом интерес к
ней все больше возрастает. Это отражает индекс цитируемости Google.
Преимущества решения на базе Hadoop
• Снижение времени на обработку данных.
• Снижение стоимости оборудования.
• Повышение отказоустойчивости. Технология позволяет построить отказоустойчивое решение.
• Линейная масштабируемость.
• Работа с неструктурированными данными.
NoSQL. Традиционные СУБД ориентируются на требования ACID к транзакционной системе: атомарность, согласованность, изолированность (англ. isolation), надёжность (англ. durability), тогда как в NoSQL вместо ACID может рассматриваться набор свойств BASE:
• базовая доступность (англ. basic availability) — каждый запрос гарантированно завершается (успешно или безуспешно).
• гибкое состояние (англ. soft state) — состояние системы может изменяться со временем, даже без ввода новых данных, для достижения согласования данных.
• согласованность в конечном счёте (англ. eventual consistency) — данные могут быть некоторое время рассогласованы, но приходят к согласованию через некоторое время.
Решения NoSQL отличаются не только проектированием с учётом масштабирования. Другими характерными чертами NoSQL-решений являются:
• Применение различных типов хранилищ.
• Возможность разработки базы данных без задания схемы.
• Линейная масштабируемость (добавление процессоров увеличивает производительность).
• Инновационность: «не только SQL» открывает много возможностей для хранения и обработки данных.
Критика Big Data
Хранение Big Data не всегда приводит к получению выгоды.
Хранение огромного количества данных, описывающих некоторые легко наблюдаемые события, не всегда приводит к выгодному пониманию реальности.
Это в равной мере относится к анализу акций, каналов twitter, медицинских данных, данных CRM, или мониторингу комплекса оборудования для диагностического обслуживания.
Например, достоверный список потенциальных покупателей товаров, наряду с демографической информацией, а также информацией о чистой стоимости товаров, могут быть гораздо более ценными для поставщиков, чем массивное хранилище данных о кликах на различных сайтах онлайн-магазинов.
При мониторинге работы электростанций, было установлено, что обращение внимания именно на определенные фрагменты информации и на изменения, которые происходят в некоторых параметрах (или их комбинациях), более информативны для последующего представления, чем мониторинг тысячи параметров потоков данных за каждую секунду.
Скорость обновления данных и «актуальный» временной интервал. Например, для поставщиков домашней фурнитуры, было бы важнее получить «сигнал» за месяц или два перед тем, как осуществится покупка жилья, вместо информации в режиме реального времени уже после покупки, когда потенциальный клиент просматривает различные Интернет-сайты в поисках фурнитуры.
Выводы. Анализ и обработка больших данных - непростая и комплексная задача, требующая для решения особых инструментов и больших вычислительных возможностей. В их основе лежат математические алгоритмы, теория вероятностей и многие другие инструменты, которые при применении к большим данным могут принести больше плоды тем, кто не обошёл вниманием это относительно новое явление в информационном интернет -пространстве. Учитывая стремительный рост объёма больших данных, можно с достаточной уверенностью предполагать, что направления науки, связанные с их анализом, не потеряют актуальность в обозримом будущем.
Список литературы /References
1. Большие данные // Википедия, 2017. [Электронный ресурс]. Режим доступа: http://ru.wikipedia.org/?oldid=87934960/ (дата обращения: 29.09.2017).
2. Медетов А.А. Термин Big Data и способы его применения // Молодой ученый,
2016. № 11. С. 207-210.
3. Иванов П.Д., Вампилов В.Ж. Технологии Big Data и их применение на современном промышленном предприятии. Инженерный журнал: Наука и инновации, 2014. Вып. 8.
Список литературы на английском языке /References in English
1. Big data, 2017, October 13. In Wikipedia. The Free Encyclopedia. Retrieved October 29,
2017. [Electronic resource]. URL: https://en.wikipedia.org/w/index.php?title=Big_data& oldid=805135614/ (date of access: 29.09.2017).
2. Medetov A.A. The term Big Data and the methods of its application // Young scientist, 2016. № 11. P. 07-210.
3. Ivanov P.D., Vampilov V.Zh. Big Data technologies and their application to modern industrial enterprise. Engineering Journal: Science and innovation, 2014. Vol. 8.