Membaca data yang dibagi menggunakan Delta Sharing Databricks-ke-Databricks (untuk penerima)

Halaman ini menjelaskan cara membaca data yang dibagikan dengan Anda menggunakan protokol Databricks-ke-Databricks Delta Sharing, di mana Databricks mengelola koneksi aman untuk pembagian data. Tidak seperti protokol Berbagi Delta berbagi terbuka, protokol Databricks-to-Databricks tidak memerlukan berkas kredensial untuk keamanan berbasis token.

Berbagi Databricks-ke-Databricks mengharuskan Anda, sebagai penerima, memenuhi kedua persyaratan berikut:

  • Anda memiliki akses ke ruang kerja Databricks yang diaktifkan untuk Unity Catalog.
  • Penyedia menggunakan protokol Databricks-to-Databricks Delta Sharing, bukan protokol berbagi terbuka, yang memberi Anda file kredensial.

Jika salah satu persyaratan tidak terpenuhi, lihat Membaca data yang dibagikan menggunakan berbagi terbuka Berbagi Delta dengan token pembawa.

Bagaimana cara membuat data bersama tersedia untuk tim saya?

Untuk membaca data dan notebook yang telah dibagikan dengan Anda menggunakan protokol Databricks-to-Databricks, Anda harus menjadi pengguna di ruang kerja Databricks yang diaktifkan untuk Unity Catalog. Anggota tim Anda memberi penyedia data pengidentifikasi unik untuk metastore Katalog Unity Anda, dan penyedia data menggunakan pengidentifikasi tersebut untuk membuat koneksi berbagi yang aman dengan organisasi Anda. Data bersama kemudian tersedia untuk akses baca di ruang kerja Anda. Pembaruan yang dilakukan penyedia data ke tabel, tampilan, volume, dan partisi bersama tercermin di ruang kerja Anda hampir secara real time.

Note

Perubahan kolom, seperti menambahkan, mengganti nama, atau menghapus, mungkin tidak muncul di Catalog Explorer hingga satu menit. Demikian juga, saham baru dan pembaruan pada saham, termasuk penambahan tabel baru, di-cache selama satu menit sebelum tersedia untuk Anda lihat dan cari.

Note

Tabel di information_schema dari katalog bersama mencerminkan metadata yang disimpan di Katalog Unity. Metadata ini diperbarui dari penyedia hanya saat Anda mengkueri tabel bersama secara langsung atau menjalankan perintah seperti DESCRIBE atau REFRESH FOREIGN. Hingga saat itu, information_schema mungkin terlihat usang dibandingkan dengan data penyedia.

Untuk membaca data yang telah dibagikan dengan Anda:

  1. Pengguna di tim Anda menemukan share—kontainer untuk tabel, tampilan, volume, dan notebook yang telah dibagikan dengan Anda—dan menggunakan share itu untuk membuat katalog—kontainer tingkat atas untuk semua data di Databricks Unity Catalog.
  2. Pengguna di tim Anda memberikan atau menolak akses ke katalog dan objek di dalam katalog (skema, tabel, tampilan, dan volume) kepada anggota tim Anda.
  3. Anda membaca data dalam tabel, tampilan, dan volume yang telah Anda berikan aksesnya seperti aset data apa pun di Databricks yang dapat Anda akses baca-saja (SELECT atau READ VOLUME) .
  4. Anda dapat mempratinjau dan mengkloning notebook di bagian berbagi, selama Anda memiliki USE CATALOG hak istimewa pada katalog.

Izin diperlukan

Untuk dapat mencantumkan dan melihat detail tentang semua penyedia dan saham penyedia, Anda harus memiliki USE PROVIDER otorisasi. Pengguna lain hanya memiliki akses ke penyedia dan bagian yang mereka miliki.

Untuk membuat katalog dari pembagian penyedia, Anda harus menjadi admin metastore, pengguna yang memiliki hak istimewa CREATE CATALOG dan USE PROVIDER untuk metastore Katalog Unity Anda, atau pengguna yang memiliki hak istimewa CREATE CATALOG dan kepemilikan objek penyedia.

Kemampuan untuk memberikan akses baca-saja ke skema (database), tabel, tampilan, dan volume dalam katalog yang dibuat dari berbagi mengikuti hierarki hak istimewa Katalog Unity yang khas. Kemampuan untuk melihat buku catatan dalam katalog yang dibuat dari pembagian memerlukan USE CATALOG izin pada katalog. Lihat Mengelola izin untuk skema, tabel, dan volume dalam katalog Delta Sharing.

Melihat penyedia dan berbagi

Untuk mulai membaca data yang telah dibagikan dengan Anda oleh penyedia data, Anda perlu mengetahui nama penyedia dan objek berbagi yang disimpan di metastore Katalog Unity Anda setelah penyedia membagikan data kepada Anda.

Objek penyedia mewakili metastore Unity Catalog, platform cloud, dan wilayah organisasi yang berbagi data dengan Anda.

Objek berbagi mewakili tabel, volume, dan tampilan yang telah dibagikan penyedia dengan Anda.

Menampilkan semua penyedia yang telah berbagi data dengan Anda

Untuk melihat daftar penyedia data yang tersedia, Anda dapat menggunakan Catalog Explorer, Databricks Unity Catalog CLI, atau perintah SHOW PROVIDERS SQL di buku catatan Azure Databricks atau editor kueri Databricks SQL.

Izin diperlukan: Anda harus memiliki USE PROVIDER hak istimewa. Pengguna lain hanya memiliki akses ke penyedia dan bagian penyedia yang mereka miliki.

Untuk detailnya, lihat Menampilkan penyedia.

Lihat detail penyedia

Untuk melihat detail tentang penyedia, Anda bisa menggunakan Catalog Explorer, Databricks Unity Catalog CLI, atau perintah DESCRIBE PROVIDER SQL di buku catatan Azure Databricks atau editor kueri Databricks SQL.

Izin diperlukan: Anda harus menjadi admin metastore, memiliki USE PROVIDER hak istimewa, atau memiliki objek penyedia.

Untuk detailnya, lihat Menampilkan detail penyedia.

Lihat saham

Untuk melihat saham yang telah dibagikan oleh penyedia dengan Anda, Anda bisa menggunakan Catalog Explorer, Databricks Unity Catalog CLI, atau perintah SHOW SHARES IN PROVIDER SQL di notebook Azure Databricks atau editor kueri Databricks SQL.

Izin diperlukan: Anda harus menjadi admin metastore, memiliki USE PROVIDER hak istimewa, atau memiliki objek penyedia.

Untuk detailnya, lihat Lihat berkas yang telah dibagikan penyedia kepada Anda.

Mengakses data dalam tabel atau volume bersama

Untuk membaca data dalam tabel atau volume bersama:

  1. Pengguna dengan hak istimewa harus membuat katalog dari penyimpanan bersama yang berisi tabel atau volume. Ini bisa menjadi admin metastore, pengguna yang memiliki hak istimewa CREATE CATALOG dan USE PROVIDER untuk metastore Unity Catalog Anda, atau pengguna yang memiliki hak istimewa CREATE CATALOG dan kepemilikan atas objek penyedia.
  2. Pengguna tersebut atau pengguna lain dengan hak istimewa yang sama harus memberi Anda akses ke tabel atau volume yang telah dibagikan.
  3. Anda dapat mengakses tabel atau volume seperti halnya aset data lain yang terdaftar di metastore Unity Catalog Anda.

Membuat katalog dari berbagi

Untuk membuat data dalam bagian yang dibagikan dapat diakses oleh tim Anda, Anda harus membuat katalog dari bagian tersebut atau memasang bagian ke katalog bersama yang sudah ada. Untuk membuat katalog dari berbagi, Anda bisa menggunakan Catalog Explorer, Databricks Unity Catalog CLI, atau perintah SQL di buku catatan Azure Databricks atau editor kueri Databricks SQL. Untuk memasang folder bersama ke dalam katalog bersama yang sudah ada, Anda dapat menggunakan Catalog Explorer.

Izin yang diperlukan untuk membuat katalog: Admin metastore, pengguna yang memiliki hak istimewa CREATE CATALOG dan USE PROVIDER untuk metastore Unity Catalog Anda, atau pengguna yang memiliki hak istimewa CREATE CATALOG dan kepemilikan objek penyedia.

Izin yang diperlukan untuk memasang share ke katalog yang ada: Pengguna harus memiliki USE PROVIDER hak istimewa atau kepemilikan atas objek penyedia, dan juga harus memiliki kepemilikan atas katalog bersama yang ada, atau memiliki hak istimewa MANAGE dan USE CATALOG pada katalog bersama yang ada.

