Google Data Fusion で Strava に連携した ETL プロセスを作成

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
CData JDBC Driver を Google Data Fusion にロードし、Strava のデータ にリアルタイムでアクセスできる ETL プロセスを作成します。

Google Data Fusion を使用すると、セルフサービス型のデータ連携を行い、異なるデータソースを統合できます。CData API Driver for JDBC をアップロードすることで、Google Data Fusion のパイプライン内から Strava のデータ にリアルタイムでアクセスできるようになります。CData JDBC Driver を使用すると、Strava のデータ を Google Data Fusion でネイティブにサポートされている任意のデータソースにパイプできますが、この記事では、Strava から Google BigQuery へデータをパイプする方法を説明します。

CData API Driver for JDBC を Google Data Fusion にアップロード

CData API Driver for JDBC を Google Data Fusion インスタンスにアップロードして、Strava のデータ にリアルタイムでアクセスしましょう。Google Data Fusion では JDBC ドライバーの命名規則に制限があるため、JAR ファイルを driver-version.jar という形式に合わせてコピーまたはリネームしてください。例:cdataapi-2020.jar

  1. Google Data Fusion インスタンスを開きます
  2. をクリックしてエンティティを追加し、ドライバーをアップロードします
  3. "Upload driver" タブで、リネームした JAR ファイルをドラッグまたは参照します。
  4. "Driver configuration" タブで以下を設定します:
    • Name: ドライバーの名前(cdata.jdbc.api)を作成し、メモしておきます
    • Class name: JDBC クラス名を設定します:(cdata.jdbc.api.APIDriver)
  5. "Finish" をクリックします

Google Data Fusion で Strava のデータ に接続

JDBC Driver をアップロードしたら、Google Data Fusion のパイプラインで Strava のデータ にリアルタイムでアクセスできます。

  1. Pipeline Studio に移動して、新しいパイプラインを作成します
  2. "Source" オプションから "Database" をクリックして、JDBC Driver 用のソースを追加します
  3. Database ソースの "Properties" をクリックしてプロパティを編集します

    NOTE:Google Data Fusion で JDBC Driver を使用するには、ライセンス(製品版またはトライアル)とランタイムキー(RTK)が必要です。ライセンス(またはトライアル)の取得については、CData までお問い合わせください。

    • Label を設定します
    • Reference Name を将来の参照用の値に設定します(例:cdata-api)
    • Plugin Type を "jdbc" に設定します
    • Connection String を Strava の JDBC URL に設定します。例:

      jdbc:api:RTK=5246...;Profile=C:\profiles\Strava.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackURL=http://localhost:33333;

      Strava への認証では、OAuth 標準を使って自分のデータに接続したり、他のユーザーが各自のデータに接続できるようにしたりできます。

      OAuth 認証の設定

      Strava に接続するには、カスタム OAuth アプリケーションを作成する必要があります。カスタム OAuth アプリケーションを作成するには、以下のステップで進めます:

      1. Strava API Settings ページにログインします
      2. 新しいアプリケーションを作成するか、既存のアプリケーションを選択します
      3. 「Authorization Callback Domain」をコールバック URL のドメインに設定します(例:localhost)
      4. Client ID と Client Secret を控えておきます

      以下の接続プロパティを設定して接続を確立してください:

      • AuthScheme:OAuth に設定します。
      • InitiateOAuthGETANDREFRESH に設定します。InitiateOAuth を使うと、OAuthAccessToken を取得するプロセスを管理できます。
      • OAuthClientId:Strava API アプリケーションの Client ID に設定します。
      • OAuthClientSecret:Strava API アプリケーションの Client Secret に設定します。
      • CallbackURL:アプリケーションのコールバックドメインに一致するリダイレクト URI に設定します。

      接続文字列の例:

      Profile=C:\profiles\Strava.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackURL=http://localhost:33333;
      

      ビルトイン接続文字列デザイナー

      JDBC URL の作成には、Strava JDBC Driver に組み込まれている接続文字列デザイナーを使用できます。JAR ファイルをダブルクリックするか、コマンドラインから JAR ファイルを実行してください。

            java -jar cdata.jdbc.api.jar
            

      接続プロパティを入力し、接続文字列をクリップボードにコピーします。

    • Import Query を Strava から取得したいデータを抽出する SQL クエリに設定します。例:
      SELECT * FROM Athlete
  4. "Sink" タブから、同期先シンクを追加します(この例では Google BigQuery を使用します)
  5. BigQuery シンクの "Properties" をクリックしてプロパティを編集します
    • Label を設定します
    • Reference Name を api-bigquery のような値に設定します
    • Project ID を特定の Google BigQuery プロジェクト ID に設定します(またはデフォルトの "auto-detect" のままにします)
    • Dataset を特定の Google BigQuery データセットに設定します
    • Table を Strava のデータ を挿入するテーブル名に設定します

Source と Sink を設定すると、Strava のデータ を Google BigQuery にパイプする準備が整います。パイプラインを保存してデプロイしてください。パイプラインを実行すると、Google Data Fusion が Strava からリアルタイムデータをリクエストし、Google BigQuery にインポートします。

これはシンプルなパイプラインの例ですが、変換、分析、条件などを使用してより複雑な Strava パイプラインを作成できます。CData API Driver for JDBC の 30日間の無償トライアルをダウンロードして、今すぐ Google Data Fusion で Strava のデータ をリアルタイムで活用しましょう。

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

API Driver で Strava のライブデータに接続

Strava に接続