Sdílet prostřednictvím


Správa souborů ve svazcích katalogu Unity pomocí ovladače Databricks JDBC

Tento článek popisuje, jak nahrát, stáhnout a odstranit soubory ve svazcích katalogu Unity pomocí ovladače Databricks JDBC.

Požadavky

  • Ovladač Databricks JDBC verze 2.6.38 nebo vyšší.
  • Ve výchozím nastavení je povolený nativní režim dotazu. V opačném případě přidejte UseNativeQuery vlastnost do připojovací řetězec JDBC a nastavte jeho hodnotu na 1 hodnotu nebo 2.

Kompletní příklad kódu Java ukazující, jak spustit fragmenty kódu tohoto článku v kontextu nastavení ověřování Azure Databricks a spouštění příkazů SQL s ovladačem Databricks JDBC, najdete v tématu Nastavení ověřování pro ovladač Databricks JDBC.

Odeslání souboru

Chcete-li nahrát soubor do svazku, musíte přidat StagingAllowedLocalPaths vlastnost do připojovací řetězec JDBC a nastavit hodnotu této vlastnosti na cestu k souboru pro nahrání. Pokud chcete nahrát více souborů z samostatných umístění, nastavte tuto vlastnost na seznam cest oddělených čárkami, například /tmp/,/usr/tmp/.

Chcete-li přepsat obsah jakéhokoli existujícího souboru v zadaném umístění pro nahrání, přidejte OVERWRITE.

Následující fragment kódu Java ukazuje, jak nahrát soubor do svazku.

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

Stažení souboru

Následující fragment kódu Java ukazuje, jak stáhnout soubor ze svazku.

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

Odstranění souboru

Následující fragment kódu Java ukazuje, jak odstranit soubor ze svazku.

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

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