Siren Platform User Guide

Relational filter

Note

Deprecated replaced by Relational Navigator

The relational filter visualization enables you to "pivot" from a dashboard to another by creating a join between multiple indices based on their relations. This enables you to interactivelly build the sequence of dashboards to join.

The relational filter visualization is configured based on the relationships between indices defined in the settings tab. For example, let’s take the following indices:

article

an index containing articles; each document in the index has a field called companies which is an array that contains the ID of companies mentioned in the article. This index is displayed on the dashboard entitled Articles.

company

an index containing information about companies; each document in the index has a field called id that contains the ID of the company. This index is displayed on the dashboard entitled Companies.

Both indices are configured so that they are joined on the field companies of article with the field id of company. Then, it is possible to use that configuration to create a relational filter that would filter companies based on connected articles (or vice-versa).

In the Articles dashboard, the relational filter visualization is displayed as a button which indicates the number of documents in the Companies dashboard that are mentioned in the articles of the current dashboard.

The following image shows the button for the relation described in the example; there are 18508 companies mentioned in the 646,896 articles currently displayed:

Relational filter button on the Articles dashboard

Clicking the button will switch you to the Companies dashboard and display the 18508 companies; the relational filter is displayed in the filter bar:

Relational filter on the Companies dashboard

Note

The relational filter visualization requires the Siren Federate plugin 5.6.9-10.0.0 for Elasticsearch.

Configuration

To edit the Relational Filter configuration, click Edit on the Dashboard top navigation bar.

Then click Edit (Visualization Edit Button) on the Relational Filter visualization.

The filter is defined by the following parameters:

  • Button label: the label of the button that will be displayed inside the visualization, for example Companies -→.
  • Custom filter label: the label of the filter that will be displayed in the filter bar, which by default is … related to ($COUNT) from $DASHBOARD.. Several variables are available for customizing the label:

    • $COUNT is a number of items on source dashboard,
    • $DASHBOARD is a source dashboard name.
  • Source dashboard: optional parameter that indicates on which dashboard the relational filter should appear in.
  • Target dashboard: the dashboard to join the current dashboard with. The current dashboard is equal to the previous field if set.
  • Relation: the label of the relation between indices to use for this relational filter. This is set in the relations settings tab.

The following image shows the configuration of a relation from the Articles dashboard to the Companies dashboard, using the mentions relation:

Relational filter configuration

It is possible to define multiple relations in a single Siren Investigate relational filter visualization; the visualization will display only buttons applicable to the currently displayed dashboard.

Usage

When clicking a button in the relational filter visualization, the current state of the source dashboard is added to the relational filter and applied to the target dashboard. Move the mouse pointer over relational filter to see an explanation of what is being joined.

Walkthrough example

We start on the Articles dashboard, search for pizza and click the relational filter to switch to the Companies dashboard.

Relational filter explanation

Moving the mouse pointer over the blue filter displays an explanation. It indicates that the relational filter involves only one join, that is the one from Articles to Companies with pizza filtering the articles.

Relational filter explanation

Next, we add a regular filter to the Companies dashboard by clicking Positive Filter (Positive Filter) in the USA row of the Companies by Country visualization.

Relational filter explanation

Now, we click the Investment rounds -→ button which takes us to the Investment rounds dashboard. The explanation on that filter shows that the investment rounds are filtered as follows:

  • the current investments rounds are joined with companies from the USA; and
  • those companies are joined with articles which match the term pizza.
Relational filter explanation

Note

The sequence of the joins in the explanation are shown in reverse, that is the last join is on top.

Viewing detailed information

To display the raw data behind the visualization, click Spy Open (Spy Open Button) at the bottom left of the container. Tabs with detailed information about the raw data replace the visualization, as in this example:

Spy panel of the relational filter visualization

This panel provides two kinds of data: information about the query behind the relational filter in the Multi Search tab, and details about the visualization object in the Debug tab.

This pane presents information about the multi search request executed to perform the joins. A relational filter corresponds to one query of the multi search.

On the top, the time reported in Multi search request duration informs on how long the multi search request took. There is also additional information about each query of the multi search:

  • Query Duration: The time spent for this particular query.
  • Hits: the total number of documents resulting from the query.
  • Index: the index pattern used to execute the query.
  • Type: the type of the indices matched by the index pattern.

For a particular relational filter, you can get additional information about the query that got executed.

Raw Request. The filterjoin query as sent by Siren Investigate. This uses the internal API for defining the join.

Translated Request. The filterjoin query as sent to the Elasticsearch cluster, presented in JSON format.

Response. The raw response from the server, presented in JSON format.

Debug

The Debug tab presents the JSON object that Siren Investigate uses for this relational filter.

Debug spy panel of the relational filter visualization

Join task limit

The number of unique values returned from the source of the relation is limited by the kibi:joinTaskTimeout Advanced Setting in the management section. These source values are then used to filter the documents on the destination. In general, the destination is the current dashboard.

For more on this and how to set the limit for each relation individually, see the Join Limit section of the Relation Panel documentation.

Search results

    No results found