Utilizzo dei blocchi note

Questa guida illustra le diverse attività associate ai blocchi note Cloud Datalab.

Controllo del codice sorgente

Quando esegui datalab create VM-instance-name per la prima volta, viene aggiunto un progetto nel progetto datalab-notebooks Cloud Source Repository (di seguito denominato "repository remoto cloud"). Si tratta di un repository remoto per il repository /content/datalab/notebooks git creato nel container docker in esecuzione nella tua istanza VM Cloud Datalab (indicato di seguito come "repository VM Cloud Datalab"). Puoi sfogliare il repository cloud da remoto nella pagina Repository di Google Cloud Console.

Puoi utilizzare git o ungit per gestire i blocchi note nel repository VM di Cloud Datalab.

Utilizzare ungit nel browser

Il container Cloud Datalab include ungit, un client git basato sul Web, che ti consente di eseguire commit nel repository della VM Cloud Datalab ed eseguire il push dei blocchi note al repository Cloud Remote dalla UI del browser Cloud Datalab.

Per aprire ungit sul repository Cloud Datalab /content/datalab/notebooks, seleziona l'icona del repository nella sezione in alto a destra della barra dei menu di Google Cloud Datalab.

Si apre una finestra del browser nel repository della VM Cloud Datalab.

Aggiunta di un blocco note al repository Cloud Remote.

  1. Accedi alla cartella /datalab/notebooks nella finestra del browser del blocco note di Cloud Datalab.

  2. Apri un nuovo blocco note dalla cartella /datalab/notebooks selezionando l'icona "+ Blocco note".

    1. Aggiungi una o più celle al blocco note
    2. Rinomina il blocco note facendo clic su "Blocco note senza titolo" nella barra dei menu e modificando il nome in "Nuovo blocco note"
    3. Seleziona Blocco note→Salva e checkpoint (Ctrl-s) o attendi che il blocco note venga salvato automaticamente.
  3. Torna alla finestra del browser del blocco note di Cloud Datalab e fai clic sull'icona ungit per aprire una pagina del browser ungit (vedi Utilizzo di ungit nel browser). Dopo aver fornito un titolo di commit, New Notebook.ipynb è pronto per essere impegnato nel repository VM di Cloud Datalab.

  4. Dopo aver eseguito il commit del blocco note, esegui il push al repository Cloud Remote da datalab-notebooks dalla pagina del browser ungit.

Utilizzo di git dalla riga di comando

Anziché utilizzare ungit dall'interfaccia utente di Cloud Datalab per il controllo del codice sorgente (vedi Utilizzo di ungit nel tuo browser), puoi connetterti tramite SSH alla VM Cloud Datalab ed eseguire git da un terminale in esecuzione nella VM o da Cloud Shell. Segui questi passaggi:

  1. SSH alla VM Cloud Datalab utilizzando l'interfaccia a riga di comando gcloud o la console Google Cloud:

    Comando gcloud

    Esegui questo comando dopo aver inserito project-id, zone e instance-name.
    gcloud compute --project project-id ssh 
    --zone zone instance-name

    Console/Shell

    Vai alla sezione Istanze VM di Google Cloud Console, espandi il menu SSH a destra della riga di VM Cloud Datalab, quindi seleziona Visualizza comando gcloud.
    Si apre la finestra della riga di comando gcloud, che mostra il comando gcloud SSH che puoi copiare e incollare per eseguirlo in un terminale locale.
  2. Dopo aver eseguito l'accesso tramite SSH alla VM Cloud Datalab, esegui il comando sudo docker ps per elencare l'ID container dell'immagine docker di Cloud Datalab in esecuzione nella VM. Copia l'ID container associato al comando /datalab/run.sh e il nome datalab_datalab-server.
    docker ps
    CONTAINER ID  ...    COMMAND   ...   ...   NAMES
    ...
    b228e3392374   ...   "/datalab/run.sh" ... datalab_datalab-server-...
    ...
    
  3. Apri una sessione shell interattiva all'interno del container utilizzando l'ID container ultimo passaggio.
    docker exec -it container-id bash
    ...
    root@datalab-server-vm-name:/#
    
  4. Passa alla directory /content/datalab/notebooks nel container.
    cd /content/datalab/notebooks
    
    Questa è la directory radice del repository Git VM di Cloud Datalab da cui puoi eseguire i comandi git.
    git status
    On branch master
    nothing to commit, working directory clean
    

Copia dei blocchi note dalla VM Cloud Datalab