Note

Jika Anda membuat katalog dari berbagi sumber daya SAP BDC, metadata semantik SAP (komentar tabel dan kolom, kunci primer, kunci asing, dan tag tata kelola) diselaraskan secara otomatis ke dalam katalog. Tindakan tambahan tidak diperlukan. Untuk detailnya, lihat Metadata semantik SAP BDC.

Note

Jika berbagi menyertakan tampilan, Anda harus menggunakan nama katalog yang berbeda dari nama katalog yang berisi tampilan di metastore penyedia.

Eksplorer Katalog

  1. Di ruang kerja Azure Databricks Anda, klik Tampilan data.Catalog untuk membuka Catalog Explorer.

  2. Di bagian atas panel Katalog , klik ikon Gerigi. ikon gerigi dan pilih Berbagi Delta.

    Atau, di sudut kanan atas, klik Bagikan Delta Sharing.

  3. Pada tab Dibagikan dengan saya , temukan dan pilih penyedia.

  4. Temukan share yang diinginkan dan klik Pasang ke katalog pada baris share.

  5. Pilih Buat katalog baru atau Pasang ke katalog yang sudah ada untuk menambahkan aset data ke katalog yang sudah ada.

  6. Masukkan nama untuk katalog baru Anda atau pilih katalog yang sudah ada untuk membagikan katalog tersebut.

  7. Klik Buat atau Pasang.

Atau, saat membuka Catalog Explorer, Anda dapat mengklik + > Buat Katalog di kanan atas untuk membuat katalog bersama. Lihat Membuat katalog.

SQL

Jalankan perintah berikut ini di buku catatan atau editor kueri Databricks SQL.

CREATE CATALOG [IF NOT EXISTS] <catalog-name>
USING SHARE <provider-name>.<share-name>;

CLI

databricks catalogs create <catalog-name> /
--provider-name <provider-name> /
--share-name <share-name>

Katalog yang dibuat dari pembagian memiliki jenis katalog Delta Sharing. Anda bisa menampilkan jenis pada halaman detail katalog di Catalog Explorer atau dengan menjalankan perintah DESCRIBE CATALOG SQL di buku catatan atau kueri Databricks SQL. Semua katalog bersama tercantum di bawah Katalog > Bersama di panel kiri Catalog Explorer.

Katalog Berbagi Delta dapat dikelola dengan cara yang sama seperti katalog reguler di metastore Katalog Unity. Anda dapat melihat, memperbarui, dan menghapus katalog Berbagi Delta menggunakan Catalog Explorer, Databricks CLI, dan dengan menggunakan perintah SQL SHOW CATALOGS, DESCRIBE CATALOG, ALTER CATALOG, dan DROP CATALOG.

Struktur 3 tingkat namespace di bawah katalog Delta Sharing yang dibuat dari sebuah pembagian adalah sama dengan struktur di bawah katalog reguler pada Unity Catalog: catalog.schema.table atau catalog.schema.volume.

Data tabel dan volume di bawah katalog bersama bersifat baca-saja, yang berarti Anda dapat melakukan operasi baca seperti:

  • DESCRIBE, SHOW, dan SELECT untuk tabel.
  • DESCRIBE VOLUME, LIST <volume-path>, SELECT * FROM <format>.'<volume_path>', dan COPY INTO untuk volume.

Notebook dalam katalog bersama dapat dilihat dan dikloning oleh pengguna mana pun dengan USE CATALOG di katalog.

Model dalam katalog bersama dapat dibaca dan dimuat untuk inferensi oleh pengguna mana pun dengan hak istimewa berikut: EXECUTE hak istimewa pada model terdaftar, plus USE SCHEMA dan USE CATALOG hak istimewa pada skema dan katalog yang berisi model.

Mengelola izin untuk skema, tabel, dan volume dalam katalog Delta Sharing

Secara default, pembuat katalog adalah pemilik semua objek data di bawah katalog Berbagi Delta dan dapat mengelola izin untuk salah satunya.

