Udostępnij za pośrednictwem


Zarządzanie plikami w środowisku Unity Catalogvolumes za pomocą sterownika JDBC usługi Databricks

W tym artykule opisano sposób przekazywania, pobierania i usuwania plików w środowisku Unity Catalogvolumes przy użyciu sterownika JDBC Databricks.

Wymagania

  • Sterownik JDBC usługi Databricks w wersji 2.6.38 lub nowszej.
  • Domyślnie włączony jest natywny tryb zapytania. W przeciwnym razie dodaj UseNativeQuery właściwość do parametry połączenia JDBC, ustawiając jej wartość na 1 lub 2.

Pełny przykład kodu Java pokazujący sposób uruchamiania fragmentów kodu tego artykułu w kontekście konfigurowania uwierzytelniania usługi Azure Databricks i uruchamiania instrukcji SQL za pomocą sterownika JDBC usługi Databricks, zobacz Ustawienia uwierzytelniania sterownika JDBC usługi Databricks.

Przekazywanie pliku

Aby przekazać plik do woluminu, należy dodać StagingAllowedLocalPaths właściwość do parametry połączenia JDBC, ustawiając wartość tej właściwości na ścieżkę pliku do przekazania. Aby przekazać wiele plików z oddzielnych lokalizacji, set tę właściwość do rozdzielanej przecinkami list ścieżek, na przykład /tmp/,/usr/tmp/.

Aby zastąpić zawartość dowolnego istniejącego pliku w określonej lokalizacji przekazywania, dodaj element OVERWRITE.

Poniższy fragment kodu Java pokazuje, jak przekazać plik do woluminu.

// ...
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")
// ...

Pobieranie pliku

Poniższy fragment kodu Java pokazuje, jak pobrać plik z woluminu.

// ...
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" +
                  "'")
// ...

Usuwanie pliku

Poniższy fragment kodu Java pokazuje, jak usunąć plik z woluminu.

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

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