Puoi copiare file dalla tua istanza VM Cloud Datalab utilizzando il comando gcloud compute scp. Ad esempio, per copiare i contenuti della directory datalab/notebooks della VM Cloud Datalab in una directory instance-name-notebooks sulla tua macchina locale, esegui il comando seguente dopo aver sostituito instance-name con il nome della VM Cloud Datalab (la directory di directory instance-name-notebooks verrà creata se non esiste).

gcloud compute scp --recurse \
  datalab@instance-name:/mnt/disks/datalab-pd/content/datalab/notebooks \
  instance-name-notebooks

Backup di Cloud Datalab

Le istanze di Cloud Datalab eseguono periodicamente il backup dei contenuti dell'utente in un bucket Google Cloud Storage nel progetto dell'utente per impedire la perdita accidentale di contenuti dell'utente in caso di disco VM non riuscito o eliminato. Per impostazione predefinita, un'istanza Cloud Datalab archivia tutti i contenuti dell'utente in un disco collegato e l'utilità di backup funziona sulla directory principale di questo disco. Il job di backup viene eseguito ogni dieci minuti, crea un file ZIP dell'intero disco, lo confronta con l'ultimo file ZIP di backup, carica il file ZIP se vi è una differenza tra i due e se è trascorso tempo sufficiente tra le nuove modifiche e l'ultimo backup. Cloud Datalab carica i file di backup in Google Cloud Storage.

Cloud Datalab conserva gli ultimi 10 backup orari, 7 backup giornalieri e 20 backup settimanali ed elimina i file di backup meno recenti per risparmiare spazio. I backup possono essere disattivati passando il flag --no-backups durante la creazione di un'istanza di Cloud Datalab con il comando datalab create.

Ogni file di backup è denominato utilizzando la zona dell'istanza VM, il nome dell'istanza, il percorso della directory di backup del blocco note all'interno dell'istanza, il timestamp e un tag che può essere oraria, giornaliera o settimanale. Per impostazione predefinita, Cloud Datalab proverà a creare il percorso di backup $project_id.appspot.com/datalab_backups. Se non è possibile creare questo percorso o se l'utente non dispone di autorizzazioni sufficienti, viene tentato di crearne uno $project_id/datalab_backups. Se questo tentativo non va a buon fine, i backup su Google Cloud Storage non andranno a buon fine.

Ripristino dei backup

Per ripristinare un backup, l'utente seleziona il file di backup da Google Cloud Storage esaminando la zona VM, il nome della VM, la directory del blocco note e il timestamp leggibile.

Esempio di percorso del file di backup: gs://myproject/datalab-backups/us-central1-b/datalab0125/content/daily-20170127102921 /tmp/backup0127.zip

Questo backup di esempio è stato creato per la VM datalab0125 nella zona us-central1-b e include tutti i contenuti nella directory/content del blocco note. È stato creato come punto di backup giornaliero il giorno 01/27/2017 alle ore 10:29:21.

Un file ZIP di backup può essere scaricato dal browser o utilizzando lo strumento gsutil che è installato come parte dell'installazione dell'interfaccia a riga di comando di Google Cloud CLI.

  • Per utilizzare il browser, accedi a Google Cloud Console, quindi seleziona Storage dalla barra laterale di navigazione a sinistra. Passa al bucket di backup Cloud Datalab, quindi seleziona e scarica il file ZIP su disco.

  • Per utilizzare gsutil per scaricare il file di backup, esegui gsutil cp gs://backup_path destination_path. Ad esempio, per eseguire il backup ed estrarre il file ZIP di esempio discusso sopra:

    gsutil cp 
    gs://myproject/datalab-backups/us-central1-b/datalab0125/content/daily-20170127102921
    /tmp/backup0127.zip
    unzip -q /tmp/backup0127.zip -d /tmp/restore_location/

Utilizzo dei dati

Cloud Datalab può accedere ai dati che si trovano in una delle seguenti posizioni:

  • Google Cloud Storage: è possibile accedere a file e directory in Cloud Storage in modo programmatico utilizzando le API datalab.storage (consulta il tutorial sul blocco note /datalab/docs/tutorials/Storage/Storage APIs.ipynb)

  • BigQuery: tabelle e viste possono essere interrogate utilizzando le API SQL e datalab.bigquery (consulta il tutorial sul blocco note datalab/docs/tutorials/BigQuery/BigQuery/BigQuery APIs.ipynb)

  • File system locale sul disco permanente: puoi creare o copiare file sul file system sul disco permanente collegato alla VM Cloud Datalab.

Se i tuoi dati si trovano in una località diversa, on-premise o in un altro cloud, puoi trasferire i dati in Cloud Storage utilizzando lo strumento gsutil o il servizio Cloud Storage Transfer.