Почему мир Big Data запомнит 20.03.2023

В этот понедельник Яндекс выложил в open source свой движок обработки больших массивов информации YTsaurus (ранее известный внутри компании как YT или «ыть»). Ниже — повесть (зачеркнуто) пояснение в двух частях:

  1. Что я знаю про Big Data и почему об этом пишу
  2. Почему это событие впишут в историю Big Data

Часть 1. Пояснить за Big Data (если лень читать, тезисы в последнем абзаце)

Я занимаюсь анализом параллельных, распределенных и грид- вычислений (если говорить на «научном») или работаю с Big Data (если говорить на «пафосном») с 2007-го года. Ровно тогда начал писать алгоритмы на MPI под научным руководством Богачева К.В. на мехмате МГУ. А в 2010-м подсел на Hadoop благодаря Сухорослову О.В.

Был одним из лучших выпускников своего года в ШАД Яндекса, пару раз работал в самом Яндексе, один раз в Рамблере и провел 2 замечательных года на чужбине в Ирландии, где работал в Amazon AWS.

[{"title":"u0424u0438u0440u043cu0435u043du043du044bu0435 u043du0438u0448u0442u044fu043au0438 u043eu0442 Amazon u043du0430 u0434u0435u043du044c u0441u0432u044fu0442u043eu0433u043e u041fu0430u0442u0440u0438u043au0430","image":{"type":"image","data":{"uuid":"b571e0ca-af26-5fb0-a816-04d1a80e2ea3","width":2560,"height":1920,"size":194347,"type":"jpg","color":"19150f","hash":"","external_service":[]}}},{"title":"<span>u0424u0438u0440u043cu0435u043du043du044bu0435 u043du0438u0448u0442u044fu043au0438 u043eu0442 Amazon u043du0430 u0434u0435u043du044c u0441u0432u044fu0442u043eu0433u043e u041fu0430u0442u0440u0438u043au0430</span>","image":{"type":"image","data":{"uuid":"7926e6a1-70ef-5f7b-80bf-a41749a28b2d","width":2988,"height":5312,"size":926816,"type":"jpg","color":"a3a2a1","hash":"","external_service":[]}}}]

Опустив пяток других компаний и лет, я открыл компанию (BigData Team) по обучению и консалтингу в сфере Big Data, Machine Learning и промышленной разработке (на Python). Из крупных и приятных проектов, в 2017-м году мы запустили курсы по Big Data на английском языке на Coursera при партнерстве с Яндекс. Наша цель была амбициозна и проста — доказать всему миру, что русские «шарят» в Big Data и могут делать крутые (образовательные) продукты. Отдельная история длиною в год, как мы это делали компанией на 30+ человек. Ровно эта задача (при поддержке ABBYY, Yandex, 1C, друзей и какой-то матери) заставила меня вернуться в РФ с горящими глазами.

На основе аналитики Coursera (до момента закрытия в РФ в 2022) на курс записалось более 100,000 человек. География учеников выглядела как-то так:

А на основе независимого анализа русскоязычного сообщества DS/DE (2,000 респондентов), 50% людей, начинают свой пусть в этой сфере с наших курсов:

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

  1. Когда я возвращался второй раз на работу в Яндекс, моим условием была «работа на open source движках (Hadoop экосистема)». Меня поставили руководить командой по разработке рекомендательных систем для Яндекс.Маркета (и других «денежных» сервисов), где сидели адепты Hadoop (на тот момент в Яндексе было 3 MapReduce движка и обилие дискуссий чей слон круче, поэтому такое было возможно);
  2. В наших курсах на Coursera не было рекламы ни одного инструмента/продукта Яндекс. Всё рассказывали и показывали исключительно на open source (Hadoop экосистема в максимально широком смысле этого слова, т.е. включая Spark, NoSQL интеграции, data ingestion, workflow engines, …)

Тезисы:

  1. Если вы занимаетесь Big Data (Data Engineering), то мы с большой вероятностью знакомы ;)
  2. Меня сложно назвать адептом технологий (в какой-то мере «внутренних велосипедов») Яндекса и я всегда отдавал предпочтение open source. Но даже я считаю релиз YT историческим событием в мире Big Data (см. часть 2 — почему).

Часть 2. Важная историческая веха

Жизнь Яндекса и его бизнес-модели круто меняются в последнее время. Чего только стоит опыт ClickHouse, где они подняли $250M инвестиций с оценкой проекта в 2 млрд $ (proof). Это как минимум одно из возможных направлений коммерциализации технологического инструмента. Бизнес пока оставим в стороне, цель данного топика — сделать оценку события с точки зрения технологии.

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

разве это новость? еще один MapReduce, это была бы новость лет 10 назад

друг из сферы Big Data (который тоже шарит)

Давайте я объясню в чем нюанс.

