Berbagi data dan aset AI dengan aman menggunakan Berbagi Delta

Artikel ini memperkenalkan Berbagi Delta di Azure Databricks, platform berbagi data aman yang memungkinkan Anda berbagi data dan aset AI di Azure Databricks dengan pengguna di luar organisasi Anda, baik pengguna tersebut menggunakan Databricks atau tidak.

Penting

Artikel Berbagi Delta di situs ini berfokus pada berbagi data, notebook, dan model AI Azure Databricks. Berbagi Delta juga tersedia sebagai proyek sumber terbuka yang dapat Anda gunakan untuk berbagi tabel Delta dari platform lain. Delta Sharing juga menyediakan backbone untuk Databricks Marketplace, forum terbuka untuk bertukar produk data.

Catatan

Jika Anda adalah penerima data yang telah diberikan akses ke data bersama melalui Berbagi Delta, dan Anda hanya ingin mempelajari cara mengakses data tersebut, lihat Mengakses data yang dibagikan dengan Anda menggunakan Berbagi Delta (untuk penerima).

Apa itu Berbagi Delta?

Berbagi Delta adalah protokol terbuka yang dikembangkan oleh Databricks untuk berbagi data yang aman dengan organisasi lain terlepas dari platform komputasi yang mereka gunakan.

Ada tiga cara untuk berbagi data menggunakan Berbagi Delta:

  1. Protokol berbagi Databricks-to-Databricks, yang memungkinkan Anda berbagi data dan aset AI dari ruang kerja yang didukung Unity Catalog dengan pengguna yang juga memiliki akses ke ruang kerja Databricks yang mendukung Unity Catalog.

    Pendekatan ini menggunakan server Berbagi Delta yang dibangun ke dalam Azure Databricks. Ini mendukung beberapa fitur Berbagi Delta yang tidak didukung dalam protokol lain, termasuk berbagi buku catatan, berbagi volume Katalog Unity, berbagi model AI Katalog Unity, tata kelola data Katalog Unity, audit, dan pelacakan penggunaan untuk penyedia dan penerima. Integrasi dengan Unity Catalog menyederhanakan penyiapan dan tata kelola untuk penyedia dan penerima dan meningkatkan performa.

    Lihat Berbagi data menggunakan protokol Delta Sharing Databricks-to-Databricks (untuk penyedia).

  2. Protokol berbagi terbuka Databricks, yang memungkinkan Anda berbagi data tabular yang Anda kelola di ruang kerja Databricks berkemampuan Unity Catalog dengan pengguna di platform komputasi apa pun.

    Pendekatan ini menggunakan server Berbagi Delta yang disertakan dalam Azure Databricks dan berguna saat Anda mengelola data menggunakan Unity Catalog dan ingin membagikannya dengan pengguna yang tidak menggunakan Databricks atau tidak memiliki akses ke ruang kerja Databricks yang mendukung Unity Catalog. Integrasi dengan Unity Catalog di sisi penyedia menyederhanakan penyiapan dan tata kelola untuk penyedia.

    Lihat Berbagi data menggunakan protokol berbagi terbuka Berbagi Delta (untuk penyedia).

  3. Implementasi yang dikelola pelanggan dari server Berbagi Delta sumber terbuka, yang memungkinkan Anda berbagi dari platform apa pun ke platform apa pun, baik Databricks atau tidak.

    Dokumentasi Azure Databricks tidak mencakup instruksi untuk menyiapkan server Berbagi Delta Anda sendiri. Lihat github.com/delta-io/delta-sharing.

Berbagi, penyedia, dan penerima

Konsep utama yang mendasar Berbagi Delta di Azure Databricks adalah berbagi, penyedia, dan penerima.

Apa itu berbagi?

Di Berbagi Delta, berbagi adalah kumpulan tabel dan partisi tabel baca-saja yang ingin dibagikan penyedia dengan satu atau beberapa penerima. Jika penerima Anda menggunakan ruang kerja Databricks dengan dukungan Unity Catalog, Anda juga bisa menyertakan file buku catatan, tampilan (termasuk tampilan dinamis yang membatasi akses di tingkat baris dan kolom), volume Katalog Unity, dan model Katalog Unity dalam berbagi.

