JavaScript 向け Databricks SDK

Important

JavaScript 用 Databricks SDK は ベータ版です。 ベータ期間中、Databricks では、コードが依存する各 Databricks SDK for JavaScript パッケージの特定のバージョン (プロジェクトの package.json ファイルなど) に依存関係を固定することをお勧めします。

GitHubの Databricks SDK for JavaScript リポジトリの問題を報告します。

JavaScript 用 Databricks SDK を使用して、Azure Databricks操作を自動化し、開発を高速化します。 これらの SDK は、Databricks REST API の型指定されたクライアントを提供します。 モジュール アーキテクチャがあり、API ごとに個別の npm パッケージ ( @databricks/sdk-postgresなど) が用意されています。 使用する API のパッケージのみをインストールします。

このページでは、JavaScript README 用の Databricks SDK と 例を補足します

必要条件

JavaScript 用 Databricks SDK を使用するには、開発用コンピューターに次のものが必要です。

  • Node.js と npm がインストールされています。
  • Azure Databricks 認証が構成されている。

概要

  1. 必要な API ごとにパッケージをインストールします。 各 Databricks API は、 @databricks/sdk-<api>という名前の個別のパッケージとして発行されます。 たとえば、Postgres を操作するには、Node.js プロジェクトのルートから次のコマンドを実行します。

    npm install @databricks/sdk-postgres
    
  2. まだ構成されていない場合は、Azure Databricks認証用に開発マシンを設定します。

  3. パッケージのバージョン管理されたサブパスからクライアントをインポートし、API を呼び出します。 次の TypeScript の例では、「 認証」で説明されている既定の認証を使用して、Postgres プロジェクトを一覧表示します。 List メソッドは、反復処理に応じて結果を透過的にページングする Iter バリアントを提供します。

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

改ページ、実行時間の長い操作、エラー処理、認証戦略など、より実行可能な例については、GitHubの Databricks SDK for JavaScript リポジトリの examples フォルダーを参照してください。

認証

既定では、クライアントは、 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 パッケージには、ユーザー間 (U2M) OAuth のnewU2mCredentialsやマシン間 (M2M) OAuth のnewM2mCredentials、既定の資格情報チェーンなど、追加の資格情報プロバイダーが用意されています。 Azure Databricks認証の詳細については、「Databricks 統合認証」を参照してください。

Packages

各 Databricks API は、 @databricks/sdk-<api>という名前の個別のパッケージとして発行されます。 パッケージのバージョン管理されたサブパスからクライアントをインポートします。 たとえば、@databricks/sdk-postgres/v1PostgresClient をエクスポートします。

使用可能な API パッケージの完全な一覧については、JavaScript README 用 Databricks SDK の パッケージ を参照してください。

共有パッケージ

3 つのパッケージは、すべての API クライアントによって共有され、直接インポートする部分を提供します。

Package Description
@databricks/sdk-core HTTP クライアント、構成プロファイル解決、ログ記録、および API エラーの種類 (ApiError)。
@databricks/sdk-auth 資格情報プロバイダー (newPatCredentialsnewU2mCredentialsnewM2mCredentials) と既定の資格情報チェーン。
@databricks/sdk-options クライアントと呼び出しに渡されるオプションの種類 (ClientOptionsCallOptions)。

その他のリソース