Книга: Большие данные. Революция, которая изменит то, как мы живем, работаем и мыслим

Беспорядочность в действии

Беспорядочность в действии

Во многих общественных и технологических областях мы склоняемся в пользу беспорядочности, а не точности. Рассмотрим классификацию контента. На протяжении веков люди разрабатывали таксономии и индексы для хранения и извлечения материалов. Такие иерархические системы всегда были несовершенными, и это подтвердит каждый, кто не понаслышке знаком с библиотечной картотекой. В мире малых данных эти системы были достаточно эффективны. Однако стоило увеличить масштаб на много порядков — и эти системы, в которых все якобы идеально размещено, разваливаются. На сайте для обмена фотографиями Flickr в 2011 году хранилось более шести миллиардов фотографий почти от ста миллионов пользователей. Было бы бесполезно пытаться пометить каждую из фотографий в соответствии со стандартными категориями. Разве среди них найдется категория «Кошки, похожие на Гитлера»?

На смену понятным таксономиям и, как предполагается, совершенным классификациям приходят новые механизмы — более беспорядочные, зато гораздо более гибкие. Они легче адаптируются к миру, который непрерывно развивается и изменяется. Загружая фотографии на сайт Flickr, мы добавляем к ним теги, то есть назначаем любое количество текстовых меток, и используем их для упорядочения и поиска материала. Пользователи создают и добавляют теги по своему усмотрению. Нет единой стандартизированной, предопределенной иерархии, классификации или таксономии, которых следует придерживаться. Чтобы добавить новый тег, достаточно ввести его. Добавление тегов фактически стало стандартом классификации веб-контента, который используется на сайтах социальных сетей, таких как Facebook, а также в блогах и на прочих ресурсах. Благодаря этому стандарту стало гораздо удобнее бороздить просторы веб-контента, особенно нетекстового (изображений, видео, музыки), для которого поиск по словам не подходит.

Конечно, в тегах возможны опечатки. Такие ошибки привносят неточность (не в сами данные, а только в их порядок), а это наносит удар по традиционному способу мышления, основанному на точности. Но взамен беспорядочности того, как устроены наши коллекции фотографий, мы получаем гораздо больший спектр меток и, соответственно, более широкий доступ к своим фотографиям. Мы можем объединять поисковые теги для фильтрации своих фотографий такими способами, которые были недоступны прежде. Принять неточность, присущую методу меток, — значит принять естественную беспорядочность окружающего мира. Это лекарство от более точных систем, которые пытаются навязать суматошному миру ложную стерильность, делая вид, что все на свете можно четко систематизировать. Вокруг еще столько всего, что не укладывается в рамки такой философии!

Многие популярнейшие сайты не скрывают свою симпатию к неточности. Взглянув на значок Twitter или на кнопку «Нравится» на веб-странице Facebook, можно увидеть количество других людей, которые их нажали. Пока числа небольшие, например 63, каждое нажатие идет в расчет. Но при больших количествах нажатий указывается лишь приблизительное количество, например 4 тысячи. Нельзя сказать, что система не знает точных цифр. Просто с увеличением масштаба точность уже не играет большой роли. Кроме того, числа могут меняться так быстро, что на момент отображения будут уже неактуальны. Такого же принципа придерживается почтовая служба Gmail компании Google, в которой время последних сообщений указывается с точностью до минуты, например «11 минут назад», но более длительные интервалы округляются, например «2 часа назад».

Область бизнес-аналитики и аналитического программного обеспечения долгое время строилась вокруг обещания клиентам «единой версии правды» — популярного выражения среди поставщиков технологий в этих областях в 2000-х годах. Руководители произносили эту фразу без иронии. Некоторые так поступают и до сих пор. Под этой фразой подразумевается, что все, кто получает доступ к информационно-технологическим системам компании, могут использовать одни и те же данные. А значит, отделам маркетинга и продаж не придется спорить, чьи данные о количестве клиентов и продаж правильнее, еще до начала встречи. Исходя из сказанного, их интересы могут во многом совпадать, если факты излагаются единообразно.

Идея «единой версии правды» кардинально меняется. И суть не в том, чтобы согласиться с тем, что единой правды не существует. Важно понять, что гнаться за ней — неблагодарное дело. Для того чтобы пожинать плоды освоения масштабных данных, нужно признать, что беспорядочность здесь — в порядке вещей, и не нужно тратить лишнюю энергию на то, чтобы от нее избавиться.

Мы даже можем наблюдать, как характерные черты неточности проникают в одну из наименее терпимых к ней областей — проектирование баз данных. Для обычных механизмов системы управления базами данных (СУБД) требуются точные и хорошо структурированные данные, которые не просто хранятся, а разбиваются на «записи» с полями. Каждое поле содержит информацию конкретного типа и длины. Например, в числовое поле длиной в семь цифр невозможно записать сумму, равную десяти миллионам и более. А в поле для телефонных номеров не получится ввести «недоступен». Приспособиться к таким изменениям можно, только изменив структуру базы данных. Мы все еще воюем с этими ограничениями на компьютерах и смартфонах, когда программное обеспечение отказывается принимать данные, которые мы хотим ввести.

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

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

Эти реалии привели к созданию новых структур баз данных. Старые принципы создания записей и предопределенных полей, отражающих четко заданную иерархию информации, остались в прошлом. Долгое время самым распространенным языком доступа к базе данных был SQL («структурированный язык запросов»). Само название говорит о его жесткости. Но в последние годы произошел переход в сторону так называемой технологии NoSQL, при которой в базах данных не требуется предопределенная структура записей. Допускаются данные различного типа и размера. При этом они все так же доступны для поиска. Беспорядок, который допускается в структуре таких баз данных, компенсируется тем, что для их хранения и обработки требуется больше ресурсов. И все же, учитывая резкое падение затрат на хранение и обработку, этот компромисс мы можем себе позволить.

