Membaca dari database
Dalam latihan ini, Anda akan mengekstrak data yang berada di dalam tabel pada database PostgreSQL lokal. Data yang akan Anda gunakan adalah database contoh Pagila. Database ini menjadi backend aplikasi toko DVD fiksi, dan sumber belajar sering menggunakannya sebagai database contoh.
Anda akan membuat dan menggunakan sebuah fungsi yang mengekstrak sebuah tabel database ke objek DataFrame pandas. Tabel yang akan Anda ekstrak adalah:
film: film yang disewakan di toko DVD.customer: pelanggan yang menyewa film di toko DVD.
Untuk terhubung ke database, Anda harus menggunakan URI koneksi PostgreSQL, yang bentuknya seperti ini:
postgresql://[user[:password]@][host][:port][/database]
Latihan ini adalah bagian dari kursus
Pengantar Data Engineering
Petunjuk latihan
- Lengkapi definisi fungsi
extract_table_to_pandas()untuk menyertakan argumentablenamedi dalam kueri. - Isi URI koneksi. Nama pengguna dan kata sandi masing-masing adalah
repldanpassword. Host adalahlocalhostdan port5432. Database adalahpagila. - Lengkapi pemanggilan fungsi
extract_table_to_pandas()untuk mengekstrak tabel film dan customer.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Function to extract table to a pandas DataFrame
def extract_table_to_pandas(tablename, db_engine):
query = "SELECT * FROM {}".format(____)
return pd.read_sql(query, db_engine)
# Connect to the database using the connection URI
connection_uri = "postgresql://____:____@____:____/____"
db_engine = sqlalchemy.create_engine(connection_uri)
# Extract the film table into a pandas DataFrame
extract_table_to_pandas("____", db_engine)
# Extract the customer table into a pandas DataFrame
extract_table_to_pandas("____", db_engine)