Уже более десяти лет тот факт, что люди с трудом извлекают из своих данных полезную информацию, сбрасывают на чересчур большой размер этих данных. «Объем собираемой информации слишком велик для ваших хилых систем!», — такой нам ставили диагноз. А лекарство, соответственно, состояло в том, чтобы купить какую‑нибудь новую причудливую технологию, которая сможет работать в нужных масштабах.

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

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

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

А дальше будет и того интереснее.

Кто я такой и зачем меня слушать?

Больше 10 лет я был одним из тех, кто рассказывал всем о пользе Big Data. Я был инженером‑основателем Google BigQuery. И, как единственный инженер в команде, любящий публичные выступления, я ездил на конференции по всему миру, объясняя, как мы собираемся помочь людям устоять перед грядущим взрывом больших данных. Я переносил петабайт данных прямо стоя на сцене, показывая, что какими бы огромными и ужасными ни были ваши данные, вместе мы сможем справиться с ними!

На этом фото я выступаю на Big Data Spain в 2012 году, предупреждая об опасностях гигантских наборов данных и обещая спасение, если IT‑компании переключатся на нашу технологию.

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

Самое удивительное, что я узнал, это то, что большинство людей, использующих BigQuery, на самом деле не имеют больших данных. И даже те, кто имеет — обычно при работе используют лишь небольшую часть своих наборов информации. Когда появился BigQuery, для многих это казалось какой‑то научной фантастикой — вы буквально могли обрабатывать данные со скоростью света, быстрее, чем когда‑либо прежде. Но почти никому на самом деле такой инструмент был не нужен. Более того: то, что в 2012-м было научной фантастикой, теперь стало обычным явлением, и даже более традиционные способы обработки данных показывают невероятную скорость.

Об этом посте

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

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

Традиционный вступительный слайд

Все последние 10 лет каждая презентация любого продукта в сфере Big Data начинается со слайда, который выглядит примерно так:

Количество генерируемых данных каждый год увеличивается! Вау!
Количество генерируемых данных каждый год увеличивается! Вау!

Мы использовали ту или иную версию этого слайда в течение многих лет в Google. Когда я перешел в SingleStore, то увидел, что они используют собственную версию с такой же диаграммой. Я видел несколько других поставщиков с чем‑то подобным. Это очень «страшный» слайд. Большие данные наступают! Вы должны срочно купить то, что я продаю!

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

Но, конечно, то, что количество генерируемых данных растет, ещё не означает, что это автоматически становится проблемой для всех. Данные распределяются неравномерно. Большинству приложений не нужно обрабатывать огромные объемы данных. Это привело к возрождению систем управления данными с традиционной архитектурой: SQLite, PostgreSQL и MySQL активно растут, в то время как системы «NoSQL» и даже «NewSQL» стагнируют.

Оценка движков БД с течением времени: MongoDB по сравнению с MySQL
Оценка движков БД с течением времени: MongoDB по сравнению с MySQL

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

Конечно, в аналитических системах картина может выглядеть иначе, но в OLAP мы видим массовый переход предприятий от локальных систем к облаку, и на самом деле у нас нет масштабируемых облачных аналитических систем, с которыми можно было бы сравнивать показатели. 

У большинства людей нет так уж много данных

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

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

Размеры данных клиентов подчинялись степенному закону распределения. У крупнейшего клиента хранилище было вдвое больше, чем у следующего по величине клиента. У третьего по величине клиента хранилище было еще вдвое меньше и так далее. Таким образом, хотя у нас были клиенты и с сотнями петабайт данных, средние размеры уменьшались очень быстро. Было много тысяч клиентов, которые платили нам меньше 10 долларов в месяц за хранилище, то есть данных у них было полтерабайта. Средний размер хранилища среди активных корпоративных клиентов был намного меньше 100 ГБ. При этом, напоминаю, они использовали сервис для помощи в обработке больших данных. Видимо, искренне думая, что он им помогает.

Размер данных клиента и количество таких клиентов
Размер данных клиента и количество таких клиентов

Это был секрет Полишинеля. Когда мы общались с крутыми отраслевыми аналитиками (Gartner, Forrester и т. д.), мы превозносили нашу способность обрабатывать массивные наборы данных, а они в ответ пожимали плечами. «Это хорошо, — говорили они, — но у подавляющего большинства предприятий данных меньше терабайта». Общее мнение, которое мы получали от осведомленных представителей отрасли, состояло в том, что 100 ГБ — это правильный порядок величины для хранилища данных. Поэтому мы сместили фокус рекламы и впоследствии при разработке стали ориентироваться на эту цифру.