Бурное развитие open source технологии Big Data получили после публикации статей про распределенные файловые системы (2003) и MapReduce (2004). Последнюю написали Jeffrey Dean и Sanjay Ghemawat, два выдающихся инженера Google с самым большим грейдом в компании. Jeffrey (или Jeff) в свое время даже получил прозвище Чак Норриса в мире Big Data (один из примеров). Указанные фреймворки не вышли в публичный доступ, но благодаря коллегам из Yahoo! в свете open source появились первые версии Hadoop (версия 0.1.0, 2006-й год), которые реализовывали парадигмы хранения и обработки данных, описанные в статье. Имя Hadoop ему дал главный инженер разработки Doug Cutting (сообщество должно знать своих героев)

В 2009-м уже Amazon AWS предоставил сервис Hadoop в облаках, дав ему свое имя Elastic MapReduce (EMR). И понеслось-поехало:

  • в 2010-м году появился Hive, который позволил транслировать SQL-запросы в цепочку вычислений MapReduce (здесь нужно сказать спасибо компании, запрещенной на территории РФ, поэтому уточнять не будем);
  • в 2012-м году появился YARN, который предоставил возможность более гибкой настройки и запуска контейнеров для обработки данных, а значит и реализации других парадигм обработки данных. Например благодаря этому стало возможно обрабатывать данные в распределенной оперативной памяти с помощью Spark в рамках Hadoop экосистемы;
  • В 2012-м году как раз вышла статья про Spark (Matei Zaharia и компания). Я как сейчас помню, когда читал эту статью в 2012-м году, сидя в Строганове в Яндексе, восхищался и причитал «wow, это что-то новенькое» (статью было легко найти по выборке «лучшая работа конференции NSDI, 2012-й год»). Работа по Spark была начата в 2009-м (Berkley) и релизнута в open source уже в 2010-м;
  • в период 2010-2015-м году начинается внутренняя разработка YT (мне это история запомнилась в 2013-м году, как определенный эксперимент, но Макс в статье на Habr пишет, что они начали эксперименты с YT уже в 2010-м; 2015-й год — когда они полетели в Калифорнию собирать опыт и говорить за Hadoop, источник);
  • базы данных стали поддерживать парадигму MapReduce у себя внутри (MongoDB, Riak, …).

Купить рекламу Отключить

С точки зрения полученного опыта и доступных технологий, то тебе всегда легче, когда ты начинаешь позже. За почти 10 лет к 2013-му году, когда Яндекс начал внутреннюю разработку, Hadoop накопил много кода, опыта и … конечно же легаси. «Переписать все с нуля» — явно не вариант (не считая движков поверх YARN, см. тот же Spark). Добавьте к этому здоровенное коммьюнити на несколько сотен ключевых участников (см. структуру Apache Software Foundation или ASF):

Foundation Project Home page of The Apache Software Foundation www.apache.org

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

И вы поймете, что двигаться и развиваться основополагающим проектам (HDFS, YARN) может быть не всегда просто и быстро.

А теперь сравните это со следующей моделью:

  • у тебя есть коммерческий бюджет на инженеров высокого класса;
  • у тебя есть весь необходимый опыт: какими категориями мыслят пользователи Big Data (что им нужно/не нужно, что удобно/не удобно); какие костыли пытаются залатать в legacy open source продукта;
  • руководитель проекта, Максим Бабенко, избавлен от лишней политики и бюрократии (не считая периода борьбы за выбор главного MapReduce в Yandex);
  • Макс является ключевым архитектором системы. И этот пункт, в моем повествовании мега важен (ниже поясняю почему);

Давайте я объясню, почему считаю Макса настолько крутым:

  • Макс преподает в ШАД курс по алгоритмам, сам занимался олимпиадным программированием (бронза ACM ICPC 2002, золото 2003, proof), т.е. знает их вдоль и попрек, включая все эти ваши суффиксные деревья и массивы. В переводе на инженерный обыкновенный: человек может выжать максимум скорости (и других оптимизаций) из доступных и известных структур данных и алгоритмов;
  • Макс читает курс алгоритмов во внешней памяти в ШАД и на некоторых других площадках для особо заинтересованной аудитории (см. здесь). Я учился у Макса + штудировал зарубежные наработки (например, Mining of Massive Datasets товарища Джеффа Ульмана и других). Мы, в BigData Team, обучили несколько тысяч практиков для индустрии (говорим только про рынок РФ, спросите любой банк или телеком, выпускники — знают толк в приготовлении больших данных). Так вот, мы только изредка касались указанных тем, скорее больше в формате праздного интереса (ну и в МегаФон был очень интересный кейс, Артем очень жду фидбэка от production реализации ;)). Эти знания критически важны при разработке собственных фреймворков обработки Big Data, но к ним притрагиваются вживую только несколько сотен человек (субъективная оценка рынка РФ). И я думаю, что если они с Максом не знакомы, то как минимум слышали про него. Я предлагаю обсудить и согласовать за Максом имя (как минимум) российского Чака Норриса в мире Big Data;

