In Postgres laden
In dieser Übung schreibst du einige Daten in ein PostgreSQL Data Warehouse. Das kann nützlich sein, wenn du ein Ergebnis von einigen Transformationen hast und es in einer Anwendung verwenden willst.
Das Ergebnis einer Transformation könnte zum Beispiel eine Spalte mit Filmempfehlungen sein, die du in deinem Online-Shop verwenden möchtest.
In deinem Arbeitsbereich gibt es einen pandas
DataFrame namens film_pdf
.
Zur Erinnerung: Hier ist die Struktur einer Verbindungs-URI für sqlalchemy
:
postgresql://[user[:password]@][host][:port][/database]
Diese Übung ist Teil des Kurses
Einführung in die Datentechnik
Anleitung zur Übung
- Fülle die Verbindungs-URI aus, um die Datenbank-Engine zu erstellen. Der Benutzer und das Passwort sind
repl
bzw.password
. Der Host istlocalhost
, und der Port ist5432
. Dieses Mal ist die Datenbankdwh
. - Beende den Aufruf, damit wir das Schema
"store"
in der Datenbank verwenden. Wenn die Tabelle existiert, ersetze sie vollständig.
Interaktive Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Finish the connection URI
connection_uri = "____://____:____@____:____/____"
db_engine_dwh = sqlalchemy.create_engine(connection_uri)
# Transformation step, join with recommendations data
film_pdf_joined = film_pdf.join(recommendations)
# Finish the .to_sql() call to write to store.film
film_pdf_joined.to_sql("film", ____, schema="____", if_exists="____")
# Run the query to fetch the data
pd.read_sql("SELECT film_id, recommended_film_ids FROM store.film", db_engine_dwh)