Volume
Berlaku untuk: Databricks SQL Databricks Runtime 13.3 LTS dan di atas Unity Catalog saja
Volume adalah objek Katalog Unity yang mewakili volume penyimpanan logis di lokasi penyimpanan objek cloud. Volume menyediakan kemampuan untuk mengakses, menyimpan, mengatur, dan mengatur file. Meskipun tabel menyediakan tata kelola atas himpunan data tabular, volume menambahkan tata kelola atas himpunan data non-tabular. Anda dapat menggunakan volume untuk menyimpan dan mengakses file dalam format apa pun, termasuk data terstruktur, semi terstruktur, dan tidak terstruktur.
Volume adalah saudara kandung dari tabel, tampilan, dan objek lain yang diatur di bawah skema di Unity Catalog.
Volume dapat dikelola atau eksternal.
Untuk detail dan batasan selengkapnya, lihat Apa itu volume Katalog Unity?.
Volume terkelola
Volume terkelola adalah volume penyimpanan yang diatur Oleh Katalog Unity yang dibuat dalam lokasi penyimpanan terkelola dari skema yang berisi. Volume terkelola memungkinkan pembuatan penyimpanan yang diatur untuk bekerja dengan file tanpa overhead lokasi eksternal dan kredensial penyimpanan. Anda tidak perlu menentukan lokasi saat membuat volume terkelola, dan semua akses file untuk data dalam volume terkelola adalah melalui jalur yang dikelola oleh Katalog Unity.
Volume eksternal
Volume eksternal adalah volume penyimpanan yang diatur Oleh Katalog Unity yang terdaftar terhadap direktori dalam lokasi eksternal.
Penamaan dan referensi volume
Nama volume adalah pengidentifikasi yang dapat memenuhi syarat dengan katalog dan nama skema dalam perintah SQL.
Jalur untuk mengakses file dalam volume menggunakan format berikut:
/Volumes/<catalog_identifier>/<schema_identifier>/<volume_identifier>/<path>/<file_name>
Perhatikan bahwa Azure Databricks menormalkan pengidentifikasi ke huruf kecil.
Azure Databricks juga mendukung skema opsional dbfs:/
, sehingga jalur berikut juga berfungsi:
dbfs:/Volumes/<catalog_identifier>/<schema_identifier>/<volume_identifier>/<path>/<file_name>
Catatan
Anda juga dapat mengakses data dalam volume eksternal menggunakan URI penyimpanan cloud.
Mengelola file dalam volume
Berlaku untuk: Databricks SQL Connector
Menggunakan Konektor SQL Databricks, Anda dapat mengelola file dalam volume menggunakan perintah berikut:
- MASUKKAN ke dalam untuk menyalin file dari penyimpanan lokal Anda ke dalam volume.
- GET untuk menyalin file dari volume ke penyimpanan lokal Anda.
- HAPUS untuk menghapus file dari volume.
Contoh
--- Create an external volume under the directory “my-path”
> CREATE EXTERNAL VOLUME IF NOT EXISTS myCatalog.mySchema.myExternalVolume
COMMENT 'This is my example external volume'
LOCATION 's3://my-bucket/my-location/my-path'
OK
--- Set the current catalog
> USE CATALOG myCatalog;
OK
--- Set the current schema
> USE SCHEMA mySchema;
OK
--- Create a managed volume; it is not necessary to specify a location
> CREATE VOLUME myManagedVolume
COMMENT 'This is my example managed volume';
OK
--- List the files inside the volume, all names are lowercase
> LIST '/Volumes/mycatalog/myschema/myexternalvolume'
sample.csv
> LIST 'dbfs:/Volumes/mycatalog/myschema/mymanagedvolume'
sample.csv
--- Print the content of a csv file
> SELECT * FROM csv.`/Volumes/mycatalog/myschema/myexternalvolume/sample.csv`
20
> SELECT * FROM csv.`dbfs:/Volumes/mycatalog/myschema/mymanagedvolume/sample.csv`
20