[PYTHON] Die schönen und bedauerlichen Teile von Cloud Datalab

Dieser Eintrag ist

Es ist eine Fortsetzung von.

Cloud Datalab-Grundlagen

Auch hier Ich habe etwas Ähnliches geschrieben, aber wenn ich es erneut schreibe, sieht Cloud Datalab wie folgt aus.

--Jupyter-basierte interaktive Analyseumgebung --In GCP integrierte Umgebung

Datenbankannahmen

Datalab wurde entwickelt, um eng mit GCP-Projekten zusammenzuarbeiten.

Wenn nichts angegeben ist, ist dies standardmäßig wie folgt.

Anlaufen

Ich werde verschiedene Dinge vor Ort ausprobieren. Auf jeden Fall ist es der Start von Datalab.

$ datalab create --disk-size-gb 10 --no-create-repository datalab-test

Zusammenarbeit mit BigQuery

Datalab ist sehr schön, mit BigQuery zu arbeiten. Um die Geschichte ein wenig zu ändern, hat Jupyter eine Befehlsfunktion namens Magic Command, die mit %% beginnt. BigQuery- und GCS-Funktionen werden ebenfalls bereitgestellt.

Abfrage als Magic Command ausführen

Beispiel, aber Sie können sehen, wie wunderbar es ist, es in eine Zelle zu schreiben. ..

%%bq query
SELECT id, title, num_characters
FROM `publicdata.samples.wikipedia`
WHERE wp_namespace = 0
ORDER BY num_characters DESC
LIMIT 10

Führen Sie google.datalab.bigquery aus

Ich frage eine Zelle nach BQ ab und möchte sie so verarbeiten, wie sie ist was im Beispiel enthalten ist 20DataFrames.ipynb), aber Sie können das Ergebnis der Abfrage als Datenrahmen an Pandas übergeben. wunderbar.

%%bq query -n requests
SELECT timestamp, latency, endpoint
FROM `cloud-datalab-samples.httplogs.logs_20140615`
WHERE endpoint = 'Popular' OR endpoint = 'Recent'
import google.datalab.bigquery as bq
import pandas as pd

df = requests.execute(output_options=bq.QueryOutput.dataframe()).result()

Ist es so, wenn es ein bisschen mehr über API zu sein scheint?

import google.datalab.bigquery as bq
import pandas as pd

#Abfrage zu stellen
query = """SELECT timestamp, latency, endpoint
           FROM `cloud-datalab-samples.httplogs.logs_20140615`
           WHERE endpoint = 'Popular' OR endpoint = 'Recent'"""
#Erstellen Sie ein Abfrageobjekt
qobj = bq.Query(query)
#Abfrageergebnisse als Pandas-Datenrahmen abrufen
df2 = qobj.execute(output_options=bq.QueryOutput.dataframe()).result()
#Zum Betrieb von Pandas unten
df2.head()

Wenn Sie sorgfältig darüber nachdenken, scheint es, dass Magic Command erstellt wurde, da diese API bereitgestellt wird. Wenn Sie sich [hier] ansehen (https://github.com/googledatalab/pydatalab/blob/b27dc582882fe5497af49d45fc28204e4c46db12/google/datalab/bigquery/commands/_bigquery.py#L933), wird "%% Command" als "%% Command" definiert. Sie können sehen, dass.

Zusammenarbeit mit GCS

Wie bei BigQuery können Sie Objekte in GCS aus der Zelle [als Beispiel] bearbeiten (https://github.com/googledatalab/notebooks/tree/master/tutorials/Storage). Der Punkt ist, ist es möglich, Dateien zu lesen und zu schreiben? Es ist auch hilfreich, die Ergebnisse von BigQuery als Datenquelle verwenden zu können, aber es ist attraktiv, GCS-Daten als Datenquelle transparent verarbeiten zu können.

Zusammenarbeit mit CloudML

Ich konnte bestätigen, dass vorerst etwas über die API funktioniert, aber ich werde dieses Mal überspringen, da es viele Dinge gibt, die ich nicht als verschiedene Verhaltensweisen verstehe.

Instanztyp ändern

Dies ist der wahre Wert der Cloud. Sie können die Spezifikationen bei Bedarf verbessern, was mit On-Premise nicht möglich ist. Mit dem Befehl datalab create können Sie den Instanztyp mit der Option --machine-type angeben. Standardmäßig wird n1-standard-1 gestartet.

#Instanz mit Löschbefehl löschen
#In diesem Fall bleibt die angeschlossene Festplatte unverändert
$ datalab delete datalab-test

#Beginnen Sie mit demselben Computernamen, aber unterschiedlichen Instanztypen
#Maschinenname+Weil die Festplatte gemäß der pd-Namenskonvention erstellt wird
#Wenn der Computername identisch ist, wird die Disc ohne Erlaubnis angehängt.
$ datalab create --no-create-repository \
                 --machine-type n1-standard-4 \
                 datalab-test

Jetzt können Sie die technischen Daten Ihrer Maschine nach Bedarf erhöhen oder senken.

GPU-Analyseumgebung!

Dies ist vorerst das Highlight.

mit diesem! !! !! Nach Angabe der GPU-Instanz! !! !! !! Sie können leicht eine GPU-Umgebung für maschinelles Lernen erhalten! !! !! !!

Wenn ich darüber nachdenke, ist es auf der Welt nicht so einfach ... Bisher werden GPU-Instanzen von Datalab nicht unterstützt.

Zusammenfassung

Datalab ist an einigen Stellen bedauerlich, aber es besteht eine schwache Erwartung, dass GPU-Instanzen es irgendwie unterstützen, mit Ausnahme des Cloud Source Repository und der Cloud ML Engine-Umgebung. Heutzutage denke ich jedoch, dass dies ein wichtiger Teil für die Erstellung einer Datenanalyseumgebung ist. Das nächste Mal möchte ich mir diesen Bereich genauer ansehen.

Sonstige Referenzinformationen

Recommended Posts

Die schönen und bedauerlichen Teile von Cloud Datalab
Die Geschichte von Python und die Geschichte von NaN
Überprüfen Sie das Konzept und die Terminologie der Regression
Die Geschichte, deep3d auszuprobieren und zu verlieren
Über das Verhalten von copy, deepcopy und numpy.copy
Zusammenfassung der Unterschiede zwischen PHP und Python
Vollständiges Verständnis der Konzepte von Bellmanford und Dyxtra
Die Antwort von "1/2" unterscheidet sich zwischen Python2 und 3
Organisieren Sie die Bedeutung von Methoden, Klassen und Objekten
Angeben des Bereichs von Ruby- und Python-Arrays
Ändern Sie die Farbe von Fabric-Fehlern und Warnungen
Vergleichen Sie die Geschwindigkeit von Python Append und Map
Allgemeine Beschreibung des CPUFreq-Kerns und der CPUFreq-Benachrichtigungen
Organisieren Sie die grundlegende Verwendung von Autotools und pkg-config
Ich habe die Varianten von UKR gelesen und implementiert
Berücksichtigung der Stärken und Schwächen von Python
Cloud Datalab Übersicht
[SLAYER] Ich habe versucht, die Stahlseele zu bestätigen, indem ich die Texte von Slash Metal [Word Cloud] visualisiert habe.
Untersuchung der Beziehung zwischen Sprachvorverarbeitung und Transkriptionsgenauigkeit in der Google Cloud Speech API
Berücksichtigung des Unterschieds zwischen ROC-Kurve und PR-Kurve
Führen Sie die Kolben-App auf Cloud 9 und Apache Httpd aus
Die Geschichte von Python ohne Inkrement- und Dekrementoperatoren.
Ermitteln und verarbeiten Sie die Codierung der Textdatei automatisch
Beziehung der Fibonacci-Zahlenreihe und des Goldenen Schnitts
Der Prozess der Installation von Atom und der Ausführung von Python
Python - Erläuterung und Zusammenfassung der Verwendung der 24 wichtigsten Pakete
Visualisieren Sie den Bereich der internen und externen Einfügungen mit Python
[FSL] Segment- und Volumenmessung des basalen Hirnkerns (Basalganglien)
Denken Sie an das Rack und WSGI der nächsten Generation
Referenz und Änderung der rekursiven Python-Obergrenze
Ich habe mir die Versionen von Blender und Python angesehen
Visualisierung der Verbindung zwischen Malware und dem Callback-Server
[Django 2.2] Sortieren und erhalten Sie den Wert des Beziehungsziels
Persönliche Hinweise zur Integration von vscode und anaconda
Überprüfen Sie den Linux-Verteilungstyp und die Version
Animieren Sie die Grundlagen der dynamischen Planung und Rucksackprobleme