Как установить юпитер ноутбук pycharm

Обновлено: 07.07.2024

Из этой статьи вы узнаете, как установить Jupyter Notebook с пользовательскими ядрами PySpark (для Python) и Apache Spark (для Scala) с помощью магических команд Spark, а затем подключить эту записную книжку к кластеру HDInsight.

Для установки Jupyter и подключения к Apache Spark в HDInsight необходимо выполнить четыре основных шага.

  • Настроить кластер Spark.
  • Установить Jupyter Notebook.
  • Установите ядра PySpark и Spark с помощью волшебной команды Spark.
  • Настройте волшебную команду Spark для доступа к кластеру Spark в HDInsight.

Дополнительные сведения о пользовательских ядрах и магических командах Spark см. в разделе Ядра, доступные для Jupyter Notebook с кластерами Apache Spark Linux в HDInsight.

Предварительные требования

Кластер Apache Spark в HDInsight. Инструкции см. в статье Начало работы. Создание кластера Apache Spark в HDInsight на платформе Linux и выполнение интерактивных запросов с помощью SQL Spark. Локальная записная книжка подключается к кластеру HDInsight.

Опыт работы с записными книжками Jupyter с Spark в HDInsight.

Установка Jupyter Notebook на компьютер

Перед установкой Jupyter Notebook необходимо установить Python. Дистрибутив Anaconda установит как Python, так и Jupyter Notebook.

Скачайте установщик Anaconda для своей платформы и запустите программу установки. В мастере установки укажите параметр для добавления Anaconda в переменную PATH. См. также Установка Jupyter с помощью Anaconda.

Установка магических команд Spark

Введите команду pip install sparkmagic==0.13.1 , чтобы установить магические команды Spark для кластеров HDInsight версии 3.6 и 4.0. См. также документацию по sparkmagic.

Убедитесь, что мини-приложение ipywidgets установлено правильно. Для этого выполните следующую команду:

Установка ядер PySpark и Spark

Определите место установки sparkmagic с помощью следующей команды:

Затем измените рабочий каталог на расположение, определенное с помощью команды выше.

В новом рабочем каталоге введите одну или несколько из приведенных ниже команд, чтобы установить требуемые ядра:

Необязательный элемент. Введите следующую команду, чтобы включить расширение сервера:

Настройка волшебной команды Spark для подключения к кластеру HDInsight Spark

В этом разделе вы настроите подключение магической команды Spark, установленной ранее, к кластеру Apache Spark.

Запустите оболочку Python с помощью следующей команды:

Сведения о конфигурации Jupyter обычно хранятся в домашнем каталоге пользователей. Введите следующую команду, чтобы определить домашний каталог, и создайте папку с именем .sparkmagic. Будет выведен полный путь.

В папке .sparkmagic создайте файл config.json и добавьте в него следующий фрагмент кода JSON.

Внесите в файл следующие изменения:

Полный пример файла можно просмотреть в образце config.json.

Сигналы пульса отправляются, чтобы предотвратить утечку сеансов. При переходе в спящий режим или завершении работы компьютера пульс не отправляется, что приводит к очистке сеанса. Если вы хотите отключить такое поведение для кластеров версии 3.4, то можете настроить для параметра Livy livy.server.interactive.heartbeat.timeout значение 0 с помощью пользовательского интерфейса Ambari. Если для кластеров версии 3.5 не настроить соответствующую конфигурацию, приведенную выше, то сеанс не будет удален.

Запустите Jupyter. Выполните следующую команду из командной строки.

Убедитесь, что вы можете использовать магическую команду Spark, доступную вместе с ядрами. Выполните следующие шаги.

а. Создайте новую записную книжку. В правом верхнем углу щелкните Создать. Должны отобразиться ядро по умолчанию Python 2 или Python 3 и установленные ядра. Фактические значения могут отличаться в зависимости от выбранных вариантов установки. Выберите PySpark.

Доступные ядра в Jupyter Notebook