Один из наших инвесторов как‑то решил выяснить, насколько велики на самом деле объемы аналитических данных. И провел опрос среди компаний в своем портфеле, большинство из которых были post‑exit (они либо прошли IPO, либо были куплены более крупными организациями). Все они были IT‑компаниями — вероятно, склонными к большим размерам данных. И вот он обнаружил, что у крупнейших B2B‑компаний в его портфолио было около терабайт данных, а у крупнейших B2C‑компаний — около 10 терабайт данных. У всех остальных данных было гораздо меньше, иногда гигабайты.

Чтобы понять, почему большие объемы данных встречаются так редко, можно подумать о том, откуда на самом деле берется информация. Представьте, скажем, что у вас средний бизнес с тысячей клиентов. Допустим, каждый из ваших клиентов размещает новый заказ каждый день. И в каждом заказе сотня разных позиций. Это нереально часто и очень много позиций, но даже в такой ситуации вы генерируете меньше мегабайта новых данных в день. Через три года у вас будет только гигабайт. А для создания терабайта потребуются тысячелетия.

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

Вот еще конкретный пример. Я работал над развитием реляционной СУБД SingleStore в 2020–2022 годах. Это была быстрорастущая компания Series E с существенным доходом и статусом единорога. Но если бы вы взяли размер нашего хранилища финансовых данных, добавили к нему нашу информацию о клиентах и маркетинговых кампаниях и добавили бы сюда все сервисные журналы, у вас бы в сумме набралось пять гигабайт. Даже при самом богатом воображении такое сложно назвать Big Data.

Разделение хранилища и вычислений

Все современные облачные платформы разделяют хранилища и вычислительные ресурсы. Это означает, что клиенты не привязаны к одному форм‑фактору и могут выбирать, что им нужно. Вероятно, если не считать масштабирования, это самое важное изменение в архитектуре данных за последние 20 лет. Вместо архитектур «без общего доступа», которыми трудно управлять в реальных условиях, архитектуры с общими дисками позволяют наращивать хранилище и вычислительные ресурсы независимо друг от друга. Появление масштабируемых и достаточно быстрых объектных хранилищ, таких как S3 и GCS, означает, что у вас гораздо больше пространства для маневра в том, как вы создаете базу данных.

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

Объем собираемых данных в основном растет быстрее, чем вычислительная мощность, требуемая для их анализа
Объем собираемых данных в основном растет быстрее, чем вычислительная мощность, требуемая для их анализа

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

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

Вот и выходит, что объем данных растет быстрее, чем мощности, требуемые для их анализа.

Я заметил, когда клиент хранилища данных переходит из той среды, в которой у него не было разделения хранения и вычислений, в среду, где они есть, использование хранилища обычно значительно возрастает, но его потребности в вычислительных ресурсах, как правило, не меняются. В BigQuery у нас был клиент, который был одним из крупнейших ритейлеров в мире. У них было локальное хранилище данных объемом около 100 ТБ. Когда они перешли в наше облако, у них стало 30 ПБ данных — в 300 раз больше! Если бы их вычислительные потребности увеличились на аналогичную величину, они бы потратили миллиарды долларов только на аналитику. Вместо этого они потратили только маленькую долю этой суммы.

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

Объем рабочей нагрузки меньше, чем объем данных

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

Пару лет назад я провел анализ запросов BigQuery, выбрав клиентов, которые тратят более 1000 долларов в год. И 90% их запросов обрабатывали менее 100 МБ данных. Я сделал ряд тестов, чтобы убедиться, что это не просто пара клиентов, которые выполнили тонну запросов, искажающих результаты. Но вывод был один: вы должны идти довольно высоко в диапазоне процентилей, пока не дойдете до обработки хотя бы гигабайт. И считанные единицы запросов выполнялись в терабайтном диапазоне.

У нас были клиенты с гигантскими объемами хранящихся данных. Но они почти никогда не запрашивали обработку больших объемов. Чаще всего такие запросы происходили, когда они создавали отчеты, и в таких случаях скорость выполнения запроса для них вообще не была приоритетом. На самом деле в итоге клиенты с умеренными объемами данных чаще выполняли большие по весу запросы (просто из-за количества таких клиентов).

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

Подавляющее большинство рабочих нагрузок приходится на запросы меньше 10 ГБ
Подавляющее большинство рабочих нагрузок приходится на запросы меньше 10 ГБ

