Big Data,с чего начать?

Big Data,с чего начать?

Coding


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

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

Если вы собираетесь развиваться в направлении Big Data Engineering, то есть заниматься разработкой архитектуры системы, настройкой сбора и хранения больших объемов данных, то прежде всего, нужно обладать навыками программирования, понимать принцип работы Hadoop, понимать внутреннее устройство СУБД, иметь представление о многопоточном программировании. Анализ Big Data включает в себя выявление тенденций и закономерностей, разработку различных систем классификации и прогнозирования, интерпретацию результатов. 

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

Главным инструментом в работе с Big Data считается Hadoop. Иногда может требоваться Spark – он выполняет задачи, схожие с Hadoop.

Big Data — это данные, которые не помещаются в оперативную память компьютера. Поэтому всю подготовку стоит разделить на анализ данных и анализ больших данных.

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


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

Вот один живой пример. Часто в интернете мы видим разные рейтинги, например рейтинги фильмов.

Это знакомая всем история, когда посетители ресурса ставят оценку фильму от 1 до 5 звёздочек, а сайт автоматически интерактивно подсчитывает среднее значение рейтинга фильма.

Это очень частая картина, но смысл в том, что тут-то и происходит подмена понятий: идёт искажение реальной оценки рейтинга фильма. Нельзя считать среднее значение, если расстояние между всеми оценками неодинаковое. Ведь для кого-то 4 — как для вас 3, или наоборот, как 5.

Как в школе: 4 у определённого педагога — это подарок «с небес», а у другого 5 получить удаётся легко, и 4 наоборот «обижает».

То есть оценки от разных пользователей неравнозначны. Поэтому тут для адекватной оценки рейтинга специалисты Data Science используют другие меры расчёта. И вот таких жизненных примеров много.


Развивать навык задавать интересные осмысленные вопросы.

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

Поэтому важно уметь видеть не просто данные, а смысл за ними. 


Развивать навык, как из интересных вопросов строить гипотезы, переводить их на язык математики и «компьютерного мышления» и проверять их.

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

И кроме этого, важно разбираться в стратегии их проверки.

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

Допустим, у вас есть гипотеза, что онлайн-образование влияет на мотивацию учеников учиться.

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

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


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

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

Можно подобрать себе бесплатные онлайн-курсы на Python, R или аналогичные варианты.

Есть ряд курсов, где не растрачивается время на сложности программирования и настройку среды программирования, и для этого задействуются настроенные версии web-платформ для интерактивных вычислений, таких как open-source проект Jupiter

В его названии как раз и кроется ответ, какие языки этот проект поддерживает: Julia, Python и R.

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


Переход на чистый Big Data Analysis.

Этот этап позволит вам оптимизировать вычисления через парадигму параллельных вычислений и платформ обработки для распределённых в разных местах больших данных (Hadoop, Scala и т. п.).

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

Если есть азарт выходить на уровень промышленного или научного программирования, то тут понадобятся знания языков C++ или Go и подключение параллельных библиотек MPI или CUDA.

Если ваши аппетиты чуть пониже, то тогда можно остановиться на обработке информации через различные системы (например для обработки информации в реальном времени используют платформы Scala и Storm).


Перейдём к выводам: 

  1. Выберите предпочитаемое направление.
  2. Изучите нужные технологии и инструменты, например Hadoop, Kafka, Spark, Python, NoSQL и т. д.
  3. Проходите курсы, также читайте книги/статьи.
  4. Посещайте различные конференции, взаимодействуйте с людьми на форумах, изучайте проекты на GitHub, одним словом — общайтесь и делитесь опытом.
  5. Постоянно практикуйтесь. Можете заняться своим собственным проектом, а можете поучаствовать на площадке для соревнований вроде Kaggle.

На этом всё, спасибо за внимание!


0100100001100101011011000110110001101111001000000101011101101111011100100110110001100100


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

Report Page