Anda dapat menambahkan atau menghapus tabel, tampilan, volume, model, dan file buku catatan dari berbagi kapan saja, dan Anda dapat menetapkan atau mencabut akses penerima data ke berbagi kapan saja.

Di ruang kerja Azure Databricks dengan dukungan Unity Catalog, berbagi adalah objek yang dapat diamankan yang terdaftar di Unity Catalog. Jika Anda menghapus berbagi dari metastore Unity Catalog Anda, semua penerima bagian tersebut kehilangan kemampuan untuk mengaksesnya.

Lihat Membuat dan mengelola berbagi untuk Berbagi Delta.

Apa itu penyedia?

Penyedia adalah entitas yang berbagi data dengan penerima. Jika Anda adalah penyedia dan ingin memanfaatkan server Berbagi Databricks Delta bawaan dan mengelola berbagi dan penerima menggunakan Unity Catalog, Anda memerlukan setidaknya satu ruang kerja Azure Databricks yang diaktifkan untuk Unity Catalog. Anda tidak perlu memigrasikan semua ruang kerja yang ada ke Unity Catalog. Anda cukup membuat ruang kerja unity Catalog-enabled baru untuk kebutuhan Berbagi Delta Anda.

Jika penerima berada di ruang kerja Databricks yang mendukung Katalog Unity, penyedia juga merupakan objek yang dapat diamankan Katalog Unity yang mewakili organisasi penyedia dan mengaitkan organisasi tersebut dengan sekumpulan berbagi.

Apa itu penerima?

Penerima adalah entitas yang menerima berbagi dari penyedia. Di Katalog Unity, berbagi adalah objek yang dapat diamankan yang mewakili organisasi dan mengaitkannya dengan pengidentifikasi berbagi kredensial atau aman yang memungkinkan organisasi mengakses satu atau beberapa berbagi.

Sebagai penyedia data (pembagi), Anda dapat menentukan beberapa penerima untuk metastore Unity Catalog tertentu, tetapi jika Anda ingin berbagi data dari beberapa metastore dengan pengguna atau grup pengguna tertentu, Anda harus menentukan penerima secara terpisah untuk setiap metastore. Penerima dapat memiliki akses ke beberapa saham.

Jika penyedia menghapus penerima dari metastore Unity Catalog mereka, penerima tersebut kehilangan akses ke semua berbagi yang sebelumnya dapat diaksesnya.

Lihat Membuat dan mengelola penerima data untuk Berbagi Delta.

Berbagi terbuka versus berbagi Databricks-ke-Databricks

Bagian ini menjelaskan dua protokol untuk berbagi dari ruang kerja Databricks yang diaktifkan untuk Unity Catalog.

Catatan

Bagian ini mengasumsikan bahwa penyedia berada di ruang kerja Azure Databricks yang mendukung Unity Catalog. Untuk mempelajari tentang menyiapkan server Berbagi Delta sumber terbuka untuk dibagikan dari platform non-Databricks atau ruang kerja Katalog non-Unity, lihat github.com/delta-io/delta-sharing.

Cara penyedia menggunakan Berbagi Delta di Azure Databricks bergantung pada dengan siapa mereka berbagi data:

  • Berbagi terbuka memungkinkan Anda berbagi data dengan pengguna mana pun, baik mereka memiliki akses ke Azure Databricks atau tidak.
  • Berbagi Databricks-to-Databricks memungkinkan Anda berbagi data dengan pengguna Azure Databricks yang ruang kerjanya dilampirkan ke metastore Unity Catalog yang berbeda dari milik Anda. Databricks-to-Databricks juga mendukung berbagi buku catatan, volume, dan model, yang tidak tersedia dalam berbagi terbuka.

Apa itu pembagian Delta terbuka?

Jika Anda ingin berbagi data dengan pengguna di luar ruang kerja Azure Databricks Anda, terlepas dari apakah mereka menggunakan Databricks, Anda dapat menggunakan Berbagi Delta terbuka untuk berbagi data Anda dengan aman. Sebagai penyedia data, Anda menghasilkan token dan membagikannya dengan aman kepada penerima. Mereka menggunakan token untuk mengautentikasi dan mendapatkan akses baca ke tabel yang telah Anda sertakan dalam berbagi yang telah Anda beri akses kepada mereka.

