Big Data и Бритва Оккама

16 октябрь, 2014 - 11:46Александр Черников

…или «Бриан – это голова» (© – Ильф и Петров, «Золотой теленок»). В том смысле, что это, наверное, круто, но до сих пор не слишком понятно ИТ-сообществу. Иначе бы уже перестали появляться все новые разъяснения и толкования.

Big Data и Бритва Оккама

– После внимательного рассмотрения 437 диаграмм я пришел к выводу, что лучшее решение – купить бутылку виски и напиться!

Для того, чтобы освежить свои знания по Бритве Оккама, я бы рекомендовал не совсем строгую, но понятную и веселую статью на Лурке или более академичную заметку на «Википедии». Однако в данном контексте нам важен сам принцип Бритвы: «Не следует множить сущее без необходимости».

Кошик Пал

Технический архитектор Кошик Пал (Kaushik Pal) относится к профессиональным опровергателям слухов о новых технологиях. Его настолько достали бесконечные «толкования в меру своего понимания», что в конце сентября этого года он написал краткую энциклопедическую статью «10 Big Data Do's and Don'ts» на ресурсе Technopedia, где разложил по полочкам накопленый к настоящему времени мировой опыт по проектам Big Data, разом устранив несколько дилетантско-журналистских веток.

Для меня это было первым знакомством с Кошик Палом, но рассудительность и четкость его изложения материала по многим вопросам современных ИТ впечатляют (см. на сайте), и, думаю, что в дальнейшем мы еще не раз увидим его формулировки на сайте КО.

Предисловие автора

Выгода использования Big Data может достигнута только в том случае, если ими управляют хорошо структурированным способом. Лучшие методы в области Big Data постепенно устанавливаются, и уже есть некоторые ясные «do» и «don’t», когда дело доходит до практического внедрения. Это руководство основано именно на практическом опыте и знании, собранных на реальных проектах.

1. Do: в проекты Big Data должны быть вовлечены все бизнес-структуры организации

По определению Big Data должны помочь организациям получать сведения о поведении потребителей, событиях, тенденциях, делать предсказания, и т.д. на основе больших массивов информации. Это просто не получится со «снимком данных» (data snapshot), который захватывает некую часть всего объема данных. Если работы ведутся только, например, в отделе маркетинга, то инвестиции в проект вряд ли оправдаются.

2. Do: Реально оцените все модели инфраструктуры, пригодные для Big Data

Поскольку Big Data имеют дело с петабайтными объемами данных (1 ПБ = 1024 ТБ), необходим специальный информационный центр.

Однако здесь стратегии могут быть разными и стоимость всегда принимается во внимание. Облачные сервисы могут быть лучшим выбором, хотя и не во всех случаях. Хранение – один из самых важных компонентов в любом внедрении Big Data. Часто в организации невозможно или нецелесообразно строить собственный центр данных. В этом случае лучший выбор – специализированный сервис-провайдер. (Подробнее «Today's Big Data Challenge Stems from Variety, Not Volume or Velocity»).

3. Do: Рассмотрите использование традиционных хранилищ данных

Одно из заблуждений в Big Data – то, что теперь традиционные хранилища данных бесполезны.

Правильная точка зрения здесь заключается в том, что традиционные хранилища данных также содержат ценную информацию и должны использоваться совместно со специализированными Big Data хранилищами данных, а не просто заменяться ими.

Реальная ценность Big Data может быть определена только в том случае, если все хранилища данных (традиционные и Big Data) приняты во внимание. (Детальнее «Take That, Big Data! Why Small Data May Pack a Bigger Punch»).

4. Do: Рассмотрите непротиворечивость множества данных

Очевидно, что формат, структура и типы данных различны в разных источниках.

Самая большая проблема заключается в том, что данные в большинстве случаев не проходят очистку, когда дело доходит до вашей среды Big Data. Так что, прежде, чем доверять поступающим данным, следует проверить их повторным наблюдением и анализом. Как только непротиворечивость данных подтверждена, их набор можно рассматривать как единое рабочее множество метаданных. Это – обязательный этап любого проекта Big Data.

5. Do: Распределенные системы данных

Объем данных – главное беспокойство, когда мы рассматриваем окружающую среду их обработки. Заранее следует принять, что обработка Big Data на единственном сервере невозможна и нецелесообразна.

Пример решения – окружающая среда Hadoop, которая является распределенной вычислительной средой, организуемой на обычных, неспециализированных аппаратных средствах. Лозунг сегодняшнего дня – быстрая обработка на многих параллельных узлах. (Больше «7 Things to Know About Hadoop»).

6. Don't: Никогда не полагайтесь на единственный подход к аналитике Big Data

На рынке сегодня доступны различные технологии обработки Big Data, хотя основа всех технологий – Apache Hadoop и MapReduce. Это уже выбор.

Еще один обязательный шаг – оценка соответствия выбранной технологии поставленной цели. Здесь много вариантов – прогнозирующая аналитика (predictive analytics), предписывающая аналитика (prescriptive analytics), текстовая аналитика (text analytics), аналитика потоковых данных (stream data analytics), и т.д. Этот этап требует привлечения специалистов и обучения персонала в дальнейшем.

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

7. Don't: Не начинайте Big Data проект прежде, чем вы действительно будете готовы к нему

Всегда рекомендуется начать с небольших шагов для любого Big Data проекта. Потенциал больших данных весьма и весьма внушителен, но реальная ценность может быть достигнута только тогда, когда исправлены ошибки в пилотном проекте и накоплен определенный опыт.

8. Don't: Не используйте изолированные данные

Многочисленные хранилища данных рассеяны вокруг нас и их число увеличивается день ото дня. Важно объединить все эти данные, чтобы получить значимые результаты аналитики.

На рынке доступны различные инструменты интеграции данных, и они также должны быть оценены должным образом перед использованием.

Интеграция в Big Data – сложная задача, поскольку данные из различных источников имеют различный формат, но это – обязательный шаг для получения качественных результатов.

9. Don't: Не игнорируйте защиту информации

Защита информации – едва ли не главный пункт в разработке систем Big Data. Поскольку данных очень много, строго говорить об обеспечении их безопасности (и безопасности самих данных) не приходится.

Но после некоторой обработки пользователь получает подмножество данных, которые и обеспечивают «проникновение в суть». Здесь уже защита информации становится важной.

Правило выглядит следующим образом: защита информации должна осуществлятся как неотъемлемая часть жизненного цикла Big Data.

10. Don't: Не игнорируйте производительность систем аналитики Big Data

Результаты работы систем Big Data полезны только тогда, когда обрабатываются огромные объемы данных на высокой скорости. Если тщательно не управлять производительностью, то это вызовет проблемы и сделает бессмысленными все прочие усилия.

Заключение

Вот, собственно, и все. Реализация проектов Big Data в структурном поэтапном представлении не слишком отличается от внедрения других корпоративных систем и, в общем, нечего разводить тут, так сказать, турусы на колесах. Другое дело, когда дойдет до разработки реального детального плана, соответствующим десяти перечисленным пунктам, придется не раз почесать затылок.

А вообще, с каждым годом проекты Big Data становятся все совершеннее, убираются лишние и маловажные части. Если так пойдет дальше, то недалеко то время, когда использование Big Data станет обыденной, бытовой формой аналитики.

Вот, как говорится, информация к размышлению и руководство к действию. И не множьте сущее без необходимости.