Membuat metastore Unity Catalog
Artikel ini memperlihatkan cara membuat metastore Katalog Unity dan menautkannya ke ruang kerja.
Penting
Untuk ruang kerja yang diaktifkan untuk Katalog Unity secara otomatis, instruksi dalam artikel ini tidak perlu. Databricks mulai mengaktifkan ruang kerja baru untuk Unity Catalog secara otomatis pada 9 November 2023, dengan peluncuran berlangsung secara bertahap di seluruh akun. Anda harus mengikuti instruksi dalam artikel ini hanya jika Anda memiliki ruang kerja dan belum memiliki metastore di wilayah ruang kerja Anda. Untuk menentukan apakah metastore sudah ada di wilayah Anda, lihat Pengaktifan Otomatis Katalog Unity.
Metastore adalah wadah objek tingkat-atas di Katalog Unity. Metadata Unity Catalog mendaftarkan metadata tentang objek yang dapat diamankan (seperti tabel, volume, lokasi eksternal, dan berbagi) dan izin yang mengatur akses ke objek tersebut. Setiap metastore mengekspos namespace layanan 3 tingkat (catalog
.schema
.table
) tempat data dapat diatur. Anda harus memiliki satu metastore untuk setiap wilayah tempat organisasi Anda beroperasi. Untuk bekerja dengan Katalog Unity, pengguna harus berada di ruang kerja yang dilampirkan ke metastore di wilayah mereka.
Untuk membuat metastore, Anda melakukan hal berikut:
Di akun Azure Anda, secara opsional buat lokasi penyimpanan untuk penyimpanan tingkat metastore tabel dan volume terkelola.
Untuk informasi guna membantu Anda memutuskan apakah Anda memerlukan penyimpanan tingkat metastore, lihat (Opsional) Membuat penyimpanan tingkat metastore dan Data dipisahkan secara fisik dalam penyimpanan.
Di akun Azure Anda, buat identitas terkelola Azure atau perwakilan layanan yang memberikan akses ke lokasi penyimpanan tersebut.
Di Azure Databricks, buat metastore, lampirkan lokasi penyimpanan, dan tetapkan ruang kerja ke metastore.
Catatan
Selain pendekatan yang dijelaskan dalam artikel ini, Anda juga dapat membuat metastore dengan menggunakan penyedia Databricks Terraform, khususnya sumber daya databricks_metastore. Untuk mengaktifkan Katalog Unity untuk mengakses metastore, gunakan databricks_metastore_data_access. Untuk menautkan ruang kerja ke metastore, gunakan databricks_metastore_assignment.
Sebelum Anda mulai
Sebelum memulai, Anda harus membiasakan diri dengan konsep Unity Catalog dasar, termasuk metastores dan penyimpanan terkelola. Lihat Apakah itu Katalog Unity?.
Anda juga harus mengonfirmasi bahwa Anda memenuhi persyaratan berikut untuk semua langkah penyiapan:
Anda harus menjadi admin akun Azure Databricks.
Admin akun Azure Databricks pertama harus menjadi Administrator Global ID Microsoft Entra pada saat mereka pertama kali masuk ke konsol akun Azure Databricks. Setelah masuk pertama kali, pengguna tersebut menjadi admin akun Azure Databricks dan tidak lagi memerlukan peran Administrator Global ID Microsoft Entra untuk mengakses akun Azure Databricks. Admin akun pertama dapat menetapkan pengguna di penyewa ID Microsoft Entra sebagai admin akun tambahan (yang dapat menetapkan lebih banyak admin akun). Admin akun tambahan tidak memerlukan peran tertentu dalam ID Microsoft Entra.
Ruang kerja yang Anda lampirkan ke metastore harus ada di paket Azure Databricks Premium.
Jika Anda ingin menyiapkan penyimpanan akar tingkat metastore, Anda harus memiliki izin untuk membuat yang berikut ini di penyewa Azure Anda:
- Akun penyimpanan untuk digunakan dengan Azure Data Lake Storage Gen2. Lihat Membuat akun penyimpanan untuk digunakan dengan Azure Data Lake Storage Gen2.
- Sumber daya baru untuk menyimpan identitas terkelola yang ditetapkan sistem. Ini mengharuskan Anda menjadi Kontributor atau Pemilik grup sumber daya dalam langganan apa pun di penyewa.
Langkah 1 (Opsional): Membuat kontainer penyimpanan untuk penyimpanan terkelola tingkat metastore
Dalam langkah ini, yang bersifat opsional, Anda membuat akun penyimpanan dan kontainer untuk menyimpan tabel terkelola dan data volume di tingkat metastore. Untuk menentukan apakah Anda memerlukan penyimpanan tingkat metastore, lihat (Opsional) Membuat penyimpanan tingkat metastore.
Buat akun penyimpanan untuk Azure Data Lake Storage Gen2.
Akun penyimpanan ini akan berisi tabel dan volume terkelola Unity Catalog. Ini harus merupakan akun Azure Data Lake Storage Gen2 di wilayah yang sama dengan ruang kerja Azure Databricks Anda. Lihat Membuat akun penyimpanan untuk digunakan dengan Azure Data Lake Storage Gen2.
Buat kontainer penyimpanan yang akan menyimpan tabel terkelola dan data volume Anda di tingkat metastore.
Anda hanya dapat membuat satu metastore per wilayah. Anda harus menggunakan wilayah yang sama untuk metastore dan kontainer penyimpanan Anda.
Lokasi penyimpanan tingkat metastore ini dapat ditimpa di tingkat katalog dan skema. Lihat Menentukan lokasi penyimpanan terkelola di Katalog Unity.
Buat catatan URI ADLSv2 untuk kontainer, yang dalam format berikut:
abfss://<container-name>@<storage-account-name>.dfs.core.windows.net/<metastore-name>
Pada langkah-langkah berikut, ganti
<storage-container>
dengan URI ini.
Langkah 2 (Opsional): Buat identitas terkelola untuk mengakses lokasi penyimpanan terkelola
Dalam langkah ini, yang diperlukan hanya jika Anda menyelesaikan langkah 1, Anda membuat konektor akses Azure Databricks yang menyimpan identitas terkelola dan memberinya akses ke kontainer penyimpanan.
Ikuti instruksi dalam Menggunakan identitas terkelola Azure di Unity Catalog untuk mengakses penyimpanan.
Catatan
Anda dapat menggunakan identitas terkelola Azure atau perwakilan layanan sebagai identitas yang memberikan akses ke kontainer penyimpanan metastore. Databricks sangat merekomendasikan identitas terkelola, karena tidak mengharuskan Anda untuk mempertahankan kredensial atau memutar rahasia, dan mereka memungkinkan Anda terhubung ke akun Azure Data Lake Storage Gen2 yang dilindungi oleh firewall penyimpanan. Jika Anda ingin menggunakan perwakilan layanan, lihat Membuat penyimpanan terkelola Katalog Unity menggunakan perwakilan layanan (warisan).
Langkah 3: Buat metastore dan lampirkan ruang kerja
Setiap wilayah Azure Databricks memerlukan metastore Unity Catalog sendiri.
Anda membuat metastore untuk setiap wilayah tempat organisasi Anda beroperasi. Anda dapat menautkan masing-masing metastore regional ini ke sejumlah ruang kerja di wilayah tersebut. Setiap ruang kerja yang ditautkan memiliki tampilan data yang sama di metastore, dan kontrol akses data dapat dikelola di seluruh ruang kerja. Anda dapat mengakses data di metore lain menggunakan Berbagi Delta.
Jika Anda memilih untuk membuat penyimpanan tingkat metastore, metastore akan menggunakan kontainer penyimpanan dan identitas terkelola Azure yang Anda buat di langkah-langkah sebelumnya.
Membuat metastore.
Jika Anda memilih untuk membuat penyimpanan tingkat metastore, pastikan Anda memiliki jalur ke kontainer penyimpanan dan ID sumber daya konektor akses Azure Databricks yang Anda buat di tugas sebelumnya.
Masuk ke ruang kerja Anda sebagai admin akun.
Klik nama pengguna Anda di bilah atas ruang kerja Azure Databricks dan pilih Kelola Akun.
Masuk ke konsol akun Azure Databricks.
Klik Katalog.
Klik Buat metastore.
Masukkan yang berikut:
Nama untuk metastore.
Wilayah tempat metastore akan disebarkan.
Ini harus berada di wilayah yang sama dengan ruang kerja yang ingin Anda gunakan untuk mengakses data. Jika Anda memilih untuk membuat kontainer penyimpanan untuk penyimpanan tingkat metastore, wilayah tersebut juga harus sama.
(Opsional) Jalur ADLS Gen 2: Masukkan jalur ke kontainer penyimpanan yang akan Anda gunakan sebagai penyimpanan akar untuk metastore.
Prefiks
abfss://
ditambahkan secara otomatis.(Opsional) ID Konektor Akses: Masukkan ID sumber daya konektor akses Azure Databricks dalam format:
/subscriptions/12f34567-8ace-9c10-111c-aea8eba12345c/resourceGroups/<resource-group>/providers/Microsoft.Databricks/accessConnectors/<connector-name>
Klik Buat.
Ketika diminta, pilih ruang kerja untuk ditautkan ke metastore.
Untuk detailnya, lihat Mengaktifkan ruang kerja untuk Katalog Unity.
Mentransfer peran admin metastore ke grup.
Pengguna yang membuat metastore adalah pemiliknya, juga disebut admin metastore. Admin metastore dapat membuat objek tingkat atas di metastore seperti katalog dan dapat mengelola akses ke tabel dan objek lainnya. Databricks merekomendasikan agar Anda menetapkan ulang peran admin metastore ke grup. Lihat Menetapkan admin metastore.
Aktifkan manajemen unggahan Azure Databricks ke volume terkelola.
Azure Databricks menggunakan berbagi sumber daya lintas asal (CORS) untuk mengunggah data ke volume terkelola di Unity Catalog. Lihat Mengonfigurasi akun penyimpanan Katalog Unity untuk CORS.