Penerima dapat mengakses data bersama menggunakan banyak alat dan platform komputasi, termasuk:

  • Azure Databricks
  • Apache Spark
  • Pandas
  • Power BI

Untuk daftar lengkap konektor Berbagi Delta dan informasi tentang cara menggunakannya, lihat dokumentasi Berbagi Delta.

Lihat juga Berbagi data menggunakan protokol berbagi terbuka Berbagi Delta (untuk penyedia).

Apa itu Databricks-to-Databricks Delta Sharing?

Jika Anda ingin berbagi data dengan pengguna yang memiliki ruang kerja Databricks yang diaktifkan untuk Unity Catalog, Anda dapat menggunakan Databricks-to-Databricks Delta Sharing. Berbagi Databricks-to-Databricks memungkinkan Anda berbagi data dengan pengguna di akun Databricks lainnya, baik mereka berada di AWS, Azure, atau GCP. Ini juga merupakan cara yang bagus untuk berbagi data dengan aman di berbagai metastorEs Unity Catalog di akun Databricks Anda sendiri. Perhatikan bahwa tidak perlu menggunakan Berbagi Delta untuk berbagi data antar ruang kerja yang dilampirkan ke metastore Katalog Unity yang sama, karena dalam skenario tersebut Anda dapat menggunakan Katalog Unity itu sendiri untuk mengelola akses ke data di seluruh ruang kerja.

Salah satu keuntungan dari berbagi Databricks-ke-Databricks adalah bahwa penerima berbagi tidak memerlukan token untuk mengakses berbagi, dan penyedia tidak perlu mengelola token penerima. Keamanan koneksi berbagi—termasuk semua verifikasi identitas, autentikasi, dan audit—dikelola sepenuhnya melalui Berbagi Delta dan platform Databricks. Keuntungan lainnya adalah kemampuan untuk berbagi file notebook Databricks, tampilan, volume Unity Catalog, dan model Unity Catalog.

Lihat juga Berbagi data menggunakan protokol Delta Sharing Databricks-to-Databricks (untuk penyedia).

Bagaimana admin penyedia menyiapkan Berbagi Delta?

Bagian ini memberikan gambaran umum tentang bagaimana penyedia dapat mengaktifkan Berbagi Delta dan memulai berbagi dari ruang kerja Azure Databricks yang mendukung Katalog Unity. Untuk Berbagi Delta sumber terbuka, lihat github.com/delta-io/delta-sharing.