b. Запустите следующий фрагмент кода.

Если вы успешно получили выходные данные, подключение к кластеру HDInsight работает.

Если вы хотите обновить конфигурацию записной книжки для подключения к другому кластеру, измените файл config.json, указав новый набор значений, как показано на шаге 3.

Зачем устанавливать Jupyter на моем компьютере?

Причины, по которым требуется установить на компьютер Jupyter и подключить к кластеру Apache Spark в HDInsight.

Если Jupyter установлен на локальном компьютере, несколько пользователей могут одновременно запустить одну и ту же записную книжку в одном кластере Spark. В такой ситуации создаются несколько сеансов Livy. Если вы столкнетесь с проблемами и начнете их отладку, вам будет сложно определить, какой сеанс Livy какому пользователю принадлежит.

Jupyter Notebook — это командная оболочка для интерактивных вычислений. Этот инструмент может использоваться не только с Python, но и другими языками программирования: Julia, R, Haskell и Ruby. Он часто используется для работы с данными, статистическим моделированием и машинным обучением.

В статье мы рассмотрим, как настроить Jupyter Notebook для локального запуска или запуска на сервере под управлением Ubuntu 16.04. Этот инструмент поможет создавать файлы (notebooks), которые содержат не только компьютерный код, но и другие элементы (заметки, уравнения, диаграммы, ссылки и т.д.), которыми можно потом поделиться с заказчиками или друзьями.

После прочтения этой статьи вы будете знать, как запускать код Python 3 при помощи Jupyter Notebook локально или на удалённом сервере.

Требования

Нам понадобится среда программирования для Python 3, установленная либо на локальной машине, либо на сервере Ubuntu 16.04.

Шаг 1. Установка Jupyter Notebook

Jupyter Notebook можно установить при помощи пакетного менеджера pip .

В статье будет использоваться виртуальное окружение с именем my_env . Для установки пакета для работы с виртуальным окружением введите следующую команду в терминале:

Теперь мы готовы создать виртуальное окружение. Выбираем каталог, в который все будет установлено, или создаем новый каталог с mkdir :

Как только вы переместитесь в нужную вам директорию, введите следующую команду в терминал:

По сути, pyvenv создает новый каталог, содержащий несколько элементов, которые мы можем просмотреть с помощью команды ls :

Для активации виртуального окружения вам осталось ввести последнюю команду:

Затем нужно убедиться, что pip был обновлен до последней версии:

Теперь можно установить Jupyter Notebook следующей командой:

После этой строчки кода Jupyter Notebook будет установлен в активное виртуальное окружение.

PricewaterhouseCoopers , Удалённо , По итогам собеседования

Следующий шаг предназначен для тех, кто хочет подключиться к веб-интерфейсу, используя SSH-туннелирование.

Шаг 2 (необязательный). Запуск Jupiter Notebook на сервере

Для тех, кто установил Jupyter Notebook на удаленный сервер, нужно подключаться к веб-интерфейсу через SSH-туннель. Приложение использует порт 8888 (или же 8889 ), а SSH-туннель поможет обезопасить соединение с сервером.

SSH-туннелирование с помощью Mac или Linux

Для тех, кто работает с macOS или Linux, нужно выполнить следующую команду в окне терминала:

Команда ssh создаст SSH-подключение, а флаг –L перенаправит порт локального или клиентского хоста на хост и порт уделенного сервера. То есть все, что работает на порте 8888 с серверной стороны, будет работать на порте 8888 вашей локальной машины.

При необходимости можно изменить порт 8888 на один из ваших вариантов, чтобы избежать использования порта, который уже используется другим процессом:

  • server_username — имя пользователя на сервере (например, sammy );
  • your_server_ip — это IP-адрес сервера.

Например, для имени пользователя sammy и адреса сервера 203.0.113.0 команда будет следующей:

Если после запуска команды ssh -L не появляется ошибка, можно переходить в среду программирования и запустить Jupyter Notebook:

SSH-туннелирование с помощью Windows и Putty

Пользователи Windows могут создать туннель SSH, используя программу Putty.

Сначала нужно ввести URL-адрес сервера или IP-адрес имени хоста, как показано ниже на скриншоте:


Далее нажимаем SSH внизу левой панели, для раскрытия полного меню и нажимаем на слово Tunnels (туннели). Вводим номер локального порта, который будет использоваться для доступа к Jupyter на локальном компьютере. Выбираем порт 8000 или выше, чтобы избежать совпадения портов, используемых другими службами, и указываем назначение как localhost: 8888 , где: 8888 — это номер порта, через который работает Jupyter Notebook.

Теперь нажмите кнопку Add (добавить), и порты должны появиться в списке Forwarded ports (Переадресованные порты):


Шаг 3. Запуск Jupyter Notebook локально

После окончания установки Jupyter Notebook можно запустить при помощи следующей команды в терминале:

В терминале выведутся логи Jupyter Notebook. При запуске инструмент использует определенный порт. Обычно это 8888 . Для проверки порта, с которым работает Jupyter Notebook, используйте команду, при помощи которой запускался Jupyter Notebook:

Если нужно остановить процессы Jupyter Notebook, то нажмите CTRL + C , а потом Y при появлении запроса на закрытие и ENTER для подтверждения.

Вы получите следующий результат:

Jupyter Notebook остановлен.

Шаг 4. Использование Jupyter Notebook

Пришло время начать использование Jupyter Notebook.

Теперь можно подключиться к нему с помощью веб-браузера. Jupyter Notebook — очень мощный инструмент и имеет множество функций. В этом разделе описываются некоторые основные функции, позволяющие начать работу с ним. Jupyter Notebook покажет все файлы и папки в каталоге, из которого он запущен, поэтому, когда начинается работа над проектом, обязательно нужно запускать его из каталога проекта.

Чтобы создать документ выбираем New → Python 3 в верхнем выпадающем меню:


После открытия документа можно запускать код Python в ячейке или использовать язык разметки Markdown. Чтобы изменить первую ячейку для работы с Markdown, нужно нажать в верхней панели навигации Cell → Cell Type → Markdown. Теперь можно создавать заметки с использованием Markdown и даже включать уравнения, написанные в LaTeX, помещая их между символами $$ . Например, попробуем ввести следующую команду в ячейку после включения Markdown:

Чтобы переформатировать Markdown в форматированный текст, нажимаем CTRL + ENTER и получаем следующие результаты:


Также можно использовать ячейки Markdown для написания кода. Для теста напишем небольшое уравнение и выведем результат. Нажимаем на верхнюю ячейку, нажимаем ALT+ENTER для создания ячейки под ней и вводим следующий код в новую ячейку:

Чтобы запустить код, нажимаем CTRL + ENTER и получаем следующие результаты:


Теперь у вас есть возможность импортировать модули и использовать Jupyter Notebook так же, как и в любой другой среде разработки Python!

Вывод

Поздравляем! Теперь вы можете написать воспроизводимый код Python и заметки в Markdown с помощью Jupyter Notebook. Для получения справки по использованию Jupyter Notebook нажмите Help → User Interface Tour в главном меню навигации.

Jupyter Notebook — это мощный инструмент для разработки и представления проектов Data Science в интерактивном виде. Он объединяет код и вывод все в виде одного документа, содержащего текст, математические уравнения и визуализации.

Такой пошаговый подход обеспечивает быстрый, последовательный процесс разработки, поскольку вывод для каждого блока показывается сразу же. Именно поэтому инструмент стал настолько популярным в среде Data Science за последнее время. Большая часть Kaggle Kernels (работы участников конкурсов на платформе Kaggle) сегодня созданы с помощью Jupyter Notebook.

Пример проекта Jupyter Notebook

Этот материал предназначен для новичков, которые только знакомятся с Jupyter Notebook, и охватывает все этапы работы с ним: установку, азы использования и процесс создания интерактивного проекта Data Science.

