磚Java SDK

實驗

Java是一個磚SDK實驗狀態。提供反饋,問問題,和報告問題,使用問題選項卡在GitHub磚SDK為Java庫。

在實驗期間,磚正積極致力於穩定的磚SDK的Java的接口。API為所有客戶服務從規範文件同步生成的主要平台。Beplay体育安卓版本你是高度鼓勵的磚SDK安裝一個特定版本的Python包和閱讀更新日誌在磚文件的更改。磚可能小記錄向後不兼容的更改,如重命名方法或類名帶來更多的一致性。

在本文中,您將了解如何在磚自動化業務賬戶、工作區和相關資源磚Java SDK

在你開始之前

在你開始使用磚為Java SDK,您的開發機必須有:

  • 身份驗證配置。

  • 一個Java開發工具包(JDK)兼容Java 8或更高。持續集成(CI)測試Java兼容Java的磚SDK版本8、11、17、20。

  • 那樣的集成開發環境(IDE)。磚建議IntelliJ IDEA

開始使用Java的磚SDK

  1. 在你的項目的pom.xml文件,指導您的構建係統,依賴於磚為Java SDK。為此,添加以下<依賴>pom.xml文件的現有< >的依賴關係部分。如果< >的依賴關係節中不存在pom.xml文件,您必須添加< >的依賴關係父元素的pom.xml文件。

    例如,打開您的項目pom.xml文件在IntelliJ IDEA,單擊項目視圖>工具窗口>,然後雙擊打開<您的項目名> > src > pom.xml

    < >的依賴關係<依賴>< groupId >com.databricks< / groupId >< artifactId >databricks-sdk-java< / artifactId ><版本>0.0.1> < /版本< / >的依賴< / >的依賴關係

    請注意

    一定要更換0.0.1最新版本的磚為Java SDK。你可以找到的最新版本Maven中央存儲庫

  2. 指導項目的聲明依賴於磚為Java SDK。例如,在IntelliJ IDEA,在您的項目項目工具窗口,點擊項目的根節點,然後單擊Maven >重新加載項目

  3. 添加代碼導入數據磚Java SDK和列出所有的集群磚工作區。例如,在一個項目的Main.java文件,代碼可能如下:

    進口com.databricks.sdk.WorkspaceClient;進口com.databricks.sdk.service.compute.ClusterInfo;進口com.databricks.sdk.service.compute.ListClustersRequest;公共主要{公共靜態無效主要(字符串[]arg遊戲){WorkspaceClientw=WorkspaceClient();(ClusterInfoc:w集群()。列表(ListClustersRequest())){係統println(cgetClusterName());}}}

    請注意

    不設置任何參數前調用WorkspaceClientw=WorkspaceClient (),磚Java SDK的使用其默認程序試圖執行磚身份驗證。覆蓋默認行為,看到下麵的身份驗證部分。

  4. 構建您的項目。例如,在IntelliJ IDEA,從主菜單中,單擊構建>構建項目

  5. 運行您的主文件。例如,在IntelliJ IDEA項目Main.java文件,從主菜單中,單擊Run > Run '主'

  6. 集群列表中出現。例如,在IntelliJ IDEA,這裏是美國運行工具窗口。顯示該工具窗口中,從主菜單中,單擊窗口視圖>工具>運行

驗證你的磚的磚Java SDK的帳戶或工作區

磚SDK的Java實現磚客戶端統一身份驗證標準,統一和一致的體係結構和編程方法來驗證。這種方法有助於使設置和自動化驗證磚更集中的和可預測的。它允許您配置數據磚身份驗證一次,然後使用該配置多個磚工具和sdk沒有進一步驗證配置更改。更多信息,包括更完整的示例代碼在Java中,看到的磚客戶端統一身份驗證

請注意

磚Java SDK的尚未實現穀歌雲憑據的身份驗證穀歌雲ID認證

調用磚戶頭級別的REST api的磚SDK的Java不支持磚在穀歌的雲。

一些可用的編碼模式初始化數據磚與磚對Java SDK包括:身份驗證

  • 使用磚默認驗證通過下列之一:

    • 創建或識別一個定製的磚配置概要文件與目標必需的字段數據磚身份驗證類型。然後設置DATABRICKS_CONFIG_PROFILE環境變量定義配置概要文件的名稱。

    • 設置所需的環境變量為目標數據磚身份驗證類型。

    進口com.databricks.sdk.WorkspaceClient;/ /……WorkspaceClientw=WorkspaceClient();/ /……
  • 硬編碼所需的字段支持但不推薦,因為它的風險暴露敏感信息在您的代碼,如磚個人的訪問令牌。下麵的例子將磚磚令牌的身份驗證:主機和訪問令牌值

    進口com.databricks.sdk.WorkspaceClient;進口com.databricks.sdk.core.DatabricksConfig;/ /……DatabricksConfigcfg=DatabricksConfig()setHost(“https://..”。)setToken(“…”);WorkspaceClientw=WorkspaceClient(cfg);/ /……

代碼示例

下麵的代碼示例演示如何使用磚Java SDK的創建和刪除集群,創造就業機會,和帳戶級別組列表。這些代碼示例使用Java的默認數據磚的磚SDK身份驗證的過程。

額外的代碼示例,請參閱例子文件夾在GitHub磚SDK為Java庫。

創建一個集群

這段代碼示例創建一個集群與指定的磚和集群節點類型運行時版本。這個集群有一個工人,集群將自動終止後15分鍾的空閑時間。

進口com.databricks.sdk.WorkspaceClient;進口com.databricks.sdk.service.compute.CreateCluster;進口com.databricks.sdk.service.compute.CreateClusterResponse;公共主要{公共靜態無效主要(字符串[]arg遊戲){WorkspaceClientw=WorkspaceClient();CreateClusterResponsec=w集群()。創建(CreateCluster()setClusterName(“my-cluster”)setSparkVersion(“12.2.x-scala2.12”)setNodeTypeId(“n2-highmem-4”)setAutoterminationMinutes(15 l)setNumWorkers(1 l))。getResponse();係統println(“查看集群”+w配置()。getHost()+“#設置/集群”+cgetClusterId()+“/配置\ n”);}}

永久刪除一個集群

這段代碼示例永久刪除集群與集群ID指定的工作區。

進口com.databricks.sdk.WorkspaceClient;進口java.util.Scanner;公共主要{公共靜態無效主要(字符串[]arg遊戲){係統println(“集群ID刪除(例如,1234 - 567890 ab123cd4):“);掃描儀=掃描儀(係統);字符串c_id=nextLine();WorkspaceClientw=WorkspaceClient();w集群()。permanentDelete(c_id);}}

創建一個工作

這個代碼示例創建了一個磚工作,可用於指定集群上運行指定的筆記本。這段代碼運行,現有筆記本的路徑,現有集群ID,和相關的工作設置從用戶終端。

進口com.databricks.sdk.WorkspaceClient;進口com.databricks.sdk.service.jobs.JobTaskSettings;進口com.databricks.sdk.service.jobs.NotebookTask;進口com.databricks.sdk.service.jobs.NotebookTaskSource;進口com.databricks.sdk.service.jobs.CreateResponse;進口com.databricks.sdk.service.jobs.CreateJob;進口java.util.Scanner;進口java.util.Map;進口java.util.Collection;進口java.util.Arrays;公共主要{公共靜態無效主要(字符串[]arg遊戲){係統println(“一些短名稱的工作(例如,我的工作):“);掃描儀=掃描儀(係統);字符串jobName=nextLine();係統println(“一些簡短描述的工作(例如,我的工作):“);字符串描述=nextLine();係統println(“ID在工作區中現有的集群上運行的工作(例如,1234 - 567890 ab123cd4):“);字符串existingClusterId=nextLine();係統println(“工作區路徑的筆記本運行(例如,/用戶/ someone@example.com/my-notebook):“);字符串notebookPath=nextLine();係統println(“一些關鍵的申請工作的任務(例如,我的鑰匙):“);字符串taskKey=nextLine();係統println(“試圖創建工作。請稍等……”);WorkspaceClientw=WorkspaceClient();地圖<字符串,字符串>地圖=地圖(”“,”“);集合<JobTaskSettings>任務=數組asList(JobTaskSettings()setDescription(描述)setExistingClusterId(existingClusterId)setNotebookTask(NotebookTask()setBaseParameters(地圖)setNotebookPath(notebookPath)setSource(NotebookTaskSource工作空間))setTaskKey(taskKey));連接CreateResponsej=w工作()。創建(CreateJob()setName(jobName)setTasks(任務));係統println(“查看工作”+w配置()。getHost()+“/ #工作/”+jgetJobId());}}

使用Scala磚為Java SDK

您可以使用Scala項目磚為Java SDK。在您開始之前,您的開發機必須有:

  • 身份驗證配置。

  • 一個建議Scala-compatible集成開發環境(IDE)。磚建議IntelliJ IDEAScala插件

  • 一個Java開發工具包(JDK)兼容Java 8或以上。如果你想運行您的應用程序或使用你的圖書館集群磚,磚建議你使用的JDK版本的JDK版本相匹配的集群。找到的JDK版本包含在一個特定的磚運行時看到的磚的運行時版本。如果你使用IntelliJ IDEA,你可以選擇一個現有的本地JDK安裝或安裝一個新的本地JDK在Scala項目創建。

  • Scala的構建工具。磚建議sbt。如果你使用IntelliJ IDEA,你可以選擇sbt在Scala項目創建版本使用。

  • Scala。如果你想運行您的應用程序或使用你的圖書館集群磚,磚建議您使用Scala的一個版本相匹配的Scala版本在集群上。發現Scala版本包含在一個特定的磚運行時看到的磚的運行時版本。如果你使用IntelliJ IDEA,您可以選擇要使用Scala版本在Scala項目創建。

配置、構建和運行Scala項目:

  1. 在你的項目的build.sbt文件,以依賴於磚SDK為Java庫通過添加以下行結束的文件,然後保存文件:

    com libraryDependencies + =”。磚" % "databricks-sdk-java" % "0.2.0"

    請注意

    一定要更換0.2.0最新版本的Java庫的磚SDK。你可以找到的最新版本Maven中央存儲庫

  2. 指導項目的聲明依賴於磚為Java SDK。例如,在IntelliJ IDEA,單擊負載sbt變化通知圖標。

  3. 添加代碼導入數據磚Java SDK和列出所有的集群磚工作區。例如,在一個項目的Main.scala文件,代碼可能如下:

    進口comsdkWorkspaceClient進口comsdk服務計算ListClustersRequest對象主要{def主要(arg遊戲:數組(字符串):單位={瓦爾w=WorkspaceClient()w集群()。列表(ListClustersRequest())。forEach{初步的= >println(初步的getClusterName)}}}

    請注意

    不設置任何參數前調用瓦爾w=WorkspaceClient (),磚Java SDK的使用其默認程序試圖執行磚身份驗證。覆蓋默認行為,看到下麵的身份驗證部分。

  4. 構建您的項目。例如,在IntelliJ IDEA,從主菜單中,單擊構建>構建項目

  5. 運行您的主文件。例如,在IntelliJ IDEA項目Main.scala文件,從主菜單中,單擊>跑“Main.scala”

  6. 集群列表中出現。例如,在IntelliJ IDEA,這裏是美國運行工具窗口。顯示該工具窗口中,從主菜單中,單擊窗口視圖>工具>運行

額外的資源

有關更多信息,請參見: