Pentaho Report Designer でAirtable のデータを連携利用
CData JDBC Driver for Airtable のデータ を使えば、ダッシュボードやレポートからリアルタイムデータにアクセスできます。この記事では、Airtable のデータにJDBC データソースとして接続し、Pentaho でAirtable のデータをもとにしたレポートを公開する方法を説明します。
接続してレポートを作成
- インストールディレクトリのlib サブフォルダ内にあるドライバーのJAR ファイルを、Pentaho ディレクトリ内の\Report-Designer\lib\jdbc\ フォルダにコピーします。
- \Report-Designer\ フォルダ内のreport-designer.bat ファイルを実行してReport-Designer UI を開きます。
Data -> Add Data Source -> Advanced -> JDBC(Custom)をクリックし、新しいAirtable 接続を作成して、ドライバーで新しいデータソースを作成します。 表示されるダイアログで、以下のように接続プロパティを設定します。
Custom Connection URL property:JDBC URL を入力します。JDBC URL はjdbc:airtable: で始まり、その後にセミコロン区切りで接続プロパティを指定します。
Airtable への接続
それでは、Airtable に接続していきましょう。CData 製品は、Airtable にテーブルとビューを要求します。 Schema プロパティ(オプション)を使用すると、表示されるテーブルおよびビューを特定のベースに制限できます。 特定のベースに制限したい場合は、このプロパティを使用するスキーマの名前に設定してください。(これはAirtable のBase 名に相当します。)
すべてのAirtable Bases に加えて、DataModelInformation という名前の静的スキーマもご利用いただけます。 このスキーマでは、Bases、Tables、Users のような静的テーブルをクエリできます。 DisplayObjectIds がTrue に設定されている場合、Schema の値は名前ではなくAirtable Base id に設定する必要があります。
Airtableへの認証
続いて、認証方法を設定しましょう。個人用アクセストークンまたはOAuth PKCE のいずれかを使用してAirtable に認証できます。
個人用アクセストークン
個人用アクセストークンをまだ生成していない場合は、以下のステップで生成してみましょう。
- ユーザーアカウントにログインします
- "https://airtable.com/create/tokens" に移動します
- Create new token をクリックします
- Scopes で、Add a scope をクリックして以下の各スコープを追加します
- data.records:read
- data.records:write
- schema.bases:read
- Access で、トークンにアクセス権を付与するすべてのワークスペースとベースを追加します
- Create token をクリックしてトークンを生成します。生成されたトークンは一度しか表示されませんので、必ずコピーして保存してください
次に、以下の設定を行います。
- AuthScheme:PersonalAccessToken
- Token:先ほど生成した個人用アクセストークンの値
OAuth PKCE については、 href="/kb/help/" target="_blank">ヘルプドキュメントの「はじめに」をご確認ください。
組み込みの接続文字列デザイナー
JDBC URL の構成については、Airtable JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。JAR ファイルをダブルクリックするか、コマンドラインからJAR ファイルを実行します。
java -jar cdata.jdbc.airtable.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
JDBC URL を設定する際、Max Rows 接続プロパティの設定も検討してください。これにより返される行数が制限されます。特にレポートやビジュアライゼーションを設計する際のパフォーマンス向上に役立ちます。
一般的なJDBC URL は次のとおりです:
jdbc:airtable:APIKey=keymz3adb53RqsU;BaseId=appxxN2fe34r3rjdG7;TableNames=TableA,...;ViewNames=TableA.ViewA,...;
- Custom Driver Class Name:cdata.jdbc.airtable.AirtableDriver を入力します。
- User Name:認証に使用するユーザー名。
- Password:認証に使用するパスワード。
レポートにAirtable のデータを追加
Airtable のデータをもとにレポートを作成する準備が整いました。
-
レポートにAirtable のソースを追加します。Data -> Add Data Source -> JDBC をクリックしてデータソースを選択します。
クエリを設定します。この記事では以下のクエリを使用します:
SELECT Id, Column1 FROM SampleTable_1 WHERE Column1 = 'Value1'
- レポートにチャートをドラッグし、ダブルクリックしてチャートを編集します。レポートを実行してチャートを表示します。このクエリの結果を使用して、SampleTable_1 テーブルのシンプルなチャートを作成できます。
- 最後に、レポートを実行してチャートを確認します。