Berbagi Databricks-ke-Databricks antara metastorEs Unity Catalog di akun yang sama selalu diaktifkan. Jika Anda adalah penyedia yang ingin mengaktifkan Berbagi Delta untuk berbagi data dengan ruang kerja Databricks di akun lain atau klien non-Databricks, admin akun Azure Databricks atau admin metastore melakukan langkah-langkah penyiapan berikut (pada tingkat tinggi):

  1. Aktifkan Berbagi Delta untuk metastore Unity Catalog yang mengelola data yang ingin Anda bagikan.

    Catatan

    Anda tidak perlu mengaktifkan Berbagi Delta di metastore Anda jika Anda berniat menggunakan Berbagi Delta untuk berbagi data hanya dengan pengguna di metastore Katalog Unity lainnya di akun Anda. Berbagi metastore-ke-metastore dalam satu akun Azure Databricks diaktifkan secara default.

    Lihat Mengaktifkan Berbagi Delta di metastore.

  2. Buat berbagi yang menyertakan aset data yang terdaftar di metastore Katalog Unity.

    Jika Anda berbagi dengan penerima non-Databricks (dikenal sebagai berbagi terbuka) Anda dapat menyertakan tabel dalam format Delta atau Parquet. Jika Anda berencana menggunakan berbagi Databricks-ke-Databricks, Anda juga dapat menambahkan tampilan, volume Katalog Unity, model Katalog Unity, dan file notebook ke berbagi.

    Lihat Membuat dan mengelola berbagi untuk Berbagi Delta.

  3. Buat penerima.

    Lihat Membuat dan mengelola penerima data untuk Berbagi Delta.

    Jika penerima Anda bukan pengguna Databricks, atau tidak memiliki akses ke ruang kerja Databricks yang diaktifkan untuk Unity Catalog, Anda harus menggunakan berbagi terbuka. Sekumpulan kredensial berbasis token dihasilkan untuk penerima tersebut.

    Jika penerima Anda memiliki akses ke ruang kerja Databricks yang diaktifkan untuk Unity Catalog, Anda dapat menggunakan berbagi Databricks-ke-Databricks, dan tidak diperlukan kredensial berbasis token. Anda meminta pengidentifikasi berbagi dari penerima dan menggunakannya untuk membuat koneksi aman.

    Tip

    Gunakan diri Anda sebagai penerima pengujian untuk mencoba proses penyiapan.

  4. Berikan akses penerima ke satu atau beberapa berbagi.

    Lihat Mengelola akses ke berbagi data Berbagi Delta (untuk penyedia).

    Catatan

    Langkah ini juga dapat dilakukan oleh pengguna non-admin dengan USE SHAREhak istimewa , USE RECIPIENT dan SET SHARE PERMISSION . Lihat Hak istimewa Unity Catalog dan objek yang dapat diamankan.

  5. Kirim penerima informasi yang mereka butuhkan untuk menyambungkan ke berbagi (hanya berbagi terbuka).

    Lihat Mengirim informasi koneksi mereka kepada penerima.

    Untuk berbagi terbuka, gunakan saluran aman untuk mengirim tautan aktivasi kepada penerima yang memungkinkan mereka mengunduh kredensial berbasis token mereka.

    Untuk berbagi Databricks-ke-Databricks, data yang disertakan dalam berbagi menjadi tersedia di ruang kerja Databricks penerima segera setelah Anda memberi mereka akses ke berbagi.

Penerima sekarang dapat mengakses data bersama.

Bagaimana penerima mengakses data bersama?

Penerima mengakses aset data bersama dalam format baca-saja. File buku catatan bersama bersifat baca-saja, tetapi dapat dikloning lalu dimodifikasi dan dijalankan di ruang kerja penerima sama seperti buku catatan lainnya.

Akses aman tergantung pada model berbagi:

Setiap kali penyedia data memperbarui tabel data atau volume di akun Databricks mereka sendiri, pembaruan muncul mendekati real time dalam sistem penerima.

Bagaimana Anda melacak siapa yang berbagi dan mengakses data bersama?

Penyedia data di ruang kerja Azure Databricks yang mendukung Unity Catalog dapat menggunakan pengelogan audit Azure Databricks dan tabel sistem untuk memantau pembuatan dan modifikasi berbagi dan penerima, dan dapat memantau aktivitas penerima pada berbagi. Lihat Mengaudit dan memantau berbagi data.

Penerima data yang menggunakan data bersama di ruang kerja Databricks dapat menggunakan pengelogan audit Databricks dan tabel sistem untuk memahami siapa yang mengakses data mana. Lihat Mengaudit dan memantau berbagi data.

Berbagi volume

Anda dapat berbagi volume menggunakan alur berbagi Databricks-to-Databricks. Lihat Menambahkan volume ke berbagi (untuk penyedia) dan Membaca data yang dibagikan menggunakan Berbagi Delta Databricks-ke-Databricks (untuk penerima) (untuk penerima).

Berbagi model

Anda dapat berbagi model menggunakan alur berbagi Databricks-to-Databricks. Lihat Menambahkan model ke berbagi (untuk penyedia) dan Membaca data yang dibagikan menggunakan Databricks-to-Databricks Delta Sharing (untuk penerima) (untuk penerima).

Berbagi buku catatan

Anda dapat menggunakan Berbagi Delta untuk berbagi file buku catatan menggunakan alur berbagi Databricks-ke-Databricks. Lihat Menambahkan file buku catatan ke berbagi (untuk penyedia) dan Membaca buku catatan bersama (untuk penerima).

