CData API Server で Tableau からライブ SharePoint Excel Services データにアクセス
Tableau は、データの接続、可視化、インサイトの共有のための主要な BI プラットフォームの 1 つです。
CData API Server と SharePoint Excel Services コネクタ(または 270 以上のコネクタ)を使用すると、複数のソースからライブデータを公開する API を迅速に作成し、OData や Swagger などの業界標準を使用して Tableau とシームレスに統合できます。
この記事では、データの移動や複製なしに、SharePoint Excel Services からのライブデータを使用してシンプルな Tableau ダッシュボードを作成します。
それでは始めましょう!
前提条件
- CData API Server: こちらから無料トライアルをダウンロードできます。
- Tableau: こちらからサインイン、サインアップ、またはダウンロードできます。
- データにアクセスできるアクティブな SharePoint Excel Services アカウント。
概要
以下の手順で進めていきます。
- CData API Server をインストールし、SharePoint Excel Services への接続を設定して、OData エンドポイントを使用します。
- Tableau でこれらのエンドポイントに接続し、ライブダッシュボードとレポートを構築します。
ステップ 1:API Server のインストールと SharePoint Excel Services への接続設定
1.1 API Server のインストール
まだインストールしていない場合は、CData API Server ページからお使いのマシン用のインストーラーをダウンロードしてください。インストール手順に従ってセットアップを完了します。
インストールが完了したら、以下の方法でサーバーを起動できます。
- Windows: CData API Server はデフォルトでサービスとして実行されます。サービスが実行されていることを確認し、ブラウザで http://hostname:port(例:http://localhost:8080/)を開いて API Server 管理コンソールにアクセスします。
- Linux/Mac: サーバーを手動で実行するか、サービスとして実行できます。手動で起動するには、インストールディレクトリに移動して java -jar apiserver.jar を実行します。
- また、root 権限で service.sh を実行して、API Server を Linux システムサービスとしてセットアップすることもできます。
1.2 CORS の有効化
Tableau と CData API Server が異なるドメインでホストされている場合、Tableau がデータエンドポイントにアクセスできるようにするために CORS(Cross-Origin Resource Sharing)を有効にする必要があります。API Server で CORS を有効にするには:
- 「Settings」に移動し、 アイコンをクリックして CORS 設定を編集します。
- Cross-Origin Resource Sharing (CORS) を有効にします。
- Allow all domains without '*' を有効にして、すべてのオリジンを許可します。
- Access-Control-Allow-Origin に Tableau のオリジンドメインを入力するか、* を使用してすべてのドメインを許可します(パブリック API に適しています)。
- Access-Control-Allow-Credentials を有効にして、Cookie と認証ヘッダーを許可します。
- Access-Control-Allow-Methods に GET, PUT, POST, OPTIONS を入力します。
- Access-Control-Allow-Headers に Authorization, Content-Type を入力します。
- Access-Control-Max-Age(デフォルト:3600 秒)を設定して、プリフライトリクエストをキャッシュします。
- 「Save」をクリックします。
1.3 API Server で SharePoint Excel Services 接続を追加
- 「Settings」に移動し、右上の Add Connection をクリックします。
- SharePoint Excel Services を選択します。表示されない場合は、Only Installed をオフにしてすべてのコネクタを表示します。
- Install Connector をクリックして自動インストールします。手動セットアップの場合は、Manual Install を選択してダウンロードした ZIP ファイルをアップロードします。
- インストールが完了したら、SharePoint Excel Services を再度クリックして接続設定を開き、以下の詳細を使用して設定します。
- Library:デフォルトではShared Documents ライブラリが使用されます。このプロパティを使って、組織内の別のドキュメントライブラリを指定してみてください。例えば、OneDrive for Business に接続する場合は、このプロパティを"Documents" に設定します。
- Folder:このプロパティを使って、ライブラリ内のサブフォルダへのパスを指定できます。パスはLibrary で指定されたライブラリ名に関連します。
- OData: OData API を使用すると、Excel で[挿入]->[テーブル]をクリックして作成されたExcel テーブルオブジェクト(範囲やスプレッドシートではありません)から定義されたテーブルにアクセスできます。OData API に接続する際、ワークブックにテーブルオブジェクトが定義されていない場合は、CData 製品がテーブルを返さないことがあります。テーブルとしてスプレッドシートまたは範囲に接続するには、UseRESTAPI をtrue に設定してください。
- REST: REST API を使用すると、Excel テーブルオブジェクト、範囲、およびスプレッドシートから定義されたテーブルへアクセスできます。これがデフォルトの API です。範囲およびスプレッドシートから多数の行をリクエストすることは REST API によって制限されており、CData 製品では返される行数をデフォルトで 100 に制限しています。また CData 製品では、デフォルトで1行目からカラム名を検出します。これを無効にするには、Header を設定してください。
- 「Save & Test」をクリックして接続設定を検証し完了します。
ワークブックへの接続
どちらのSharePoint エディションをお使いでも、File を Excel ワークブックに設定してください。このパスは以下のプロパティからの相対パスになります。
テーブルとしてのスプレッドシートデータへの接続
CData 製品では、基底API で利用可能なオブジェクトに基づいて、使用可能なテーブルを検出していきます。
API では異なるAPI オブジェクトを表示します。スプレッドシートの構成とSharePoint のバージョンに基づいてAPI を選択しましょう。
DefineTables を追加設定すると、Excel の範囲の構文を使用して、範囲に基づいてテーブルを定義できます。大きすぎる範囲は、API によって制限されます。
SharePoint オンプレミスへの接続
URL をサーバー名もしくはIP アドレスに設定しましょう。さらに、SharePointVersion と認証値を設定します。
SharePoint OnPremises を認証するには、AuthScheme を認証タイプに設定し、必要に応じてUser と Password を設定してください。
Note:SharePoint On-Premises 2010 に接続する場合は、 UseRESTAPI をtrue に設定する必要があります。
Windows(NTLM)
最も一般的な認証タイプです。CData 製品では NTLM をデフォルトとして使用するよう事前設定されています。Windows のUser と Password を設定して接続してください。
その他の認証方法については、ヘルプドキュメントの「はじめに」をご覧ください。
1.4 ユーザーの追加と設定
作成した OData エンドポイントへの安全なアクセスを許可するために、CData API Server でユーザーを作成・設定します。各ユーザーには認証情報とロールベースのアクセス制御があり、適切なロールを持つ承認されたユーザーのみが接続されたデータをクエリできるようになります。
- ナビゲーションペインから「Users」に移動し、右上の Add User をクリックします。
- Username を入力し、ユーザーの安全な Password を設定します。
- Role を選択します:
- Admin: 設定や接続を含むすべての機能へのフルアクセス。
- Query: API エンドポイント経由のデータアクセスに限定(Tableau での使用に適しています)。
- (オプション)レート制限を設定:
- Requests Per Hour: 1 時間あたりの許可される API コール数(デフォルト:1000)。
- Max Concurrent Requests: 許可される並列 API リクエスト数(デフォルト:10)。
- ユーザーの Privileges を定義:
- GET: データの取得を許可。
- POST: 新しいレコードの作成を許可。
- PUT, MERGE, PATCH: 既存レコードの更新を許可。
- DELETE: レコードの削除を許可。
- 「Add User」をクリックしてユーザーアカウントを保存し、有効化します。
ユーザーを追加すると、Authtoken が自動的に生成されます。このトークンは、パスワードの代わりに安全な認証方法として API リクエストで使用できます。
また、Authtoken を更新したり、無効にしたり、ユーザー設定で Token Expiration オプションを有効にして有効期限ルール(例:有効期限までの日数)を設定することもできます。
1.5 エンドポイント用のテーブルを追加
SharePoint Excel Services のデータを OData 経由で Tableau で利用できるようにするには、API Server を通じて目的のテーブルを公開する必要があります。手順は以下のとおりです。
- CData API Server で、左側のナビゲーションから「API」に移動し、右上の Add Table をクリックします。
- 先ほど設定した SharePoint Excel Services 接続を選択し、「Next」をクリックします。
- Tables セクションを展開して、利用可能なエンティティとスキーマを参照します。個々のテーブルを選択するか、上部の TABLE NAME チェックボックスをクリックしてすべてを選択します。次に「Confirm」をクリックします。
1.6 Tableau でエンドポイントにアクセス
API の設定が完了したので、Tableau から OData エンドポイントに直接接続してライブデータを可視化できます。以下は OData エンドポイントの URL 形式です。
| エンドポイント | URL | |
|---|---|---|
| エンティティ一覧 | http://address:port/api.rsc/ | |
| テーブルメタデータ(例:albums) | http://address:port/api.rsc/albums/$metadata?@json | |
| テーブルデータ(例:albums) | http://address:port/api.rsc/albums |
これらの OData エンドポイントは、Tableau に接続してライブダッシュボード、チャート、レポートを作成できるようになりました。
CData API Server は完全な OData フィルタリング機能 (OData ABNF) をサポートしています。細かなクエリには、$select、$filter、$orderby、$top、$skip などの標準 OData クエリパラメータをリクエストに追加できます。
ステップ 2:Tableau でシンプルなダッシュボードを作成
CData API Server が SharePoint Excel Services データの OData エンドポイント を公開しているので、Tableau を API に接続してリアルタイムダッシュボードを構築できます。手順は以下のとおりです。
この記事では、Windows 上の Tableau Desktop を使用しますが、手順はすべての Tableau バージョンで同様に機能します。
2.1. OData エンドポイントに接続
- CData API Server にログインして CData API エンドポイント URL を取得します。左側のナビゲーションから「API」に移動し、右上の View Endpoints をクリックします。
- URL をコピーします(例:http://localhost:8080/api.rsc)。
- Tableau を起動し、アカウントにログインします。
- 左側の サーバーへ で「More」をクリックし、OData を検索して選択します。
- 以下の詳細を追加します:
- サーバー: CData API Server エンドポイント URL(例:http://localhost:8080/api.rsc)
- 認証: ユーザー名とパスワード を選択します。
- ユーザー名: CData Server API ユーザー名を入力します。
- パスワード: CData API Server パスワードを入力します。
2.2. ダッシュボードの作成
- 左側の テーブル で、目的のテーブルをキャンバスにドラッグし、左下の シート 1 をクリックします。
- シート 1 で、左側の テーブル の下で、選択したテーブルから目的のカラムをダブルクリックしてビューに追加します。
- カラムを上部の 列 と 行 セクションにドラッグ&ドロップしてビジュアライゼーションを作成します。この例では、シンプルな予測棒グラフを作成しています。
2.3. ダッシュボードの改善
フィルター、フォーマット、複数のシートの組み合わせを追加して、ダッシュボードの改善を続けましょう。ライブ API データに基づいて、より複雑なビジュアライゼーションやインタラクティブなダッシュボードを作成できます。
CData API Server を 30 日間無料でお試しください
ローコード/ノーコードプラットフォームで OData REST API を構築し、ライブデータとのシームレスな統合を実現しましょう。CData API Server を 30 日間無料でお試しいただき、ライブ SharePoint Excel Services データ(または 270 以上の他のコネクタ)を Tableau に直接接続して、リアルタイムダッシュボードと分析を実現する方法を体験してください。
こちらから無料トライアルを開始できます。