Open Source: Interaktives Rechnen mit Jupyter-Notebooks

Ob der Test einer Signalverarbeitungs-Bibliothek oder die Hardware-Synthese für einen FPGA: Im Jupyterhub klappt das via Cloud.

Eine Anleitung von Martin Strubel veröffentlicht am
Interaktives Rechnen im Jupyterhub
Interaktives Rechnen im Jupyterhub (Bild: Intel, binder.org/Montage: Golem.de)

Jupyter-Notebooks, nicht zu verwechseln mit einem physischen Laptop, sind in der Wissenschaft eine beliebte Darstellungsform, da sie auf elegante Weise die Ausführung von Code gemischt mit entsprechenden Anweisungen, Dokumentation oder Grafiken ermöglichen. Damit lassen sich unter anderem Resultate von Berechnungen nachvollziehen, mit eigenen Daten versorgen oder einfach reproduzierbare Tutorials zur Datenverarbeitung aus der gewohnten Browserumgebung heraus entwerfen.

Inhalt:
  1. Open Source: Interaktives Rechnen mit Jupyter-Notebooks
  2. Per Docker-Container zur Quellcodebearbeitung
  3. Vielfältige Anwendungsmöglichkeiten umsetzbar

Der darunterliegende Kernel, genauer die Zwischenschicht, welche die Ausführung von Programmen ermöglicht, ist von Haus aus auf interaktive Ausführung von Python-Code zugeschnitten (ipykernel), es existieren aber auch andere Implementierungen, wie beispielsweise für die Sprache Julia, welche aufgrund ihrer verbesserten Performance gegenüber Python gerne in wissenschaftlichen Anwendungen eingesetzt wird.

Das darauf aufbauende Open-Source-Projekt Jupyterhub stellt eine Serverumgebung zur Verfügung, die es erlaubt, ohne lokale Installation ausführbare Notebooks mit der entsprechend nötigen Software in der Cloud oder auch lokal per Klick zu starten. Die Voraussetzung dafür ist, dass sich die Notebooks auf einem zugänglichen Git-Repository wie Github, Gitlab usw. befinden.

Per Binderhub zum Jupyter-Notebook

Für öffentliche Jupyter-Anwendungen übernimmt mybinder.org die Schirmherrschaft mit dem Projekt Binderhub, unterstützt durch mehrere Cloud-Hoster. Auf der Webseite findet sich zunächst eine einfache Eingabemaske, in die wir die URL zu einem Git-Repository (welches *.ipynb-Dateien enthält) eingeben können. Per Launch-Knopf wird der Server gestartet. Dabei passiert (per repo2docker-Script) Folgendes:

Stellenmarkt
  1. Business Process Engineer (w/m/d)
    ZDF Studios GmbH, Mainz
  2. IT-Mitarbeiter (m/w/d)
    Bayerisches Landesamt für Gesundheit und Lebensmittelsicherheit, Oberschleißheim
Detailsuche

  • Das Repository wird geklont und nach Konfigurationsdateien durchforstet.
  • Basierend auf der Konfiguration wird ein Docker-Container mit Jupyter-Support gebaut und zwischengespeichert.
  • Der Container wird gestartet und ein Jupyterlab-Serverprozess aktiviert, auf dessen URL der Browser schließlich weitergeleitet wird.

  • Per BinderHub ... (Bild: Golem.de)
  • ... zum Jupyter-Notebook. (Bild: Martin Strubel)
Per BinderHub ... (Bild: Golem.de)
Handbuch für Softwareentwickler: Das Standardwerk für professionelles Software Engineering

Das kann je nach Anwendung und Auslastung der Server etwas Zeit in Anspruch nehmen. Wenn nichts schiefgeht, präsentiert sich danach die Jupyterlab-IDE und es kann gearbeitet werden, allerdings sollte das auch aktiv geschehen. Die laufenden Jupyter-Kernels unterliegen einem Timeout und werden nach circa zehn Minuten Inaktivität beendet. Dann sind ohne Vorwarnung auch alle eingegebenen Daten erst mal weg oder müssen mühevoll manuell aus dem Notebook gerettet werden.

Wurde das Repository in seiner Konfiguration schon einmal gebaut, werden der erste und zweite Schritt übersprungen und der Server startet etwas schneller, auch hier wieder abhängig von der Konfiguration des Containers.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
Per Docker-Container zur Quellcodebearbeitung 
  1. 1
  2. 2
  3. 3
  4.  


grorg 12. Mai 2022 / Themenstart

# %% import pandas as pd import numpy as np # %% df = pd.read_excel("../data/raw/test...

Ultima 12. Mai 2022 / Themenstart

Neben Binder gibt es noch eine ganze Reihe weiterer Möglichkeiten, wie man (mehr oder...

GwhE 12. Mai 2022 / Themenstart

Erstmal, danke für den Artikel Jupyter ist echt cool und der Artikel hat sehr Interstate...

Kommentieren



Aktuell auf der Startseite von Golem.de
Geleaktes One Outlook ausprobiert
Wie Outlook Web, nur besser

Endlich wird das schreckliche Mail-Programm in Windows 10 und 11 ersetzt. One Outlook ist zudem mehr, als nur Outlook im Browser.
Ein Hands-on von Oliver Nickel

Geleaktes One Outlook ausprobiert: Wie Outlook Web, nur besser
Artikel
  1. Vizio: GPL-Durchsetzung darf als Verbraucherklage verhandelt werden
    Vizio
    GPL-Durchsetzung darf als Verbraucherklage verhandelt werden

    Erstmals erkennt ein US-Gericht an, dass aus der GPL auch Verbraucherrechte folgen könnten. Die Kläger bezeichnen das als "Wendepunkt".

  2. Was man aus realen Cyberattacken lernen kann
     
    Was man aus realen Cyberattacken lernen kann

    "Hätte ich das mal vorher gewusst!" Die Threat Hunter von Sophos haben ihre Erfahrungen im täglichen Kampf gegen Cyberkriminelle in einem Kompendium zusammengefasst. Jedes Kapitel enthält praxisorientierte IT-Sicherheitsempfehlungen für Unternehmen.
    Sponsored Post von Sophos

  3. App Store: Apple gestattet Abo-Preiserhöhung ohne Kundenzustimmung
    App Store
    Apple gestattet Abo-Preiserhöhung ohne Kundenzustimmung

    Wer ein Abo über eine App im App Store bucht, muss damit rechnen, dass er vor einer Preiserhöhung nicht mehr nach einer Zustimmung gefragt wird.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Cyber Week: Bis zu 400€ Rabatt auf Gaming-Stühle • AOC G3 Gaming-Monitor 34" UWQHD 165 Hz günstig wie nie: 404€ • Xbox Series X bestellbar • MindStar (u.a. Gigabyte RTX 3090 24GB 1.699€) • LG OLED TV (2021) 65" 120 Hz 1.499€ statt 2.799€ [Werbung]
    •  /