Hak istimewa diwariskan ke bawah, meskipun beberapa ruang kerja mungkin masih berada di model keamanan lama yang tidak mendukung pewarisan. Lihat Model pewarisan. Setiap pengguna yang SELECT diberikan hak istimewa pada katalog akan memiliki SELECT hak istimewa pada semua skema dan tabel dalam katalog kecuali hak istimewa tersebut dicabut. Demikian juga, setiap pengguna yang diberikan READ VOLUME hak istimewa pada katalog akan memiliki READ VOLUME hak istimewa pada semua volume dalam katalog kecuali hak istimewa tersebut dicabut. Anda tidak dapat memberikan hak istimewa yang memungkinkan akses untuk menulis atau memperbarui ke katalog Delta Sharing atau objek di dalam katalog Delta Sharing.

Pemilik katalog dapat mendelegasikan kepemilikan objek data kepada pengguna atau grup lain, sehingga memberi pengguna tersebut kemampuan untuk mengelola izin objek dan siklus hidup.

Untuk informasi terperinci tentang mengelola hak istimewa pada objek data menggunakan Unity Catalog, lihat Mengelola hak istimewa di Unity Catalog.

Membaca data dalam tabel bersama

Anda dapat membaca data dalam tabel bersama menggunakan salah satu alat yang tersedia untuk Anda sebagai pengguna Azure Databricks: Catalog Explorer, notebook, kueri SQL, Databricks CLI, dan DATAbricks REST API. Anda harus memiliki SELECT hak istimewa di atas meja.

Jika penyedia Anda telah berbagi tabel WITH HISTORY, Anda dapat menjalankan transaksi pada tabel. Untuk informasi selengkapnya tentang persyaratan dan batasan transaksi, lihat Transaksi.

Membaca data dalam tabel asing bersama atau skema asing

Important

Fitur ini ada di Beta. Admin ruang kerja dapat mengontrol akses ke fitur ini dari halaman Pratinjau . Lihat Kelola pratinjau Azure Databricks.

Anda dapat membaca data dalam tabel asing bersama atau skema asing menggunakan salah satu alat yang tersedia untuk Anda sebagai pengguna Azure Databricks: Catalog Explorer, notebook, kueri SQL, Databricks CLI, dan DATAbricks REST API. Anda harus memiliki SELECT hak istimewa pada tabel asing bersama atau skema asing.

Anda dapat menjalankan transaksi pada tabel asing yang digunakan bersama. Lihat persyaratan dan batasan transaksi.

Ada biaya tambahan saat mengakses tabel asing bersama atau skema asing. Untuk informasi tentang bagaimana biaya berbagi dihitung, lihat Bagaimana cara dikenakan dan memeriksa biaya Berbagi Delta?.

Batasan: Anda tidak dapat melewati pembatasan kluster untuk membaca tabel asing bersama, bahkan jika penyedia mengizinkannya.

Membaca data dalam tabel Iceberg bersama yang asing

Important

Fitur ini ada di Pratinjau Umum.

Anda dapat membaca data dalam tabel Iceberg asing yang dibagikan bersama menggunakan alat apa pun yang tersedia untuk Anda sebagai pengguna Azure Databricks: Catalog Explorer, notebook, kueri SQL, Databricks CLI, dan Databricks REST API. Pada Catalog Explorer, tabel Iceberg asing yang dibagikan ditampilkan dengan jenis tabel Asing dan format sumber data Iceberg.

Anda memiliki akses ke lokasi Iceberg sumber tetapi hanya dapat melakukan jenis kueri berikut:

  • Kueri cuplikan
  • Kueri streaming

Persyaratan:

  • Anda harus memiliki izin SELECT pada tabel Iceberg asing yang dibagikan.
  • Anda harus menggunakan Databricks Runtime 15.4 LTS atau lebih tinggi.

Membaca data dalam volume bersama

Anda dapat membaca data dalam volume bersama menggunakan salah satu alat yang tersedia untuk Anda sebagai pengguna Azure Databricks: Catalog Explorer, notebook, kueri SQL, Databricks CLI, dan DATAbricks REST API. Anda harus memiliki READ VOLUME hak akses pada volume.

Membaca data yang diamankan ABAC dan menerapkan kebijakan ABAC

Important

Fitur ini ada di Pratinjau Umum.

Attribute-based access control (ABAC) adalah model tata kelola data yang menyediakan kontrol akses fleksibel, dapat diskalakan, dan terpusat di seluruh Azure Databricks.

Admin akun di sisi penerima harus mengaktifkan Attribute Based Access Control untuk Berbagi Delta dalam pratinjau konsol akun untuk membaca tabel yang dibagikan dan diamankan oleh kebijakan ABAC. Ini memastikan bahwa hasil kueri sudah benar. Jika tidak, ada risiko bahwa data tidak diatur dengan benar.