Сравните прошлый винегрет (ASF) и setup (установку) с Максом, которому дали возможность творить. И это не эфемерный продукт в вакууме, а движок, на который переехал весь Яндекс. Движком регулярно пользуются тысяча-другая разработчиков Яндекс, а миллионы клиентов видят уже конечные результаты их наработок в продуктах Яндекса.

Я считаю, что определенные оптимизации фреймворка обработки больших массивов информации выплывут на курсах по Big Data (зачеркнуто) распределенных вычислений в магистерских программах ведущих вузов мира. Например, некоторые issues Spark могут являться проектной деятельностью магистрантов или курсовыми работами в топовых международных вузах. У YTsaurus есть все шансы попасть в списки фреймворков, которые ценны для проектной деятельности для наработки навыков магистерских программ по Big Data.

Что там полечили, чего не хватало в Hadoop, или рубрика «на что обратить внимание»:

  • Более гибкая работа с шардированием мета-информации для очень больших кластеров (хотя бы 1,000 серверов, до этого — не сильно принципиально). Для сравнения, только начиная с версии Hadoop 3.0 появился нормальный HDFS Router-Based Federation (релиз — конец 2017-го + пол-года фиксов до середины 2018-го). До этого был убогий HDFS Federation, который довольно костыльно решает проблему шардирования мета-информации и перекладывает лишнюю коммуникацию и ответственность на клиента;
  • Работа с понятием таблиц и мета-информации выведена на новый уровень. Да, многое из этого уже было, пусть и частично, доступно в Hive или реализовано с помощью инструментов Apache Hudi, Apache Iceberg и Delta от Databricks. Но для интеграции всего и вся в ASF еще должны договориться какой формат для слона круче, а в YTsaurus путь уже выбран и реализован.

Я надеюсь, что я смог донести, почему это важная веха в мире Big Data. Не каждый год выкладывают статьи типа GFS, MapReduce, Dremel (родоначальник Parquet), а здесь выложили целый движок, над которым работала топовая команда почти 10 лет. Не считая внутренних оптимизаций, в public добавлена пара свежих взглядов на работу с метаинформацией в распределенных фреймворках.

Вернемся в мир бизнеса. Вам может быть полезно об этом знать, когда вы будете выбирать open source фреймворк для молотилки ваших данных в компании:

  • (плюс) фреймворк моложе на 10 лет —> меньше костылей, больше внутренних оптимизаций;
  • (минус) пока гораздо более маленькое коммьюнити (по сравнению с Hadoop);
  • (плюс) новые парадигмы работы с метаинформацией (из коробки, без доп. приседаний и установок на кластере), за которые инженеры скажут вам большое спасибо;
  • (надо бы протестировать, но уже заявлено) интеграция со Spark (или трансляция его запросов по верх движка YT). Если ваша команда пишет на Spark, то может ничего не заметить при замене базового движка (см. адаптер SPYT). Но мир Big Data не ограничен только Spark, большая часть аналитиков сидит в Hive (SQL), у YT свой SQL (YQL). Про другие фреймворки — нужно смотреть в частном случае, но подводные камни нужно будет еще пособирать;
  • (минус) если вы уже живете на Hadoop, то по моему опыту, многие еще не переехали даже но новую версию Hadoop (3.0 и выше), поскольку обновление — та еще головная боль. Про переезд на другой стек — иногда страшно заикаться. Для крупных компаний это может быть история с подпиской на несколько лет (если/когда они на это решатся).

DISCLAIMER: Нужно сказать спасибо и отметить гораздо большее число людей (как в мире Big Data в РФ), так и в числе разработчиков YT. Но я постарался не превращать этот пост в книгу. Я вас тоже всех сердечно ценю и уважаю.

DISCLAIMER : везде где я говорю «русский» , я почти наверняка подразумеваю человека, говорящего на русском языке. Я не уточняю это в тексте дополнительными ремарками, в угоду легкости чтения.

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

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

Заметки математика-программиста @aadral, Founder &amp; CEO at BigData Team ex. FAANG (Amazon AWS), Yandex запустил курсы, на… t.me

А здесь, по опыту моего поста в соц. сетях, да начнем холивар ;)

Источник: vc.ru

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

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

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

Человек неразумен и забывает, что долги нужно отдавать. Ничто не вечно, так почему бы не беречь подаренное Провидением, Природой. Резервы еще не исчерпаны, но и они не безграничны. Некоторым регионам планеты уже сейчас не хватает питьевой воды и пропитания. Значит стоит относиться к ним бережнее.

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

Не забывать посадить растение, очистить речку от завалов - это нетрудно. А Природа непременно ответит благодарностью. Мир прекрасен, его нужно беречь
Понравилась статья? Поделиться с друзьями:
Mirtochtonado.ru
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: