2021/03/12
データベース接続
このコンテンツでは、Spotfireからデータベースへ接続する方法や仕組みについて説明していきます。なお、本コンテンツで利用したSpotfireのバージョンは10.10/11.4です。ご利用環境によって、一部画面構成が異なりますので、ご了承ください。
本コンテンツでは、データベースにテーブルを作成しています。同様の操作をしたい場合には、「Baseball.txt」を利用して、テーブルを用意してください。
※サンプルファイル「Baseball.txt」はこちらからダウンロードできます。
Spotfireからデータベースに接続する場合は、データ接続機能を使用します。
データプロバイダーを使用したアクセスも可能ですが、データ接続またはインフォメーションサービスを使用してデータを取得することが推奨されます。インフォメーションサービスとは、データベースへの接続情報をSpotfire Server内で作成・管理し、データベースへのアクセス用リンクをSpotfireユーザーに提供するインメモリ分析用のデータ連携機能です。
今回はインDB (In-DB) 及び インメモリ (In-Memory) 分析用のデータ連携機能であるデータ接続の使い方を説明します。一般的なデータベースの多くがSpotfireと接続でき、サポートされます。
用意されているデータコネクタに関してはこちらをご覧ください。
Spotfireはインメモリ技術による高速な集計が得意ですが、より大量なデータに対応するためにインDBというモードでも動作します。インDBではSpotfireの操作に応じて動的にデータベースにSQLを発行し、グラフ化に必要な集計データだけを取得します。
データベース側の処理がメインになるため、クライアント側(Spotfire側)にはそれほど負荷がかかりません。一方で、データベース側には負荷がかかるため、同時接続ユーザーが増える場合はデータベース側に相応のスペックが必要になります。
インDBで接続するには「⊕」から「接続先」を選択します。
こちらに接続先一覧が表示されるため、接続したいデータベースを選択します。
必要なドライバがインストールされていない場合、「ドライバのダウンロード」のリンク先から端末にインストールして、Spotfireを再起動してください。
今回はPostgreSQLを選択しました。
以下の項目を入力して、「接続」を選択します。
指定したデータベース内のテーブル一覧が表示され、必要なテーブルを選択して「追加」をクリックします。また、複数テーブル選択することも可能です。取得するカラムを確認後、「OK」を選択します。
ここまではデータベースに接続する設定です。次の画面でインメモリかインDBか選択します。
デフォルトで「外部」と表示されている項目を選択すると、以下の設定ができます。
オンデマンドを設定した場合の操作に関しては、「IN-DBから必要に応じてインメモリロード」の記事で説明します。
インDBだと、テーブルが1万件しか表示できなかったり、カスタム演算式や計算カラムの関数も制限されます(SQLで実行できる範囲内になるためデータベースに準拠します)。また、Data Relationshipsなどの統計機能も使用不可です。フィルターパネルも自動的には作成されないため、必要な場合は手動で追加する必要があります。
実際にどのような動作をしているのかlogファイルの中身を確認します。
まずはテーブルを作成しました。
こちらがクエリの内容です。1万行で制限がかかっているのがわかります。
次に、チーム別に棒グラフで集計しました。
グラフを作成する度に、その集計に必要なクエリが発行されます。
棒グラフで行数を取得していますが、GROUP BY句によってチーム毎に集計していることも確認できます。
縦軸を合計年俸にし、チームでフィルターをかけました。
フィルターは手動で作成します。
「分析内のデータ...」を開き、フィルター条件に追加したいカラムを選択します。
「クリックしてフィルターを作成」を選択すると、フィルターが追加されます。
フィルターをかけるとクエリにはWHERE句が確認できます。
インDB接続で使えないメニューはグレーアウトされます。
カラムからグラフのレコメンデーションを表示する機能も使えません。
軸の集計もインメモリとは異なりSQLで実行できる集計のみ表示されます。
データベース接続はできるようになりましたが、
このままDXPファイルに保存すると、ファイルを開くたびにログイン情報を聞かれます。
以下の手順で、ログイン情報をファイル内に保存することができます。
「資格情報」タブで接続情報を保存するか設定できるため、「はい、...」を選択してください。
これで保存すると、次回からは自動的にインDB接続が行われます。
Spotfire活用セミナー
アーカイブ動画を配信中
次の記事
カスタムクエリ接続【データベース接続】最新の記事