Concepts et composants clés

Cette page décrit les concepts et les composants clés de Cloud Datalab. Vous trouverez une documentation de présentation supplémentaire dans le répertoire du notebook datalab/docs/notebooks/intro de Cloud Datalab.

Cloud Datalab et notebooks

Cloud Datalab est empaqueté sous la forme d'un conteneur et s'exécute sur une instance de machine virtuelle (VM). Le guide de démarrage rapide vous explique comment créer une VM, comment exécuter le conteneur sur cette VM et comment établir une connexion depuis votre navigateur vers le conteneur Cloud Datalab pour vous permettre d'ouvrir des notebooks Cloud Datalab existants et d'en créer de nouveaux. Consultez les notebooks de présentation dans le répertoire /docs/intro pour comprendre la manière dont les notebooks sont organisés et exécutés.

Cloud Datalab se sert de notebooks au lieu de fichiers texte contenant du code. Les blocs-notes permettent de rassembler en un seul et même endroit le code, la documentation au format markdown et les résultats obtenus après l'exécution du code, qu'ils soient au format texte, image ou HTML/JavaScript. Tout comme un éditeur de code ou un IDE, les blocs-notes vous aident à écrire votre code : grâce à eux, vous exécutez le code de manière interactive et itérative, et vous voyez les résultats avec le code. Et ce n'est pas tout ! Lorsque vous partagez un bloc-notes avec les membres de votre équipe, vous pouvez y inclure du code, de la documentation au format markdown et même des résultats qui contiennent des graphiques interactifs. De cette manière, vous leur donnez accès à un contexte qui ne serait pas visible dans des fichiers de code Python ou SQL.

Vous pouvez stocker les notebooks Cloud Datalab dans un dépôt Google Cloud Source Repositories, à savoir un dépôt Git. Ce dépôt Git est cloné sur un disque persistant associé à la VM. Ce clone devient dès lors votre espace de travail, où vous pouvez ajouter, supprimer et modifier des fichiers. Pour partager votre travail avec d'autres utilisateurs du dépôt, validez vos modifications à l'aide du client Git pour les transférer de l'espace de travail vers le dépôt. Les blocs-notes sont régulièrement enregistrés sur le disque persistant de façon automatique, et vous pouvez les sauvegarder quand vous le voulez. Notez que les blocs-notes qui ne sont pas explicitement transférés vers le dépôt Git risquent d'être perdus si vous supprimez le disque persistant. Par conséquent, nous vous conseillons vivement de ne PAS supprimer le disque persistant.

Lorsque vous ouvrez un notebook, un processus "à noyau" est lancé en backend pour gérer les variables définies pendant la session et exécuter le code de votre notebook. Lorsque le code exécuté accède à des services Google Cloud tels que BigQuery ou Google Machine Learning Engine, il utilise le compte de service disponible dans la VM. Par conséquent, le compte de service doit être autorisé à accéder aux données ou à demander le service. Pour afficher le nom du projet Cloud et du compte de service, cliquez sur l'icône utilisateur user-icon dans l'angle supérieur droit du notebook Cloud Datalab ou de la page répertoriant les notebooks dans votre navigateur (vous devrez peut-être redimensionner la fenêtre du navigateur). La VM qui permet d'exécuter Cloud Datalab est une ressource partagée et accessible à tous les membres du projet Cloud associé. Par conséquent, nous vous déconseillons vivement d'utiliser les identifiants Cloud d'un individu pour accéder aux données.

L'état du processus change à mesure que vous exécutez du code dans le notebook. Si vous affectez ou réaffectez une variable, sa valeur est utilisée pour les calculs ultérieurs. Chaque notebook en cours d'exécution s'affiche sous la forme d'une session dans Cloud Datalab. Vous pouvez cliquer sur l'icône des sessions session-icon sur la page répertoriant les notebooks Cloud Datalab pour afficher et arrêter des sessions. Lorsqu'une session est en cours d'exécution, le processus sous-jacent consomme des ressources mémoire. Si vous arrêtez une session, ce même processus disparaît avec son état en mémoire et la mémoire utilisée par la session est libérée. Les résultats enregistrés dans le notebook restent au format persistant sur le disque.