Настройка Jupyter Notebook

Чтобы начать работать с Jupyter Notebook, библиотеку Jupyter необходимо установить для Python. Проще всего это сделать с помощью pip:

Лучше использовать pip3 , потому что pip2 работает с Python 2, поддержка которого прекратится уже 1 января 2020 года.

Теперь нужно разобраться с тем, как пользоваться библиотекой. С помощью команды cd в командной строке (в Linux и Mac) в первую очередь нужно переместиться в папку, в которой вы планируете работать. Затем запустите Jupyter с помощью следующей команды:

Сервер Jupyter в браузере

Отлично. Сервер Jupyter работает. Теперь пришло время создать первый notebook и заполнять его кодом.

Основы Jupyter Notebook

Для создания notebook выберите «New» в верхнем меню, а потом «Python 3». Теперь страница в браузере будет выглядеть вот так:

Создание Jupyter notebook в браузере

Обратите внимание на то, что в верхней части страницы, рядом с логотипом Jupyter, есть надпись Untitled — это название notebook. Его лучше поменять на что-то более понятное. Просто наведите мышью и кликните по тексту. Теперь можно выбрать новое название. Например, George's Notebook .

Теперь напишем какой-нибудь код!

Перед первой строкой написано In [] . Это ключевое слово значит, что дальше будет ввод. Попробуйте написать простое выражение вывода. Не забывайте, что нужно пользоваться синтаксисом Python 3. После этого нажмите «Run».

Вывод отобразился в notebook

Вывод должен отобразиться прямо в notebook. Это и позволяет заниматься программированием в интерактивном формате, имея возможность отслеживать вывод каждого шага.

Также обратите внимание на то, что In [] изменилась и вместе нее теперь In [1] . Число в скобках означает порядок, в котором эта ячейка будет запущена. В первой цифра 1 , потому что она была первой запущенной ячейкой. Каждую ячейку можно запускать индивидуально и цифры в скобках будут менять соответственно.

Рассмотрим пример. Настроим 2 ячейки, в каждой из которых будет разное выражение print . Сперва запустим вторую, а потом первую. Можно увидеть, как в результате цифры в скобках меняются.

Цифры в скобках меняются

Если есть несколько ячеек, то между ними можно делиться переменными и импортами. Это позволяет проще разбивать весь код на связанные блоки, не создавая переменную каждый раз. Главное убедиться в запуске ячеек в правильном порядке, чтобы переменные не использовались до того, как были созданы.

Добавление описания к notebook

В Jupyter Notebook есть несколько инструментов, используемых для добавления описания. С их помощью можно не только оставлять комментарии, но также добавлять заголовки, списки и форматировать текст. Это делается с помощью Markdown.

Первым делом нужно поменять тип ячейки. Нажмите на выпадающее меню с текстом «Code» и выберите «Markdown». Это поменяет тип ячейки.

Сделать текст курсивным можно с помощью символов * с двух сторон текста. Если с каждой стороны добавить по два * , то текст станет полужирным. Список создается с помощью тире и пробела для каждого пункта.

Добавление описания к notebook

Интерактивная наука о данных

Соорудим простой пример проекта Data Science. Этот notebook и код взяты из реального проекта.

Следом идет первая ячейка, в которой происходит импорт библиотек. Это стандартный код для Python Data Science с одним исключение: чтобы прямо видеть визуализации Matplotlib в notebook, нужна следующая строчка: %matplotlib inline .

стандартный код для Python Data Science

Следом нужно импортировать набор данных из файла CSV и вывести первые 10 пунктов. Обратите внимание, как Jupyter автоматически показывает вывод функции .head() в виде таблицы. Jupyter отлично работает с библиотекой Pandas!

Jupyter с библиотекой Pandas

Теперь нарисуем диаграмму прямо в notebook. Поскольку наверху есть строка %matplotlib inline , при написании plt.show() диаграмма будет выводиться в notebook!

