Коля. Заметки

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
черновики:коля._заметки [11.05.2017 10:41]
127.0.0.1 внешнее изменение
черновики:коля._заметки [20.05.2019 15:18] (текущий)
Строка 1: Строка 1:
-====== ​Почитать/​посмотреть. ​====== +===== DELME =====
- +
-==== Курс лекций "​Алгоритмы во внешней памяти"​. Максим Бабенко. ==== +
- +
-[[http://​www.youtube.com/​embed/​KsPv6X9ysqI]] +
-[[http://​www.lektorium.tv/​lecture/​13929]]  +
- +
-На курсе рассказывают про алгоритмы,​ которые работают с данными,​ которые,​ по тем или иным причинам,​ не могут поместиться в оперативную память (когда файлы лежат на HDD/SSD или, например,​ в хадупе на HDFS). Объясняется сложность таких алгоритмов,​ относительно количества дисковых операций,​ теория подана довольно просто и интуитивно,​ мозг хорошо настраивается на мысль, что не так важна производительность кода, когда доступ к данным такой дорогой.  +
- +
-На 3-4й лекции завтыкал,​ примеры про алгоритмы на графах мне не очень близки. Может, почитаю про эти алгоритмы в памяти и пересмотрю как все меняется,​ когда граф окажется очень большим. Но первые лекции очень хороши. +
- +
-В последней [[лекции|http://​www.youtube.com/​embed/​uCfgk1sx_Pg]] акцент смещают с внешней памяти и оперативной на CPU-кеш и оперативную память. Скорости тут, конечно,​ будут другие,​ но порядок,​ на который отличается скорость доступа к кешу и ОЗУ, и порядок ОЗУ и HDD примерно одинаков,​ на мой взгляд. 5 лекция будет сама по себе полезна,​ если тебе нужен быстрый алгоритм,​ который работает с данными в ОЗУ. Минимизация доступа к ОЗУ сможет дать большой прирост производительности,​ да и круто это, знать как работает кеш в CPU :) +
- +
-Вместо пятой лекции,​ конечно,​ советую прочитать "What Every Programmer Should Know About Memory"​ [[https://​www.akkadia.org/​drepper/​cpumemory.pdf|https://​www.akkadia.org/​drepper/​cpumemory.pdf]] , но там много, и мне плохо зашли части про бечмаркинг скорости,​ т.к. нет под рукой проекта,​ на который я могу примерять цифры, чтобы их осознавать. +
- +
-==== Курс лекций "​Методы и системы обработки больших данных"​. Иван Пузыревский. ==== +
- +
-\\ +
-[[http://​www.youtube.com/​embed/​IHVIFVZeXcA]] +
-[[http://​www.lektorium.tv/​lecture/​30079]] +
- +
-[[http://​compsciclub.ru/​courses/​bigdatasystems/​2017-spring/​]]  +
- +
-Очень качественный и свежий курс про распределенные системы,​ про их работу под капотом. Речь идет про системы хранения,​ очереди и БД: HDFS, HBase, Cassandra, Kafka; про MapReduce и системы потоковой обработки:​ Hadoop MapReduce, Spark, Storm, Spark Streaming, плюс две лекции про Zookeeper и одна про Hive. Внешнее API систем и примеры использования приведены в основном для общего понимания,​ основная часть сосредоточена на внутренней архитектуре систем. Очень полезно для определения применимости этих систем в ваших проектах,​ поможет самостоятельно прикидывать производительность при применении той или иной технологии. На лекциях разбирается архитектура,​ строение и алгоритмы,​ на которых основываются системы. Начинается все с HDFS из хадуповского стека, который является базовым строительным блоком распределенной системы на базе hadoop, на его примере также разбирается работа и деплой кода в hadoop YARN. Довольно забавно было, когда после первой лекции про HDFS была полная уверенность в том, что оно точно не подходит для БД, а в 3й лекции рассказывают про быстрый и производительный HBase, который хранит свои данные в HDFS и делает это консистентно. В лекциях было очень мало информации про свежие фичи данных систем,​ про интересное API, примеры производительных интеграций. Сложилось такое ощущение,​ что какой-нибудь MapReduce с помощью твиков можно разогнать на пару порядков (Spark как раз один из известных твиков,​ хе-хе). Но тогда можно было бы ожидать по 11 лекций на каждую систему,​ вместо одной, да и цель курса немного не про это. В общем, если вы вечно путаете все эти модные словечки из темы MapReduce, не можете запомнить чем отличается Spark и Storm, Spark/​HBase/​Riak - после просмотра лекций у вас надолго в голове останутся "​крючки",​ за которые в будущем можно будет легко сориентироваться в этом зоопарке. +
- +