ESAP—Jupyter initial brainstorming

Europe/Paris
Zoom

Zoom

John Swinbank (ASTRON)
Description

Escape ZoomRoom is inviting you to a scheduled Zoom meeting.

Meeting ID: 863 5651 9787
Passcode: (see e-mail)
One tap mobile
+31207940854,,86356519787# Netherlands
+31207946519,,86356519787# Netherlands

Dial by your location
        +31 20 794 0854 Netherlands
        +31 20 794 6519 Netherlands
        +31 20 794 6520 Netherlands
        +31 20 794 7345 Netherlands
        +31 707 006 526 Netherlands
        +31 20 241 0288 Netherlands
Meeting ID: 863 5651 9787
Find your local number: https://astron.zoom.us/u/kbXjhufxPF

Join by SIP
86356519787@zoomcrc.com

Join by H.323
162.255.37.11 (US West)
162.255.36.11 (US East)
115.114.131.7 (India Mumbai)
115.114.115.7 (India Hyderabad)
213.19.144.110 (Amsterdam Netherlands)
213.244.140.110 (Germany)
103.122.166.55 (Australia Sydney)
103.122.167.55 (Australia Melbourne)
149.137.40.110 (Singapore)
64.211.144.160 (Brazil)
69.174.57.160 (Canada Toronto)
65.39.152.160 (Canada Vancouver)
207.226.132.110 (Japan Tokyo)
149.137.24.110 (Japan Osaka)
Meeting ID: 863 5651 9787
Passcode: 814874

Join by Skype for Business
https://astron.zoom.us/skype/86356519787

    • 09:00 10:00
      Discussion 1h

      Goals

      1. Produce a design, and ultimately an implementation, for the interaction between Jupyter notebooks and ESAP.
      2. Bootstrap (part of) a concrete ESAP development roadmap.

      Expected Workflow

      Roughly speaking, we expect the workflow to look something like:

      • Using ESAP, the user identifies data to process (catalog entries and/or files);
      • Using ESAP, the user identifies a software payload appropriate to their use case (a pre-configured notebook, or just the libraries, etc, that they need);
      • Using ESAP, the user identifies a JupyterHub system that is appropriately local to the data and capable of executing the payload;
      • The user is launched into a notebook environment;
      • Results an be collected from the notebook in some meaningful way (back to ESAP? to the data lake?).

      We also discussed an alternative model, where the users starts in the notebook and uses an ESAP plugin fur Jupyter to search for data and software and bring it to their notebook. I don't think we were motivated to pursue this further, though.

      Technical Discussion

      (In brief; we covered a lot of ground).

      • Stelios and James have done some previous work on trying to pass information to Jupyter through the spawner API, but met with limited success. Alternative models might be possible.
      • Presumably files identified by the user in ESAP would be retrieved directly from the data lake (or other bulk storage) directly by Jupyter, rather than passing through ESAP.
      • Replicating complex catalog queries which were constructed on ESAP in the Jupyter environment might be challenging, so the results of queries (rather than the query itself) should probably be passed to Jupyter. (Detailed mechanisms for this were inconclusively discussed).
      • User queries are (probably?) ephemeral as far as ESAP is concerned, and are not stored in an ESAP database.

      Next steps

      We agreed to make this a regular meeting with a high cadence (weekly, at least at first) in an attempt to get real technical traction.

      Actions

      • John to talk to Stelios to see what other IDA WG members should be involved (if any) and if we can re-use the old IDA WG meeting slot or should find another, then set up a recurring event for this meeting.
      • ASTRON (Nico, Yan, John) to produce an ESAP architecture document (or, at least, the start of one).
      • Rohini to start the process of producing some diagrams of how this work might fit together.