Также обратите внимание на то, как переменные из предыдущих ячеек, содержащие данные из CSV-файла, используются в последующих ячейках в том случае, если по отношению к первым была нажата кнопка «Run».

Диаграмма прямо в notebook

Это простейший способ создания интерактивного проекта Data Science!

На сервере Jupyter есть несколько меню, с помощью которых от проекта можно получить максимум. С их помощью можно взаимодействовать с notebook, читать документацию популярных библиотек Python и экспортировать проект для последующей демонстрации.

Файл (File): отвечает за создание, копирование, переименование и сохранение notebook в файл. Самый важный пункт в этом разделе — выпадающее меню Download , с помощью которого можно скачать notebook в разных форматах, включая pdf, html и slides для презентаций.

Редактировать (Edit): используется, чтобы вырезать, копировать и вставлять код. Здесь же можно поменять порядок ячеек, что понадобится для демонстрации проекта.

Вид (View): здесь можно настроить способ отображения номеров строк и панель инструментов. Самый примечательный пункт — Cell Toolbar , к каждой ячейке можно добавлять теги, заметки и другие приложения. Можно даже выбрать способ форматирования для ячейки, что потребуется для использования notebook в презентации.

Вставить (Insert): для добавления ячеек перед или после выбранной.

Ячейка (Cell): отсюда можно запускать ячейки в определенном порядке или менять их тип.

Помощь (Help): в этом разделе можно получить доступ к важной документации. Здесь же упоминаются горячие клавиши для ускорения процесса работы. Наконец, тут можно найти ссылки на документацию для самых важных библиотек Python: Numpy, Scipy, Matplotlib и Pandas.

Jupyter Notebook предлагает командную оболочку для интерактивных вычислений. Приложение Jupyter Notebook может взаимодействовать со многими языками программирования (Python, Julia, R, Haskell и Ruby) и часто используется для работы с данными, статистического моделирования и машинного обучения.

Jupyter позволяет создавать документы, объединяющие код и текст (абзацы, уравнения, цифры, ссылки и т.д.), которые помогают в представлении воспроизводимых исследований.

Данное руководство поможет установить Jupyter Notebook локально или на виртуальный сервер Ubuntu 16.04, а также ознакомит вас с основами работы данного приложения. В результате вы сможете запустить код Python 3 с помощью Jupyter Notebook на локальной машине или удалённом сервере.

Требования

  • Среда разработки Python 3 на локальной машине (инструкции по настройке локальной среды ищите здесь) или удалённом сервере Ubuntu 16.04.
  • Пользователь с доступом sudo; все команды данного руководства нужно запускать в сессии этого пользователя. Больше информации вы найдёте здесь.

1: Установка Jupyter Notebook

Jupyter Notebook можно установить с помощью пакетного менеджера pip.

Разверните среду разработки Python 3, в которую вы хотите установить Jupyter Notebook (в данном руководстве среда условно называется my_env).

Затем нужно обновить pip:

pip install --upgrade pip

Чтобы установить Jupyter Notebook, запустите:

pip install jupyter

Приложение Jupyter Notebook установлено и готово к работе.

2: Подключение к серверу через SSH-туннель (опционально)

Если вы установили Jupyter Notebook на удалённый сервер, вам нужно подключиться к веб-интерфейсу с помощью SSH-туннеля. Jupyter Notebook использует конкретный порт (:8888, :8889), а SSH-туннель позволит защитить данные, передаваемые на этот порт сервера.

SSH-туннелирование в Mac или Linux

Если вы работаете с системами Mac или Linux, вы можете создать SSH-туннель, выполнив следующую команду SSH в новом локальном окне терминала:

ssh -L 8888:localhost:8888 your_server_username@your_server_ip

Команда ssh создает SSH-подключение, а флаг –L перенаправляет данный порт локального (клиентского) хоста на хост и порт на удаленной (серверной) стороне. То есть всё, что работает на этом порте на серверной стороне, будет передаваться на тот же порт на локальной машине.