Buat kebijakan ABAC untuk tabel, skema, dan katalog yang dibagikan yang dibuat dari sebuah pembagian. Tampilan materialisasi didukung dengan batasan. Anda tidak dapat membuat kebijakan ABAC untuk tabel streaming bersama atau tampilan materialisasi. Untuk mengonfigurasi kebijakan ABAC, lihat Membuat dan mengelola kebijakan kontrol akses berbasis atribut (ABAC).

Membaca kolom pelacakan baris dalam tabel yang dibagikan

Jika penyedia data telah mengaktifkan pelacakan baris pada tabel bersama, Anda dapat mengkueri kolom metadata pelacakan baris. Lihat Pelacakan baris di Databricks untuk daftar kolom yang tersedia.

Cara Anda mengakses kolom ini bergantung pada jenis tabel yang dibagikan:

  • Tabel yang dibagikan dengan riwayat dan tanpa filter partisi: Anda bisa mengkueri kolom pelacakan baris tanpa batasan.

  • Tabel dengan filter partisi atau tabel yang dibagikan tanpa riwayat: Anda harus menggunakan Scala Spark dan secara eksplisit mengatur responseFormat opsi ke delta.

    spark.read.option(“responseformat”, “delta”).table(“shared_table”).select(“_metadata.row_id”).show()
    

Memuat model bersama untuk inferensi

Untuk informasi lebih lanjut tentang memuat model yang dibagikan dan menggunakannya untuk inferensi batch, lihat Memuat versi model berdasarkan alias untuk beban kerja inferensi.

Mengkueri data riwayat tabel

Jika riwayat dibagikan bersama dengan tabel, Anda dapat memeriksa data tabel berdasarkan versi atau cap waktu. Memerlukan Databricks Runtime 12.2 LTS atau lebih tinggi.

Contohnya:

SELECT * FROM vaccine.vaccine_us.vaccine_us_distribution VERSION AS OF 3;
SELECT * FROM vaccine.vaccine_us.vaccine_us_distribution TIMESTAMP AS OF "2023-01-01 00:00:00";

Selain itu, jika umpan data perubahan (CDF) diaktifkan dengan tabel, Anda dapat mengkueri CDF. Versi dan tanda waktu didukung:

SELECT * FROM table_changes('vaccine.vaccine_us.vaccine_us_distribution', 0, 3);
SELECT * FROM table_changes('vaccine.vaccine_us.vaccine_us_distribution', "2023-01-01 00:00:00", "2022-02-01 00:00:00");

Untuk informasi selengkapnya tentang mengubah umpan data, lihat Gunakan umpan data perubahan Delta Lake pada Azure Databricks.

Mengkueri tabel menggunakan Streaming Terstruktur Apache Spark

Jika tabel dibagikan dengan riwayat, Anda dapat menggunakannya sebagai sumber untuk Streaming Terstruktur Spark. Memerlukan Databricks Runtime 12.2 LTS atau lebih tinggi.

Opsi yang didukung:

  • ignoreDeletes: Abaikan transaksi yang menghapus data.
  • ignoreChanges: Memproses ulang pembaruan jika file ditulis ulang dalam tabel sumber karena operasi perubahan data seperti UPDATE, , MERGE INTODELETE (dalam partisi), atau OVERWRITE. Baris yang tidak berubah masih dapat dikeluarkan. Oleh karena itu konsumen hilir Anda harus dapat menangani duplikat. Penghapusan tidak diteruskan ke hilir. ignoreChanges mencakup ignoreDeletes. Oleh karena itu, jika Anda menggunakan ignoreChanges, aliran Anda tidak akan terganggu oleh penghapusan atau pembaruan ke tabel sumber.
  • startingVersion: Versi tabel yang dibagikan sebagai titik awal. Semua perubahan tabel mulai dari versi ini (inklusif) akan dibaca oleh sumber streaming.
  • startingTimestamp: Penanda waktu untuk memulai. Semua perubahan tabel yang diterapkan pada atau setelah stempel waktu (inklusif) akan dibaca oleh sumber streaming. Contoh: "2023-01-01 00:00:00.0"
  • maxFilesPerTrigger: Jumlah file baru yang akan dipertimbangkan dalam setiap mikro-batch.
  • maxBytesPerTrigger: Jumlah data yang diproses di setiap mikro-batch. Opsi ini mengatur "maksimum lunak", yang berarti bahwa sebuah batch memproses kira-kira jumlah data ini dan mungkin melebihi batas tersebut agar kueri streaming dapat terus berjalan dalam kasus ketika unit input terkecil lebih besar dari batas ini.
  • readChangeFeed: Aliran data membaca alur data perubahan dari tabel bersama.

