Как запустить R и R Studio в Google Cloud Platform

Как-то попалась мне задача, в которой нужно было преобразовать 800 000 текстовых строк в несколько этапов. Большинство подобных задач я решаю с помощью R, потому и в этом случае начал пробовать использовать знакомый мне язык. Если первые несколько преобразований занимали секунды, то последующие начали занимать десятки минут.
Такая ситуация меня совсем не устраивала. Если нужно было внести изменения в данные на входе последовательности операций, приходилось очень долго ждать. А ведь это был еще не окончательный результат вычислений. В этот момент я решил попробовать поднять R в облаке и решать задачу там. Давайте посмотрим, что из этого получилось.
Неоценимый вклад в написание этого поста внес Антон Белоус. Без него я бы потратил кучу времени на выбор операционной системы и установку программ в ней.
Как создать виртуальную машину (инстанс) в Google Cloud Platform
В первую очередь следует создать виртуальную машину в Google Cloud Platform. Довольно сложно выбрать из списка доступных машин, если вы не знаете необходимые для решения вашей задачи технические хаpaктеристики. Потому я начал с самого слабого варианта — f1-micro, который доступен бесплатно для региона US. Вы тоже можете начать с него.
Когда вы определились с типом инстанса, создайте проект и включите в нем биллинг. Чтобы создать инстанс, перейдите из вашего проекта в Google Developers Console и откройте Google Cloud Platform:
Далее перейдите по пути «Compute Engine» — «VM instances» в раскрывающемся боковом меню:
Нажмите Create Instance:
На открывшейся странице задайте параметры машины, которую хотите получить. Я указал f1-micro в регионе us-central1-a с операционной системой Ubuntu 16.04 LTS. Также поставил две галочки Allow HTTP traffic и Allow HTTPS traffic для возможности взаимодействия с сервером по HTTP и HTTPS. Другие параметры я не трогал:
Через пару минут ваша машина готова к работе:
Дополнительную информацию по запуску инстансов вы можете найти в справке.
Как установить R и R Studio на инстанс в Google Cloud
Чтобы начать установку нужных вам программ, подключитесь к созданной машине по SSH (сетевой протокол Secure Shell). Для этого нажмите соответствующую кнопку напротив названия вашего инстанса.
В браузере откроется новое окно:
Выполните комaнду:
sudo vim /etc/apt/sources.list
В открывшийся файл вставьте строку:
deb https://cran.rstudio.com/bin/linux/ubuntu xenial/Далее нажмите Esc, двоеточие (обратите внимание, что нужно именно двоеточие, а не точка с запятой) и выполните комaнду wq. В результате в файле /etc/apt/sources.list вы укажете, откуда нужно брать файлы для установки R. Мы будем устанавливать RStudio Server, а не обычный десктопный вариант.
Далее по очереди выполните комaнды:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E084DAB9sudo apt updatesudo apt-get install r-basesudo apt-get install gdebi-corewget https://download2.rstudio.org/rstudio-server-1.0.136-amd64.debsudo gdebi rstudio-server-1.0.136-amd64.debВ процессе выполнения нужно будет несколько раз подтвердить, что вы готовы установить программное обеспечение. После выполнения всех этих комaнд необходимо указать порт, при обращении к которому вы будете получать доступ к R Studio. Для этого выполните комaнду:
sudo vim /etc/rstudio/rserver.conf
В открывшийся файл вставьте строку:
www-port=80Нажмите Esc, двоеточие и выполните комaнду wq. С помощью этой строки вы укажете, что при обращении к 80 порту, к которому происходит обращении по умолчанию, должна запускаться R Studio. После этого выполните комaнду:
sudo passwd user_nameВместо user_name следует указать свое имя пользователя. Его можно найти здесь:
Так вы зададите пароль для вашего пользователя в Ubuntu, который станет паролем при входе в R Studio.
Далее выполните комaнду:
sudo service rstudio-server restartУра, у вас получилось установить R и R Studio в Google Cloud. Вернитесь в свой проект в Google Cloud Platform и перейдите по IP-адресу, который указан напротив названия вашего инстанса:
В новой вкладке откроется приветственное окно R Studio:
Введите имя пользователя и пароль, которые вы задали на одном из предыдущих шагов. Нажмите кнопку входа — откроется привычный вам интерфейс R Studio:
Как устанавливать пакеты R в облаке
Для решения части задач придется устанавливать дополнительные пакеты, которых нет в базовой сборке R. Здесь возникают две проблемы. Во-первых, нехватка оперативной памяти у инстанса f1-micro. При установке R рекомендуется машина с не менее чем 1 GB оперативной памяти, а у нашего инстанса 0,6 GB.
Чтобы решить этот вопрос на время установки всех пакетов можно улучшить свой инстанс. Придется остановить работу виртуальной машины — в процессе работы менять хаpaктеристики нельзя. Для этого нажмите кнопку остановки и дождитесь, пока машина перестанет работать:
Зайдите в свой инстанс и нажмите кнопку редактирования:
Выберите хотя бы g1-small и сохраните изменения:
Проделав эту же процедуру после установки всех нужных пакетов, можете снова выбрать f1-micro, если его достаточно для ваших задач. Если сразу хотите попробовать машину помощнее, выбирайте доступные варианты из списка.
Вторая проблема при установке пакетов — отсутствие в нашей машине необходимых для работы пакетов библиотек. Вы увидите сообщение об этом в консоли R Studio. Там будет указано название рекомендуемой библиотеки, которая решит проблему с установкой пакета.
Скопируйте из R Studio название пакета, подключитесь к инстансу по SSH и введите следующую комaнду:
sudo apt install library_nameЗдесь library_name — название библиотеки, скопированное из R Studio.
Что получилось в результате
После установки R и R Studio я попробовал решить мою задачу на f1-micro. На выполнение всех преобразований понадобилось 2 часа. Это даже хуже, чем на моем компьютере :) Задача требовала большей мощности процессора, и я улучшил инстанс до n1-highcpu-2. После этого на выполнение всех преобразований ушло около 10 минут. Локальная машина все-таки сильно уступает серверу.
Цены на использование машин в Google Cloud очень демократичные. Несколько часов работы с разными инстансами обошлись мне аж в 4 цента. Более того, для новых пользователей Google дает $300 на 12 месяцев. Вы сможете, например, без остановки использовать тот же n1-highcpu-2 без остановки 8 месяцев или месяц пользоваться машиной с 8 vCPU и 52 GB оперативной памяти. Удачной работы в облаке.
Язык R в интернет-маркетинге — дайджест полезных публикаций Читайте также,
Комментарии:
Большой проект Джима Коллинза и его комaнды. Одна из лучших книг в нашей библиотеке. Всем рекомендуется к прочтению!...
17 04 2026 6:31:44
Клиенты, партнеры, потенциальные сотрудники — для каждой аудитории есть своя платформа. Какими нужно быть в соцсетях, чтобы вас заметили, читайте об опыте Reface....
16 04 2026 18:39:19
При использовании похожих инструментов важно не переборщить с количеством рекламы...
15 04 2026 14:14:10
Как узнать, хорошую ли статью вы опубликовали в блоге...
14 04 2026 10:11:55
Хотите раскрутить свои соцсети в 2022 году? Тогда уже сейчас нужно задуматься, что будете публиковать. В статье расскажем, какой контент будет в тренде в будущем году....
13 04 2026 10:39:21
Шаблон по настройке и оптимизации динамических поисковых объявлений...
12 04 2026 17:58:59
Быстрый инструмент для повышения CTR — дополнительные ссылки Google Рекламы...
11 04 2026 13:45:23
Что нужно делать на старте работ с интернет-магазином и как минимизировать риски для бизнеса онлайн, используя такие инструмента как SEO, PPC и Email-маркетинг — советы от эксперта. Читать дальше!...
10 04 2026 4:53:37
Стив Рейсон назвал 20 уроков, которые BuzzSumo усвоил на пути к топу самых популярных сервисов для контент-маркетологов....
09 04 2026 0:36:54
FAQ (frequently asked questions), HowTo и Q&A (questions and answers)....
08 04 2026 13:39:53
Ежегодный прирост рынка фриланса в Украине составляет в среднем 35%. В прошлом году зарегистрировано более 200 тысяч проектов на общую сумму 385 млн гривен....
07 04 2026 21:54:52
Узнайте, подходят ли видеоролики для продвижения вашего бизнеса, и будет ли рентабельной видеореклама в YouTube...
06 04 2026 6:10:47
Как правильно оптимизировать страницы пагинации, чтобы не допустить проседание целевого трафика...
05 04 2026 18:24:31
Как заинтересовать инвесторов, сколько времени это займет, а также стратегии поиска....
04 04 2026 17:45:12
Атрибут rel="canonical" помогает бороться с дублированием контента и обезопасить сайт от дублирования и копирования...
03 04 2026 18:48:10
Миллионы решили купить книгу гении и аутсайдеры на Amazon: удивительное исследование канадского журналиста...
02 04 2026 10:25:53
Как расширение от Netpeak может облегчить работу над важными SEO-задачами....
01 04 2026 13:43:35
Работающие способы повысить эффективность рекламных кампаний...
31 03 2026 20:45:56
Лучшие результаты в SEO дает заранее спланированное сотрудничество клиента с агентством на всех этапах работ с сайтом....
30 03 2026 21:39:34
Расчет вероятности конверсии, быстрое и эффективное создание дашбордов, строение моделей KPI. Примеры аналитики кампаний с помощью Excel и Power BI от спикера 8P 2016 Максима Уварова....
29 03 2026 22:26:42
Когда саппорт-отдел не справляется, подключайте к работе ПланФикс и Телеграм....
28 03 2026 2:35:17
Мы запустили еще один полезный инструмент: Netpeak Spider....
27 03 2026 10:32:17
Результаты рейтинга зарплат интернет-маркетологов....
26 03 2026 6:41:47
Крутые площадки для нового инструмента: контекстщикам на заметку!...
25 03 2026 7:54:50
Зачем нужны пользовательские сегменты клиентов и как их создавать — читайте в завершающей части серии «Как анализировать эффективность рекламы в Google ***ytics?»...
24 03 2026 3:23:55
Есть восхитительная возможность продвинуть видео на YouTube с минимальными финансовыми потерями!...
23 03 2026 15:21:15
Расчет прогноза по LTV позволит более точно задать параметры рекламной кампании в Apple Search Ads на начальном этапе. Как это делают в RadASO, читайте в статье....
22 03 2026 2:41:37
Как работают SEO-специалисты, что нужно знать о принципах работы алгоритмов Гугл, как продвигать мобильные приложения и каким образом может монетизироваться Телеграм. Узнать больше!...
21 03 2026 8:52:53
Предположим, что оптимизация в аккаунте похожа на реальный мир и рассмотрим несколько примеров :)...
20 03 2026 20:32:55
Блог на новом движке и с новым дизайном, перетянувший в себя огромное количество постов и комментариев за Х лет своей работы...
19 03 2026 7:33:18
Раскрутка музыки онлайн: способы, методы, нюансы и примеры...
18 03 2026 7:21:16
89% предпринимателей не тестируют свои продающие тексты. О том, что и как нужно тестировать, рассказал в гостевом посте директор Студии эффективных текстов Владимир Руков....
17 03 2026 7:39:54
Пpaктика в режиме «рейтинг онлайн». Новинка Google Рекламы — отчет «Статистика аукционов»....
16 03 2026 10:38:16
В Netpeak появляется больше клиентов с четкими задачами по продвижению своих мобильных приложений в iOS и Android. В этом посте — кейс приложения популярной доски объявлений....
15 03 2026 13:36:21
В третьем квартале Netpeak внедрил множество крутых улучшений. Мы подробно расскажем о семи самых интересных новостях....
14 03 2026 11:57:31
Как стандартизировали сбор данных по проектам клиентов и отчетности, чтобы тратить меньше времени и не совершать лишние действия...
13 03 2026 12:37:45
Популярные скрипты Google Рекламы позволяют автоматизировать рутинные и монотонные процессы. Каждый скрипт состоит из функций, переменных, объектов, сущностей, селекторов, итераторов...
12 03 2026 13:55:52
Кейс детской костюмерной Colombina.ua — как продвигать проект с ярко выраженной сезонностью....
11 03 2026 3:48:23
Сотрудник не справляется? Значит с ним пора прощаться. Эмоции в сторону, действуем по алгоритму....
10 03 2026 8:44:28
Создание даже короткого ролика может стоить дорого. Поэтому можно использовать бесплатный инструмент Bumper Machine от Google....
09 03 2026 17:45:46
Публикуем рецензию на новое издание Брайана Клифтона. Несмотря на узкую специализацию, эта книга стала бестселлером на Amazon и уже переведена на 5 разных языков. Стоит отметить, что две предыдущие редакции «Google ***ytics для профессионалов» успешно ис...
08 03 2026 0:31:46
Полезный ликбез для новичков и бизнесменов: анкорные и безанкорные ссылки. Чем отличаются, зачем нужны, какое влияние оказывают на раскрутку сайта в интернете? Узнать!...
07 03 2026 16:43:47
XML-фид представляет собой файл с кодом на языке XML, ссылку на который используют в различных сервисах...
06 03 2026 10:59:26
Инструкция для новичков: как быстро отправить почтовую рассылку клиентам...
05 03 2026 19:29:33
Когда email-маркетинг становится точкой роста. Кейс интернет-магазина книг Book24....
04 03 2026 0:18:26
Всё об оценке эффективности SEO-продвижения с инструментами и рекомендациями...
03 03 2026 21:26:35
Программа покорения онлайн мира мобайла — самому и с ограниченными средствами на маркетинг...
02 03 2026 15:20:37
Низкочастотные, низкоконкурентные, Long Tail и другие термины, которые нужно знать и понимать....
01 03 2026 19:23:14
Миссия компании: делимся опытом создания и реализации в компании с 300 сотрудниками...
28 02 2026 20:42:13
Алгоритм ссылочного ранжирования, который показывает ее значимость, в частности, для поисковиков. Важность показателя PageRank оспаривают, но до сих пор считают. Читать!...
27 02 2026 5:14:52
Еще:
понять и запомнить -1 :: понять и запомнить -2 :: понять и запомнить -3 :: понять и запомнить -4 :: понять и запомнить -5 :: понять и запомнить -6 :: понять и запомнить -7 ::