Bagikan melalui


Bekerja dengan tabel eksternal

Tabel eksternal menyimpan data dalam direktori di penyimpanan objek cloud di penyewa cloud Anda. Anda harus menentukan lokasi penyimpanan saat menentukan tabel eksternal.

Databricks merekomendasikan penggunaan tabel eksternal hanya ketika Anda juga memerlukan akses langsung ke data dari klien non-Databricks. Hak istimewa Unity Catalog tidak diberlakukan saat pengguna mengakses file data dari sistem eksternal.

Peringatan

Jika Anda memperbarui metadata tabel eksternal menggunakan klien non-Databricks atau menggunakan akses berbasis jalur dari dalam Databricks, metadata tersebut tidak secara otomatis menyinkronkan status dengan Unity Catalog. Databricks merekomendasikan untuk menghindari pembaruan metadata tersebut, tetapi jika Anda melakukannya, Anda harus menjalankan MSCK REPAIR TABLE <table-name> SYNC METADATA untuk memperbarui skema di Katalog Unity. Lihat REPAIR TABLE.

Catatan

Artikel ini berfokus pada tabel eksternal Unity Catalog. Tabel eksternal dalam metastore Apache Hive lama memiliki perilaku yang berbeda. Lihat Objek database di metastore Apache Hive warisan.

Bekerja dengan tabel eksternal

Azure Databricks hanya mengelola metadata untuk tabel eksternal dan tidak menggunakan lokasi kelola penyimpanan yang terkait dengan skema yang berisi. Pendaftaran tabel di Unity Catalog hanyalah penunjuk ke file data. Saat Anda menghapus tabel eksternal, file data tidak dihapus.

Saat membuat tabel eksternal, Anda dapat mendaftarkan direktori file data yang ada sebagai tabel atau menyediakan jalur untuk membuat file data baru.

Tabel eksternal dapat menggunakan format file berikut:

  • DELTA
  • CSV
  • JSON
  • AVRO
  • PARKET
  • ORC
  • TEXT

Membuat tabel eksternal

Untuk membuat tabel eksternal, bisa menggunakan perintah SQL atau operasi penulisan Dataframe.

Sebelum Anda mulai

Untuk membuat tabel eksternal, Anda harus memenuhi persyaratan izin berikut:

  • Hak istimewa CREATE EXTERNAL TABLE pada lokasi eksternal yang memberikan akses ke LOCATION yang diakses oleh tabel eksternal.
  • Izin USE SCHEMA pada skema induk tabel.
  • Izin USE CATALOG pada katalog induk dari tabel tersebut.
  • Izin CREATE TABLE pada skema induk tabel.

Untuk informasi selengkapnya tentang mengonfigurasi lokasi eksternal, lihat Membuat lokasi eksternal untuk menyambungkan penyimpanan cloud ke Azure Databricks.

Contoh perintah SQL

Gunakan salah satu contoh perintah berikut di buku catatan atau editor kueri SQL untuk membuat tabel eksternal.

Dalam contoh berikut ini, ganti nilai placeholder:

  • <catalog>: Nama katalog yang akan berisi tabel.
  • <schema>: Nama skema yang akan berisi tabel.
  • <table-name>: Nama untuk tabel.
  • <column-specification>: Nama dan jenis data untuk setiap kolom.
  • <bucket-path>: Jalur ke wadah penyimpanan cloud tempat tabel akan dibuat.
  • <table-directory>: Direktori tempat tabel akan dibuat. Gunakan direktori unik untuk setiap tabel.
CREATE TABLE <catalog>.<schema>.<table-name>
(
  <column-specification>
)
LOCATION 'abfss://<bucket-path>/<table-directory>';

Untuk informasi selengkapnya tentang parameter pembuatan tabel, lihat CREATE TABLE.

Operasi penulisan dataframe

Banyak pengguna membuat tabel eksternal dari hasil kueri atau operasi penulisan DataFrame. Artikel berikut menunjukkan beberapa pola yang dapat Anda gunakan untuk membuat tabel eksternal di Azure Databricks:

Menghapus tabel eksternal

Untuk menghapus tabel, Anda harus menjadi pemiliknya atau memiliki hak istimewa MANAGE pada tabel. Untuk menghilangkan tabel eksternal, jalankan perintah SQL berikut:

DROP TABLE IF EXISTS catalog_name.schema_name.table_name;

Katalog Unity tidak menghapus data yang mendasar di penyimpanan cloud saat Anda menghilangkan tabel eksternal. Anda harus langsung menghapus file data yang mendasar jika Anda perlu menghapus data yang terkait dengan tabel.

Contoh buku catatan: Membuat tabel eksternal

Anda bisa menggunakan contoh buku catatan berikut untuk membuat katalog, skema, dan tabel eksternal, dan untuk mengelola izin pada buku catatan tersebut.

Membuat dan mengelola tabel eksternal dalam Notebook Katalog Unity

Dapatkan buku catatan