Opsi yang tidak didukung:

  • Trigger.availableNow

Contoh Kueri Streaming Terstruktur

Scala
spark.readStream.format("deltaSharing")
.option("startingVersion", 0)
.option("ignoreChanges", true)
.option("maxFilesPerTrigger", 10)
.table("vaccine.vaccine_us.vaccine_us_distribution")
Python
spark.readStream.format("deltaSharing")\
.option("startingVersion", 0)\
.option("ignoreDeletes", true)\
.option("maxBytesPerTrigger", 10000)\
.table("vaccine.vaccine_us.vaccine_us_distribution")

Jika umpan data perubahan (CDF) diaktifkan dengan tabel, Anda dapat melakukan streaming membaca CDF.

spark.readStream.format("deltaSharing")
.option("readChangeFeed", "true")
.table("vaccine.vaccine_us.vaccine_us_distribution")

Menerapkan filter baris dan masker kolom

Untuk menerapkan filter baris dan masker kolom pada tabel dan tabel asing yang dibagikan oleh penyedia data Anda, lihat Menerapkan filter baris dan masker kolom secara manual. Anda tidak dapat menerapkan mask kolom ke tabel streaming atau tampilan yang terwujud.

Membaca tabel yang memiliki vektor penghapusan atau pemetaan kolom yang aktif

Important

Fitur ini ada di Pratinjau Umum.

Vektor penghapusan adalah fitur pengoptimalan penyimpanan yang dapat diaktifkan penyedia Anda pada tabel Delta bersama. Lihat Vektor penghapusan di Databricks.

Azure Databricks juga mendukung pemetaan kolom untuk tabel Delta. Lihat Mengganti nama dan menghapus kolom dengan pemetaan kolom Delta Lake.

Jika penyedia Anda berbagi tabel dengan vektor penghapusan atau pemetaan kolom diaktifkan, Anda dapat melakukan pembacaan batch pada tabel menggunakan gudang SQL atau kluster yang menjalankan Databricks Runtime 14.1 atau lebih tinggi. Kueri CDF dan streaming memerlukan Databricks Runtime 14.2 atau versi yang lebih tinggi.

Anda dapat melakukan kueri batch apa adanya, karena kueri tersebut dapat diselesaikan responseFormat secara otomatis berdasarkan fitur tabel bersama.

Untuk membaca umpan data perubahan (CDF) atau melakukan kueri streaming pada tabel bersama yang memiliki vektor penghapusan atau pemetaan kolom yang diaktifkan, Anda harus mengatur opsi tambahan responseFormat=delta.

Contoh berikut menunjukkan permintaan batch, CDF, dan streaming.

import org.apache.spark.sql.SparkSession

// Batch query
spark.read.format("deltaSharing").table(<tableName>)

// CDF query
spark.read.format("deltaSharing")
  .option("readChangeFeed", "true")
  .option("responseFormat", "delta")
  .option("startingVersion", 1)
  .table(<tableName>)

// Streaming query
spark.readStream.format("deltaSharing").option("responseFormat", "delta").table(<tableName>)

Membaca tabel Iceberg terkelola bersama

Important

Fitur ini ada di Pratinjau Umum.

Membaca tabel Iceberg yang dikelola bersama sama seperti membaca tabel bersama, dengan pengecualian berikut:

Dukungan dalam berbagi terbuka:

Instruksi dalam artikel ini berfokus pada membaca data bersama menggunakan antarmuka pengguna Azure Databricks, khususnya sintaksis dan antarmuka Katalog Unity. Karena keterbatasan dukungan fitur Delta tingkat lanjut untuk konektor Delta Sharing, tabel Iceberg yang dikelola dan dibagikan tidak dapat dikueri menggunakan Python, Tableau, dan Power BI.

Ubah umpan data:

Perubahan umpan data tidak didukung untuk tabel Iceberg yang dikelola.

Azure Databricks Batasan Gunung Es:

Tabel Iceberg dan batasan tabel Iceberg yang dikelola berlaku. Lihat Batasan tabel Iceberg.

