Cargar en Postgres
En este ejercicio, escribirás algunos datos en un almacén de datos PostgreSQL. Eso puede ser útil cuando tienes un resultado de algunas transformaciones, y quieres utilizarlo en una aplicación.
Por ejemplo, el resultado de una transformación podría haber añadido una columna con recomendaciones de películas, y quieres utilizarlas en tu tienda en línea.
Hay un DataFrame de pandas
llamado film_pdf
en tu espacio de trabajo.
A modo de recordatorio, ésta es la estructura de una conexión URI para sqlalchemy
:
postgresql://[user[:password]@][host][:port][/database]
Este ejercicio forma parte del curso
Introducción a la ingeniería de datos
Instrucciones del ejercicio
- Completa la conexión URI para crear el motor de base de datos. El usuario y la contraseña son
repl
ypassword
respectivamente. El host eslocalhost
, y el puerto es5432
. Esta vez, la base de datos esdwh
. - Finaliza la llamada para que utilicemos el esquema
"store"
en la base de datos. Si la tabla existe, sustitúyela por completo.
Ejercicio interactivo práctico
Prueba este ejercicio completando el código de muestra.
# 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)