Примечание: При необходимости укажите другой номер порта вместо 8888. Вместо server_username укажите имя текущего пользователя (например, 8host), а вместо your_server_ip – IP-адрес сервера. Например:

ssh -L 8888:localhost:8888 8host@203.0.113.0

Если команда не вернула ошибок, вернитесь в среду разработки и запустите Jupyter Notebook:

В выводе команды вы найдёте URL. Откройте в браузере на локальной машине ссылку:

По запросу предоставьте токен.

SSH-туннелирование в Windows и Putty

Если вы используете Windows, вы можете создать SSH-туннель с помощью Putty.

В поле Host Name (or IP address) укажите IP-адрес сервера, в Port укажите порт 22, в поле Saved Session укажите сессию удалённого сервера. В Connection type выберите SSH и нажмите Tunnels. Введите номер локального порта для доступа к Jupyter (выберите 8000 или выше, чтобы избежать конфликтов с другими приложениями). Укажите направление localhost:8888, где :8888 – номер порта, который использует Jupyter Notebook.

Нажмите Add, после чего порты появятся в списке Forwarded ports.

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

По запросу предоставьте токен.

3: Запуск Jupyter Notebook

Теперь можно запустить приложение Jupyter Notebook в терминале.

В терминале появится лог Jupyter Notebook. Как правило, при первом запуске Jupyter Notebook использует порт 8888. Чтобы узнать, какой порт использует приложение, ознакомьтесь с выводом предыдущей команды:

Если вы работаете с Jupyter Notebook на локальной машине, веб-приложение Jupyter Notebook откроется в браузере по умолчанию. Если этого не произошло (или вы случайно закрыли окно), найдите в логе URL или откройте localhost:8888, чтобы подключиться.

Чтобы остановить приложение Jupyter Notebook, нажмите CTRL+C, затем Y и Enter для подтверждения.

Вы получите следующий вывод:

[C 12:32:23.792 NotebookApp] Shutdown confirmed
[I 12:32:23.794 NotebookApp] Shutting down kernels

Приложение Jupyter Notebook остановлено.

4: Использование Jupyter Notebook

Данный раздел охватывает основы работы с Jupyter Notebook.

Примечание: Если вы ещё не запустили приложение, сделайте это с помощью команды:

Вы должны подключиться к приложению Jupyter Notebook в браузере.

Jupyter Notebook – очень производительное приложение с большим количеством полезных функций.

Чтобы создать документ, выберите в выпадающем меню справа New → Python 3 в правом верхнем выпадающем меню.

Это откроет новый документ. Теперь можно запустить код Python в ячейке или настроить markdown. Настройте первую ячейку для поддержки markdown; для этого нажмите Cell → Cell Type → Markdown в верхнем меню. Теперь можно использовать Markdown для создания записей и даже добавлять уравнения, написанные в LaTeX, помещая их между символами $$. Для примера введите следующую команду в ячейку после настройки markdown:

Чтобы превратить Markdown в форматированный текст, нажмите клавиши Ctrl + Enter, и вы получите:

Simple Equation
Let us now implement the following equation in Pyton:
y=x 2
and print the result where x = 2

Вы можете использовать ячейки markdown для записей и создания кода. Попробуйте решить простое уравнение и получить результат на экране. Кликните по верхней ячейке, нажмите Alt+Enter, чтобы добавить новую ячейку ниже, и введите в неё следующий код:

x = 2
y = x**2
print(y)

Чтобы запустить код, нажмите Ctrl+Enter. Вы получите такой результат:

Simple Equation
Let us now implement the following equation in Pyton:
y=x 2
and print the result where x = 2
In [2]: x = 2
y = x*x
print (y)
4

Заключение

Теперь вы можете использовать Jupyter, чтобы писать воспроизводимый код Python и заметки в markdown. Чтобы получить быструю справку по Jupyter Notebook, выберите Help → User Interface Tour в верхнем меню навигации.

Читайте также: