[PYTHON] Databricks

Databricks ist ein Dienst zum Erstellen von Apps, die große Datenmengen parallel verarbeiten. Entwickelt von den Entwicklern von Apache Spark als verwalteter Dienst von Apache Spark. Ich habe in den letzten Tagen studiert, aber ich werde die Punkte aufschreiben, die meine Aufmerksamkeit erregt haben.

Kurz gesagt, Apache Spark konvertiert automatisch Code, der Tabellendaten verarbeitet, in parallele Verarbeitung und führt sie parallel aus. Entwickler können große Datenmengen parallel verarbeiten, als würden sie Code in Pandas auf Jupyter schreiben. Eine Bibliothek zum maschinellen Lernen ist ebenfalls enthalten, sodass mit Spark alles von der Datenvorverarbeitung bis zur Analyse und Vorhersage erledigt werden kann.

Der Unterschied zu seinem Vorgänger (?) Hadoop besteht auch darin, dass der Speicher getrennt ist. Durch die Spezialisierung auf Datenverarbeitung kann Spark in Kombination mit verschiedenen anderen Speichern verwendet werden.

Hauptquelle

Ich werde Folgendes aufzeichnen, da Databricks etwas schwer zu verstehen war.

CLI

Es ist nicht verwirrend, aber ohne CLI ziemlich problematisch, daher ist die Installation unerlässlich. Verwenden Sie pip3 für die Installation. Sie können es verwenden, indem Sie die Verbindungsinformationen mit databricks configure einstellen.

#Aufbau
$ pip3 install databricks-cli
$ databricks configure --token
Databricks Host (should begin with https://): https://hogehoge.cloud.databricks.com/
Token: (Geben Sie das von der GUI erstellte Token ein)

#Funktionsprüfung
$ databricks fs ls

Der Befehl databricks hat verschiedene Unterbefehle, aber der Befehl databricks fs enthält von Anfang an dbfs als Abkürzung.

Secret

Passwörter usw. werden für jeden Bereich geheim gespeichert.

Bereich erstellen

databricks secrets create-scope --scope astro_snowflake

Bereichsanzeige

databricks secrets list-scopes

Geheimnisse zum Geltungsbereich hinzugefügt

databricks secrets put --scope hoge_scope --key User
databricks secrets put --scope hoge_scope --key Password

Geheimnisse anzeigen

databricks secrets list --scope astro_snowflake

Zwei Dateispeicher, DBFS und Workspace

Es gibt zwei Dateien, die von Databricks wie folgt verwendet werden.

Sie können nicht programmgesteuert direkt auf Workspace zugreifen!

Beziehung zwischen SQL-Tabelle und DataFrame

Mit Databricks können Sie mit Python oder SQL auf die Tabelle zugreifen. Um dieselbe Tabelle in einer anderen Sprache zu verwenden, müssen Sie die Tabelle als Tabelle registrieren, in der sie in SQL angezeigt werden kann.

Tabellen haben globale, auf die von überall zugegriffen werden kann, und lokale Tabellen, auf die nur von demselben Notebook aus zugegriffen werden kann.

Registrieren Sie den Python DataFrame als lokale Tabelle mit dem Namen "temp_table_name". Sie können jetzt in SQL darauf verweisen.

df.createOrReplaceTempView("temp_table_name")

Registrieren Sie den Python DataFrame als globale Tabelle mit dem Namen "global_table_name". Sie können jetzt in SQL darauf verweisen. Auf die globale Tabelle kann über Daten in der Web-Benutzeroberfläche verwiesen werden.

df.write.format("parquet").saveAsTable("global_table_name")

Lesen Sie die mit dem Namen "temp_table_name" registrierte Tabelle als Python DataFrame.

temp_table = spark.table("temp_table_name")

Die globale Tabelle wird in DBFS gespeichert. Der Ort, an dem es gespeichert ist, kann durch den Ort bestätigt werden, der in "DESCRIBE DETAIL" angezeigt wird.

DESCRIBE DETAIL `global_table_name`

Zum Beispiel dbfs: / user / hive / warehouse / global_table_name

Notebook magische Befehle

https://docs.databricks.com/notebooks/notebooks-use.html

Magischer Befehl

Recommended Posts

Databricks
Führen Sie einen Komponententest des Databricks Notebook durch