Scénarios d'utilisation de Cloud Datalab

Cloud Datalab est un environnement interactif d'analyse de données et de machine learning conçu pour Google Cloud Platform. Il vous permet d'explorer, d'analyser, de transformer et de visualiser vos données de manière interactive, ainsi que de créer des modèles de machine learning à partir de celles-ci. Le dossier Cloud Datalab /docs contient un certain nombre de tutoriels et d'exemples illustrant des tâches que vous pouvez effectuer. Cloud Datalab comprend un ensemble de bibliothèques Open Source Python couramment utilisées pour le machine learning, l'analyse et la visualisation des données. Il inclut également des bibliothèques pour accéder aux principaux services de Google Cloud Platform, comme Google BigQuery, Google Machine Learning Engine, Google Dataflow et Google Cloud Storage. Consultez la section Bibliothèques incluses pour plus d'informations.

Pour en savoir plus sur les bibliothèques Python, consultez la documentation de référence sur pydatalab.

Voici quelques conseils pour commencer :

  • Écrivez quelques requêtes SQL pour explorer les données dans BigQuery. Ajoutez les résultats dans un DataFrame et visualisez-les sous forme d'histogramme ou de graphique en courbes.
  • Lisez les données d'un fichier CSV dans Google Cloud Storage et ajoutez-les dans un DataFrame pour calculer des statistiques, telles que la moyenne, l'écart-type et les quantiles, à l'aide de Python.
  • Essayez un modèle TensorFlow ou scikit-learn pour prédire des résultats ou classer des données.

Bibliothèques incluses

La liste suivante répertorie les bibliothèques incluses et disponibles dans les notebooks Cloud Datalab (la liste des bibliothèques et les informations relatives à la version sont susceptibles d'être modifiées).

Bibliothèques installées avec Conda :

crcmod at version 1.7
dask at version 0.17.1
dill at version 0.2.6
future at version 0.16.0
futures at version 3.2.0
google-api-python-client at version 1.6.2
httplib2 at version 0.10.3
h5py at version 2.7.1
ipykernel at version 4.8.2
ipywidgets at version 7.2.1
jinja2 at version 2.8
jsonschema at version 2.6.0
matplotlib at version 2.1.2
mock at version 2.0.0
nltk at version 3.2.1
numpy at version 1.14.0
oauth2client at version 2.2.0
pandas-gbq at version 0.3.0
pandas at version 0.22.0
pandocfilters at version 1.4.2
pillow at version 5.0.0
pip at version 18.1
plotly at version 1.12.5
psutil at version 4.3.0
pygments at version 2.1.3
python-dateutil at version 2.5.0
python-snappy at version 0.5.1
pytz at version 2018.4
pyzmq at version 17.1.0
requests at version 2.18.4
scikit-image at version 0.13.0
scikit-learn at version 0.19.1
scipy at version 1.0.0
seaborn at version 0.7.0
six at version 1.11.0
statsmodels at version 0.8.0
sympy at version 0.7.6.1
tornado at version 4.5.1
widgetsnbextension at version 3.2.1
xgboost at version 0.6a2

Bibliothèques installées avec pip :

apache-airflow at version 1.9.0
apache-beam[gcp] at version 2.7.0
bs4 at version 0.0.1
ggplot at version 0.6.8
google-cloud-monitoring at version 0.28.0
lime at version 0.1.1.23
protobuf at version 3.5.2
tensorflow at version 1.8.0

Notez que future, futures et apache-beam\[gcp\] ne sont installés que pour les noyaux Python 2, tandis que notebook n'est installé que pour les noyaux Python 3.