Даже при запросах к гигантским таблицам вам редко приходится обрабатывать очень много данных. Современные аналитические БД умеют выполнять проекцию столбцов для чтения только определенного подмножества полей и сокращать секции для чтения только узкого диапазона дат. Часто они идут еще дальше и устраняют сегменты, используя локальность данных с помощью кластеризации или автоматического микроразбиения. Есть и другие приемы, такие как вычисления со сжатыми данными, проецирование и проталкивание предикатов. Всё это позволяет сократить количество операций ввода‑вывода во время проведения запроса. А меньшее количество операций ввода‑вывода превращается в меньший объем необходимых вычислений, что приводит к снижению затрат и задержек. Современные БД успешно умеют бороться с огромными запросами, так что запредельные мощности даже здесь не нужны.

И это будет продолжаться. Обработка данных с каждым годом продолжает становиться эффективнее и затрачивает все меньше ресурсов. Всё потому, что существует острое экономическое давление, побуждающее людей искать способы сокращать объем обрабатываемых данных. Тот факт, что вы можете анализировать что‑то очень быстро, не означает, что вы можете сделать это недорого. Запрос размером в петабайт, который я использовал на сцене, чтобы продемонстрировать возможности BigQuery, стоил 5000 долларов. Очень немногие люди могут позволить себе разбрасываться такими деньгами.

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

Большая часть данных редко запрашивается

Огромный процент обрабатываемых данных — не старше 24 часов. К тому времени, когда данным исполняется неделя, вероятность того, что они будут запрошены, уменьшается в 20 раз. Через месяц данные обычно просто лежат. Исторические данные, как правило, запрашиваются очень нечасто, возможно, когда кто‑то решает сделать уникальный отчет.

По мере старения данные обрабатываются всё реже и реже
По мере старения данные обрабатываются всё реже и реже

Со временем хранящиеся данные вызываются всё реже. Большинство из них просто добавляются в конец таблиц и хранятся где‑то в уголках БД, в надежде, что их когда‑нибудь снова вызовут. На последний год может приходиться около 30% всех данных, но 99% запросов к ним. В таблице с последним месяцем может храниться 5% всех данных, но на неё приходится 80% всех вызовов.

Такая ситуация означает, что размеры «рабочего» набора данных более скромны и более управляемы, чем вы ожидаете. Если у вас есть петабайтная таблица с данными за 10 лет, это не значит, что вам реально нужно обрабатывать этот петабайт. В большинстве случаев вы будете обращаться к данным не старше последней недели, которые могут быть сжаты до менее чем 50 ГБ.

Граница Big Data продолжает отдаляться

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

В 2004 году, когда была написана статья о Google MapReduce, было обычным делом, чтобы рабочая нагрузка данных не умещалась на одной серийной машине. Масштабирование было очень дорогим. В 2006 году AWS запустила EC2, и единственным вариантом, который вы могли получить, было 1 ядро и 2 ГБ ОЗУ. Было много рабочих нагрузок, которые не помещались на этой машине.

Однако сегодня стандартный вариант на AWS использует физический сервер с 64 ядрами и 256 ГБ ОЗУ. Это на два порядка больше оперативной памяти, чем было пятнадцать лет назад. Если вы готовы потратить немного больше на инстанс, оптимизированный для памяти, то можете повысить свою ОЗУ еще на два порядка. Сколько есть рабочих нагрузок, для которых требуется более 24 ТБ ОЗУ и 445 ядер ЦП?

Отдельные машины способны обрабатывать гораздо больший процент рабочих нагрузок с течением времени и с развитием технологий
Отдельные машины способны обрабатывать гораздо больший процент рабочих нагрузок с течением времени и с развитием технологий

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

Когда‑то мы считали, что «Big Data» наступит, когда на каждой машине будет храниться больше 10 ГБ информации. Потом — что больше 1 ТБ. Сейчас даже петабайты в облачных сервисах мало кого смущают. При этом люди продолжают считать, что Big Data — это что‑то еще более масштабное, оно всё еще находится где‑то там, за горизонтом, и готово свалиться всем нам на голову. Хотя никаких реальных признаков этому нет. На самом деле число рабочих нагрузок, которые можно было бы причислить к Big Data, ежегодно снижается. И это происходит уже много лет.

Данные — это обязательства

Альтернативное определение понятия «больших данных» — это:

Когда стоимость хранения данных меньше, чем стоимость выяснения того, что именно нужно выбросить.

