Aracılığıyla paylaş


Birimler

Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Yalnızca Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime 13.3 LTS ve üzeri onay işareti evet olarak işaretlenmiş 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.

Birim 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ış birim

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

Birim adlandırma ve başvuru

Birim adı, SQL komutlarında katalog ve şema adıyla nitelenebilir bir tanımlayıcıdır.

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>

Not

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

Ö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