Пэт Хеллэнд, один из ведущих мировых авторитетов по вопросам проектирования баз данных в корпорации Microsoft, в статье «Если у вас слишком много данных, то и “достаточно хорошо” — уже хорошо» (If You Have Too Much Data, then ‘Good Enough’ Is Good Enough) описывает это явление как фундаментальный переход. Определив несколько основных принципов традиционного проектирования баз данных, которые были подорваны беспорядочными данными различной точности и происхождения, он изложил такие выводы: «Мы больше не можем претендовать на то, чтобы жить в чистом мире [информации]. Обработка больших данных влечет за собой неизбежные потери информации. Зато вы получаете быстрый результат». «Не страшно, если мы получаем ответы с потерями, — зачастую это вполне соответствует бизнес-потребностям», — подытожил Хеллэнд.

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

Большие наборы данных не хранятся централизованно. Как правило, они распределяются между несколькими жесткими дисками и компьютерами. Для обеспечения надежности и скорости запись может храниться в двух или трех разных расположениях. Если обновить запись в одном расположении, то данные в других расположениях будут считаться неправильными, пока их тоже не обновят. Традиционным системам было свойственно ожидать завершения всех обновлений. Но это менее практично, когда данные широко распространены, а сервер атакуется десятками тысяч запросов в секунду. В таком случае беспорядочность — неплохое решение.

Типичным примером перехода, о котором идет речь, стала популярность системы Hadoop — конкурирующего аналога системы Google MapReduce с открытым исходным кодом. Hadoop отлично справляется с обработкой больших объемов данных, разбивая их на мелкие фрагменты и выделяя участки для других компьютеров. Она исходит из того, что оборудование может отказать, поэтому создает резервную копию. Система также предполагает, что поступающие данные не упорядочены и не выверены (а по факту и не могут быть выверены до обработки из-за поистине огромного объема). При типичном анализе данных в первую очередь требуется выполнить ETL (от англ. Extract, Transform, Load — «извлечение, преобразование, загрузка»), чтобы переместить данные в расположение для их анализа. Hadoop обходится без таких тонкостей. Напротив, исходя из того, что количество данных настолько велико, что их невозможно переместить, Hadoop анализирует данные на месте.

Результат, получаемый на выходе, не настолько точен, как в случае реляционных баз данных: на него нельзя рассчитывать при запуске космического корабля или при подтверждении реквизитов банковского счета. Но со многими менее важными задачами, где суперточный ответ не требуется (скажем, с задачами по сегментированию клиентов для проведения специальных маркетинговых кампаний), Hadoop справляется намного быстрее, чем другие. С помощью Hadoop компания по выпуску кредитных карт Visa сумела сократить время обработки тестовых записей, накопленных за два года (73 миллиарда транзакций) с одного месяца до каких-то 13 минут. Подобное сокращение времени обработки ведет к преобразованиям в деловой сфере. Возможно, оно не годится для формального учета, зато исключительно полезно, когда некоторая погрешность вполне допустима.[52]

Принимая беспорядочность, взамен мы получаем чрезвычайно ценные услуги, недоступные при использовании традиционных методов и инструментов, учитывая всю масштабность данных. По некоторым оценкам, только 5% всех цифровых данных «структурированы», то есть представлены в форме, подходящей для традиционных баз данных. Отказываясь от беспорядочности, мы теряем оставшиеся 95% неструктурированных данных, таких как веб-страницы и видео. Допуская неточность, мы открываем окно в непознанный мир открытий.

Общество пошло на два неявных компромисса, которые уже настолько укоренились в нашем быту, что воспринимаются как естественный порядок вещей. Во-первых, мы не замахиваемся на огромные массивы данных, поскольку исходим из того, что это невозможно. Но этот сдерживающий фактор становится все менее актуальным, и мы можем многого добиться, ориентируясь на подход «N = всё».

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

Представление о том, как использовать всю совокупность информации, а не ее часть, и постепенное осознание преимуществ менее точных данных коренным образом меняют взаимодействие людей с окружающим миром. По мере того как методы работы с большими данными становятся неотъемлемой частью повседневной жизни, общество в целом устремляется к всеобъемлющему, более широкому, чем раньше, пониманию явлений — своего рода мышлению «N = всё». Возможно, мы станем менее требовательными к точности и однозначности в областях, где полагались на четкость и определенность (пусть даже сомнительные). Мы согласимся с таким подходом при условии, что взамен получим более полную картину явлений. Так на картинах импрессионистов мазки кажутся беспорядочными при ближайшем рассмотрении, но отступите на шаг — и вы увидите величественную картину.

Большие данные со свойственной им полнотой и беспорядочностью помогают нам ближе подойти к осознанию реального положения вещей, чем это удавалось в условиях зависимости от малых данных и точности. Призыв к частичным, но точным данным вполне понятен. Наше постижение мира, возможно, было неполным, а порой и вовсе неверным в условиях ограниченности данных, поддающихся анализу, зато они давали ощущение уверенности и обнадеживающей стабильности. Кроме того, поскольку мы могли собрать и изучить лишь ограниченный объем данных, не возникало непреодолимого желания получить их абсолютно все и рассмотреть со всех возможных сторон. В узких рамках малых данных мы могли гордиться точностью, но, даже измеряя все до мельчайших подробностей, упускали из виду более масштабную картину.

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

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

Оглавление книги


Генерация: 1.173. Запросов К БД/Cache: 3 / 1
поделиться
Вверх Вниз