Как обмениваться информацией между ноутбуками в проекте DSX
Можно ли обмениваться информацией (например, учетными данными) между несколькими записными книжками в проекте DSX, например, с переменными среды?
Например, приложение Cloud Foundry в Bluemix имеет настройку управления, в которой можно определять переменные среды, существует ли аналогичная концепция для проекта DSX (я ничего не видел в различных настройках уровня проекта).
2 ответа
Отдельные записные книжки имеют отдельные среды выполнения в фоновом режиме, и в настоящее время невозможно совместно использовать учетные данные среди записных книжек путем определения переменных среды. Но есть вспомогательные методы для наиболее очевидных требований к учетным данным в проекте. Это называется методом "Вставка в код".
Например: если у вас есть хранилище объектов, связанное с вашим проектом.
- Выберите вкладку "Данные" в верхней панели.
- Добавьте некоторый файл в хранилище объектов, просматривая или просто перетаскивая.
- Вставьте учетные данные этого контейнера хранилища объектов в свой блокнот, выбрав опцию "Вставить учетные данные", прямо рядом с вашим файлом на правой боковой панели.
- Затем вы можете напрямую вставить эти учетные данные (шаг 3) в любую другую записную книжку в этом проекте.
Помимо "Вставить в код" есть и другие вспомогательные функции, такие как "Вставить информационный кадр SparkR", "Информационный кадр Pandas" и т. Д., Чтобы ускорить процесс анализа данных специалистами. Надеюсь, это было немного полезно.
К вашему сведению - я добавил запрос на пользовательский счет, чтобы службы Bluemix могли быть привязаны к проекту, а затем к учетным данным обращаться так же, как приложение Bluemix получает доступ к учетным данным. Пожалуйста, проголосуйте, если считаете, что это будет полезно.
В настоящее время одним из шаблонов, который я часто использую, является создание записной книжки в моем проекте, которая используется для сохранения учетных данных в файл в DSX:
! echo '{ "username": "xxxx", "password": "xxxx", ... }' > cloudant_creds.json
Этот файл теперь доступен для всех ваших записных книжек в проекте. ПРИМЕЧАНИЕ: файл сохраняется в файловой системе сервиса spark. Если вы используете тот же сервис spark в других проектах dsx, они также смогут получить доступ к файлу.
Учетные данные для cloudant обычно включают в себя другие поля, такие как хост, я не показывал эти поля здесь, поэтому я могу сохранить пример простым. Я указал, что есть больше полей с ...
, Я обычно копирую этот json из поля учетных данных службы bluemix.
В других ваших записных книжках вы могли бы прочитать учетные данные примерно так:
with open('cloudant_creds.json') as data_file:
sourceDB = json.load(data_file)
Затем вы можете ссылаться на учетные данные следующим образом:
dfReader = sqlContext.read.format("com.cloudant.spark")
dfReader.option("cloudant.host", sourceDB.host)
if sourceDB.username:
dfReader.option("cloudant.username", sourceDB.username)
if sourceDB.password:
dfReader.option("cloudant.password", sourceDB.password)
df = dfReader.load(sourceDB.database).cache()