Tambahkan sedikit Spark pada data Anda
Pada latihan sebelumnya, Anda melihat cara memindahkan data dari Spark ke pandas. Namun, mungkin Anda ingin melakukan arah sebaliknya, yaitu memasukkan DataFrame pandas ke dalam kluster Spark! Kelas SparkSession juga memiliki metode untuk ini.
Metode .createDataFrame() menerima DataFrame pandas dan mengembalikan Spark DataFrame.
Keluaran metode ini disimpan secara lokal, bukan di katalog SparkSession. Artinya, Anda dapat menggunakan semua metode Spark DataFrame padanya, tetapi Anda tidak dapat mengakses data tersebut dalam konteks lain.
Sebagai contoh, kueri SQL (menggunakan metode .sql()) yang mereferensikan DataFrame Anda akan menghasilkan galat. Untuk mengakses data dengan cara ini, Anda harus menyimpannya sebagai temporary table.
Anda dapat melakukannya dengan metode Spark DataFrame .createTempView(), yang hanya menerima satu argumen berupa nama temporary table yang ingin Anda daftarkan. Metode ini mendaftarkan DataFrame sebagai tabel di katalog, tetapi karena tabel ini bersifat sementara, tabel hanya dapat diakses dari SparkSession spesifik yang digunakan untuk membuat Spark DataFrame tersebut.
Ada juga metode .createOrReplaceTempView(). Metode ini dengan aman membuat temporary table baru jika sebelumnya belum ada, atau memperbarui tabel yang sudah ada jika sudah didefinisikan. Anda akan menggunakan metode ini untuk menghindari masalah akibat tabel duplikat.
Lihat diagram untuk melihat berbagai cara struktur data Spark saling berinteraksi.

Sudah tersedia SparkSession bernama spark di workspace Anda, numpy telah diimpor sebagai np, dan pandas sebagai pd.
Latihan ini adalah bagian dari kursus
Dasar-Dasar PySpark
Petunjuk latihan
- Kode untuk membuat DataFrame
pandasberisi angka acak telah disediakan dan disimpan dalampd_temp. - Buat Spark DataFrame bernama
spark_tempdengan memanggil metode Spark.createDataFrame()dan berikanpd_tempsebagai argumennya. - Periksa daftar tabel di kluster Spark Anda dan pastikan DataFrame baru tersebut tidak ada. Ingat Anda dapat menggunakan
spark.catalog.listTables()untuk melakukannya. - Daftarkan DataFrame
spark_tempyang baru Anda buat sebagai temporary table menggunakan metode.createOrReplaceTempView(). Temporary table harus diberi nama"temp". Ingat bahwa nama tabel ditetapkan dengan menyertakannya sebagai satu-satunya argumen untuk metode Anda! - Periksa kembali daftar tabel.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Create pd_temp
pd_temp = pd.DataFrame(np.random.random(10))
# Create spark_temp from pd_temp
spark_temp = ____
# Examine the tables in the catalog
print(____)
# Add spark_temp to the catalog
spark_temp.____
# Examine the tables in the catalog again
print(____)