Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Unity Catalog adalah data terpadu dan solusi tata kelola AI yang dibangun langsung ke dalam platform Azure Databricks. Ini adalah gambaran umum konsep utama di Unity Catalog dan cara menggunakan Unity Catalog untuk mengatur data.
Pilar utama Katalog Unity meliputi yang berikut ini:
- Kontrol akses terpadu: Unity Catalog menawarkan satu tempat untuk mengelola izin untuk tabel, file, model, dan objek lainnya dari satu antarmuka.
- Penemuan data: Katalog Unity memberdayakan pengguna untuk menemukan dan memahami aset data melalui antarmuka yang dapat dicari yang diperkaya dengan tag, deskripsi, dan metadata.
- Pelacakan silsilah otomatis: Lacak aliran data secara otomatis dan bagaimana data diubah dari sumber ke tampilan dan dasbor akhir.
- Audit: Pertahankan catatan lengkap semua akses data dan aktivitas sistem untuk memenuhi persyaratan keamanan dan kepatuhan terhadap peraturan.
- Pemantauan kualitas data: Lacak kesehatan aset data Anda secara proaktif dengan pembuatan profil bawaan dan pemberitahuan yang menangkap anomali sebelum mencapai konsumen hilir.
- Berbagi data yang aman: Bertukar data langsung dengan aman di seluruh organisasi dan cloud menggunakan protokol Berbagi Delta terbuka, menghilangkan kebutuhan akan ETL atau penyalinan data yang kompleks.
Katalog Unity juga tersedia sebagai implementasi sumber terbuka. Lihat blog pengumuman dan repositori GitHub Katalog Unity yang publik.
Model objek Katalog Unity
Di Unity Catalog, setiap aset yang Anda kelola dimodelkan sebagai objek. Lebih khusus lagi, objek ini disebut objek yang dapat diamankan di Unity Catalog. Anda dapat menggunakan kebijakan kontrol akses dan metadata seperti tag untuk mengatur objek yang dapat diamankan ini.
Objek yang dapat diamankan hidup dalam hierarki model objek Katalog Unity, berakar pada objek khusus yang disebut metastore. Di bawahnya, aset data seperti tabel, tampilan, volume, fungsi, dan model mengikuti namespace tiga tingkat (catalog.schema.object). Objek lain, seperti kredensial penyimpanan, lokasi eksternal, koneksi, dan berbagi, berada tepat di bawah metastore.
Hierarki ini adalah dasar bagaimana Katalog Unity mengatur aset dan menegakkan tata kelola. Untuk memahami model objek Katalog Unity dan setiap objek yang dapat diamankan secara lebih rinci, lihat Referensi objek yang dapat diamankan Katalog Unity. Untuk memahami cara kerja model izin dalam konteks model objek Katalog Unity, lihat konsep model izin Katalog Unity.
Peran admin
Administrator bertanggung jawab untuk mengawasi tata kelola di Unity Catalog. Berikut ini adalah berbagai tingkat peran admin dan hak istimewa defaultnya:
- Admin akun dapat membuat metastores, menautkan ruang kerja ke metastores, menambahkan pengguna, dan menetapkan hak istimewa pada metastores.
- Admin ruang kerja dapat menambahkan pengguna ke ruang kerja, dan mengelola banyak objek khusus ruang kerja seperti pekerjaan dan buku catatan. Bergantung pada ruang kerja, admin ruang kerja juga dapat memiliki banyak otoritas di metastore yang dilampirkan ke ruang kerja.
- Admin metastore adalah peran opsional yang dapat mengelola penyimpanan tabel dan volume di tingkat metastore. Ini juga nyaman jika Anda ingin mengelola data secara terpusat di beberapa ruang kerja di suatu wilayah.
Untuk informasi selengkapnya, lihat Hak istimewa admin di Katalog Unity.
Memberikan dan mencabut akses ke objek yang dapat diamankan
Pengguna istimewa dapat memberikan dan mencabut akses ke objek yang dapat diamankan pada tingkat apa pun dalam hierarki, termasuk metastore itu sendiri. Akses ke objek secara implisit memberikan akses yang sama ke semua anak-anak dari objek tersebut, kecuali akses dicabut.
Anda dapat menggunakan perintah ANSI SQL umum untuk memberikan dan mencabut akses ke objek di Katalog Unity. Contohnya:
GRANT CREATE TABLE ON SCHEMA mycatalog.myschema TO `finance-team`;
Anda juga dapat menggunakan Catalog Explorer, Databricks CLI, dan REST API untuk mengelola izin objek.
Admin metastore, pemilik objek, dan pengguna dengan MANAGE privilege pada objek dapat memberikan dan mencabut akses. Untuk mempelajari cara mengelola hak istimewa di Unity Catalog, lihat Mengelola hak istimewa di Unity Catalog.
Akses default ke objek database di Katalog Unity
Unity Catalog beroperasi berdasarkan prinsip hak istimewa paling sedikit, di mana pengguna memiliki akses minimum yang mereka butuhkan untuk melakukan tugas yang diperlukan. Saat ruang kerja dibuat, pengguna non-admin hanya memiliki akses ke katalog Ruang Kerja yang disediakan secara otomatis, yang menjadikan katalog ini tempat yang nyaman bagi pengguna untuk mencoba proses pembuatan dan akses objek database di Unity Catalog. Lihat Hak istimewa katalog ruang kerja.
Tabel dan volume eksternal terkelola versus
Tabel dan volume dapat dikelola sendiri atau dari luar.
- Tabel terkelola dikelola sepenuhnya oleh Unity Catalog, yang berarti bahwa Unity Catalog mengelola tata kelola dan file data yang mendasar untuk setiap tabel terkelola. Tabel terkelola disimpan di lokasi yang dikelola Katalog Unity di penyimpanan cloud Anda. Tabel terkelola selalu menggunakan format Delta Lake. Anda dapat menyimpan tabel terkelola di tingkat metastore, katalog, atau skema.
- Tabel eksternal adalah tabel yang aksesnya dari Azure Databricks dikelola oleh Unity Catalog, tetapi siklus hidup data dan tata letak filenya dikelola menggunakan penyedia cloud dan platform data lainnya. Biasanya Anda menggunakan tabel eksternal untuk mendaftarkan sejumlah besar data yang ada di Azure Databricks, atau jika Anda juga memerlukan akses tulis ke data menggunakan alat di luar Azure Databricks. Tabel eksternal didukung dalam beberapa format data. Setelah tabel eksternal terdaftar di metastore Unity Catalog, Anda dapat mengelola dan mengaudit akses Azure Databricks ke sana---dan bekerja dengannya---sebagaimana Anda bisa dengan tabel terkelola.
- Volume terkelola dikelola sepenuhnya oleh Katalog Unity, yang berarti bahwa Unity Catalog mengelola akses ke lokasi penyimpanan volume di akun penyedia cloud Anda. Saat Anda membuat volume yang terkelola, volume tersebut secara otomatis disimpan di lokasi penyimpanan terkelola yang dialokasikan untuk skema yang menampungnya.
- Volume eksternal mewakili data yang ada di lokasi penyimpanan yang dikelola di luar Azure Databricks, tetapi terdaftar di Unity Catalog untuk mengontrol dan mengaudit akses dari dalam Azure Databricks. Saat Anda membuat volume eksternal di Azure Databricks, Anda menentukan lokasinya, yang harus berada di jalur yang ditentukan di lokasi eksternal Unity Catalog.
Databricks merekomendasikan tabel dan volume terkelola untuk sebagian besar kasus penggunaan, karena memungkinkan Anda untuk memanfaatkan sepenuhnya kemampuan tata kelola Dan pengoptimalan performa Unity Catalog. Untuk informasi tentang kasus penggunaan umum untuk tabel dan volume eksternal, lihat Tabel terkelola dan eksternal serta Volume terkelola dan eksternal.
Lihat juga:
- Tabel yang dikelola oleh Unity Catalog di Azure Databricks untuk Delta Lake dan Apache Iceberg
- Bekerja dengan tabel eksternal
- Volume dikelola versus eksternal.
Penyimpanan cloud dan isolasi data
Katalog Unity menggunakan penyimpanan cloud dengan dua cara utama:
- Penyimpanan terkelola: lokasi default untuk tabel terkelola dan volume terkelola (data non-tabular yang tidak terstruktur) yang Anda buat di Azure Databricks. Lokasi penyimpanan terkelola ini dapat ditentukan di tingkat metastore, katalog, atau skema. Anda membuat lokasi penyimpanan terkelola di penyedia cloud Anda, tetapi siklus hidupnya dikelola sepenuhnya oleh Unity Catalog.
- Lokasi penyimpanan tempat tabel dan volume eksternal disimpan. Ini adalah tabel dan volume yang aksesnya dari Azure Databricks dikelola oleh Unity Catalog, tetapi siklus hidup data dan tata letak filenya dikelola menggunakan penyedia cloud dan platform data lainnya. Biasanya Anda menggunakan tabel atau volume eksternal untuk mendaftarkan sejumlah besar data yang ada di Azure Databricks, atau jika Anda juga memerlukan akses tulis ke data menggunakan alat di luar Azure Databricks.
Mengatur akses ke penyimpanan cloud menggunakan lokasi eksternal
Lokasi penyimpanan yang terkelola dan lokasi penyimpanan tempat tabel dan volume eksternal disimpan menggunakan objek yang dapat diamankan pada lokasi eksternal untuk mengelola akses dari Azure Databricks. Objek lokasi eksternal mereferensikan jalur penyimpanan cloud dan kredensial penyimpanan yang diperlukan untuk mengaksesnya. Kredensial penyimpanan adalah objek yang dapat diamankan Katalog Unity yang mendaftarkan kredensial yang diperlukan untuk mengakses jalur penyimpanan tertentu. Bersama-sama, keamanan ini memastikan bahwa akses ke penyimpanan dikontrol dan dilacak oleh Unity Catalog.
Diagram di bawah ini menunjukkan bagaimana lokasi eksternal mereferensikan kredensial penyimpanan dan lokasi penyimpanan cloud.
Dalam diagram ini:
- Setiap lokasi eksternal mereferensikan kredensial penyimpanan dan lokasi penyimpanan cloud.
- Beberapa lokasi eksternal dapat mereferensikan kredensial penyimpanan yang sama.
Kredensial penyimpanan 1 memberikan akses ke semua yang ada di bawah jalur
bucket/tables/*, sehingga lokasi Eksternal A dan Lokasi eksternal B mereferensikannya.
Untuk informasi selengkapnya, lihat Bagaimana Katalog Unity mengatur akses ke penyimpanan cloud?.
Hierarki lokasi penyimpanan terkelola
Tingkat di mana Anda menentukan penyimpanan terkelola di Unity Catalog bergantung pada model isolasi data pilihan Anda. Organisasi Anda mungkin mengharuskan jenis data tertentu disimpan dalam akun atau wadah tertentu di penyewa cloud Anda.
Unity Catalog memberi Anda kemampuan untuk mengonfigurasi lokasi penyimpanan terkelola di tingkat metastore, katalog, atau skema untuk memenuhi persyaratan tersebut.
Misalnya, organisasi Anda memiliki kebijakan kepatuhan perusahaan yang memerlukan data produksi yang berkaitan dengan sumber daya manusia untuk berada di kontainer abfss://mycompany-hr-prod@storage-account.dfs.core.windows.net. Di Unity Catalog, Anda dapat mencapai persyaratan ini dengan mengatur lokasi pada tingkat katalog, membuat katalog yang disebut, misalnya hr_prod, dan menetapkan lokasi abfss://mycompany-hr-prod@storage-account.dfs.core.windows.net/unity-catalog ke dalamnya. Ini berarti bahwa tabel atau volume terkelola yang dibuat dalam katalog hr_prod (misalnya, menggunakan CREATE TABLE hr_prod.default.table …) menyimpan data mereka di abfss://mycompany-hr-prod@storage-account.dfs.core.windows.net/unity-catalog. Secara opsional, Anda dapat memilih untuk menyediakan lokasi tingkat skema untuk mengatur data dalam hr_prod catalog pada tingkat yang lebih terperinci.
Jika isolasi penyimpanan tidak diperlukan untuk beberapa katalog, Anda dapat secara opsional mengatur lokasi penyimpanan di tingkat metastore. Lokasi ini berfungsi sebagai lokasi default untuk tabel dan volume terkelola dalam katalog dan skema yang tidak memiliki penyimpanan yang ditetapkan. Namun, biasanya, Databricks merekomendasikan agar Anda menetapkan lokasi penyimpanan terkelola terpisah untuk setiap katalog.
Sistem mengevaluasi hierarki lokasi penyimpanan dari skema ke katalog ke metastore.
Misalnya, jika tabel myCatalog.mySchema.myTable dibuat di my-region-metastore, lokasi penyimpanan tabel ditentukan sesuai dengan aturan berikut:
- Jika lokasi telah disediakan untuk
mySchema, itu akan disimpan di sana. - Jika tidak, dan lokasi telah disediakan pada
myCatalog, itu akan disimpan di sana. - Akhirnya, jika tidak ada lokasi yang disediakan pada
myCatalog, itu akan disimpan di lokasi yang terkait denganmy-region-metastore.
Untuk informasi selengkapnya, lihat Menentukan lokasi penyimpanan terkelola di Katalog Unity.
Isolasi lingkungan menggunakan pengikatan katalog ruang kerja
Secara default, pemilik katalog (dan admin metastore, jika mereka didefinisikan untuk akun) dapat membuat katalog dapat diakses oleh pengguna di beberapa ruang kerja yang dilampirkan ke metastore Unity Catalog yang sama.
Persyaratan organisasi dan kepatuhan sering menentukan bahwa Anda menyimpan data tertentu, seperti data pribadi, hanya dapat diakses di lingkungan tertentu. Anda mungkin juga ingin menjaga data produksi tetap terisolasi dari lingkungan pengembangan atau memastikan bahwa himpunan data dan domain tertentu tidak pernah digabungkan.
Di Azure Databricks, ruang kerja adalah lingkungan pemrosesan data utama, dan katalog adalah domain data utama. Katalog Unity memungkinkan admin metastore, pemilik katalog, dan pengguna dengan izin MANAGE untuk menetapkan atau "mengikat" katalog ke ruang kerja tertentu. Pengikatan sadar lingkungan ini memberi Anda kemampuan untuk memastikan bahwa hanya katalog tertentu yang tersedia dalam ruang kerja, terlepas dari hak istimewa tertentu pada objek data yang diberikan kepada pengguna. Namun, jika Anda menggunakan ruang kerja untuk mengisolasi akses data pengguna, Anda mungkin ingin membatasi akses katalog ke ruang kerja tertentu di akun Anda, untuk memastikan bahwa jenis data tertentu hanya diproses di ruang kerja tersebut. Anda mungkin ingin ruang kerja produksi dan pengembangan terpisah, misalnya, atau ruang kerja terpisah untuk memproses data pribadi. Ini dikenal sebagai pengikatan katalog ruang kerja. Lihat Membatasi akses katalog ke ruang kerja tertentu.
Catatan
Untuk peningkatan isolasi data, Anda juga dapat mengikat akses penyimpanan cloud dan akses layanan cloud ke ruang kerja tertentu. Lihat (Opsional) Menetapkan kredensial penyimpanan ke ruang kerja tertentu, (Opsional) Menetapkan lokasi eksternal ke ruang kerja tertentu, dan (Opsional) Menetapkan kredensial layanan ke ruang kerja tertentu.
Bagaimana cara menyiapkan Katalog Unity untuk organisasi saya?
Untuk menggunakan Unity Catalog, area kerja Azure Databricks Anda harus memiliki fitur Unity Catalog diaktifkan, artinya area kerja tersebut terhubung dengan metastore Unity Catalog.
Bagaimana ruang kerja terhubung ke sebuah metastore? Ini tergantung pada akun dan ruang kerja:
- Biasanya, saat Anda membuat ruang kerja Azure Databricks di suatu wilayah untuk pertama kalinya, metastore dibuat secara otomatis dan terhubung ke ruang kerja.
- Untuk beberapa akun lama, administrator akun harus membuat metastore dan mengaitkan ruang kerja di wilayah tersebut ke metastore. Untuk petunjuknya, lihat Membuat metastore Katalog Unity.
- Jika akun sudah memiliki metastore yang ditetapkan untuk suatu wilayah, admin akun dapat memutuskan apakah akan melampirkan metastore secara otomatis ke semua ruang kerja baru di wilayah tersebut. Lihat Aktifkan metastore agar dapat ditetapkan secara otomatis ke ruang kerja baru.
Apakah ruang kerja Anda diaktifkan untuk Katalog Unity secara otomatis atau tidak, langkah-langkah berikut juga diperlukan untuk mulai menggunakan Katalog Unity:
- Buat katalog dan skema untuk berisi objek database seperti tabel dan volume.
- Buat lokasi penyimpanan terkelola untuk menyimpan tabel dan volume terkelola dalam katalog dan skema ini.
- Memberikan akses pengguna ke katalog, skema, dan objek database.
Ruang kerja yang diaktifkan secara otomatis untuk Katalog Unity menyediakan katalog ruang kerja dengan hak istimewa luas yang diberikan kepada semua pengguna ruang kerja. Katalog ini adalah titik awal yang nyaman untuk mencoba Katalog Unity.
Untuk instruksi penyiapan terperinci, lihat Mulai menggunakan Unity Catalog.
Memutakhirkan ruang kerja yang sudah ada ke Katalog Unity
Untuk mempelajari cara meningkatkan ruang kerja non-Unity ke Unity Catalog, lihat Meningkatkan ruang kerja Azure Databricks ke Unity Catalog.
Persyaratan dan pembatasan Katalog Unity
Katalog Unity memerlukan jenis format komputasi dan file tertentu, yang dijelaskan di bawah ini. Juga tercantum di bawah ini adalah beberapa fitur Azure Databricks yang tidak sepenuhnya didukung di Unity Catalog pada semua versi Databricks Runtime.
Dukungan wilayah
Semua wilayah mendukung Katalog Unity. Untuk detailnya, lihat Wilayah Azure Databricks.
Persyaratan komputasi
Unity Catalog didukung pada kluster yang menjalankan Databricks Runtime 11.3 LTS atau lebih tinggi. Unity Catalog didukung secara default pada semua versi komputasi gudang SQL .
Kluster yang berjalan pada versi Databricks Runtime yang lebih lama tidak menyediakan dukungan untuk semua fitur dan fungsionalitas GA Katalog Unity.
Untuk mengakses data di Unity Catalog, kluster harus dikonfigurasi dengan mode akses yang benar. Katalog Unity itu aman secara default. Jika kluster tidak dikonfigurasi dengan mode akses standar atau khusus, kluster tidak dapat mengakses data di Katalog Unity. Lihat Mode akses.
Untuk informasi terperinci tentang perubahan fungsionalitas Unity Catalog di setiap versi Databricks Runtime, lihat catatan rilis.
Dukungan format file
Katalog Unity mendukung format tabel berikut:
-
Tabel terkelola harus menggunakan format
deltaatauiceberg. -
Tabel eksternal dapat menggunakan
delta, ,CSVJSON,avro,parquet,ORC, atautext.
Batasan
Katalog Unity memiliki batasan berikut. Beberapa di antaranya khusus untuk versi Databricks Runtime yang lebih lama dan mode akses komputasi.
Beban kerja Streaming Terstruktur memiliki batasan tambahan, tergantung pada Databricks Runtime dan mode akses. Lihat Persyaratan dan batasan komputasi standar dan Persyaratan dan batasan komputasi khusus.
Databricks merilis fungsionalitas baru yang menyusutkan daftar ini secara teratur.
Grup yang sebelumnya dibuat di ruang kerja (yaitu, grup tingkat ruang kerja) tidak dapat digunakan dalam pernyataan Katalog
GRANTUnity. Hal ini untuk memastikan tampilan grup yang konsisten yang dapat menjangkau seluruh ruang kerja. Untuk menggunakan grup dalam pernyataanGRANT, buat grup di tingkat akun dan perbarui otomatisasi apa pun untuk manajemen utama atau grup, seperti konektor SCIM, Okta, dan Microsoft Entra ID, serta Terraform, untuk merujuk ke titik akhir akun, bukan titik akhir ruang kerja. Lihat Sumber grup.Beban kerja di R tidak mendukung penggunaan tampilan dinamis untuk keamanan tingkat baris atau tingkat kolom pada komputasi yang menjalankan Databricks Runtime 15.3 ke bawah.
- Gunakan sumber daya komputasi khusus yang menjalankan Databricks Runtime 15.4 LTS atau lebih tinggi untuk beban kerja di R yang mengkueri tampilan dinamis. Beban kerja semacam itu juga memerlukan ruang kerja yang diaktifkan untuk komputasi tanpa server. Untuk detailnya, lihat Kontrol akses terperinci pada komputasi khusus.
Tabel terkelola dapat dikloning secara dangkal ke tabel terkelola lain pada Databricks Runtime 13.3 LTS ke atas. Tabel eksternal dapat dikloning dangkal ke tabel eksternal lain pada Databricks Runtime 14.2 ke atas. Tabel terkelola tidak dapat dikloning sepermukaan ke tabel eksternal. Selain itu, tabel eksternal tidak dapat dikloning secara dangkal ke tabel terkelola. Untuk informasi selengkapnya, lihat Kloning dangkal untuk tabel Katalog Unity.
Bucketing tidak didukung untuk tabel Unity Catalog. Jika Anda menjalankan perintah yang mencoba membuat tabel yang di-bucket di Katalog Unity, perintah tersebut akan melemparkan pengecualian.
Menulis ke jalur yang sama atau tabel Delta Lake dari ruang kerja di beberapa wilayah dapat menyebabkan performa yang tidak dapat diandalkan jika beberapa kluster mengakses Katalog Unity dan yang lain tidak.
Memanipulasi partisi untuk tabel eksternal menggunakan perintah seperti
ALTER TABLE ADD PARTITIONmengharuskan pengelogan metadata partisi diaktifkan. Lihat Penemuan partisi untuk tabel eksternal.Saat menggunakan mode ganti untuk tabel yang tidak dalam format Delta, pengguna harus memiliki hak istimewa CREATE TABLE pada skema induk dan harus menjadi pemilik objek yang ada ATAU memiliki hak untuk memodifikasi pada objek.
UDF Python tidak didukung di Databricks Runtime 12.2 LTS dan di bawahnya. Ini termasuk UDAF, UDTF, dan Panda di Spark (
applyInPandasdanmapInPandas). UDF skalar Python didukung di Databricks Runtime 13.3 LTS ke atas.UDF Scala tidak didukung dalam Databricks Runtime 14.1 dan versi sebelumnya untuk pemrosesan dengan mode akses standar. UDF skalar didukung dalam Databricks Runtime 14.2 ke atas pada komputasi dengan mode akses standar.
Pool utas Scala standar tidak didukung. Sebagai gantinya, gunakan kolam benang khusus di
org.apache.spark.util.ThreadUtils, misalnya,org.apache.spark.util.ThreadUtils.newDaemonFixedThreadPool. Namun, kumpulan utas berikut diThreadUtilstidak didukung:ThreadUtils.newForkJoinPooldan kumpulan utas apa punScheduledExecutorService.
- Log diagnostik Azure hanya mencatat peristiwa Katalog Unity di tingkat ruang kerja. Untuk melihat tindakan tingkat akun, Anda harus menggunakan tabel sistem log audit. Lihat referensi tabel sistem log audit .
Model yang terdaftar di Unity Catalog memiliki batasan tambahan. Lihat Batasan.
Kuota sumber daya
Katalog Unity memberlakukan kuota sumber daya pada semua objek yang dapat diamankan. Kuota ini tercantum dalam batas Sumber Daya. Jika Anda berharap melebihi batas sumber daya ini, hubungi tim akun Azure Databricks Anda.
Anda dapat memantau penggunaan kuota menggunakan API kuota sumber daya Unity Catalog. Lihatlah cara memantau penggunaan kuota sumber daya Unity Catalog Anda .