Apache spark 如何在笔记本外使用DataBricks dbutils jar?
DataBricks dbutils库需要在eclipse或任何其他IDE中使用。诸如dbutils.secrets.get之类的方法在笔记本之外的SecretUtil API中不可用。在这个场景中,我们可以使用Apache spark 如何在笔记本外使用DataBricks dbutils jar?,apache-spark,databricks,azure-databricks,Apache Spark,Databricks,Azure Databricks,DataBricks dbutils库需要在eclipse或任何其他IDE中使用。诸如dbutils.secrets.get之类的方法在笔记本之外的SecretUtil API中不可用。在这个场景中,我们可以使用com.databricksjar这是用于databricks dbutils库的Maven Repo <dependency> <groupId>com.databricks</groupId> <artifactId>dbutils-a
com.databricks
jar这是用于databricks dbutils库的Maven Repo
<dependency>
<groupId>com.databricks</groupId>
<artifactId>dbutils-api_2.11</artifactId>
<version>0.0.3</version>
这是我们在DataBricks笔记本中使用的dbutils。你可以像这样使用它
dbutils.secrets.get(scope, name)
1.如果通过IDE运行java应用程序--- a。使用databricks connect下载所需的jar b。添加下载的jar c、 现在代码将是--
com.databricks.service.SecretUtils$secretClient=com.databricks.service.DBUtils.secrets();
System.out.println(secretClient.get(“,”);
现在,当您运行此命令时,它将在控制台中为您提供一个命令,您需要在databricks帐户中的任何集群上运行该命令才能获取令牌。
获得令牌后,您需要将代码编写为:
com.databricks.service.SecretUtils$ secretClient = com.databricks.service.DBUtils.secrets();
secretClient.setToken("<token>");
System.out.println(secretClient.get("<secret-scope>", "<secret-key>"));
com.databricks.service.SecretUtils$secretClient=com.databricks.service.DBUtils.secrets();
secretClient.setToken(“”);
System.out.println(secretClient.get(“,”);
2.现在,如果要在Databrick上部署jar,请使用以下代码:
a、 添加dbutils api的最新maven依赖项可在以下位置找到:
然后只需运行以下代码:
com.databricks.dbutils_v1.SecretUtils hostedSecretClient = com.databricks.dbutils_v1.DBUtilsHolder.dbutils().secrets();
System.out.println(hostedSecretClient.get("<secret-scope>", "<secret-key>"));
com.databricks.dbutils_v1.SecretUtils hostedSecretClient=com.databricks.dbutils_v1.DBUtilsHolder.dbutils().secrets();
System.out.println(hostedSecretClient.get(“,”);
希望这能奏效 0.0.3版本从何而来,如何检查笔记本中的版本是否一致?我刚刚添加了适合我的版本。有4个版本。其中一个应该为你工作。
com.databricks.service.SecretUtils$ secretClient = com.databricks.service.DBUtils.secrets();
secretClient.setToken("<token>");
System.out.println(secretClient.get("<secret-scope>", "<secret-key>"));
com.databricks.dbutils_v1.SecretUtils hostedSecretClient = com.databricks.dbutils_v1.DBUtilsHolder.dbutils().secrets();
System.out.println(hostedSecretClient.get("<secret-scope>", "<secret-key>"));