Aracılığıyla paylaş


Databricks JDBC Sürücüsü (Simba) ile Unity Kataloğu birimlerindeki dosyaları yönetme

Uyarı

Bu sayfa, sürüm 3'ün altındaki Databricks JDBC sürücü sürümleri için geçerlidir. Sürüm 3 ve üzeri için bkz. Databricks JDBC Sürücüsü.

Bu sayfada, Databricks JDBC Sürücüsü kullanılarak Unity Kataloğu birimlerindeki dosyaların nasıl karşıya yüklendiği, indirileceği ve silineceği açıklanır.

Gereksinimler

  • Databricks JDBC Sürücüsü sürüm 2.6.38 veya üzeri
  • Yerel sorgu modu etkin (varsayılan). Devre dışı bırakıldıysa, UseNativeQuery=1 veya UseNativeQuery=2 ekleyerek bağlantı dizesine ekleyin.

Kimlik doğrulaması kurulumuyla ilgili eksiksiz bir Java örneği için bkz. Databricks JDBC Sürücüsü (Simba) için kimlik doğrulama ayarları.

Dosya yükle

Bir dosyayı karşıya yüklemek için, StagingAllowedLocalPaths özelliğini karşıya yüklenecek dosyanın yolu ile bağlantı dizesine ekleyin. Birden çok kaynak konumu için virgülle ayrılmış bir liste kullanın (örneğin, /tmp/,/usr/tmp/).

Önemli

Kullanıcıların JDBC URL'sini kontrol ettiği (BI araçları veya geliştirici hizmetleri gibi) çok kiracılı ortamlarda, StagingAllowedLocalPaths bir sanal alan konumuna veya var olmayan bir yola ayarlanmalıdır. Bu, kullanıcıların rastgele dosyalar yazmasını ve hizmetin iç dağıtımına müdahale etmesini engeller.

Varolan bir dosyanın üzerine yazmak için deyime ekleyin OVERWRITE.

// ...
p.put("StagingAllowedLocalPaths", "/tmp/");

Connection conn = DriverManager.getConnection(url, p);
Statement stmt = conn.createStatement();

stmt.executeQuery("PUT '" +
                  "/tmp/my-data.csv" +
                  "' INTO '" +
                  "/Volumes/main/default/my-volume/my-data.csv" +
                  "' OVERWRITE")
// ...

Dosya indirme

Dosyayı bir birimden yerel bir yola indirmek için GET kullanın.

// ...
Connection conn = DriverManager.getConnection(url, p);
Statement stmt = conn.createStatement();

stmt.executeQuery("GET '" +
                  "/Volumes/main/default/my-volume/my-data.csv" +
                  "' TO '" +
                  "/tmp/my-downloaded-data.csv" +
                  "'")
// ...

Dosya silme

Bir birimden dosya silmek için kullanın REMOVE :

// ...
Connection conn = DriverManager.getConnection(url, p);
Statement stmt = conn.createStatement();

stmt.executeQuery("REMOVE '" +
                  "/Volumes/main/default/my-volume/my-data.csv" +
                  "'")
// ...