SSIS で SQL Server から Databricks へのデータフローを構築

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
CData SSIS Tasks for Databricks を使用して、SQL Server データを Databricks に簡単にプッシュできます。

SQL Server データベースは、エンタープライズレコードの保存に広く使用されています。このデータを他の場所に移動する必要がある場合がよくあります。CData SSIS Task for Databricks を使用すると、Databricks のデータを簡単に転送できます。この記事では、SQL Server から Databricks にデータをエクスポートする方法を説明します。

Databricks データ連携について

CData を使用すれば、Databricks のライブデータへのアクセスと統合がこれまでになく簡単になります。お客様は CData の接続機能を以下の目的で利用しています:

  • Runtime バージョン 9.1 - 13.X から Pro および Classic Databricks SQL バージョンまで、すべてのバージョンの Databricks にアクセスできます。
  • あらゆるホスティングソリューションとの互換性により、お好みの環境で Databricks を使用し続けることができます。
  • パーソナルアクセストークン、Azure サービスプリンシパル、Azure AD など、さまざまな方法で安全に認証できます。
  • Databricks ファイルシステム、Azure Blob ストレージ、AWS S3 ストレージを使用して Databricks にデータをアップロードできます。

多くのお客様が、さまざまなシステムから Databricks データレイクハウスにデータを移行するために CData のソリューションを使用していますが、ライブ接続ソリューションを使用して、データベースと Databricks 間の接続をフェデレートしているお客様も多数います。これらのお客様は、SQL Server リンクサーバーまたは Polybase を使用して、既存の RDBMS 内から Databricks へのライブアクセスを実現しています。

一般的な Databricks のユースケースと CData のソリューションがデータの問題解決にどのように役立つかについては、ブログをご覧ください:What is Databricks Used For? 6 Use Cases


はじめに


ソースとデスティネーションコンポーネントの追加

まず、新しい ADO.NET Source コントロールと新しい Databricks Destination コントロールを Data Flow Task に追加します。

ADO.NET ソースの設定

以下の手順に従って、SQL Server インスタンスへの接続に必要なプロパティを指定します。

  1. ADO.NET Source を開き、新しい接続を追加します。ここでサーバーとデータベースの情報を入力します。
  2. Data access mode メニューで「Table or view」を選択し、Databricks にエクスポートするテーブルまたはビューを選択します。
  3. ADO NET Source ウィザードを閉じ、デスティネーションコンポーネントに接続します。

Databricks 用の新しい Connection Manager を作成

以下の手順に従って、Connection Manager で必要な接続プロパティを設定します。

  1. 新しい Connection Manager を作成します:Connection Manager ウィンドウで右クリックし、New Connection をクリックします。Add SSIS Connection Manager ダイアログが表示されます。
  2. メニューから CData Databricks Connection Manager を選択します。
  3. 接続プロパティを設定します。

    Databricks 接続プロパティの取得・設定方法

    Databricks クラスターに接続するには、以下のプロパティを設定します。

    • Database:Databricks データベース名。
    • Server:Databricks クラスターのサーバーのホスト名
    • HTTPPath:Databricks クラスターのHTTP パス。
    • Token:個人用アクセストークン。この値は、Databricks インスタンスのユーザー設定ページに移動してアクセストークンタブを選択することで取得できます。
    Databricks インスタンスで必要な値は、クラスターに移動して目的のクラスターを選択し、Advanced Options の下にあるJDBC/ODBC タブを選択することで見つけることができます。

    Databricks への認証

    CData は、次の認証スキームをサポートしています。

    • 個人用アクセストークン
    • Microsoft Entra ID(Azure AD)
    • Azure サービスプリンシパル
    • OAuthU2M
    • OAuthM2M

    個人用アクセストークン

    認証するには、次を設定します。

    • AuthSchemePersonalAccessToken
    • Token:Databricks サーバーへの接続に使用するトークン。Databricks インスタンスのユーザー設定ページに移動してアクセストークンタブを選択することで取得できます。

    その他の認証方法については、ヘルプドキュメント の「はじめに」セクションを参照してください。

Databricks デスティネーションの設定

デスティネーションコンポーネントの Connection Manager で、SQL Server ソーステーブルから Databricks デスティネーションテーブルへのマッピングと、Databricks のデータに対して実行するアクションを定義します。この記事では、Customers エンティティを Databricks に挿入します。

  1. Databricks Destination をダブルクリックして、デスティネーションコンポーネントエディタを開きます。
  2. Connection Managers タブで、先ほど作成した Connection Manager を選択します。
  3. Use a Table メニューで Customers を選択します。 Action メニューで Insert を選択します。
  4. Column Mappings タブで、入力カラムからデスティネーションカラムへのマッピングを設定します。

プロジェクトの実行

これでプロジェクトを実行できます。 SSIS Task の実行が完了すると、SQL テーブルのデータが選択したテーブルにエクスポートされます。

はじめる準備はできましたか?

Databricks SSIS Component の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

Databricks Icon Databricks SSIS Components お問い合わせ

SSIS ソース & デスティネーションコンポーネントは、SQL Server SSIS のワークフロー内で簡単にDatabricks 互換のデータベースエンジンに接続できる強力なツールです。

データフロー内のDatabricks コンポーネントを使ってDatabricks を同期できます。データ同期、ローカルバックアップ、ワークフローの自動化などに最適!