Marie hat das Notizbuch, das „zu Hause funktioniert“. Thomas öffnet es: Der Kernel stürzt ab – nicht genügend Speicher, andere Pandas-Version, fest codierter Pfad „/Users/marie/...“. Der CTO entdeckt einen Kundenexport in einem öffentlichen Git-Repository. Jupyter als Team sendet keine „.ipynb“-Datei über Slack: Es ist eine Plattform mit Identität, Ressourcen und Governance.
Ein lokales Notebook mit 32 GB RAM ist keine Team-Infrastruktur. Sobald drei Personen Daten, GPUs oder regulierte Umgebungen gemeinsam nutzen, muss die Authentifizierung zentralisiert, Ressourcen isoliert und der Zugriff nachverfolgt werden. Bei unsachgemäßer Bereitstellung wird JupyterHub zu einem VPS, bei dem jeder die gleichen Rechte hat. Gut eingesetzt ist es die Brücke zwischen Explorations- und Produktionspipelines.
Minimal lebensfähige Architektur
Ein Team-Setup basiert auf einigen nicht verhandelbaren Komponenten:
| Komponente | Rolle |
|---|---|
| JupyterHub | SSO/LDAP-Verbindung, Start eines Notebooks pro Benutzer |
| Spawner | Docker oder Kubernetes – reproduzierbares Bild |
| Persistenter Speicher | Speicherplatz pro Benutzer oder pro Projekt, nicht nur kurzlebiger Datenträger |
| Geheimnisse | Sichere oder injizierte Umgebungsvariablen – niemals API-Schlüssel im Notebook |
| Ressourcenkontingent | Maximale CPU, RAM, GPU pro Benutzer oder Gruppe |
Das Hosting variiert je nach Auslastung: solides VPS für die CPU-Erkundung, GPU-Maschine für Schulungen (siehe GPU-Vermietung) oder Kubernetes, wenn das Team die Orchestrierung bereits beherrscht. Vergleichen Sie Angebote mit GPU-Zugriff und EU-Regionen über das Verzeichnis und den Vergleich.
Teilen ohne Datenlecks
Versionieren Sie die Notebooks in Git, aber entfernen Sie die Ausgaben vor jedem Commit („nbstripout“ oder Hook-Pre-Commit). Ein exportiertes Notizbuch mit Klartext-Kundendaten in einer Zelle ist ein DSGVO-Leck, das darauf wartet, passiert zu werden.
Beschränken Sie den Zugriff auf Daten: Nur-Lesen-Rollen in Produktionsdatenbanken, anonymisierte Ansichten, kein vollständiger Dump „zum Testen“. Deaktivieren Sie den Massen-Download, wenn die Daten vertraulich sind. Protokollexporte mit Zeitstempel und Benutzeridentität.
Reduzieren Sie inaktive Kerne („idle culler“), um GPU und RAM freizugeben – ein seit Freitag geöffnetes vergessenes Notebook sollte die Warteschlange des Teams nicht blockieren.
Mischen Sie bei internen LLMs keine vertraulichen Eingabeaufforderungen und gemeinsam genutzten Notizbücher – siehe Hosten eines LLM.
Häufige Fehler, die die Schatten-IT beschleunigen
Bei fast jeder Obduktion tauchen vier Muster auf:
- Ein einzelnes gemeinsames SSH-Konto – dasselbe Problem wie SFTP-Teamzugriff: Niemand ist verantwortlich, jeder ist Root.
- Notebook = Produktion – ein Cron, der nachts eine ungetestete „.ipynb“-Datei ausführt, ersetzt eine nicht beobachtbare Pipeline.
- GPU 24 Stunden am Tag für die Pandas-Erkundung, die nur die CPU nutzt.
- Keine Sicherung des Benutzerverzeichnisses auf einer einzelnen lokalen Festplatte.
Jeder dieser Fehler kann behoben werden, ohne Jupyter zu sperren – indem die gleichen Anforderungen wie an eine API angewendet werden: Identität, Protokolle, Grenzwerte.
GPU, Kontingente und kontrollierte Kosten
Selten benötigt man pro Datenwissenschaftler eine GPU. JupyterHub plant Jobs, wendet Kontingente nach Gruppen an und gibt die Ressource nach Inaktivität frei. Reservieren Sie teure GPU-Instanzen für intensives Training. Data Mining (EDA) läuft oft sehr gut auf der CPU.
Für intensives Training, Spot- oder On-Demand-Instanzen absolvieren Sie den Hub, ohne die Ausrüstung 24 Stunden am Tag zu immobilisieren. Dokumentieren Sie, wer wie lange einen GPU-Auftrag starten kann und wie Sie eine Warnung erhalten, wenn die Warteschlange einen Schwellenwert überschreitet.
Der Gipfel: Shared Jupyter ohne Governance = beschleunigte Schatten-IT
Hier ist, was die Begeisterung für Notizbücher zu formalisieren vergisst.
Vergleichen Sie Hosts mit GPU-Zugriff und Hosting in der EU-Region im Verzeichnis, bevor Sie Hardware „für Jupyter“ kaufen.
Entscheide dich und gehe ohne blinden Fleck voran
Vor dem Kauf einer GPU oder der Bereitstellung eines Hubs:
- Zählen, wie viele Notebooks gleichzeitig laufen müssen, mit welchen Daten und mit welcher Rückverfolgbarkeit.
- Wählen Sie JupyterHub + Docker, sobald drei reguläre Datennutzer Ressourcen oder regulierte Daten teilen.
- Reparieren Sie ein gesperrtes Basis-Image und eine Git-Richtlinie (Ausgaben werden vor dem Commit entfernt).
- Konfigurieren Sie CPU-/RAM-/GPU-Kontingente und automatisches Herunterfahren inaktiver Kernel.
- Prüfen Sie den Datenzugriff wie bei jedem sensiblen System – Protokolle, Rollen, EU-Region.
- Testen Sie die Wiederherstellung des persistenten Benutzerspeichers, bevor Sie kritische Datensätze übernehmen.
Ohne eine klare Antwort auf die erste Frage finanzieren Sie das Chaos – nicht die Wissenschaft.
Häufig gestellte Fragen
Lokales JupyterLab oder gehosteter JupyterHub?
Raum für Solo-Erkundungen. Gehosteter Hub, sobald mehrere Personen die GPU teilen, regulierte Daten oder eine Rückverfolgbarkeit erforderlich sind – andernfalls kopiert jeder CSVs per E-Mail und die Versionen weichen innerhalb einer Woche voneinander ab.
Wie kann verhindert werden, dass ein Notebook die Produktion überschreibt?
Separate Umgebungen (Staging-Daten), standardmäßig schreibgeschützter Datenbankzugriff, Nicht-Notebook-Geheimnisse (sicher, Umgebungsvariablen), obligatorische Überprüfung vor jedem in Cron geplanten Job.
Benötigen Sie eine GPU pro Datenwissenschaftler?
Selten. Hub-Planung, GPU-Kontingente, Spot-Instanzen für intensives Training – die CPU reicht für den Großteil des Data-Mining aus. Sehen Sie sich unseren Leitfaden GPU-Verleih an.
Notebooks und DSGVO: Welche Vorsichtsmaßnahmen?
Keine eindeutigen personenbezogenen Daten in exportierten Zellen, Zugriffsprotokolle, Hosting in der EU-Region, Bereinigen von Ausgaben, die versehentlich in Git vorgenommen wurden. Behandeln Sie ein Notizbuch wie ein vertrauliches Dokument und nicht wie einen Wegwerfentwurf.
Bevor Sie eine GPU „für Jupyter“ kaufen, fragen Sie: Wie viele Notebooks sollen gleichzeitig laufen, mit welchen Daten, mit welcher Spur? Ohne Antwort finanzieren Sie das Chaos – nicht die Wissenschaft.