Мне больше нравится это определение, потому что оно объясняет, почему люди в конечном итоге обращаются к Big Data. Не потому что им это очень нужно; они просто не хотят разбираться, что им удалять. Если подумать о многих озерах данных, которые собирают организации, то они полностью соответствуют этому требованию: гигантские грязные болота, где никто не знает, что именно они содержат и безопасно ли их очищать.

Стоимость хранения данных — намного выше, чем просто стоимость хранения физических байтов. Данные — это большая ответственность и большая опасность.

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

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

Если софт или код не поддерживать, они часто страдают от того, что на жаргоне называют «битовой гнилью«. Это не физическое явление, просто люди начинают забывать, как и что нужно использовать, а окружающая среда меняется, оставляя старое ПО бесполезным и загнивающим.

Так вот, данные могут страдать от того же типа проблем. Со временем люди забывают точное значение определенных полей. Или часть данных стирается из памяти из‑за ошибки железа, делая остальную информацию нечитаемой или бесполезной. Например, может возникнуть ошибка, из‑за которой каждый ID клиента станет нулем. Или у вас была крупная мошенническая транзакция (о которой вы потом забыли), из‑за которой теперь кажется, что второй квартал 2017 года был для вас супер‑прибыльным. Из‑за чего все другие, даже современные данные, анализируются неверно.

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

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

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

Вы относитесь к одному проценту, и у вас правда есть большие данные?

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

  • Вы действительно генерируете огромное количество данных — десятки гигабайтов в день?

  • Если да, то действительно ли вам нужно использовать огромное количество данных единовременно?

  • Если да, то действительно ли эти данные слишком велики, чтобы поместиться на одной машине?

  • Если да, то уверены ли вы, что не просто храните эти данные, а регулярно обращаетесь к ним?

  • Если да, то уверены ли вы, что это лучше составления простых отчетов, и приносит вам реальную пользу?

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

В итоге — больших данных (почти) нет. Они мертвы для всех, за исключением редких компаний уровня H&M, Google и Walmart. Для остальных — есть обычные данные. И нужно сосредоточиться не на их объеме, а на том, как выделять из них действительно полезную и важную информацию.


Промокод для читателей нашего блога!

— 15% на все тарифы VDS (кроме тарифа Прогрев) — по промокоду HabrFIRSTVDS.

50 тысяч активных серверов и 10 тысяч клиентов, которые с нами больше 5 лет.

