Привет, народ. Решил я из обезьяны превратиться в человека. Давно решил, на самом деле, но не понимал как мне изучать алгоритмы и структуры данных, так чтоб было прям интересно до ужаса. Ну, не нужны мне они в повседневной жизни, получается, вот и как-то забываю ими заниматься.
Мой background - Java, Android + немножко Clojure, совсем немножко.
И вот решение, от которого, возможно, вы захотите, как добрые люди, меня отговорить. Уж где-где, а BigData алгоритмы и структуры данных - центральная тема. Могу, конечно, ошибатсья, но, как мне кажется вероятность мала. Но с чего начать? Гуглить, конечно, решение хорошее, но можно выбрать не то, а хочется то, в чём вы, прямо, уверены точно.
Хочу заметить, что тут не стоит задача стать мировым гением в этой сфере, просто так, для себя хочется, мозги, так сказать, поупражнять. Но перспективу полного внедрения в эту сферу я не исключаю, почему бы и нет. Главное - правильно начать и выбрать нужные материалы.
Очень надеюсь на ваши советы, друзья, и резюмируя:
> Уж где-где, а BigData алгоритмы и структуры данных - центральная тема.
Это не совсем так, алгоритмов и структур данных в "биг дате" не намного больше, чем в обычном бэкэнд джава программировании, а то и меньше.
BigData - это хранилище множества постоянно собираемых однотипных данных, возможно как-то связанных между собой, обычно "расположенных" вдоль оси временной шкалы. Для чего Вам собирать какие-то данные в таких объемах? - надо Вам решить ДО "погружения" в эту сферу!
И это зависит от конечной цели: возможно, маркетинговой. Что может дать BigData в "сыром" виде? - большой объем бесполезных данных. Что можно делать с помощью BigData? - Например, можно узнать зависимости одних параметров от других на выбранном временном отрезке. Практические решения с применением BigData? - маркетинг, прогнозирование рисков, любая фильтрация, прогнозы и предсказания поведения изменений любых параметров, содержащихся в хранилище BigData.
имхо, чтобы понимать суть bigdata - нужно жить и понимать изнутри статистические процессы, вероятностные модели, чувствовать математику и не бояться математического анализа, как науки...
это база, база анализа данных, а потом уже инструмент - языки и среды программирования, технологии и тд...