Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Remarque
Cette page s’applique au pilote JDBC Simba (hérité), versions antérieures à la version 3. Databricks recommande vivement la migration vers le pilote JDBC Databricks pour la connectivité JDBC. Il inclut des améliorations telles que la prise en charge des vues de métriques du catalogue Unity, les transactions qui s’étendent sur plusieurs instructions SQL, procédures stockées, récupération de résultats volumineuses plus rapides et données de télémétrie client intégrées.
Cette page explique comment charger, télécharger et supprimer des fichiers dans des volumes de catalogue Unity à l’aide du pilote JDBC Databricks.
Spécifications
- Databricks JDBC Driver version 2.6.38 ou ultérieure
- Mode de requête natif activé (par défaut). Si elle est désactivée, ajoutez
UseNativeQuery=1ouUseNativeQuery=2à votre chaîne de connexion.
Pour obtenir un exemple Java complet avec la configuration de l’authentification, consultez les paramètres d’authentification pour le pilote JDBC Databricks (Simba) .
Charger un fichier
Pour charger un fichier, ajoutez la StagingAllowedLocalPaths propriété à votre chaîne de connexion avec le chemin d’accès du fichier à charger. Pour plusieurs emplacements sources, utilisez une liste séparée par des virgules (par exemple, /tmp/,/usr/tmp/).
Important
Dans les environnements multilocataires où les utilisateurs contrôlent l’URL JDBC (par exemple, les outils décisionnels ou les services de développement), vous devez définir StagingAllowedLocalPaths à un emplacement en bac à sable ou à un chemin inexistant. Cela empêche les utilisateurs d’écrire des fichiers arbitraires et d’interférer avec le déploiement interne du service.
Pour remplacer un fichier existant, ajoutez OVERWRITE à l’instruction.
// ...
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")
// ...
Téléchargement d’un fichier
Permet GET de télécharger un fichier à partir d’un volume vers un chemin d’accès local :
// ...
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" +
"'")
// ...
Supprimer un fichier
Permet REMOVE de supprimer un fichier d’un volume :
// ...
Connection conn = DriverManager.getConnection(url, p);
Statement stmt = conn.createStatement();
stmt.executeQuery("REMOVE '" +
"/Volumes/main/default/my-volume/my-data.csv" +
"'")
// ...