From 0ee01a0b43d9ffbd397de93fb4a4bbe5ba08b2a5 Mon Sep 17 00:00:00 2001 From: Stefano Pigozzi Date: Mon, 15 Nov 2021 03:50:30 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=8E=93=20Write=20about=20Jupyter=20in=20t?= =?UTF-8?q?he=20presentation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- thesis/source/docs/3_presentazione/index.rst | 118 ++++++++++++------- 1 file changed, 77 insertions(+), 41 deletions(-) diff --git a/thesis/source/docs/3_presentazione/index.rst b/thesis/source/docs/3_presentazione/index.rst index 7cfb38a..b82c7f8 100644 --- a/thesis/source/docs/3_presentazione/index.rst +++ b/thesis/source/docs/3_presentazione/index.rst @@ -27,68 +27,104 @@ Notebook computazionali Jupyter ======= -.. todo:: +*Jupyter* è un'applicazione che permette la scrittura e la visualizzazione di `notebook computazionali `. - Scrivere questa sezione. +È composta da (almeno) 3 parti: + +.. index:: + single: Jupyter; kernel + +- un **kernel** per ogni linguaggio di programmazione che si desidera utilizzare nel notebook; + + .. note:: + + .. index:: + + single: IPython + + Ad esempio, `IPython `_ è un kernel Jupyter per il linguaggio di programmazione `Python `_. + +.. index:: + single: Jupyter; server + +- un **server** che gestisce le richieste dell'utente di modifica del notebook, salvandole sul file system, e di valutazione celle, inoltrando la richiesta al kernel corrispondente; + + .. note:: + + Attualmente, l'unico server Jupyter esistente è `Jupyter Server `_. + +.. index:: + single: Jupyter; client + +- un **client** che mostra in un formato user-friendly il contenuto del notebook e gli permette di modificarlo con facilità, connettendosi al relativo server. + + .. note:: + + .. index:: + + single: Jupyter; Notebook + single: Jupyter; Lab + + Esistono due client per Jupyter: il client di vecchia generazione `Jupyter Notebook `_ e il client di nuova generazione `JupyterLab `_. .. index:: - single: IPython + single: Jupyter; hosting -IPython -------- +Hosting di Jupyter +================== + +È possibile effettuare l'hosting di `Jupyter` in vari modi, in base a come esso verrà utilizzato. + +.. index:: + single: Jupyter; hosting locale + +Hosting locale +-------------- + +È possibile installare il server Jupyter sul proprio computer per visualizzare e modificare notebook semplici. + +Così facendo, le celle verranno eseguite con le risorse del proprio computer, e il notebook sarà accessibile solo dal computer che sta eseguendo il server. + +È il modo più facile per usare Jupyter, ma rende impossibile la collaborazione e rende impossibile eseguire alcune operazioni, in quanto le risorse del proprio computer potrebbero non essere sufficienti. .. todo:: - Scrivere questa sezione. + Rivedere vantaggi e svantaggi. .. index:: - single: Jupyter; Lab + single: Jupyter; come software-as-a-service + single: Google Colaboratory + single: SageMaker Notebook -JupyterLab ----------- +Come software-as-a-service +-------------------------- + +È possibile utilizzare un server Jupyter gestito da un cloud provider ed utilizzare le risorse da esso fornite per eseguire le celle. + +Alcuni esempi di cloud provider che forniscono questo servizio sono Google, con `Google Colaboratory `_ e Amazon, con `SageMaker Notebook `_. + +Entrambe le opzioni sono un ottimo modo per utilizzare Jupyter, anche in collaborazione con più persone, ma hanno il difetto di essere costose o poco personalizzabili. .. todo:: - Scrivere questa sezione. - - -.. index:: - single: Jupyter; dove utilizzare - -Dove utilizzare Jupyter -======================= - -.. todo:: - - Scrivere questa sezione. - -In locale ---------- - -.. todo:: - - Scrivere questa sezione. + Rivedere vantaggi e svantaggi. .. index:: + single: Jupyter; hosting on-premises single: Jupyter; Hub -Su un server: JupyterHub ------------------------- - -.. todo:: - - Scrivere questa sezione. - - -.. index:: - single: Google Colab - -Nel cloud: Google Colaboratory +Hosting on-premises ------------------- +È possibile configurare un server della propria istituzione in modo tale che ospiti uno o più server Jupyter a cui si connetteranno i suoi utenti. + +A tale scopo, è disponibile il progetto `JupyterHub `_, in grado di gestire oltre centinaia di utenti e notebook. + +È complesso da installare, ma performante ed efficace; è però molto essenziale, in quanto è un progetto parecchio recente, e carente in certe funzionalità, come collaborazione simultanea e autenticazione esterna. + .. todo:: - Scrivere questa sezione. + Rivedere vantaggi e svantaggi. \ No newline at end of file