用于 JavaScript 的 Databricks SDK

Important

用于 JavaScript 的 Databricks SDK 处于 Beta 版中。 在 Beta 期间,Databricks 建议将代码所依赖的每个 Databricks JavaScript SDK 软件包的依赖固定为特定版本,例如在项目的 package.json 文件中。

在 GitHub 中报告用于 JavaScript 存储库的 Databricks SDK 中的问题。

使用用于 JavaScript 的 Databricks SDK 自动执行Azure Databricks操作并加速开发。 这些 SDK 为 Databricks REST API 提供类型化客户端。 它们具有模块化体系结构,每个 API 都有单独的 npm 包(例如)。 @databricks/sdk-postgres 仅安装您使用的 API 对应的软件包。

本页是对 JavaScript 版 Databricks SDK 的 README示例的补充。

要求

若要使用用于 JavaScript 的 Databricks SDK,开发计算机必须具有:

开始

  1. 为所需的每个 API 安装相应的软件包。 每个 Databricks API 都作为一个名为 @databricks/sdk-<api> 的独立包发布。 例如,若要使用 Postgres,请从 Node.js 项目的根目录运行以下命令:

    npm install @databricks/sdk-postgres
    
  2. 如果尚未配置,请将开发计算机配置为可用于 Azure Databricks 身份验证

  3. 从包的版本化子路径导入客户端,然后调用 API。 以下 TypeScript 示例使用 身份验证中所述的默认身份验证列出 Postgres 项目。 列表方法提供了一个 Iter 变体,可在你迭代时自动对结果进行分页:

    import { PostgresClient } from '@databricks/sdk-postgres/v1';
    
    const client = new PostgresClient({});
    
    for await (const project of client.listProjectsIter({})) {
      console.log(project.name);
    }
    

有关更多可运行的示例,包括分页、长时间运行的操作、错误处理和身份验证策略,请参阅 GitHub 中用于 JavaScript 存储库的 Databricks SDK 中的示例文件夹。

身份验证

默认情况下,客户端从 Databricks 配置文件~/.databrickscfg)和环境变量读取其配置(包括主机和 DATABRICKS_* 凭据)。 在这些设置中,无需在代码中传递任何凭据,例如:

import { PostgresClient } from '@databricks/sdk-postgres/v1';

// Resolves the host and credentials from the DEFAULT profile and DATABRICKS_* environment variables.
const client = new PostgresClient({});

若要显式配置凭据,请从 @databricks/sdk-auth/credentials 导入帮助程序,并将其作为 credentials 传入。 以下示例配置 Databricks 个人访问令牌身份验证。

import { PostgresClient } from '@databricks/sdk-postgres/v1';
import { newPatCredentials } from '@databricks/sdk-auth/credentials';

const client = new PostgresClient({
  host: 'https://my-company.databricks.com',
  credentials: newPatCredentials(MY_PAT_ENV_VAR),
});

@databricks/sdk-auth 包提供其他凭据提供程序,包括 newU2mCredentials 用户到计算机 (U2M) OAuth 和 newM2mCredentials 计算机到计算机 (M2M) OAuth 以及默认凭据链。 有关Azure Databricks身份验证的详细信息,请参阅 Databricks 统一身份验证

Packages

每个 Databricks API 都作为一个名为 @databricks/sdk-<api> 的独立软件包发布。 从该包的带版本子路径中导入其客户端。 例如, @databricks/sdk-postgres/v1 导出 PostgresClient

有关可用 API 包的完整列表,请参阅适用于 JavaScript README 的 Databricks SDK 中的

共享软件包

每个 API 客户端共享三个包,并提供直接导入的部分:

Package Description
@databricks/sdk-core HTTP 客户端、配置文件解析、日志记录和 API 错误类型(ApiError)。
@databricks/sdk-auth 凭据提供程序(newPatCredentials、、newU2mCredentialsnewM2mCredentials)和默认凭据链。
@databricks/sdk-options 传递给客户端和调用的选项类型 (ClientOptionsCallOptions) 。

其他资源