Pentaho Data Integration でGoogle Sheets のデータを連携
CData JDBC Driver for Google Spreadsheets を使用すると、データパイプラインからリアルタイムデータにアクセスできます。Pentaho Data Integration は、ETL(Extraction, Transformation, and Loading)エンジンであり、データをクレンジングし、アクセス可能な統一フォーマットでデータを格納します。この記事では、Google Sheets のデータ に JDBC データソースとして接続し、Pentaho Data Integration で Google Sheets のデータ をベースにしたジョブやトランスフォーメーションを構築する方法を説明します。
Google Sheets への接続を設定
スプレッドシートに接続するには、Google への認証を行い、Spreadsheet 接続プロパティにスプレッドシートの名前またはフィードリンクを設定します。Google Drive のスプレッドシートの情報一覧を表示したい場合は、認証後にSpreadsheets ビューにクエリを実行します。
ClientLogin(ユーザー名 / パスワード認証)は、2012年4月20日より正式に非推奨となり、現在は利用できません。代わりに、OAuth 2.0 認証規格を使用してください。 個々のユーザーに代わってGoogle API にアクセスするには、埋め込みクレデンシャルを使用するか、独自のOAuth アプリを登録します。
OAuth は、Google Apps ドメインのユーザーに代わって、サービスアカウントを使って接続することもできます。サービスアカウントで認証するには、OAuth JWT 値を取得するためのアプリケーションを登録する必要があります。
Google アカウント、Google Apps アカウント、二段階認証を使用するアカウントなど、様々なアカウントタイプでGoogle スプレッドシートに接続する方法は、ヘルプドキュメントの「はじめに」を参照してください。
組み込みの接続文字列デザイナー
JDBC URL の構築を支援するには、Google Sheets JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。JAR ファイルをダブルクリックするか、コマンドラインから JAR ファイルを実行します。
java -jar cdata.jdbc.googlesheets.jar
接続プロパティを設定し、接続文字列をクリップボードにコピーします。
JDBC URL を設定する際には、Max Rows 接続プロパティの設定も検討してください。これにより返される行数が制限され、レポートやビジュアライゼーションの設計時にパフォーマンスを向上させることができます。
一般的な JDBC URL は次のようになります:
jdbc:googlesheets:Spreadsheet=MySheet;
接続文字列を保存して、Pentaho Data Integration で使用します。
Pentaho DI から Google Sheets に接続
Pentaho Data Integration を開き、「Database Connection」を選択して CData JDBC Driver for Google Spreadsheets への接続を設定します。
- 「General」をクリックします。
- Connection name を設定します(例:Google Sheets Connection)。
- Connection type を「Generic database」に設定します。
- Access を「Native (JDBC)」に設定します。
- Custom connection URL に Google Sheets の接続文字列を設定します(例:
jdbc:googlesheets:Spreadsheet=MySheet;
)。 - Custom driver class name を「cdata.jdbc.googlesheets.GoogleSheetsDriver」に設定します。
- 接続をテストし、「OK」をクリックして保存します。
Google Sheets のデータパイプラインを作成
CData JDBC Driver を使用して Google Sheets への接続が設定されたら、新しいトランスフォーメーションまたはジョブを作成する準備が整いました。
- 「File」>>「New」>>「Transformation/job」をクリックします。
- 「Table input」オブジェクトをワークフローパネルにドラッグし、Google Sheets 接続を選択します。
- 「Get SQL select statement」をクリックし、Database Explorer を使用して利用可能なテーブルとビューを表示します。
- テーブルを選択し、必要に応じてデータをプレビューして確認します。
ここから、適切な同期先を選択し、レプリケーション中にデータを変更、フィルタリング、その他の処理を行うトランスフォーメーションを追加することで、トランスフォーメーションまたはジョブを続行できます。
無料トライアルと詳細情報
CData JDBC Driver for Google Spreadsheets の 30日間無料トライアルをダウンロードして、Pentaho Data Integration で Google Sheets のデータ のリアルタイムデータを今すぐ活用しましょう。