Membatasi akses di tingkat baris dan kolom

Anda dapat berbagi tampilan dinamis yang membatasi akses ke data tabel tertentu berdasarkan properti penerima. Berbagi tampilan dinamis memerlukan alur berbagi Databricks-ke-Databricks. Lihat Menambahkan tampilan dinamis ke berbagi untuk memfilter baris dan kolom.

Berbagi dan streaming Delta

Berbagi Delta mendukung Streaming Terstruktur Spark. Penyedia dapat berbagi tabel dengan riwayat sehingga penerima dapat menggunakannya sebagai sumber Streaming Terstruktur, memproses data bersama secara bertahap dengan latensi rendah. Penerima juga dapat melakukan kueri perjalanan waktu Delta Lake pada tabel yang dibagikan dengan riwayat.

Untuk mempelajari cara berbagi tabel dengan riwayat, lihat Menambahkan tabel ke berbagi. Untuk mempelajari cara menggunakan tabel bersama sebagai sumber streaming, lihat Mengkueri tabel menggunakan Streaming Terstruktur Apache Spark (untuk penerima berbagi Databricks-ke-Databricks) atau Mengakses tabel bersama menggunakan Spark Structured Streaming (untuk penerima data berbagi terbuka).

Lihat juga Streaming di Azure Databricks.

Tanya Jawab Umum Berbagi Delta

Berikut ini adalah tanya jawab umum tentang Berbagi Delta.

Apakah saya memerlukan Unity Catalog untuk menggunakan Berbagi Delta?

Tidak, Anda tidak memerlukan Unity Catalog untuk berbagi (sebagai penyedia) atau menggunakan data bersama (sebagai penerima). Namun, Unity Catalog memberikan manfaat seperti dukungan untuk berbagi aset non-tabular dan AI, tata kelola siap pakai, kesederhanaan, dan performa kueri.

Penyedia dapat berbagi data dengan dua cara:

  • Letakkan aset untuk dibagikan di bawah manajemen Katalog Unity dan bagikan menggunakan server Berbagi Delta Azure Databricks bawaan.

    Anda tidak perlu memigrasikan semua aset ke Unity Catalog. Anda hanya memerlukan satu ruang kerja Azure Databricks yang diaktifkan untuk Unity Catalog untuk mengelola aset yang ingin Anda bagikan. Di beberapa akun, ruang kerja baru diaktifkan untuk Katalog Unity secara otomatis. Lihat Pengaktifan Otomatis Katalog Unity.

  • Terapkan server Berbagi Delta terbuka untuk berbagi data, tanpa harus menggunakan akun Azure Databricks Anda.

Penerima dapat menggunakan data dengan dua cara:

  • Tanpa ruang kerja Databricks. Gunakan konektor Berbagi Delta sumber terbuka yang tersedia untuk banyak platform data, termasuk Power BI, panda, dan sumber terbuka Apache Spark. Lihat Membaca data yang dibagikan menggunakan berbagi terbuka Berbagi Delta (untuk penerima) dan proyek sumber terbuka Berbagi Delta.

  • Di ruang kerja Databricks. Ruang kerja penerima tidak perlu diaktifkan untuk Unity Catalog, tetapi ada keuntungan dari tata kelola, kesederhanaan, dan performa jika ada.

    Organisasi penerima yang menginginkan keuntungan ini tidak perlu memigrasikan semua aset ke Unity Catalog. Anda hanya memerlukan satu ruang kerja Azure Databricks yang diaktifkan untuk Unity Catalog untuk mengelola aset yang dibagikan dengan Anda. Di beberapa akun, ruang kerja baru diaktifkan untuk Katalog Unity secara otomatis. Lihat Pengaktifan Otomatis Katalog Unity.

Lihat Membaca data yang dibagikan menggunakan berbagi terbuka Berbagi Delta (untuk penerima) dan Membaca data yang dibagikan menggunakan Berbagi Delta Databricks-ke-Databricks (untuk penerima).

Apakah saya harus menjadi pelanggan Databricks untuk menggunakan Berbagi Delta?

