Spotify のデータをBoomi AtomSphere で連携利用する方法:CData JDBC Driver
Boomi AtomSphere https://boomi.com/は、Boomi 社が提供する、 シングルインスタンス、マルチテナントアーキテクチャを特徴としているデータ統合サービス(iPaaS)です。データ統合機能だけでなく、マスターデータのハブ機能、EDI、APIManagement、WorkFlow といったビジネスユースに必要なデータ連携のすべてを実現する機能をシングルプラットフォームで提供しています。
この記事では、Boomi AtomSphere のオンプレミスAtom deployment 機能を使って、CData JDBC ドライバ経由でSpotify のデータにアクセスする方法を紹介します。CData Drivers を使うことで、RDB のようにBoomi 内でSpotify のデータを扱うことができるようになります。
Boomi のon-Premise Atom depleyment の作成
on-Premise Atom deployment (右上の青部分)を利用する構成としました。この機能を利用することでOn-Premise 側に配置したCData JDBC ドライバ経由でのSaaS 連携を実現します。
- ブラウザからBoomi Atom のManage > Atom Management のタブを開きます。
- +New > Atom を開きます。
- Atom Setup ダイアログが開くので、ブラウザを開いているマシンのOS(本例ではWindows10Pro 64bit)のSetup ファイルをダウンロードします。
- ダウンロードした「atom_install64.exe」を実行するとインストーラが起動します。
- Setup Wizard を進めます。
- ブラウザからBoomi Atom へのログインする時のUser・Password をセットして、Atom Name はデフォルトのまま、次に進みます。
- on-Premise Atom deployment のインストールディレクトリ(デフォルト)を指定して次に進みます。
- Setup Wizard を終了(Finish)します。
- ブラウザからBoomi Atom のManage > Atom Management のタブを開いて、上記で作成したon-Premise Atom Deployment が起動していることを確認します。なお、Windows マシンの場合、サービスからも起動を確認できます。on-Premise Atom deployment の作成は以上です。
Boomi on-Premise Atom deployment モジュールへのJDBC ドライバの配置
次に別途ダウンロード・インストールしたCData JDBC Driver for API をBoomi on-premise Atom モジュールに配置していきます。
- JDBC Drivers ファイルをCData 製品のインストールフォルダからon-Premise Atom deployment インストールパス配下のパスにコピーします。
- cdata.jdbc.api.jar
- cdata.jdbc.api.lic (試用版では.lic ファイルは不要)
- コピー元:C:\Program Files\CData\CData JDBC Driver for API 2019J\lib
- コピー先:C:\Boomi AtomSphere\Atom - 10.211.55.9\lib
コピーしたらBoomi Atom をブラウザからリスタート(Restart Atom)してください。作成したon-Premise Atom deployment のInstalledLibraries にJDBCの.jar ファイルが表示されれば成功です。
Spotify のConnectionの作成
Boomi Atom からSpotify のデータソースに接続するためのConnection を作成します。
- Welcom 画面の「Component > Connetion」を選択するとCreate Component ウィザードが開きます。
- Spotify への接続用のConnection 設定として以下の値をセットします。
- Type: Connection
- Component Name: ConnectionCDataAPI
- Folder: 任意のパス
- Connector: Database
- そしてJDBC Driver の接続設定を行います。
OAuth 認証の設定
Spotify は認証に OAuth 2.0 を使用します。クライアント認証情報を取得するには、Spotify Developer Dashboard でアプリケーションを作成する必要があります。
Spotify アプリケーションのセットアップ
- Spotify Developer Dashboard にアクセスします。
- Spotify アカウントでログインして Create app をクリックします。
- アプリ名、説明を入力し、Redirect URI を設定します(デスクトップアプリケーションの場合は
http://localhost:33333
など)。 - アプリ設定から Client ID と Client Secret をコピーします。
接続プロパティ
以下の接続プロパティを設定して接続を確立してください:
- AuthScheme:OAuth に設定します。
- InitiateOAuth:GETANDREFRESH に設定します。InitiateOAuth を使うと、OAuthAccessToken を取得するプロセスを管理できます。
- OAuthClientId:Spotify アプリケーションの Client ID に設定します。
- OAuthClientSecret:Spotify アプリケーションの Client Secret に設定します。
- Scope:必要な OAuth スコープ(スペース区切り)に設定します。デフォルトには、このプロファイルのテーブルに必要なすべての読み取りスコープが含まれます。
- CallbackURL:Spotify アプリケーションで設定したリダイレクト URI に設定します(例:http://localhost:33333)。
接続文字列の例
Profile=C:\profiles\Spotify.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackURL=http://localhost:33333;
利用可能な OAuth スコープ
- user-read-private:ユーザーのサブスクリプション詳細と露骨なコンテンツ設定への読み取りアクセス。
- user-read-email:ユーザーのメールアドレスへの読み取りアクセス。
- user-library-read:ユーザーが保存したトラック、アルバム、エピソード、ショー、オーディオブックへの読み取りアクセス。
- playlist-read-private:ユーザーの非公開プレイリストへの読み取りアクセス。
- playlist-read-collaborative:ユーザーがフォローしているコラボレーティブプレイリストへの読み取りアクセス。
- user-follow-read:現在のユーザーがフォローしているアーティストの一覧への読み取りアクセス。
- user-read-playback-state:ユーザーのプレーヤー状態(デバイス、現在のトラック、再生位置)への読み取りアクセス。
- user-read-currently-playing:ユーザーが現在再生中のコンテンツへの読み取りアクセス。
- user-read-playback-history:ユーザーが最近再生したトラックへの読み取りアクセス。
- user-top-read:ユーザーのトップアーティストとトラックへの読み取りアクセス。
- Driver Type: Custom
- Class Name: cdata.jdbc.api.APIDriver
- User Name: 本来であれば不要ですが、空のままだと後の手順でバリデーションエラーが発生するので適当な値をセットします
- Password: 本来であれば不要ですが、空のままだと後の手順でバリデーションエラーが発生するので適当な値をセットします
- Connection URL: jdbc:api:Profile=C:\profiles\Spotify.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackURL=http://localhost:33333;InitiateOAuth=GETANDREFRESH
- Connection の値を設定したら接続テストを行います。右上のTest Connection ボタンをクリックします。実行するAtom を選択する画面が表示されるので、上記手順で作成したon-Premise Atom deployment を選択します。
- テスト接続が成功することを確認してFinish ボタンでウィザードを閉じます。
- 作成した Spotify のデータ への接続Connection を保存(Save)します。
Boomi Atom でのSpotify のデータ Profile の作成
次にProfile を設定していきます。ProfileとはSQL(SELECT/INSERT/UPDATE/DELETE)実行時のフィールド定義です。
- Spotify のデータ のテーブルをSELECT するProfile を作成していきます。
-
- Type: Profle
- Component Name: ProfileCDataAPI
- Folder: 任意のパス
- Connector: Database
- 二つのパラメータに、Display Name: デフォルト, Type: Select と値をセットしたら右上のImportボタンをクリックします。
- Database Import Wizardが開くので、以下のパラメータをセットして次に進みます。
- Browse in: 上記手順で作成したon-Premise Atom deployment
- Connection: 上記手順で作成した接続Connection
- Spotify のデータ 内のオブジェクトがテーブル一覧として表示されます。取得するテーブルにチェックをオンにして次に進みます。
- テーブル内のカラム一覧が表示されます。使用する項目のチェックをオンにして次に進みます。
- Import ウィザードが完了します。
- DataElements のField アイコンをクリックすると選択テーブル内のカラムが定義されていることを確認できます。また、SQL Script には取得時のSQL(SELECT)が表示されています。作成したProfile を保存します。
- これでSpotify のデータ がBoom Atom で利用できるProfile として登録されました。
Boomi AtomSphere でのSpotify のデータ の利用
あとは、設定されたProfile はRDB と同じようにBoomi Atom 内で利用することができます。カラムにマッピングを行うこともできます。
このようにCData JDBC ドライバをアップロードすることで、簡単にBoomi AtomSphere でSpotify のデータ データをノーコードで連携し、使うことが可能です。
是非、CData JDBC Driver for API 30日の無償評価版 をダウンロードして、お試しください。