Ładowanie danych do bazy Postgres
Po wyodrębnieniu danych z systemu źródłowego i przekształceniu ich na potrzeby analiz czy raportowania, przychodzi czas na załadowanie danych do docelowego miejsca przechowywania. Zapisanie oczyszczonych danych w bazie SQL znacznie ułatwia dostęp do nich i uruchamianie zapytań przez osoby korzystające z danych. W tym przykładzie poćwiczysz ładowanie oczyszczonych danych do bazy Postgres.
Biblioteka sqlalchemy została już zaimportowana, a pandas jest dostępny jako pd. Poniżej znajdziesz kilka pierwszych wierszy DataFrame cleaned_testing_scores:
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
To ćwiczenie jest częścią kursu
ETL i ELT w Pythonie
Instrukcje do ćwiczenia
- Zaktualizuj connection string, aby zapisywać dane do bazy
schools, i utwórz obiekt połączenia za pomocąsqlalchemy. - Użyj
pandas, żeby zapisać DataFramecleaned_testing_scoresdo tabeliscoresw bazieschools. - Jeśli tabela zawiera już jakieś dane, zadbaj o to, żeby zastąpić je zawartością bieżącego DataFrame.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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="____"
)