Pentaho Report Designer でGoogle Sheets のデータを連携利用

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
Pentaho BI ツールでGoogle Sheets のデータをもとにしたレポートを公開。

CData JDBC Driver for Google Sheets のデータ を使えば、ダッシュボードやレポートからリアルタイムデータにアクセスできます。この記事では、Google Sheets のデータにJDBC データソースとして接続し、Pentaho でGoogle Sheets のデータをもとにしたレポートを公開する方法を説明します。

接続してレポートを作成

  1. インストールディレクトリのlib サブフォルダ内にあるドライバーのJAR ファイルを、Pentaho ディレクトリ内の\Report-Designer\lib\jdbc\ フォルダにコピーします。
  2. \Report-Designer\ フォルダ内のreport-designer.bat ファイルを実行してReport-Designer UI を開きます。
  3. Data -> Add Data Source -> Advanced -> JDBC(Custom)をクリックし、新しいGoogle Sheets 接続を作成して、ドライバーで新しいデータソースを作成します。 表示されるダイアログで、以下のように接続プロパティを設定します。

    • Custom Connection URL property:JDBC URL を入力します。JDBC URL はjdbc:googlesheets: で始まり、その後にセミコロン区切りで接続プロパティを指定します。

      スプレッドシートに接続するには、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;
    • Custom Driver Class Name:cdata.jdbc.googlesheets.GoogleSheetsDriver を入力します。
    • User Name:認証に使用するユーザー名。
    • Password:認証に使用するパスワード。

レポートにGoogle Sheets のデータを追加

Google Sheets のデータをもとにレポートを作成する準備が整いました。

  1. レポートにGoogle Sheets のソースを追加します。Data -> Add Data Source -> JDBC をクリックしてデータソースを選択します。

  2. クエリを設定します。この記事では以下のクエリを使用します:

    SELECT Shipcountry, SUM(OrderPrice) FROM Orders GROUP BY Shipcountry
  3. レポートにチャートをドラッグし、ダブルクリックしてチャートを編集します。レポートを実行してチャートを表示します。このクエリの結果を使用して、Orders テーブルのシンプルなチャートを作成できます。
  4. 最後に、レポートを実行してチャートを確認します。

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

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

 ダウンロード

詳細:

Google Sheets Icon Google Sheets JDBC Driver お問い合わせ

Java アプリケーションをGoogle ドキュメントに保存されているスプレッドシートのリアルタイムデータに簡単に接続できます。Google スプレッドシートを使用して、アプリケーションの要となるデータを管理できます。