Aracılığıyla paylaş


Birim

Şunlar için geçerlidir:evet olarak işaretlendi Databricks SQL evet olarak işaretlendi Databricks Runtime 13.3 LTS ve üzeri evet olarak işaretlendiyalnızca Unity Kataloğu

Birimler, bulut nesne depolama konumundaki mantıksal depolama birimini temsil eden Unity Kataloğu nesneleridir. Birimler dosyalara erişme, dosyaları depolama, yönetme ve düzenleme özellikleri sağlar. Tablolar tablosal veri kümeleri üzerinde idare sağlarken, birimler tablosal olmayan veri kümeleri üzerinde idare ekler. Dosyaları yapılandırılmış, yarı yapılandırılmış ve yapılandırılmamış veriler dahil olmak üzere herhangi bir biçimde depolamak ve bunlara erişmek için birimleri kullanabilirsiniz.

Birimler, Unity Kataloğu'ndaki bir şema altında düzenlenmiş tablolara, görünümlere ve diğer nesnelere eşdüzeydir.

Bir hacim yönetilebilir veya harici olabilir.

Diğer ayrıntılar ve sınırlamalar için bkz. Unity Kataloğu birimleri nedir?.

Yönetilen birim

Yönetilen birim, içeren şemanın yönetilen depolama konumu içinde oluşturulan Unity Kataloğu tarafından yönetilen depolama birimidir. Yönetilen birimler, dış konumlar ve depolama kimlik bilgileri ek yükü olmadan dosyalarla çalışmak için yönetilen depolama oluşturulmasına olanak sağlar. Yönetilen birim oluştururken konum belirtmeniz gerekmez ve yönetilen birimlerdeki veriler için tüm dosya erişimi Unity Kataloğu tarafından yönetilen yollardan geçer.

Dış hacim

Dış birim, dış konumdaki bir dizine kayıtlı Unity Kataloğu tarafından yönetilen bir depolama birimidir.

Hacim adlandırma ve referans

hacim adı, SQL komutlarında bir katalog ve bir şema adıyla nitelendirilebilen bir tanımlayıcı'dir.

Birimlerdeki dosyalara erişim yolu aşağıdaki biçimi kullanır:

/Volumes/<catalog_identifier>/<schema_identifier>/<volume_identifier>/<path>/<file_name>

Azure Databricks'in tanımlayıcıları küçük harfe göre normalleştirdiğini unutmayın.

Azure Databricks isteğe bağlı dbfs:/ bir düzeni de desteklediğinden aşağıdaki yol da çalışır:

dbfs:/Volumes/<catalog_identifier>/<schema_identifier>/<volume_identifier>/<path>/<file_name>

Dikkat

Bulut depolama URI'lerini kullanarak dış birimlerdeki verilere de erişebilirsiniz.

Disk bölümlerindeki dosyaları yönetme

Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Databricks SQL Bağlayıcısı

Databricks SQL Bağlayıcısı kullanarak birimlerindeki dosyaları aşağıdaki komutları kullanarak yönetebilirsiniz:

  • Yerel depolama alanınızdaki bir dosyayı bir birime kopyalamak için PUT INTO.
  • Bir birimden yerel depolama alanınıza dosya kopyalamak için GET.
  • Bir dosyayı birimden kaldırmak için REMOVE.

Örnekler

--- 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