Aan de slagGa gratis aan de slag

Laden in Postgres

In deze oefening schrijf je data weg naar een PostgreSQL-datawarehouse. Dat is handig wanneer je een resultaat van enkele transformaties hebt en het in een toepassing wilt gebruiken.

Bijvoorbeeld: het resultaat van een transformatie kan een kolom met film-aanbevelingen hebben toegevoegd, en die wil je gebruiken in je online winkel.

Er staat een pandas DataFrame met de naam film_pdf in je werkruimte.

Ter herinnering, zo ziet de structuur van een verbindings-URI voor sqlalchemy eruit:

postgresql://[user[:password]@][host][:port][/database]

Deze oefening maakt deel uit van de cursus

Introductie tot Data Engineering

Cursus bekijken

Oefeninstructies

  • Maak de verbinding-URI af om de database-engine te maken. De gebruiker en het wachtwoord zijn respectievelijk repl en password. De host is localhost en de poort is 5432. Deze keer is de database dwh.
  • Maak de aanroep af zodat we het "store"-schema in de database gebruiken. Als de tabel bestaat, vervang die dan volledig.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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)
Code bewerken en uitvoeren