СТА №2/2017

все указанные источники неоднород- ны, а объёмы информации колоссаль- ны и постоянно растут. Справиться с та- ким наплывом традиционными метода- ми невозможно. Другой наглядный пример – банков- ская сфера. Для многих стало уже при- вычно оплачивать свои покупки по- средством пластиковой карты. Даже в сравнительно небольшом магазине или ресторане установлено несколько касс, оснащённых терминалами для оплаты пластиковыми картами. А по стране та- ких терминалов сотни тысяч, и ещё есть банкоматы, терминалы самообслужива- ния и т.д. Каждая операция с картой со- провождается транзакцией в банков- ской и смежных системах. Например, только за 2015 год в Альфа-Банке было проведено свыше 1 млрд транзакций [3] по пластиковым картам. Ещё одной областью, требующей средств Big Data, является медицина. Современное медицинское оборудова- ние за один сеанс обследования снима- ет огромное количество параметров, и хранить результаты требуется пожиз- ненно, а с развитием генетических ана- лизов желательно будет хранить данные и предыдущих поколений [4]. Это упро- стит выявление генетической предрас- положенности к тем или иным заболе- ваниям. Для медицинских систем край- не важно не только хранить, но и бы- стро извлекать данные, поскольку от оперативности их получения может за- висеть человеческая жизнь. Источниками, генерирующими боль- шие и разнообразные данные, являются социальные сети, крупные научно-тех- нические установки (например, боль- шой адронный коллайдер), оцифрован- ные государственные архивы и библио- теки, а также крупные промышленные предприятия (рис. 1). И это далеко не полный список областей, нуждающих- ся в технологиях Big Data. М ЕТОДЫ И СРЕДСТВА B IG D ATA Накопленная информация для мно- гих организаций является важным акти- вом, однако мало уметь накапливать, нужно ещё обрабатывать и извлекать из неё пользу. На данный момент суще- ствует три основных технологии работы с Big Data: NoSQL, MapReduce иHadoop. NoSQL NoSQL – это ряд подходов для по- строения баз данных, основанных на отличных от реляционных моделей принципах [5]. Основной причиной по- явления подобных баз данных стала не- обходимость параллельной обработки неструктурированных данных с воз- можностью масштабирования (рис. 2). Базы NoSQL используют не SQL- запросы, а SQL-подобный синтаксис и не структурированы. Существует много реализаций таких БД, решающих вопрос представления данных по-своему, зачастую весьма спе- цифично. Эти решения допускают не- ограниченное формирование записей и хранение данных в виде ключа-зна- чения. Наиболее яркими примерами NoSQL являются открытая СУБД MongoDB, Amazon DynamoDB и от- крытая СУБД OrientDB. MapReduce MapReduce – это модель распреде- лённой обработки данных, предложен- ная компанией Google для обработки больших объёмов данных на компью- терных кластерах (рис. 3). Работа MapReduce состоит из двух основных стадий: Map и Reduce [6, 7]. Стадия Map. На этой стадии про- исходит предварительная обработка данных. Для этого один из компьюте- ров (называемый главным узлом – master node) получает входные данные задачи, разделяет их на части и переда- ёт другим компьютерам (рабочим уз- лам – worker nodes) для предваритель- ной обработки. Стадия Reduce. На данной стадии происходит свёртка предварительно об- работанных данных. Главный узел по- лучает ответы от рабочих узлов и на их основе формирует результат – решение задачи, которая изначально формули- ровалась. ОБ ЗОР / Т Е Х НОЛОГ ИИ 13 СТА 2/2017 www.cta.ru Игры Хранилище ключей/значений База данных документов Хранилище связанных колонок данных Хранилище реляционных таблиц Социальные сети Интернет вещей Web Мобильные приложения Web Мобильные приложения Корпоративное управление Корпоративное управление Программный интерфейс к хранилищам данных Отношения основаны на объединении данных Рис. 2. Области применения баз данных SQL и NoSQL (источник: https://docs.microsoft.com/ru-ru/azure/documentdb/documentdb-nosql-vs-sql ) Выходные данные Входные данные Map() Map() Map() Reduce() Reduce() Рис. 3. Обобщённая схема технологии MapReduce (источник: https://www.ibm.com/developerworks/cloud/library/cl-openstack-deployhadoop/)

RkJQdWJsaXNoZXIy MTQ4NjUy