Как стать автором
Обновить

Как ускорить работу с API на языке R с помощью параллельных вычислений, на примере API Яндекс.Директ (Часть 1)

Время на прочтение11 мин
Количество просмотров4.5K
Всего голосов 17: ↑17 и ↓0+17
Комментарии12

Комментарии 12

Статья хорошая, впервые услышал про ваши пакеты для R (могут пригодиться).

Алексей, нужно еще добавить в статье про параллельное исполнение о том, что R нативно — и уже давно — поддерживает параллельность (под Unix), используя функции parallel::mclapply, parallel::mcsapply из поставляемого по умолчанию пакета parallel.

Также я бы добавил, что помимо foreach %dopar% можно использовать doParallel::parLapply, doParallel::parSapply и т.д.
Огромное спасибо, за комментарий и полезную информацию.
В ближайшее время всё это изучу и добавлю в статью!
Согласен, тоже важное ограничение которое я упустил, добавлю в статью, спасибо.
Жаль автор не рассмотрел более современные пакеты future и promises.
С ними гораздо гибче стало жить и код приятнее выглядит.
Спасибо за информацию, по материалам комментариев я в феврале буду апдейтить статью, т.к. я далеко не обо всех вариантах распараллеливания знал, и рассказал в статье.

Пакеты future и promises изучу и добавлю в статью.
Да, об этом мне уже в FB Павел Левчук написал, в общем в феврале будет чем заняться, в результате статья в объёме вырастит, зато будет исчерпывающим руководством.
Спасибо!
Ну и чтоб два раза не ходить, можно про обмен данными между процессами раскрыть. Маленькую главку. Хотя-бы бы на svSocket. Оч. прикольный пакет, всем рекомендую.
Если хотите использовать внутри foreach какие либо самописные функции, то либо объявляйте их внутри foreach либо предварительно сохраните их код в .R файл и читайте его внутри foreach с помощью функции source.

Не совсем так, можно сделать проще. Есть функция clusterExport, которая позволяет экспортировать функции (вообще переменные) на каждый узел.
В foreach есть аргумент .export. stackoverflow.com/questions/45750910/how-to-export-multiple-function-or-packages-in-foreach-loop-in-r
Верно, спасибо. В статью внёс правки по экспорту объектов.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации