Membaca berbagi tabel bersama Berbagi Delta menggunakan Apache Spark DataFrames
Artikel ini menyediakan contoh sintaks penggunaan Apache Spark untuk mengkueri data yang dibagikan menggunakan Berbagi Delta. deltasharing
Gunakan kata kunci sebagai opsi format untuk operasi DataFrame.
Opsi lain untuk mengkueri data bersama
Anda juga dapat membuat kueri yang menggunakan nama tabel bersama di katalog Berbagi Delta yang terdaftar di metastore, seperti kueri dalam contoh berikut:
SQL
SELECT * FROM shared_table_name
Python
spark.read.table("shared_table_name")
Untuk informasi selengkapnya tentang mengonfigurasi Berbagi Delta di Azure Databricks dan mengkueri data menggunakan nama tabel bersama, lihat Membaca data yang dibagikan menggunakan Berbagi Delta Databricks-ke-Databricks (untuk penerima).
Anda dapat menggunakan Streaming Terstruktur untuk memproses rekaman dalam tabel bersama secara bertahap. Untuk menggunakan Streaming Terstruktur, Anda harus mengaktifkan berbagi riwayat untuk tabel. Lihat MENGUBAH BERBAGI. Berbagi riwayat memerlukan Databricks Runtime 12.2 LTS atau lebih tinggi.
Jika tabel bersama telah mengubah umpan data yang diaktifkan pada tabel Delta sumber dan riwayat yang diaktifkan pada berbagi, Anda dapat menggunakan umpan data perubahan saat membaca berbagi Delta dengan Streaming Terstruktur atau operasi batch. Harap lihat Menggunakan umpan data perubahan Delta Lake pada Azure Databricks.
Membaca dengan kata kunci format Berbagi Delta
Kata deltasharing
kunci didukung untuk operasi baca Apache Spark DataFrame, seperti yang ditunjukkan dalam contoh berikut:
df = (spark.read
.format("deltasharing")
.load("<profile-path>#<share-name>.<schema-name>.<table-name>")
)
Membaca mengubah umpan data untuk tabel bersama Berbagi Delta
Untuk tabel yang memiliki riwayat berbagi dan mengubah umpan data diaktifkan, Anda dapat membaca mengubah rekaman umpan data menggunakan Apache Spark DataFrames. Berbagi riwayat memerlukan Databricks Runtime 12.2 LTS atau lebih tinggi.
df = (spark.read
.format("deltasharing")
.option("readChangeFeed", "true")
.option("startingTimestamp", "2021-04-21 05:45:46")
.option("endingTimestamp", "2021-05-21 12:00:00")
.load("<profile-path>#<share-name>.<schema-name>.<table-name>")
)
Membaca tabel bersama Berbagi Delta menggunakan Streaming Terstruktur
Untuk tabel yang memiliki riwayat yang dibagikan, Anda dapat menggunakan tabel bersama sebagai sumber untuk Streaming Terstruktur. Berbagi riwayat memerlukan Databricks Runtime 12.2 LTS atau lebih tinggi.
streaming_df = (spark.readStream
.format("deltasharing")
.load("<profile-path>#<share-name>.<schema-name>.<table-name>")
)
# If CDF is enabled on the source table
streaming_cdf_df = (spark.readStream
.format("deltasharing")
.option("readChangeFeed", "true")
.option("startingTimestamp", "2021-04-21 05:45:46")
.load("<profile-path>#<share-name>.<schema-name>.<table-name>")
)