Комментарии (76)


  1. avshkol
    00.00.0000 00:00
    +6

    На вопрос "с какого объёма начинаются большие данные?" я бы ответил так: с объёма, с которого можно строить обучающие модели. Возможно, это даже 1 (один) мегабайт.


    1. Ivan22
      00.00.0000 00:00
      +13

      то есть на небольших данных модели строить нельзя?


      1. PanDubls
        00.00.0000 00:00
        +14

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


        1. Lizdroz
          00.00.0000 00:00
          +2

          Можно, но только осторожно


      1. thevlad
        00.00.0000 00:00

        Линейные модели обычно можно. Если сэмплов от нескольких сотен и соотношнние количества точек/размерность пространства (количества факторов) > 5-10


        1. avshkol
          00.00.0000 00:00

          Большие данные еще и обладают большой вариабельностью, и скоростью прироста. То есть данные, удовлетворяющие тому, что их можно обработать с более-менее приемлемой точностью линейными моделями, при таких условиях будут, условно, не 10 точек, а на порядки больше...


      1. avshkol
        00.00.0000 00:00

        Большие данные еще и характеризуются большой вариабельностью, и скоростью прироста - те самые 3V или даже 5V.

        То есть это не просто "небольшой стационарный набор однородных данных". Но даже небольшой набор может характеризоваться вариабельностью параметров и каким-то приростом, например, 1 Мб.


      1. Goupil
        00.00.0000 00:00

        Можно, но они будут оверфититься.


    1. Hardcoin
      00.00.0000 00:00
      +10

      И в чем же они большие? Автор ведь даёт четкую идею - много - это когда вы обычной базой обработать не можете, вам нужно что-то особое (например, BigQuery). 1 мегабайт обработать базой, разумеется, можно. Или программой прямо в памяти.


      1. avshkol
        00.00.0000 00:00
        +1

        Автор сам же и опровергает - то, что вчера было нельзя обработать "обычной БД на обычном компьютере", сейчас - запросто... Что странно - "большизна" больших данных зависит от того, в каком году вы смотрите на эти данные.


        1. Hardcoin
          00.00.0000 00:00
          +14

          Не опровергает. Наоборот, это его довод и есть - раньше было сложно, теперь легко, особые инструменты для bigdata на самом деле мало кому нужны.


      1. Alexeyslav
        00.00.0000 00:00

        Для микроконтроллера умной лампочки, с 8кб собственной памяти на борту, 1 мегабайт - это будет бигдата. Вопрос зачем лампочке обрабатывать мегабайт данных, оставим за бортом.... Идея состоит в том что бигдата - это что-то неподъемное для какой-либо отдельно взятой системы.
        Что-то подумалось.... каталог всех звёзд во вселенной.


        1. Hardcoin
          00.00.0000 00:00

          Формально так подойти можно, вы правы. Это показывает, что его описание не является строгим, четким определением.

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


    1. Gedeonych
      00.00.0000 00:00
      +3

      Можно пойти ещё дальше. Большие данные это 0 и 1. Из них можно построить всё! (улыбается).


      1. Revertis
        00.00.0000 00:00
        +1

        Большие данные это Пи, например :)


        1. K0styan
          00.00.0000 00:00
          +6

          Это длинные данные)


        1. anwender95
          00.00.0000 00:00

          πfs входит в чат.


    1. K0styan
      00.00.0000 00:00
      +11

      Большие данные - необязательно "пища" для ИИ. Их можно анализировать классическими методами, фиксированными функциями и алгоритмами.


      1. rukhi7
        00.00.0000 00:00
        +10

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


        1. K0styan
          00.00.0000 00:00

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

          Так что статья эта появится, как мне кажется, гораздо быстрее. И не в техническом СМИ.


    1. HGordon
      00.00.0000 00:00
      +1

      Это очень опасный подход, потому что хранить данные можно по разному.
      Например, в одном проекте ~900М csv ужался до ~20M parquet.
      А количество данных для нашей задачи было очень большим.


      1. slonopotamus
        00.00.0000 00:00
        +5

        Ломающие новости, бинарные форматы компактнее текстовых. Не удивлюсь если выкинуть Parquet, который на датасете в 22МБ вообще ни о чём, получится ещё меньше.


    1. Akon32
      00.00.0000 00:00
      +1

      с объёма, с которого можно строить обучающие модели.

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


  1. rPman
    00.00.0000 00:00
    +17

    bigdata это когда данных столько, что привычные инструменты не справляются и требуется изменение подхода.

    Для человека, который поднял на бесплатном хостинге какой-нибудь условный водпресс и пробует импортировать в него свои 1кк записей и не может дождаться окончания — это bigdata, и решения в нем не в переносе данных в облако гугла (они то будут рады big money, которые им клиент заплатит) а в поиске узких мест и исключения их, смене алгоритмов с неэффективных на эффективные и т.п.

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

    Как не крути, но часто лучшее решение это не залить все данные куда то с ограниченным интерфейсом, а арендова/купить полноценные машины с процессорами и дисковыми хранилищами, и пилить узкоспециализированное решение, по деньгам как минимум это будет гораздо эффективнее.


    1. mikelavr
      00.00.0000 00:00
      +19

      Про инструменты.

      [шутка, которая вроде и не шутка]

      Bigdata - это когда Excel не справляется.


      1. neobuh
        00.00.0000 00:00

        Ну Excel тоже растет, и еcли данные не растут в геомтерической прогрессии очем говорит автор, от и его хватит на многое, кроме того Excel не только средство хранения данных, но и их визуализации, причем может использовать как свои данные так и внешние, а не один движок БД встроенными средствами визуализации обычно не обладает (Access ;) ).


        1. Ivan22
          00.00.0000 00:00

          powerBI - средство визуализации со встроенным движком БД


      1. K0styan
        00.00.0000 00:00
        +3

        Слышал ещё два определения:

        ...это когда приходится на ночь оставлять считать.

        ...это когда скорость поступления данных превышает скорость их обработки

        Второе мне больше всего нравится, и по большому счёту мнение в статье поддерживает.


  1. GeorgeII
    00.00.0000 00:00
    +10

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


    1. avshkol
      00.00.0000 00:00
      +3

      То есть одни и те же данные могут одновременно быть и большими и не-большими? Тогда пропадает смысл определять данные как "большие". Просто данные.


      1. Ivan22
        00.00.0000 00:00
        +2

        о чем и речь


        1. Sabbone
          00.00.0000 00:00

          Это как вопрос - "Куча это сколько орехов?"


      1. ftc
        00.00.0000 00:00
        +3

        Ну потому что "большие данные" это не про размер данных, а про способы работы с ними.


  1. OlegZH
    00.00.0000 00:00
    +2

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

    Как всегда. Самые важные и интересные вопросы — в самом конце статьи.

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

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

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

    И ещё один момент. Одно дело — внутренние цели фирмы, другое — цели общества. Общество тоже может захотеть получить доступ к аналитическим данным фирмы.

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


    1. anonymous
      00.00.0000 00:00

      НЛО прилетело и опубликовало эту надпись здесь


    1. APXEOLOG
      00.00.0000 00:00
      +2

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

      Насколько я понимаю "бигдату", эксперименты будет происходить уже после.

      Условно всю концепцию бигдаты можно представить так:

      • Мы делаем продукт и не знаем как нам еще повысить метрики (есть какие-то гипотезы и мы их проверяем, но это как иголку в стоге сена искать)

      • Давайте собирать вообще все действия и реакции пользователя, клики, время находжения на странице, вообще все возможно (и это действительно дофига инфы при большой пользовательской базе)

      • Потом мы весь этот огромный массив данных отдадим куда-нибудь в ML или аналитикам, чтобы они искали корелляции

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


    1. heikadmi
      00.00.0000 00:00

      Оригинал статьи вышел в блоге https://motherduck.com/, который "powered by DuckDB" (физически и морально). Поэтому подробности архитектурных достижений нужно искать в районе документации DuckDB.


  1. slonopotamus
    00.00.0000 00:00
    +68

    TLDR; Чувак 10 лет пытался продавать на конференциях продукт, решающий несуществующую практически ни у кого проблему, а щас он наконец осознал ненужность и немедленно поспешил запилить об этом запись в бложек (странно что не на конференции).


    1. karavan_750
      00.00.0000 00:00

      Зашел оставить этот комментарий, а тут вы. Только добавить хотел, что от этого продажника следует ожидать "лучшее решение", логика намекает.


    1. vidok0577
      00.00.0000 00:00
      +11

      лет 10 назад понравилась мысль, в интернете вычитал "Компьютер позволяет решать те проблемы, которые до его изобретения не существовали"


      1. int0Ah
        00.00.0000 00:00
        +1

        Этому анекдоту в разы больше лет, но тогда его рассказывали про автомобили. Что-то вроде: "Как классно с машиной! Успел за день сгонять и в ГАИ, и в автосервис, и на мойку" :)


    1. holodoz
      00.00.0000 00:00
      +2

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


    1. Murtagy
      00.00.0000 00:00

      Стоит отметить что продукт шикарный. Реально моментально считает любую аналитику


  1. johnfound
    00.00.0000 00:00
    +1

    Статья о том, что люди очень часто копят ненужные данные и вместо того чтобы просто их стереть, страдают, платят, работают, опять платят. А надо просто научится не ценить своих данных слишком сильно и чистить их безжалостно. А то получаются Плюшкины 21-го века.


    1. slonopotamus
      00.00.0000 00:00
      +1

      Вы невнимательно читали статью. Люди НЕ копят. BigQuery никому не нужен.


      1. Xander_d
        00.00.0000 00:00
        +5

        Люди копят, данных много, но для обработки этого не нужны BigData решения, т.к. реально используется малая часть - свежие.


        1. K0styan
          00.00.0000 00:00

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

          Есть ещё одна проблема, о которой в статье почти ничего нет. Данные разнородные и между собой мало провязанные. Отсюда вытекает, что основная сложность не в том, чтобы перелопатить терабайты, а в том, чтобы из сотни мегабайт данных, скажем, касс и другой сотни МБ данных сайта смочь сделать бизнесово значимые выводы.


          1. Ivan22
            00.00.0000 00:00

            в точку. И главное с этой задачей никакие инструменты справится не помогут. Тут нужен особый подход, без которого все это сваливается в dataswamp из которого прорастают как троcтники отдельные репорты и датапродукты никак не связанные в общую модель.


            1. konst90
              00.00.0000 00:00

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


              1. K0styan
                00.00.0000 00:00
                +1

                Скажем так, была мечта, что бигдата поможет эти неочевидные связи отлавливать. Или даже так: на больших числах можно будет заменить настоящие связи корреляцией.

                По мере накопления практики стало ясно - только до определённого потолка, причём довольно низкого. Какая-то объективная real life связка нужна, как ни крути.


              1. Ivan22
                00.00.0000 00:00

                размер тут как раз роли особой не играет.


  1. maeris
    00.00.0000 00:00
    +3

    MongoDB — масштабируемая база данных

    Спасибо, что нам напомнили.


    1. Kubera2017
      00.00.0000 00:00

      А может кто-то объяснить, что это за страшилка, которую SQL-ребята каждый раз про Mongo рассказывают, типа при она не сразу данные на диск пишет? Вроде бы у того же Postgres тоже есть WAL, который он сбрасывает на диск периодически, но не сразу.


      1. leotsarev
        00.00.0000 00:00

        Вообще то нет. ACID база данных докладывает об успешной обработке запроса клиенту только после того, как WAL записан на диск.


  1. twid
    00.00.0000 00:00
    +1

    Лучше было такого кликбейтного заголовка не делать.
    Выскажу личное мироощущение - "биг дата" никогда и не воспринималась как профессия. При всем разнообразии it-спецов эта стезя выбивается из общего ряда как слесарь с разрядом 9 и три четверти.

    Вопрос в другом - уже раскрутили колесо сансары, что "биг дата это круто, это нужно". Не дело переключать внимание публики, что "теперь биг дата совсем не круто, а круто-круто (что-то другое), все бегом туда". Манагеру, который умеет выбивать трендовые проекты, переключиться нетрудно. А программистам стресс, зачем, все уже привыкли что "давайте еще и биг дату наведем" - так пусть люди работают спокойно.


    1. entze
      00.00.0000 00:00

      Но навязывалась из каждого утюга последние пару лет. Теперь это тестировщики.


      1. twid
        00.00.0000 00:00
        +1

        "Теперь это тестировщики" тоже реклама. Потому что "тестировщики самая простая дорога в it, не программист же" однажды прокатило.


  1. klimkinMD
    00.00.0000 00:00
    +1

    Что ж, теперь осталось как-то отучиться "... жрать кактус"


  1. Pusk1
    00.00.0000 00:00

    Google BigQuery? Не встречал. Ещё MnogoDB как конкурента вспомнил:)

    Во многом с автором согласен.

    Разделения хранения и вычислений - не про горячие данные, которые позволяют чувствовать бизнес на кончиках пальцев. Чем ближе данные с вычислительным ресурсам, тем лучше. Предельный случай - InMemory. И современные системы неплохо с этим справляются.

    Наверное, это плохой продажник. Cloudera, GreenPlum, Teradata, Oracle Exadata, Vertica, ClickHouse, elasticsearch. Это то, что встречалось мне на проектах в крупных компаниях и гос. структурах за последние лет 6. 70% решений совсем не с клаудной архитектурой, но обрабатывают огромные данные в больших компаниях. При этом нагрузка большей частью аналитическая. Старый транзакционный хлам на самом деле никому не интересен и его регулярно обрезают, если это позволяет сделать сама транзакционная система (чаще не позволяет).


    1. Ivan22
      00.00.0000 00:00

      выйдите в большой мир - тут балом правит Snowflake, redshift, BigQuery - все клауд онли. Я перейдя на Snowflake вспоминаю Greenplum как страшный сон, небо и земля.


  1. WondeRu
    00.00.0000 00:00
    +2

    Бигдата - это то, что не уместилось в Excel ????


    1. rukhi7
      00.00.0000 00:00
      +2

      Бигдата это когда у тебя 5 аккаунтов на гите по 20 проектов в каждом, и ты вспоминаешь, а туда ли ты вчера код закомитил.


  1. leveter
    00.00.0000 00:00
    +1

    Ну и куда теперь девать всех выпускников скилл-факторов, -боксов и прочих практикумов, которые отштудировали курс "Инженер БигДаты"? :)


    1. Ivan22
      00.00.0000 00:00

      пусть теперь sql подучат, и смогут data инженерами работать


  1. GainA
    00.00.0000 00:00
    +1

    Hidden text

    Смешно. В такой компании работал, а не знает аксиом. Большие данные - это, в первую очередь, неоднородность. Если данные однородны, то обработка небольшой выборки даст те же результаты, что и обработкс всех данных. Это решает проблемы volume и velocity. У вас нет больших данных, если их не надо разбивать на более однородные кластеры, на которых и строятся модели, на каждом - своя.


  1. vladvul
    00.00.0000 00:00
    +2

    да у меня порноархив больше чем половина примеров его больших данных . Слабаки какие-то. Добавили бы архив свопов. Или полные ежедневные бэкапы всех жестких дисков компании, включая бэкапы дисков бэкап серверов.. Наконец, у них что нет видеонаблюдения? Детский сад просто, данных не могут найти. На худой конец все транзакции можно распечатать в pdf документы, и то хлеб


  1. NNikolay
    00.00.0000 00:00
    +2

    Очень интересно, что и сам разработчик системы, похоже, не видит основной силы BigQuery. И в комментариях не написали. Может я чего не понимаю? Но я на BigQuery переводил четыре компании; пользуюсь с 2012 года. И подтверждаю, что в каждой следующей компании данных было меньше и меньше (с тезисом переоценённости тупо объема данных не спорю).

    Нннно! Фишка BigQuery в необыкновенно большой вычислительной мощности в моменте. Если у меня есть идея что-то посчитать, я могу получить ответ и на одной машине за час, например. А BigQuery выплёвывает результат за 2 секунды. И я, увидев какая лажа получилась, переписываю запрос и опять за 2 секунды вижу результат. А потом я могу месяц эти данные не трогать и система оплаты будет только за хранение. В этом и суть.

    Странно, что инженер этого не понимает.


    1. Ivan22
      00.00.0000 00:00

      инженер как раз понимает. Просто фишка в том что с bigquery можно работать точно также как работали с Oracle 20 лет назад. Такая же модель данных, такие же подходы к ETL такой же репортинг. А до этого всем продавали магию "big data" которая якобы совсем не похожа на старые подходы к аналитике данных.


      1. NNikolay
        00.00.0000 00:00
        +1

        Я тут почитал, он просто пилит свой стартап. Поэтому громкий контент. Ещё вспомнил, что это он же мне на stackoverflow отвечал про заковырки BigQuery. Ясно, что он сам по себе очень в теме.


        1. Ioanna
          00.00.0000 00:00
          +1

          "Так как меня увольняют со службы, то объявляю, что все вы - мошенники и воры...")


  1. N-Cube
    00.00.0000 00:00
    +4

    Простой пример, где полезен Google BigQuery - хранение данных всей планеты OpenStreetMap (полный дамп терабайта полтора размером) в подготовленном для использования виде тематических слоев и с регулярным автообновлением, см. https://github.com/mobigroup/bigquery-openstreetmap Поскольку этот открытый проект я писал по заказу Google Inc., он именно на BigQuery ориентирован, хотя я тот же самый код использую для хранения данных в PostgreSQL и SQLite… но с ними требуется уметь извлекать и агрегировать пространственные данные, в то время как BigQuery делает это автоматически (при условии правильно подготовленных данных, разумеется). Более того, бесплатного месячного лимита хватит на пачку запросов, которых может быть уже достаточно - и это не потребует от пользователя неделю обрабатывать дамп OpenStreetMap локально и еще разбираться с производительностью запросов. Если же эти данные нужны постоянно и запросов много, конечно, стоимость сервиса BigQuery будет намного выше использования локальной базы данных. Каждому свое. НАСА вот вообще простейший вроде бы сервис хранения космоснимков предоставляет - но когда каждый космоснимок размером порядка гигабайта и их миллионы, этот сервис оказывается очень востребованным.


  1. xakep2011
    00.00.0000 00:00

    ...да здравствуют большие данные?


  1. Ogoun
    00.00.0000 00:00
    +2

    Но почти никому на самом деле такой инструмент был не нужен

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


  1. sergeyns
    00.00.0000 00:00

    А где шутка про подростковый секс?

    У большинства людей нет так уж много данных

    Неужто стало доходить??? (и не только у людей, но и у организаций)...


  1. habraabr
    00.00.0000 00:00
    +1

    С самого начала статьи я не мог отделаться от старого-доброго привкуса от американских специалистов "по корпоративному впариванию" которые по два раза делают карьеру:

    1. Создать и продать проблему

    2. Продать решение проблемы которая была вызвана действиями которые были направлены на решение выдуманной проблемы

    3. ??? Profit? РАНО! Доим дальше: GOTO 1

    Сделай больно, а потом ослабь чтобы стало хорошо.

    Который год такое наблюдаю и кажется в США это особо популярный жанр.

    если только вы не решите резко сократить данные (подробнее об этом позже)

    "Смотрите чего я умею. Готов поработать на ваш бизнес, пишите в Линкедин."


  1. SSukharev
    00.00.0000 00:00
    +1

    Остап Бендер знал несколько сравнительно честных способов от'ема денег, среди них были и бигдата и озера данных вместо хранилищ данных и искусственный интелект.