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

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

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

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

CData API Driver for JDBC を Google Data Fusion インスタンスにアップロードして、freee のデータ にリアルタイムでアクセスしましょう。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 で freee のデータ に接続

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

  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 を freee の JDBC URL に設定します。例:

      jdbc:api:RTK=5246...;Profile=freee.apip;ProfileSettings='CompanyId=1234567;';Authscheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackUrl=your_callback_url;

      まずはOAuth アプリを作成します。https://app.secure.freee.co.jp/developers/applications にアクセスして、「新しいアプリケーションの作成」ボタンをクリックします。アプリケーション名を指定し、リダイレクトURL を設定して登録をクリックします。そうすると、クライアントシークレットとクライアントID が発行されます。

      次に、プロファイルをダウンロードしてドライバーがアクセス可能な場所に配置します。こちらからプロファイルをダウンロードして、「C:/profiles/」 などに設置してください。

      その後、Companies ビューからCompanyId を取得します。以下の接続プロパティを設定したら、接続する準備ができます。

      • AuthScheme:OAuth に設定します。
      • OAuthClientID:アプリ設定で指定されたOAuth クライアントID に設定します。
      • OAuthClientSecret:アプリ設定で指定されたOAuth クライアントシークレットに設定します。
      • CallbackURL:アプリ設定で指定したリダイレクトURI に設定します。
      • InitiateOAuth:GETANDREFRESH に設定します。InitiateOAuth を使用してOAuthAccessToken を取得するプロセスを管理できます。

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

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

            java -jar cdata.jdbc.api.jar
            

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

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

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

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

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

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

freee に接続 お問い合わせ