Baca pandangan bersama

Membaca tampilan bersama sama dengan membaca tabel bersama, dengan pengecualian ini:

Pembatasan tampilan bersama:

  • Tampilan bersama hanya mendukung subset fungsi dan operator bawaan di Databricks. Lihat Fungsi yang didukung dalam tampilan bersama Databricks-to-Databricks.
  • Penerima tidak dapat mengkueri lebih dari 20 tampilan bersama dalam kueri dalam berbagi Databricks-ke-Databricks. Pandangan bersama tidak bisa berasal dari lebih dari lima penyedia berbagi yang berbeda.
  • Saat penyedia berasal dari akun yang sama, atau saat Anda menggunakan komputasi tanpa server di akun lain, Anda tidak dapat mengkueri beberapa tampilan dependen dari penyedia yang sama dalam satu kueri. Misalnya, jika view1 bergantung pada view2 di sisi penyedia dan kedua tampilan dibagikan dengan Anda, Anda tidak dapat mereferensikan baik view1 maupun view2 dalam kueri yang sama.
  • Anda dapat menjalankan transaksi pada tampilan bersama. Lihat persyaratan dan batasan transaksi.

Persyaratan penamaan:

Nama katalog yang Anda gunakan untuk katalog bersama yang berisi tampilan tidak boleh sama dengan katalog penyedia apa pun yang berisi tabel yang dirujuk oleh tampilan. Misalnya, jika tampilan bersama terkandung dalam katalog Anda test , dan salah satu tabel penyedia yang direferensikan dalam tampilan tersebut terkandung dalam katalog penyedia test , kueri akan mengakibatkan kesalahan konflik namespace. Lihat Membuat katalog dari berbagi.

Batas waktu hasil kueri:

Jika Anda tidak memiliki akses langsung ke data yang mendasar, Azure Databricks melakukan materialisasi secara instan saat mengkueri tampilan. Ketika materialisasi ini memakan waktu lebih dari 5 menit, waktu kueri habis. Beralih ke komputasi tanpa server untuk menghindari batasan ini.

Riwayat dan streaming:

Anda tidak dapat meminta riwayat atau menggunakan tampilan sebagai sumber streaming.

Lihat dukungan dalam berbagi terbuka:

Instruksi dalam artikel ini berfokus pada membaca data bersama menggunakan antarmuka pengguna Azure Databricks, khususnya sintaksis dan antarmuka Katalog Unity. Anda juga dapat mengkueri tampilan bersama menggunakan alat Apache Spark, Python, dan BI seperti Tableau dan Power BI.

Costs:

Untuk informasi tentang bagaimana biaya berbagi dihitung, lihat Bagaimana cara dikenakan dan memeriksa biaya Berbagi Delta?.

Membaca tabel streaming bersama dan tampilan materialisasi

Membaca tabel streaming bersama dan tampilan materialisasi sama dengan membaca tabel bersama, dengan pengecualian ini:

Dukungan dalam berbagi terbuka:

Instruksi pada halaman ini berfokus pada pembacaan data bersama menggunakan antarmuka pengguna Azure Databricks, khususnya sintaksis dan antarmuka Katalog Unity. Anda juga dapat mengkueri tabel streaming bersama dan tampilan materialisasi menggunakan alat Apache Spark, Python, dan BI seperti Tableau dan Power BI. Lihat Baca data yang dibagikan menggunakan Delta Sharing berbagi terbuka dengan token pembawa.

Transaksi:

Batasan SQL:

  • Fungsi current_recipient tidak didukung.
  • Perintah DESCRIBE EXTENDED tidak didukung.

Pemetaan kolom:

Jika Anda menggunakan komputasi klasik saat menerima berbagi dari akun Azure Databricks yang berbeda, Anda harus menentukan responseFormat seperti di bawah ini saat mengkueri tampilan materialisasi atau tabel streaming dengan pemetaan kolom.

spark.read.option("responseFormat", "delta").table("catalog_name.schema_name.mv_name")

Jika Anda menggunakan komputasi klasik saat berbagi dalam akun Azure Databricks yang sama atau komputasi tanpa server dalam skenario apa pun, Anda dapat membuat kueri tanpa batasan.

Costs:

Untuk informasi tentang bagaimana biaya berbagi dihitung, lihat Bagaimana cara dikenakan dan memeriksa biaya Berbagi Delta?.

