Jenis tabel Databricks Unity Catalog

Unity Catalog mendukung tiga jenis tabel utama: tabel terkelola, eksternal, dan asing. Setiap jenis berbeda dalam cara data disimpan, dikelola, dan diatur.

Tabel yang dikelola

Tabel terkelola adalah jenis tabel default dan direkomendasikan. Unity Catalog mengelola siklus hidup data, lokasi penyimpanan, dan pengoptimalan. Saat Anda menghapus tabel terkelola, metadata dan file data yang mendasar akan dihapus.

Tabel terkelola didukung oleh Delta Lake atau Apache Iceberg dan menyediakan:

  • Pengoptimalan otomatis untuk mengurangi biaya penyimpanan dan komputasi
  • Performa kueri yang lebih cepat di semua jenis klien
  • Pemeliharaan tabel otomatis
  • Akses aman untuk klien non-Databricks melalui API terbuka
  • Peningkatan otomatis ke fitur platform terbaru

File data disimpan dalam skema atau katalog yang berisi tabel. Lihat tabel terkelola Unity Catalog untuk Delta Lake dan Apache Iceberg.

Tabel eksternal

Tabel eksternal mereferensikan data yang disimpan di penyimpanan objek cloud yang Anda kelola. Unity Catalog mengatur akses data tetapi tidak mengelola siklus hidup data, pengoptimalan, atau tata letak penyimpanan. Saat Anda menghapus tabel eksternal, hanya metadata katalog yang dihapus dan file data yang mendasar tetap ada.

Tabel eksternal Unity Catalog mendukung format Delta Lake, CSV, JSON, AVRO, PARQUET, ORC, dan TEXT. Databricks merekomendasikan agar Anda menggunakan format Delta Lake karena memiliki jaminan transaksi dan pengoptimalan performa yang tidak dilakukan format lain.

Gunakan tabel eksternal saat Anda perlu:

  • Mendaftarkan data yang sudah ada yang tidak kompatibel dengan tabel terkelola Unity Catalog
  • Menyediakan akses data langsung dari klien non-Databricks yang tidak mendukung pola akses eksternal lainnya

Lihat Bekerja dengan tabel-tabel eksternal.

Tabel dari luar

Tabel asing (juga disebut tabel federasi) adalah tabel baca-saja yang dikelola oleh katalog asing yang terdaftar di Unity Catalog. Sistem eksternal mengelola data dan metadata, sementara Unity Catalog menambahkan tata kelola data untuk kueri.

Azure Databricks mendukung dua metode untuk mendaftarkan tabel asing:

  • Federasi kueri: Menggunakan koneksi JDBC yang aman ke sistem data eksternal seperti PostgreSQL dan MySQL
  • Federasi katalog: Menghubungkan katalog eksternal untuk meminta data langsung di penyimpanan arsip

Tabel asing yang menggunakan format Delta Lake tidak memiliki banyak pengoptimalan yang tersedia dalam tabel terkelola Katalog Unity. Untuk beban kerja produksi atau himpunan data yang sering dikueri, migrasikan ke tabel terkelola Unity Catalog untuk performa yang lebih baik. Lihat Bekerja dengan tabel asing.

Perbandingan jenis tabel

Tabel berikut membandingkan tiga jenis tabel:

Fitur Tabel yang dikelola Tabel eksternal Tabel dari luar
Manajemen siklus hidup data Unity Catalog mengelola Anda mengelola Sistem eksternal mengelola
Lokasi penyimpanan Unity Catalog mengelola Anda menentukan Sistem eksternal mengelola
Pengoptimalan otomatis Yes Limited No
Format yang didukung Delta Lake, Apache Iceberg Delta Lake (disarankan), CSV, JSON, AVRO, PARQUET, ORC, TEXT Bergantung pada sistem eksternal
Data dihapus pada DROP TABLE Yes No No
Paling cocok untuk Beban kerja produksi, data yang sering diakses Integrasi legacy, data yang sudah ada Migrasi dari sistem eksternal, akses sementara

Jenis tabel lainnya

Azure Databricks juga mendukung jenis tabel khusus untuk kasus penggunaan tertentu:

  • Tabel streaming: Himpunan data alur Lakeflow yang didukung oleh Delta Lake dengan logika pemrosesan bertambah bertahap
  • Tampilan materialisasi: Himpunan data alur Lakeflow yang didukung oleh Delta Lake yang mewujudkan hasil kueri menggunakan logika alur terkelola

Jenis tabel warisan

Jenis tabel warisan berikut ini didukung untuk kompatibilitas mundur tetapi tidak disarankan untuk pengembangan baru.

Tabel Hive

Tabel Hive dikelola oleh metastore Hive versi lama dan menggunakan pola lama, termasuk codec SerDe Hive dan sintaks SQL Hive. Secara default, tabel yang terdaftar menggunakan metastore Hive warisan menyimpan data di root DBFS warisan.

Databricks merekomendasikan agar Anda memigrasikan semua tabel dari HMS warisan ke Unity Catalog. Lihat Objek database di metastore Hive versi lama.

Anda dapat memfederasikan metastore Hive ke dalam Unity Catalog secara opsional, dan mengakses tabel-tabelnya sebagai foreign table di Unity Catalog. Lihat Federasi metastore Apache Hive: aktifkan Katalog Unity untuk mengatur tabel yang terdaftar di metastore Apache Hive.

Apache Spark mendukung pendaftaran dan kueri tabel Apache Hive, tetapi codec Hive SerDe tidak dioptimalkan untuk Azure Databricks. Daftarkan tabel Hive hanya saat Anda perlu mendukung kueri terhadap data yang ditulis oleh sistem eksternal. Lihat tabel Apache Hive (warisan).

Tabel langsung

Istilah tabel dinamis mengacu pada implementasi fungsionalitas sebelumnya yang sekarang tersedia sebagai tampilan materialisasi. Perbarui kode warisan yang mereferensikan tabel langsung untuk menggunakan sintaks tampilan materialisasi. Lihat Alur Deklaratif Spark dan Tampilan materialisasi.