Exploratory でパラメーターを使用すると、ダッシュボード、ノート、チャート、データをよりインタラクティブに使えます。またこれらのコンテンツを Exploratoryサーバーにパブリッシュすると、あなたのチームのメンバーはパラメーターを使用して、コンテンツを操作できるようになります。
Exploratoryのパラメーターは非常にユニークです。パラメーターは様々なタイプを作成できるだけでなく、データソースのステップの SQLのクエリ、計算、そしてもちろんフィルターなど、様々な場所でも利用できます。
パラメーターの値を変更すると、関連するデータパイプラインを更新し、更新されたデータで、ダッシュボード、ノート、チャート、などのアウトプットが再生成されます。
ダッシュボード
チャート
データ
パラメーターは、パラメーターの設定ダイアログから作成・更新します。
パラメーターの設定ダイアログは、以下の場所からアクセスできます。
プロジェクトメニュー
フィルタのダイアログ
SQL エディタ
パラメーターペイン
パラメーターアイコンをクリックします。
するとパラメーターペインが表示されるので、「パラメータを作成」ボタンをクリックします。
パラメーターの作成は非常に簡単ですが、作成するパラメーターのデータ型によって 、異なる設定オプションがあります。そのため、パラメーターを作成するときに最も重要なことは、正しいデータ型を選択することです。
もし「Character(文字)」型の列で利用するためのパラメーターを作成するのであれば、データ型に「Character(文字)」型を選択します。
「Character(文字)」型の「マーケット」列があったとして、「マーケット」の列と一緒に使用するパラメータを作成する場合を例に考えてみます。
そのようにときには、値のタイプに「Character(文字)」型を選択します。
入力タイプにはいくつかのオプションがあります。
Character(文字)型のパラメーターの場合、重要なポイントは、「値のリスト (単一選択)」あるいは「値のリスト (複数選択)」 のどちらかを選択することです。
フィルタ用のパラメーターを作成している場合、値のリスト (単一選択)」あるいは「値のリスト (複数選択)」 のどちらを選択するかは、使用するフィルタの演算子によって決まります。
上記の例では、フィルタの演算子は「どれかに等しい(複数選択)」のため、入力タイプに「値のリスト (複数選択)」 を選択します。
また、パラメーターでは表示スタイルも選択できます。
「ドロップダウン」を使用した場合、パラメーターは以下のように表示され、パラメーターの値の一覧はパラメーターをクリックしたときにのみ表示されます。
一方で、「リスト」を使用した場合、パラメーターは以下のように表示され、パラメーターの値の一覧はパラメーターペインの一部として埋め込まれます。
入力タイプに「値のリスト」を選択した場合、「値を手動で入力」オプションにチェックを付けて、選択可能な値を手動で入力して設定することが可能です。
ただし、特に多くの値がある場合、値を手動で入力するのは少し面倒です。また、データが変更された場合には値のリストに値を手動で追加/削除する必要があるため、メンテナンスが煩雑になる可能性があります。
こういったときに使えるのが、「データフレームから値を取得」オプションです。このオプションを使うと、データフレーム (多くの場合、パラメータを適用するデータフレームである可能性が高い) を選択し、パラメーターの値に使用できる値を含む列を選択して値のリストを生成できます。
なお、データフレームには複数のデータラングリングのステップを含めることができます。
そのため、「データフレームから値を取得」オプションを使うときには、値のリストを取得する特定のステップを選択する必要があります。
多くの場合、値のリストを取得するステップはデータフレームの「最後のステップ 」となるため、そちらがデフォルトとして設定されています。
一方で、途中のステップで列を削除したり、値をフィルタすること、値のリストを生成するために必要な列とデータが、最後のステップで存在しない場合もあります。このようなときは、必要に応じて適切なステップを選択する必要があります。
データ型に応じて、他にも、以下の種類のパラメータもあります。
パラメーターを作成したら、作成したパラメーターを使ってExploratoryの中で様々なものにパラメーターを適用できますが、最も一般的なものは以下の通りです。
フィルタを作成するときには、「値」のオプションを使用する代わりに、「パラメーター」のオプションにチェックをつけ、作成したパラメーターを選択して、値を設定できます。
これにより、パラメーターペインから選択したパラメーターの値に基づきフィルタの条件が動的に生成されます。
「計算を作成」の中では「@パラメーター名」と記述することで、使用するパラメータを指定できます。
なお、計算エディタに@
をタイプするだけで、利用可能なすべてのパラメータが表示され、必要なパラメータを選択するだけで、利用するパラメーターを指定できます。
SQLのエディタの中では「@パラメーター名」と記述することで、使用するパラメータを指定できます。
@
をタイプするだけで、利用可能なすべてのパラメータが表示され、必要なパラメータを選択するだけで、利用するパラメーターを指定できます。
適切な場所でパラメータを設定したら、あとは「パラメーター」ボタンをクリックするだけで、パラメーターは利用できます。
ここからはSalesforce のデータから作成した以下のチャートを例にパラメーターの使い方を紹介します。
今回のSalesforceのデータのデータソースのダイアログを開くと、フィルタに「Close_Date(商談完了予定日)」のパラメーターが設定されています。
また、データソースステップの、このパラメーター以外に、データラングリングのステップで利用されているパラメーターはありません。
その状態で「パラメーター」ボタンをクリックすると、
パラメーターペインにはパラメーター 商談完了予定日(Close Dateの日本語の表示名)が 1 つだけ表示されます。
ここで、同じデータ フレームの別のチャートを見てみましょう。
このチャートでは、データ ラングリングのパイプラインの6番目のステップであるフィルターからデータを取得しています。
このフィルター ステップには 3つのトークン(ボックス)があり、それらはすべてパラメーターを使用しています。
これは、パラメーターボタンをクリックして、パラメーター ペインを開くと、データソースのステップで使用されるパラメーターを含む、データラングリングのステップで使用されるすべてのパラメーターが表示されることを意味します。
このように、特定のチャートにパラメータを追加する必要はありません。
Exploratory は、データラングリングのステップで使用される全てのパラメーターを検出して、データを生成し、パラメーターペインに必要なパラメーターを自動的に表示します。
これは、複数のグラフを追加できるダッシュボードとノートでも同様です。
Exploratory は、特定のダッシュボードまたはノート内のチャートの基礎となるデータ生成にどのパラメーターが使用されているかを検出し、パラメーターペインを開いたときに関連するパラメーターを自動的に表示します。
パラメータペインにどのパラメータを表示するかは、Exploratoryが自動的に決めますが、「レイアウト」ボタンをクリックしてパラメータの順序を設定できます。
パラメーターの表示順序をドラッグアンドドロップで変更できます。
なお、固定値を設定したいパラメーターがあり、それを他の人に見せたくない場合は、パラメーターの「隠す」ボタンをクリックして非表示にすることができます。
「隠す」ボタンの活用の詳細につきましては、以下のリンクでその詳細を紹介していますので、ご参考ください。
通常、パラメーターは値を変更した後に実行ボタンをクリックしない限り、実行されることはありませんが、「自動実行」にチェックをつけると、パラメーターの値を変更した際、即座にパラメーターが自動で実行されるようになります。
通常、パラメーター付きのコンテンツをパブリッシュしたときのサーバー上のパラメータのデフォルト値には、パラメーターを設定した際のデフォルト値が利用されます。
しかし、「選択された値を保存」にチェックをつけた状態でコンテンツをパブリッシュすると、パラメーターの設定画面から設定したデフォルト値ではなく、閲覧中のコンテンツのパラメーターで最後に指定した値がデフォルト値として利用されるようになります。
この機能により、1つのパラメーターを利用した状態で、コンテンツごとにパラメーターのデフォルト値を指定することができるようになります。以下のリンクでその詳細を紹介していますので、ご参考ください。
例えば、「製品カテゴリー」が決まると「製品サブカテゴリー」が決まるような階層関係あるいは依存関係をもつようなデータがあったとします。
このようなデータの場合、以下のように製品依存関係を持ったパラメーターの設定が可能です。
上記の例では、1番目のステップから値を取得して「製品カテゴリー」のリストを作成しています。また、2番目のステップから値を取得して「製品サブカテゴリー」のリストを作成しています。
さらにステップに注目すると、2番目のステップでは最初のステップで作成した製品カテゴリーのパラメーターを利用して、製品カテゴリーでフィルタしています。
また、3番目のステップでは、2番目のステップで作成した製品サブカテゴリーのパラメーターを利用して、製品サブカテゴリーでフィルタしています。
そのため、2番目のステップにおいて製品カテゴリーが特定のカテゴリー(例: 家電製品)にフィルタされた場合、製品サブカテゴリーのパラメーターのリストはフィルタされた内容に応じて、自動で生成され、家電製品に対応するサブカテゴリーのリストが生成されることになります。
一方で、実際のパラメーターの挙動に注目すると、家電製品に対応するサブカテゴリーのリストは、2番目のステップにおいて製品カテゴリーを家電製品にフィルタすることで、初めてリストが更新されます。
そのため、このような構造のパラメーターにおいては、製品カテゴリーの値を選択するだけでは自動的にサブカテゴリーのリストは更新されず、一度、パラメータを実行しなければ、パラメーターのリストは更新されません。
具体的には、製品カテゴリーに「電化製品」を選択した段階では、製品サブカテゴリーに表示される値は電化製品以外のものも含まれるということになります。
そのような時には、「他のパラメーター値の更新」にチェックを付けます。
すると、製品カテゴリーに「電化製品」を選択すると、パラメーターを実行せずとも、自動的に製品サブカテゴリーのリストが更新されることになります。
パラメータを使用するダッシュボード、ノート、チャート、またはデータをパブリッシュすると、パラメータも一緒にパブリッシュされます。
これは、パブリッシュされたインサイトのページを開いたときに、Web ブラウザー内に同じパラメーターが表示されることを意味しています。
「インタラクティブ・モード」を「On」にすることで、パラメーターが有効になります。
サーバーにパブリッシュしたダッシュボードやノートの設定メニューからは、サーバー上のパラメーターの設定の変更が可能です。
デフォルトの設定では「招待されたユーザーも使える」は無効になっています。「招待されたユーザーも使える」にチェックを付けて有効にすると、サーバーにコンテンツをパブリッシュした人だけでなく、それぞれのコンテンツの閲覧権限を持っているユーザーであれば、誰でもパラメーターの利用が可能となります。
デフォルトの設定では「データの再インポートを有効にする」は有効になっています。
「データの再インポートを有効にする」にチェックがついていると、パラメーターペイン内の実行ボタンに「データ再インポート」のオプションが表示されるようになり、パラメーターの実行時にデータを再インポートすることが可能です。
デフォルトの設定では「ページの上に重ねて表示」は無効になっています。有効にすると、サーバーにパブリッシュされているノートやダッシュボードに重なる形でパラメーターが表示されるようになります。
なお、「ページの上に重ねて表示」のオプションを有効にすると、パラメーターボタンをクリックしないと、パラメーターペインは表示されなくなります。
さらに、「ページの上に重ねて表示」のオプションを有効にすると、パラメーターの位置も「右」から「左」に変更することが可能です。
パラメーターの位置を「左」に変更すると、パラメーターボタンをクリックしたときに、パラメーターの表示位置が左側に変わります。
パラメーターをどのように使用しているかによって、データフレームのどの時点のデータを使用しているかが変わります。
SQLのクエリにパラメーターを使用している場合
SQLのクエリに対してパラメーターを使用していたとします。(SQLクエリにパラメーターを使用する方法はこちらをご覧ください)
その場合は、データの取得段階からパラメーターが適用されているため、変更したパラメーターの内容に合わせてデータを取り直すことができます。
データラングリングのステップにパラメーターを使用している場合
データラングリングのステップとして、例えばフィルタなどでパラメーターを使用していたとします。
その場合は、そのパラメーターが使われるステップの時点(厳密にはその前のステップの結果)のデータをキャッシュしており、そこからパラメーターでデータを動的に変更できるようになっています。
チャートフィルタでパラメーターを使用している場合
チャートフィルタとして、パラメーターを使用していたとします。
その場合は、チャートピンを紐づけているステップの時点のデータをキャッシュしており、そこからパラメーターでデータを動的に変更できるようになっています。