Pengecualian spesifik tampilan materialisasi

History:

Anda tidak dapat menelusuri riwayat.

Refresh:

Anda tidak dapat mengakses status penyegaran dan jadwal penyegaran tampilan terwujud.

Tampilan dan pembuatan tabel streaming:

Anda tidak dapat membuat tabel streaming pada materialized view yang dibagikan.

Pengecualian khusus tabel streaming

History:

Riwayat kueri tersedia dalam kondisi berbagi Databricks-ke-Databricks berikut:

  • Anda menggunakan komputasi tanpa server saat berbagi dengan akun Azure Databricks yang berbeda.

  • Anda menggunakan komputasi tanpa server atau klasik saat berbagi dalam akun Azure Databricks yang sama.

Untuk informasi selengkapnya tentang komputasi yang berbeda, lihat Komputasi.

Refresh:

Anda tidak dapat mengakses status penyegaran dan jadwal penyegaran tabel streaming.

Baca UDF Python yang dibagikan

Membaca UDF Python yang dibagikan sama dengan membaca tabel bersama. Setelah Anda membuat katalog baru untuk resource berbagi jaringan atau melampirkan resource berbagi jaringan ke katalog yang sudah ada, Anda dapat mengakses dan menggunakan Python UDF.

Baca yang dibagikan FeatureSpecs

Membaca bersama FeatureSpecs sama dengan membaca tabel bersama. Setelah Anda membuat katalog baru untuk berbagi atau memasang berkas tersebut ke katalog yang sudah ada, Anda dapat menayangkan FeatureSpec ke endpoint penayangan yang diinginkan. Untuk mempelajari cara membuat titik akhir, lihat Membuat titik akhir.

Jika penyedia Anda memperbarui FeatureSpec dengan dependensi baru tetapi tidak berbagi dependensi dengan Anda, model Anda gagal. Hubungi penyedia data Anda untuk memeriksa dependensi baru.

Sebelum melayani FeatureSpec, Anda harus membuat toko online dan menerbitkan tabel dependen di ruang kerja Anda. Untuk cara membuat toko online dan menerbitkan tabel, lihat Databricks Online Feature Stores.

Membaca buku catatan bersama

Untuk mempratinjau dan mengkloning file notebook bersama, Anda bisa menggunakan Catalog Explorer.

Batasan penyimpanan: Jika penyimpanan Anda menggunakan Titik Akhir Privat, Anda tidak dapat membaca buku catatan bersama.

Izin diperlukan: Pemilik atau pengguna katalog dengan USE CATALOG hak istimewa pada katalog yang dibuat dari berbagi.

  1. Di ruang kerja Azure Databricks Anda, klik Ikon Data.Catalog.

  2. Di panel kiri, perluas menu Katalog, temukan, dan pilih katalog yang dibuat dari share.

  3. Pada tab Aset lain , Anda akan melihat file buku catatan bersama apa pun.

  4. Klik nama file buku catatan bersama untuk mempratinjaunya.

  5. (Opsional) Klik tombol Kloning untuk mengimpor file buku catatan bersama ke ruang kerja Anda.

    1. Pada dialog Kloning ke , secara opsional masukkan Nama baru, lalu pilih folder ruang kerja tempat Anda ingin mengkloning file buku catatan.
    2. Klik Klon.
    3. Setelah buku catatan dikloning, dialog muncul untuk memberi tahu Anda bahwa buku catatan berhasil dikloning. Klik ungkapkan di editor buku catatan pada dialog untuk menampilkannya di editor buku catatan.

    Lihat Buku catatan Databricks.

Melepas hubungan jaringan

Putuskan hubungan berbagi untuk menghapus aset data dari katalognya.

Izin diperlukan: Pengguna yang memiliki hak istimewa USE CATALOG dan MANAGE pada katalog bersama.

  1. Di ruang kerja Azure Databricks Anda, klik Tampilan data.Catalog untuk membuka Catalog Explorer.

  2. Di bagian atas panel Katalog , klik ikon Gerigi. ikon gerigi dan pilih Berbagi Delta.

    Atau, di sudut kanan atas, klik Bagikan Delta Sharing.

  3. Pada tab Dibagikan dengan saya , temukan dan pilih penyedia.

  4. Klik ikon menu Kebab. pada baris pembagian.

  5. Klik Lepaskan berbagi.

  6. Klik Lepaskan.