Обмін ноутбуками Юпітера в команді


22

Я хотів би створити сервер, який міг би підтримувати команду з наукових даних таким чином: бути центральною точкою для зберігання, редагування версій, спільного використання та можливого також виконання ноутбуків Юпітера.

Деякі бажані властивості:

  1. Різні користувачі можуть отримати доступ до сервера та відкривати та виконувати зошити, які зберігалися ними чи іншими членами команди. Цікавим питанням є те, якою буде поведінка, якщо користувач X виконує комірки в зошиті, автором якого є користувач Y. Я думаю, що ноутбук НЕ слід змінювати:
  2. Рішення повинно бути влаштовано.
  3. Ноутбуки слід зберігати або на сервері, або на диску Google або в самому розміщеному екземплярі owncloud.
  4. (Бонус) Ноутбуки знаходяться під контролем версії git (git може розміщуватися самостійно. Не можна обмежувати GitHub чи щось подібне).

Я заглянув у JupyterHub та Binder . З першим я не розумів, як дозволити перехресним користувачам доступ. Останній, здається, підтримує лише GitHub як зберігання ноутбуків.

Чи маєте ви досвід роботи з одним із рішень?


Kaggle оголосила систему, яка може бути тим, що ви хочете.
Рікардо Крус

1
JupiterHub саме для цієї пропозиції.
dannyeuu

@dannyeuu Я припускаю, що ти мав на увазі JupyterHub, правда? Чи можливо спільне користування ноутбуками між користувачами?
Dror Atariah

Ні, у кожного користувача є окремий екземпляр породженого Юпітера. AFAIK ви не можете легко ділитися ноутбуками.
Лукаш Трачевський

Google Colaboratory безумовно відповідає
умові

Відповіді:


2

Нещодавно Airbnb відкрило своє сховище внутрішніх знань про дані: https://github.com/airbnb/knowledge-repo

З його readme, здається, він може невідповідно відповідати вашому випадку використання:

Проект сховища знань орієнтований на полегшення обміну знаннями між науковцями даних та іншими технічними ролями, використовуючи формати даних та інструменти, що мають сенс у цих професіях. Він надає різні сховища даних (і утиліти для управління ними) для "постів знань", з особливим акцентом на ноутбуках (R Markdown та Jupyter / iPython Notebook) для кращого сприяння відтворюваному дослідженню.

Також є повідомлення в блозі, в якому коментується його мотивація.


2

JupyterHub не забезпечує систему контролю версій і не сприяє обміну ноутбуками. Ви згадали про обмеження Binder.

Спробуйте Цеппелін . Версія 0.7 повинна вийти протягом кількох наступних днів.

  • Як видно з дорожньої карти , ця версія надає функції "підприємства", які саме стосуються співпраці.
  • Система управління версіями (git) інтегрована.
  • Це влаштоване господарство.

По суті, я думаю, що він відповідає всім вимогам, які ви виклали. Крім того, він забезпечує більш багаті можливості візуалізації та безліч інших функцій (працює з Shiro, Knox, Kerberos - захистити когось іскри?).


0

Тільки резидентное рішенням я знаю , є платною установкою Anaconda Enterprise хмари, https://anaconda.org/about . Інші рішення, про які я знаю, не є самозабезпеченими!


0

Хіба це рішення недостатньо добре?

Ви можете захистити доступ за допомогою ssh, а розміщені файли можуть бути сховищем git, яке ви хочете, з різним доступом до Linux (або будь-якого іншого). Вам знадобиться власний сервер.


0

Що я знайшов - обмін зошитами для науковців даних - це не бажаний формат для спілкування. Багато з них віддають перевагу IDE, як Spider / RStudio або просто текстові редактори (я знаю декількох вчених, які використовують vi).

Ви можете просто ділитися кодом за допомогою джерела управління та даних у хмарних сховищах. Це збільшить гнучкість.

Нещодавно я відкрив інструмент, який поєднує код, дані та залежності між даними та кодом до єдиного середовища та робить ваш проект з наукових даних відтворюваним: DVC або dataversioncontrol.com (є підручник).

За допомогою інструмента DVC ви можете просто поділитися своїм проектом за допомогою Git, синхронізувати дані до S3 однією командою DVC. Якщо деякі з ваших даних вчені вирішать змінити код на будь-якому етапі вашого проекту, то остаточний результат може бути легко відтворений однією командою dvc repro data/target_metrics.txt.


0

Domino Data Lab пропонує розміщення приміщень, хостинг ноутбуків на основі SaaS та VPC (Jupyter, Zeppelin, RStudio), інтеграцію git, масштабовані обчислення, шаблони середовища та купу інших корисних речей. Приміщення / пропозиції VPC можуть бути надмірними та занадто дорогими, якщо ви невелика команда, але плани SaaS мають досить розумні ціни.

[Повне розкриття інформації: я колишній працівник Доміно]

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.