Chia sẻ sổ ghi chép Jupyter trong một nhóm


22

Tôi muốn thiết lập một máy chủ có thể hỗ trợ nhóm khoa học dữ liệu theo cách sau: trở thành điểm trung tâm để lưu trữ, tạo phiên bản, chia sẻ và cũng có thể thực hiện sổ ghi chép Jupyter.

Một số tính chất mong muốn:

  1. Những người dùng khác nhau có thể truy cập máy chủ và mở và thực hiện sổ ghi chép được lưu trữ bởi họ hoặc bởi các thành viên khác trong nhóm. Câu hỏi thú vị ở đây là hành vi sẽ là gì nếu người dùng X thực thi các ô trong sổ ghi chép được tác giả bởi người dùng Y. Tôi đoán rằng sổ ghi chép KHÔNG nên thay đổi:
  2. Giải pháp nên được tự lưu trữ.
  3. Sổ ghi chép nên được lưu trữ trên máy chủ hoặc trên ổ đĩa Google hoặc trên ví dụ tự lưu trữ của owncloud.
  4. (Phần thưởng) Notebook sẽ nằm dưới sự kiểm soát phiên bản git (git có thể tự lưu trữ. Không thể bị ràng buộc với GitHub hoặc một cái gì đó thuộc loại đó).

Tôi nhìn vào JupyterHubBinder . Trước đây, tôi không hiểu làm thế nào để cho phép người dùng truy cập chéo. Cái sau dường như chỉ hỗ trợ GitHub như là nơi lưu trữ của các notebook.

Bạn có kinh nghiệm với một trong những giải pháp?


Kaggle đã công bố một hệ thống có thể là những gì bạn muốn.
Ricardo Cruz

1
JupiterHub là chính xác cho đề xuất này.
dannyeuu

@dannyeuu Tôi giả sử bạn có nghĩa là JupyterHub, phải không? Có thể có chia sẻ máy tính xách tay người dùng chéo?
Dror Atariah

Không, mỗi người dùng có một phiên bản riêng của Jupyter sinh ra. AFAIK bạn không thể dễ dàng chia sẻ sổ ghi chép.
Lukasz Tracewski

Google Colaboratory chắc chắn đáp ứng yêu cầu 3.
Leponzo

Câu trả lời:


2

Airbnb gần đây đã mở nguồn kho lưu trữ kiến ​​thức khoa học dữ liệu nội bộ của họ: https://github.com/airbnb/ledgeledge-repo

Từ readme của nó, có vẻ như nó có thể lỏng lẻo phù hợp với trường hợp sử dụng của bạn:

Dự án Kho lưu trữ tri thức tập trung vào việc tạo điều kiện chia sẻ kiến ​​thức giữa các nhà khoa học dữ liệu và các vai trò kỹ thuật khác bằng cách sử dụng các định dạng dữ liệu và công cụ có ý nghĩa trong các ngành nghề này. Nó cung cấp các kho dữ liệu khác nhau (và các tiện ích để quản lý chúng) cho "bài viết kiến ​​thức", tập trung cụ thể vào sổ ghi chép (R Markdown và Jupyter / iPython Notebook) để thúc đẩy nghiên cứu có thể tái tạo tốt hơn.

Ngoài ra còn có một bài viết blog bình luận về động lực của nó.


2

JupyterHub không cung cấp hệ thống kiểm soát phiên bản cũng như không hỗ trợ chia sẻ Notebook. Bạn đã đề cập đến giới hạn của Binder.

Hãy thử Zeppelin . Phiên bản 0.7 sẽ được phát hành trong vòng vài ngày tới.

  • Như bạn có thể thấy từ lộ trình , phiên bản này cung cấp các tính năng "doanh nghiệp" chính xác về sự hợp tác.
  • Hệ thống kiểm soát phiên bản (git) được tích hợp.
  • Đó là tự lưu trữ.

Về bản chất, tôi nghĩ rằng nó đáp ứng tất cả các yêu cầu bạn đã đăng. Trên hết, nó cung cấp khả năng hiển thị phong phú hơn và vô số các tính năng khác (hoạt động với Shiro, Knox, Kerberos - Spark an toàn có ai không?).


0

Giải pháp tự lưu trữ duy nhất mà tôi biết là thiết lập đám mây Anaconda Enterprise trả phí, https://anaconda.org/about . Các giải pháp khác tôi biết là không thể tự lưu trữ!


0

Giải pháp này không đủ tốt sao?

Bạn có thể bảo vệ quyền truy cập bằng ssh và các tệp được lưu trữ có thể là kho lưu trữ git mà bạn muốn, với quyền truy cập khác nhau của người dùng linux (hoặc bất cứ thứ gì). Bạn sẽ cần máy chủ của riêng bạn.


0

Những gì tôi tìm thấy - chia sẻ máy tính xách tay cho các nhà khoa học dữ liệu không phải là một định dạng mong muốn cho giao tiếp. Nhiều người trong số họ thích IDE như Spider / RStudio hoặc chỉ là một trình soạn thảo văn bản (tôi biết một vài nhà khoa học dữ liệu sử dụng vi).

Bạn chỉ có thể chia sẻ mã bằng cách kiểm soát nguồn và dữ liệu của mình bằng kho lưu trữ đám mây. Nó sẽ tăng tính linh hoạt.

Gần đây tôi đã mở một công cụ kết hợp mã, dữ liệu và sự phụ thuộc giữa dữ liệu và mã vào một môi trường duy nhất và làm cho dự án khoa học dữ liệu của bạn có thể tái tạo: DVC hoặc dataversioncontrol.com (có hướng dẫn).

Với công cụ DVC, bạn chỉ có thể chia sẻ dự án của mình bằng Git, đồng bộ hóa dữ liệu với S3 bằng một lệnh DVC duy nhất. Nếu một số nhà khoa học dữ liệu của bạn quyết định thay đổi mã ở bất kỳ giai đoạn nào trong dự án của bạn thì kết quả cuối cùng có thể được sao chép dễ dàng bằng một lệnh duy nhất dvc repro data/target_metrics.txt.


0

Domino Data Lab cung cấp dịch vụ lưu trữ máy tính xách tay dựa trên cơ sở, SaaS và VPC (Jupyter, Zeppelin, RStudio), tích hợp git, tính toán có thể mở rộng, mẫu môi trường và một loạt các thứ hữu ích khác. Các cơ sở / dịch vụ VPC có thể quá mức và quá đắt nếu bạn là một nhóm nhỏ, nhưng các kế hoạch SaaS có giá khá hợp lý.

[Tiết lộ đầy đủ: Tôi là cựu nhân viên của Domino]

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.