В цій статті
З цієї статті ви дізнаєтеся, як встановити записну книжку Jupyter до призначених для користувача ядрами PySpark (для Python) і Spark (для Scala) за допомогою чарівної команди Spark, а потім підключити цю записну книжку до кластеру HDInsight. Існують різні причини для установки Jupyter на локальному комп'ютері, але є і деякі труднощі. Додаткові відомості див. У розділі Навіщо встановлювати Jupyter на комп'ютер? в кінці цієї статті.
Для установки Jupyter і чарівної команди Spark на ваш комп'ютер необхідно виконати три основні дії.
- Установка записної книжки Jupyter
- Встановіть ядра PySpark і Spark за допомогою чарівної команди Spark
- Налаштуйте чарівну команду Spark для доступу до кластеру Spark в HDInsight
Додаткові відомості про користувача ядрах і чарівних командах Spark, доступних для записників Jupyter в кластері HDInsight, см. В статті Ядра, доступні для використання записниками Jupyter з кластерами Apache Spark в HDInsight на платформі Linux.
попередні вимоги
Зазначені тут попередні вимоги відносяться не до установки Jupyter. Вони відносяться до підключення записної книжки Jupyter до кластеру HDInsight після установки записної книжки.
Установка записної книжки Jupyter на комп'ютер
Перед установкою записників Jupyter необхідно встановити Python. Python і Jupyter доступні в складі дистрибутива Anaconda. При установці Anaconda встановлюється дистрибутив Python. Після установки Anaconda виконайте відповідні команди для установки Jupyter.
- Скачайте установник Anaconda для своєї платформи і запустіть програму установки. У майстра установки вкажіть параметр для додавання Anaconda в змінну PATH.
Виконайте наступну команду для установки Jupyter.
Додаткові відомості про встановлення Jupyter см. Тут.
Установка ядер і чарівної команди Spark
Інструкції по установці чарівної команди Spark, а також ядер PySpark і Spark, см. В документації по sparkmagic на сайті GitHub. Щоб почати використовувати чарівну команду Spark, її спочатку потрібно встановити. Це - перший крок, описаний в документації. Замініть цей крок на засланні вище наведеними нижче командами з урахуванням версії кластера HDInsight, до якого ви підключіться. Після цього виконайте інші кроки відповідно до документації по чарівної команді Spark. Для установки різних ядер необхідно виконати крок 3 з розділу інструкцій по установці чарівної команди Spark.
Для кластерів версії 3.4 встановіть sparkmagic версії 0.2.3, виконавши команду pip install sparkmagic == 0.2.3
Для кластерів версій 3.5 та 3.6 встановіть sparkmagic версії 0.11.2, виконавши команду pip install sparkmagic == 0.11.2
Налагодження чарівної команди Spark для підключення до кластеру HDInsight Spark
У цьому розділі ви налаштуєте підключення чарівної команди Spark, встановлену раніше, до кластеру Apache Spark, який ви вже створили в Azure HDInsight.
Відомості про конфігурацію Jupyter зазвичай зберігаються в домашньому каталозі користувачів. Щоб знайти домашній каталог, введіть наступні команди (вони підходять для будь-якої платформи ОС).
Запустіть оболонку Python. У командному рядку введіть таку команду:
В оболонці Python введіть наступну команду, щоб знайти домашній каталог.
Перейдіть в домашній каталог і створіть папку з ім'ям .sparkmagic. якщо її ще немає.
У цій папці створіть файл config.json і додайте в нього наступний фрагмент коду JSON.
Замініть. і відповідними значеннями. Для створення пароля в кодуванні base64 ви можете використовувати різні службові програми на улюбленому мовою програмування або кошти, доступні в Інтернеті.
Правильно налаштуйте параметри пульсу в config.json. Ці параметри необхідно додати на одному рівні з фрагментами kernel_python_credentials і kernel_scala_credentials. які були додані раніше. У цьому прикладі файлу config.json показано, як і де додаються параметри пульсу.
Для sparkmagic 0.2.3 (кластери версії 3.4) додайте:
Для sparkmagic 0.11.2 (кластери версій 3.5 і 3.6) додайте:
Сигнали пульсу відправляються, щоб запобігти витоку сеансів. При переході в сплячий режим або завершення роботи комп'ютера пульс не відправляється, що призводить до очищення сеансу. Якщо ви хочете відключити таку поведінку для кластерів версії 3.4, то можете налаштувати для параметра Livy livy.server.interactive.heartbeat.timeout значення 0 за допомогою призначеного для користувача інтерфейсу Ambari. Якщо для кластерів версії 3.5 на налаштувати відповідну конфігурацію, наведену вище, то сеанс не буде видалений.
Запустіть Jupyter. Виконайте наступну команду з командного рядка.
Переконайтеся, що ви можете підключитися до кластеру за допомогою записника Jupyter і використовувати чарівну команду Spark з ядрами. Виконайте наступні дії.
а. Створіть нову записну книжку. У правому верхньому куті клацніть Створити. Ви повинні побачити ядро за замовчуванням Python2 і два нових ядра, які ви встановили: PySpark і Spark. Клацніть PySpark.
b. Запустіть наступний фрагмент коду.
Якщо ви успішно отримали вихідні дані, підключення до кластеру HDInsight працює.
Якщо ви хочете оновити конфігурацію записної книжки для підключення до іншого кластеру, змініть файл config.json, вказавши новий набір значень, як показано на кроці 3.
Навіщо встановлювати Jupyter на моєму комп'ютері?
Може бути кілька причин, за якими вам буде потрібно встановити на комп'ютер Jupyter і підключити його до кластеру Spark в HDInsight.
- Хоча записники Jupyter вже доступні в кластері Spark в Azure HDInsight, після їх установки на комп'ютер ви зможете створювати записники локально, тестувати програми на працюючому кластері і відправляти записні книжки в кластер. Для відправки записників в кластер можна відправити їх за допомогою записника Jupyter, яка запущена на кластері, або зберегти їх в папці / HdiNotebooks в облікового запису зберігання, пов'язаної з кластером. Додаткові відомості про зберігання записників в кластері см. В розділі Де зберігаються записники.
- За допомогою локально доступних записників ви зможете підключитися до різних кластерів Spark в залежності від потреб вашої програми.
- Можна використовувати GitHub для реалізації системи управління версіями, щоб контролювати версії записників. Ви також можете створити середовище спільної роботи, в якій кілька користувачів будуть працювати з однією записником.
- Ви можете працювати з записниками локально навіть без кластера. Кластер потрібен тільки для тестування записників, але не обов'язковий для ручного управління записниками або середовищем розробки.
- Можливо, вам буде простіше налаштувати локальну середовище розробки, ніж налаштовувати установку Jupyter в кластері. Ви можете спокійно користуватися будь-яким програмним забезпеченням, встановленим локально, чи не налаштовуючи віддалені кластери.
Якщо Jupyter встановлений на локальному комп'ютері, кілька користувачів можуть одночасно запустити одну і ту ж записну книжку в одному кластері Spark. У такій ситуації створюються кілька сеансів Livy. Якщо ви зіткнетеся з проблемами і почнете їх налагодження, вам буде складно визначити, який сеанс Livy якому користувачеві належить.