Data laden naar een Postgres-database
Als data uit een bronsysteem is gehaald en getransformeerd zodat het past bij analytics- of rapportagecases, is het tijd om de data in een definitieve opslaglocatie te laden. Schoongemaakte data opslaan in een SQL-database maakt het voor afnemers eenvoudig om erbij te kunnen en er queries op te draaien. In dit voorbeeld ga je geoefende, schoongemaakte data laden in een Postgres-database.
sqlalchemy is geïmporteerd en pandas is beschikbaar als pd. De eerste paar rijen van de DataFrame cleaned_testing_scores staan hieronder:
street_address city math_score ... best_score
01M539 111 Columbia Street Manhattan 657.0 Math
02M545 350 Grand Street Manhattan 613.0 Math
01M292 220 Henry Street Manhattan 410.0 Math
Deze oefening maakt deel uit van de cursus
ETL en ELT in Python
Oefeninstructies
- Werk de connectiestring bij zodat je naar de database
schoolsschrijft en maak een connectieobject metsqlalchemy. - Gebruik
pandasom de DataFramecleaned_testing_scoresweg te schrijven naar de tabelscoresin de databaseschools. - Als de tabel al gevuld is met data, zorg er dan voor dat je de waarden vervangt met de huidige DataFrame.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# Update the connection string, create the connection object to the schools database
db_engine = sqlalchemy.____("postgresql+psycopg2://repl:password@localhost:5432/____")
# Write the DataFrame to the scores table
cleaned_testing_scores.____(
name="____",
con=db_engine,
index=False,
if_exists="____"
)