Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Important
Bu özellik Beta sürümündedir. Çalışma alanı yöneticileri Bu özelliğe erişimi Önizlemeler sayfasından denetleyebilir. Bkz. Azure Databricks önizlemelerini yönetme.
Bu FILE tür, yol ve boyut gibi meta verilerle birlikte yapılandırılmamış bir dosyaya yönetilen bir referans saklar. Unity Kataloğu'ndaki sütunları belgeler, görseller ve sesleri yapılandırılmış verilerle birlikte depolamak için kullanın FILE .
Tip referansı için bkz.FILE
Aşağıdaki diyagram, sürüş kliplerine referans veren ve rota, sahne tanımı ve tehlike etiketi gibi yapılandırılmış sütunların yanında yer alan bir sütunu video göstermektedirFILE:
FILE meta verileri ve depolama
Her satır için, tür FILE meta veri ve dosyaya yönetilen bir bağlantı depolar. Bir değer, FILE , sizecontent_type, ve checksum meta veri alanlarını içeriruri. Meta veri sorguları tam dosya okuması gerektirmez, bu da sorgu performansını artırır.
Değerleri fonksiyon gibi yapay zeka fonksiyonlarınaai_parse_document ve kullanıcı tanımlı fonksiyonlara (UDF) iletebilirsinizFILE.
Aşağıdaki diyagram, yol ve boyut meta verilerini ve depodaki dosyalara referansları içeren örnek yönetilen FILE bir sütunu göstermektedir:
Neden BINARY veya STRING yerine FILE kullanılıyor
Aşağıdaki tablo, büyük yapılandırılmamış dosyaları veya BINARYSTRING tür ile işlerken yaşanan zorlukları detaylandırır:
| Sütun türü | Description | Diagram |
|---|---|---|
BINARY |
Her okumada tam nesneyi ortaya çıkarır, sadece dosya boyutu veya yol gibi meta veriler gerekse bile. Bu da gereksiz hesaplamalara ve yavaş sorgulamalara yol açar. |
|
STRING |
Boyut veya sürüm bilgisi gibi meta veriler olmadan ve tablo ile dosya arasında yönetilen bir bağlantı olmadan bir dosya yolunu saklar. Başka bir iş yükü dosyayı kaldırırsa, tabloda eski bilgiler bulunur. Bir tablo satırını kaldırırsanız, referans edilen dosya manuel olarak kaldırana kadar depoda kalır. |
|
Sağlama toplamı
Alan, checksum dosyanın baytları için bir bütünlük belirteçidir ve biçimindedir <prefix>:<digest>. Dosyaları karşılaştırmak veya bir dosyanın değişmediğini doğrulamak için kullanın. Okuyucular, tanınmayan bir önekli kontrol toplamını görmezden gelir.
Bir çek toplamı her zaman mevcut değildir.
to_file fonksiyon, create_file fonksiyon ve copy_file fonksiyon , nesne deposu bir ETAGdöndürdüğünde kontrol toplamını doldurur.
list_files Tablo değerli fonksiyon ve read_files tablo değerli fonksiyon kontrol toplamını doldurmaz.
Alan checksum aşağıdaki öneklerden birini kullanır:
| Önek | Digest kodlaması | Description |
|---|---|---|
ETAG |
Opaque | Nesne deposunun tüm dosya için eTag'i. Mağaza tarafından kelimesi kelimesine sağlanıyor, sadece eşitlik karşılaştırması için kullanılıyor ve yeniden hesaplanamıyor. |
MD5 |
Küçük altıgen | Bir MD5 özeti (RFC 1321), 32 hex karakter. |
CRC32 |
Küçük altıgen | Bir CRC32 kontrol toplamı (RFC 2083), 8 altıgen karakter. |
CRC32C |
Küçük altıgen | Bir CRC32C kontrol toplamı (RFC 3385), 8 altıgen karakter. |
SHA-256 |
Küçük altıgen | Bir SHA-256 özeti (RFC 6234), 64 hex karakter. |
Örneğin, bir MD5 kontrol toplamı MD5:d41d8cd98f00b204e9800998ecf8427e, ve nesne deposu eTag'i ise , nesne deposu tarafından döndürülen çevredeki çift tırnak işaretleri dahil olmak üzere benzer ETAG:"686897696a7c876b7e"görünür.
Arasından FILE seçim yapın BINARY
Aşağıdaki tablo, yapılandırılmamış dosyalarla çalışma seçeneklerini karşılaştırmaktadır:
| Sütun türü | Değerler | Kullanım örneği |
|---|---|---|
FILE |
Bir dosyaya yönlendirilmiş bir referans ve meta veriler (uri, size, content_type, checksum). |
Yapılandırılmamış dosyaları yapılandırılmış verilerle birlikte yönetmek ve işlemek, dosyaları yerleşik ve yapay zeka fonksiyonlarına aktarmak için kullanılır. |
BINARY |
Bir dosyanın ham baytları, bir sütunda satırda. | Veri dosyasında doğrudan depolanan küçük nesneler için (varsayılan olarak 64 KB'ye kadar) kullanım. Bu, düşük meta veri yükü ve basitleştirilmiş dosya yönetimi gerektiğinde faydalıdır. Örneğin, bunu satır verisiyle birlikte küçük resimleri depolamak için kullanın. |
DOSYA HARICI VE DOSYA YÖNETİLİR
Bu tür, FILE dosyaları yönetmek için iki yöntemi destekler:
-
FILE EXTERNALsütunlar, Unity Kataloğu ciltindeki mevcut dosyalara referans verir. Dosyalar Unity Catalog hacim izinleriyle güvence altına alınıyor, ancak yaşam döngüleri Unity Catalog tarafından yönetilmiyor ve kopyalanmıyor. Dosyalara referans vermeniz gerektiğinde veya mevcut bir hacimden okuma araçlarını bozmadan bu yaklaşımı kullanın. -
FILE MANAGEDSütunlar, dosyaları yönetilen depolamaya kopyalar. Unity Catalog'un depolama olarak kullanması için tablo özelliğini yönetilen bir hacim yoluna ayarlayındatabricks.filespace-preview. Bu yaklaşımı, yalnızca tablo üzerinden dosyalara erişen iş yükleri için tablo üzerinden yönetilen basitleştirilmiş izinler istediğinizde kullanın; örneğin ML eğitimi veya geri alma ile artırılmış üretim (RAG) gibi. Alım desenleri için, FILE tipi olarak Ingest dosyalarına bakınız.
Sorgular için, harici ve yönetilen dosyalar arasında fark yoktur.
Aşağıdaki diyagram, tipin FILE kodunuzu bulut nesne depolamadaki dosyalara nasıl bağladığını gösterir:
FILE EXTERNAL
FILE EXTERNAL sütunlar, Unity Kataloğu ciltinde zaten var olan dosyalara yapılan referanslardır.
Ciltte gerekli ayrıcalıklara sahipseniz, bu dosyaları güncelleyebilir veya silebilirsiniz. Databricks, değişmez dosyalar kullanmanızı önerir. Bir tablo verisi dosya meta verilerini açığa çıkarır, ancak dosyanın baytlarını okumak için de altta yatan hacim üzerindeki ayrıcalık gereklidir READ VOLUME .
Harici bir dosya, her tablo satırını Unity Kataloğu hacminden mevcut yoluna sahip bir dosyaya eşler:
FILE EXTERNAL örnekleri
Bir FILE EXTERNAL sütunlu bir tablo oluşturmak için:
CREATE TABLE documents (id BIGINT, file FILE EXTERNAL);
Mevcut bir tabloya bir FILE EXTERNAL sütun eklemek için:
ALTER TABLE documents ADD COLUMN file FILE EXTERNAL;
Bir hacimden bir tablo oluşturmak ve doldurmak için, her dosyaya benzersiz kimlikler atamak:
CREATE TABLE documents AS
SELECT monotonically_increasing_id() AS id, file
FROM list_files('/Volumes/samples/sec/contracts/');
FILE MANAGED
FILE MANAGED sütunlar, dosya kopyalarını FileSpacebir , bir Unity Kataloğu hacminden depolar; bu hacmi tablonun yönetilen depolama olarak kullanması için ilan edersiniz. Yaşam döngüleri, onlara referans veren tablolara bağlıdır.
Aşağıdaki davranışlar geçerlidir FILE MANAGED:
- Bildirmek
FileSpaceiçin tablo özelliği gereklidirdatabricks.filespace-preview. - Yönetilen bir dosyayı okumak veya yazmak, hem tabloya hem de dosyayı
FileSpacedestekleyen hacme erişim gerektirir. - Referans verilmeyen dosyaların otomatik çöp toplanması desteklenmiyor.
SharePoint, Google Drive, OneDrive ve SFTP gibi harici kaynaklarda depolanan yapılandırılmamış dosyalar, fonksiyon ve kullanıcı tanımlı fonksiyonlar (UDF) gibi fonksiyonlarla ai_parse_document kullanılabilmek için yönetilen dosya olarak alınmalıdır. Alım desenleri için, FILE tipi olarak Ingest dosyalarına bakınız.
Yönetilen dosyaları kullanmak için, bir FILE MANAGED sütunlu bir tablo oluşturun ve tablo özelliğini databricks.filespace-preview bir hacim yoluna ayarlayarak bir hacim olarak FileSpace ilan edin:
'databricks.filespace-preview' = '/Volumes/<catalog>/<schema>/<volume_name>/<optional_path>'
Tam örnekler için aşağıdaki FILE MANAGED örneklere bakınız. A'daki FileSpace dosyaların yaşam döngüsü, onlara referans veren satırlara bağlıdır. Bu satırların silinmesi, dosyaları çöp toplamaya uygun hale getiriyor.
FILE MANAGED örnekleri
Bir FILE MANAGED sütunlu bir tablo oluşturmak için:
CREATE TABLE reports (id BIGINT, file FILE MANAGED)
TBLPROPERTIES ('databricks.filespace-preview' = '/Volumes/my_catalog/my_schema/my_managed_volume/');
Mevcut bir tabloya sütun FILE MANAGED eklemek için, databricks.filespace-preview sütunu eklemeden önce tablo özelliğini ayarlayın, aşağıdaki kodda olduğu gibi:
ALTER TABLE reports SET TBLPROPERTIES ('databricks.filespace-preview' = '/Volumes/my_catalog/my_schema/my_managed_volume/');
ALTER TABLE reports ADD COLUMN attachment FILE MANAGED;
Hatasız bir tabloya FileSpace bir FILE MANAGED sütun eklemek.
Yönetim ve yaşam döngüsü karşılaştırması
Aşağıdaki tablo, FILE EXTERNAL dosya erişimini nasıl yönettiğini FILE MANAGED ve dosya yaşam döngüsünü nasıl yöneteceğini karşılaştırır:
| Sütun Türü | FILE EXTERNAL |
FILE MANAGED |
|---|---|---|
| Dosya erişim kontrolü | Hacim izinleriyle yönetilir, örneğin READ VOLUME. |
Tablo ve hacim izinleriyle yönetilir; örneğin SELECT tablo üzerindeki ve READ VOLUME cilt üzerindeki izinler. |
| Yaşam döngüsü ve çöp toplama | Dosyaları kendin yönetiyorsun. Bir tablo satırını silmek, hacimdeki altta yatan dosyayı etkilemez. | Dosyalar, onlara referans veren satırlara bağlıdır. Bu satırların silinmesi, dosyaları çöp toplamaya uygun hale getiriyor. Otomatik çöp toplama desteklenmiyor. |
FILE tipi kullanım durumları
Hem harici hem de yönetilen FILE türler, yapılandırılmamış veri kullanılarak kullanılan kullanım durumları için aşağıdaki zorlukları ele alır:
| Zorluk | Desteklenen tip FILE |
Benefits |
|---|---|---|
Dosyalar satırda depolamak için çok büyük BINARY |
FILE MANAGED veya FILE EXTERNAL |
Bir FILE sütun bir referansı saklar, bu yüzden bir dosya yalnızca bir yapay zeka fonksiyonu veya UDF işlediğinde okunur. Bu, tabloda büyük nesnelerin diline yerleştirilmesini önler. |
| Dosya sistemi ile tablo arasında bağlantısız yaşam döngüsü ve yönetişim | FILE MANAGED |
Azure Databricks, her dosyanın yaşam döngüsünü tabloya bağlar, böylece satır silmek, dosyaları depoda bırakmak yerine temizlenmeye uygun hale getirir. |
| Dosyaların aynı konumda kalmasını gerektiren eşzamanlı iş yükleri | FILE EXTERNAL |
Dosyalar mevcut hacim yollarında kalır, tablo yaşam döngüsünden etkilenmez, böylece aynı dosyaları okuyan diğer araçlar kesintiye uğramaz. |