Tidak, Berbagi Delta adalah protokol terbuka. Anda dapat berbagi data non-Databricks dengan penerima di platform data apa pun. Penyedia dapat mengonfigurasi server Berbagi Delta terbuka untuk dibagikan dari platform komputasi apa pun. Penerima dapat menggunakan data bersama menggunakan konektor Berbagi Delta sumber terbuka untuk banyak produk data, termasuk Power BI, panda, dan sumber terbuka Spark.

Namun, menggunakan Berbagi Delta di Azure Databricks, terutama berbagi dari ruang kerja yang mendukung Katalog Unity, memiliki banyak keuntungan.

Untuk detailnya, lihat pertanyaan pertama dalam FAQ ini.

Apakah Berbagi Delta dikenakan biaya keluar?

Berbagi Delta dalam suatu wilayah tidak dikenakan biaya keluar. Tidak seperti platform berbagi data lainnya, Berbagi Delta tidak memerlukan replikasi data. Model ini memiliki banyak keuntungan, tetapi artinya vendor cloud Anda dapat membebankan biaya keluar data saat Anda berbagi data di seluruh cloud atau wilayah. Azure Databricks mendukung berbagi dari Cloudflare R2 (Pratinjau Umum), yang tidak dikenakan biaya keluar, dan menyediakan alat dan rekomendasi lain untuk memantau dan menghindari biaya keluar. Lihat Memantau dan mengelola biaya keluar Berbagi Delta (untuk penyedia).

Dapatkah penyedia mencabut akses penerima?

Ya, akses penerima dapat dicabut sesuai permintaan dan pada tingkat granularitas tertentu. Anda dapat menolak akses penerima ke berbagi tertentu dan alamat IP tertentu, memfilter data tabular untuk penerima, mencabut token penerima, dan menghapus penerima sepenuhnya. Lihat Mencabut akses penerima ke berbagi dan Membuat dan mengelola penerima data untuk Berbagi Delta.

Bukankah tidak aman untuk menggunakan URL yang telah ditandatangani sebelumnya?

Berbagi Delta menggunakan URL yang telah ditandatangani sebelumnya untuk menyediakan akses sementara ke file di penyimpanan objek. Mereka hanya diberikan kepada penerima yang sudah memiliki akses ke data bersama. Mereka aman karena berumur pendek dan tidak memperluas tingkat akses di luar penerima apa yang telah diberikan.

Apakah token yang digunakan dalam protokol berbagi terbuka Berbagi Delta aman?

Karena Berbagi Delta memungkinkan berbagi lintas platform—tidak seperti platform berbagi data lain yang tersedia—protokol berbagi memerlukan token terbuka. Penyedia dapat memastikan keamanan token dengan mengonfigurasi masa pakai token, mengatur kontrol jaringan, dan mencabut akses sesuai permintaan. Selain itu, token tidak memperluas tingkat akses di luar penerima apa yang telah diberikan. Lihat Pertimbangan keamanan untuk token.

Jika Anda lebih suka tidak menggunakan token untuk mengelola akses ke berbagi penerima, Anda harus menggunakan berbagi Databricks-ke-Databricks atau menghubungi tim akun Databricks Anda untuk alternatif.

Apakah Berbagi Delta mendukung berbagi tampilan?

Ya, Berbagi Delta mendukung berbagi tampilan. Lihat Menambahkan tampilan ke berbagi.

Untuk mempelajari tentang penyempurnaan yang direncanakan untuk melihat berbagi, hubungi tim akun Databricks Anda.

Batasan

Kuota sumber daya

Nilai di bawah ini menunjukkan kuota untuk sumber daya Berbagi Delta. Nilai kuota di bawah ini dinyatakan relatif terhadap objek induk di Katalog Unity.

Objek Parent Nilai
penyedia metastore 1000
Penerima metastore 5000
berbagi metastore 1000
tabel Berbagi 1000
volume Berbagi 1000
model Berbagi 1000
skema Berbagi 500
notebook Berbagi 100

Jika Anda berharap melebihi batas sumber daya ini, hubungi tim akun Azure Databricks Anda.

Langkah berikutnya