# Generate interactive dashboards for relational data

**URL:** <https://discuss.elastic.co/t/generate-interactive-dashboards-for-relational-data/1146>\
**Category:** Kibana\
**Created:** [May 22, 2015, 6:34am UTC](https://discuss.elastic.co/t/generate-interactive-dashboards-for-relational-data/1146 "2015-05-22T06:34:09Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![Darpan205](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/darpan205/32/3548_2.png) [@Darpan205](https://discuss.elastic.co/u/Darpan205)\
**Post date:** [May 22, 2015, 6:34am UTC](https://discuss.elastic.co/t/generate-interactive-dashboards-for-relational-data/1146/1 "2015-05-22T06:34:09Z")

</div>

I am having search engine data (Searches and Clicks), there are two tables(as table field in Elasticsearch) searches and clicks. I have a mapping between them (Same id in corresponding data), now I want to generate the various interactive dashboards using Kibana, some examples are

1. Pie chart using range filter for clicked positions. (1-5,5-10 etc.)
2. Data table containing Top queries for selected position buckets from both table.
3. Data table for Top queries and their clicked urls with URL count.

All these graphs should be interactive, i.e. if I click on position bucket then search table data should be displayed as well. (Note there are no position field in search table, we have only same id mapping between these records.)

So my question is can we use Kibana for such use case?? Currently we are using tableau which supports sql joins, so we are able to achieve this functionality.

---

<div class="post-metadata">

**Author:** ![warkolm](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/warkolm/32/39224_2.png) [@warkolm](https://discuss.elastic.co/u/warkolm)\
**Post date:** [May 24, 2015, 2:19am UTC](https://discuss.elastic.co/t/generate-interactive-dashboards-for-relational-data/1146/2 "2015-05-24T02:19:47Z")

</div>

Elasticsearch does not support joins.  
You need to look at parent/child or nesting, however Kibana does not currently support either of these.

---

<div class="post-metadata">

**Author:** ![kitex](https://avatars.discourse-cdn.com/v4/letter/k/f14d63/32.png) [@kitex](https://discuss.elastic.co/u/kitex)\
**Post date:** [May 24, 2015, 4:27am UTC](https://discuss.elastic.co/t/generate-interactive-dashboards-for-relational-data/1146/3 "2015-05-24T04:27:29Z")

</div>

ELK stack supports co-relation through timestamp.

---

<div class="post-metadata">

**Author:** ![magnusbaeck](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/magnusbaeck/32/44943_2.png) [@magnusbaeck](https://discuss.elastic.co/u/magnusbaeck)\
**Post date:** [May 24, 2015, 9:31am UTC](https://discuss.elastic.co/t/generate-interactive-dashboards-for-relational-data/1146/4 "2015-05-24T09:31:22Z")

</div>

> ELK stack supports co-relation through timestamp.

Not sure what you mean here—could you elaborate?

---

<div class="post-metadata">

**Author:** ![warkolm](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/warkolm/32/39224_2.png) [@warkolm](https://discuss.elastic.co/u/warkolm)\
**Post date:** [May 24, 2015, 11:25pm UTC](https://discuss.elastic.co/t/generate-interactive-dashboards-for-relational-data/1146/5 "2015-05-24T23:25:36Z")

</div>

Correlation maybe? If so that is not a relational join, it's just saying "I can see this event at time A and this event at time B so they may be related".

---

<div class="post-metadata">

**Author:** ![kitex](https://avatars.discourse-cdn.com/v4/letter/k/f14d63/32.png) [@kitex](https://discuss.elastic.co/u/kitex)\
**Post date:** [May 25, 2015, 12:58am UTC](https://discuss.elastic.co/t/generate-interactive-dashboards-for-relational-data/1146/6 "2015-05-25T00:58:35Z")

</div>

Yes that is what I meant. All data are related through timestamp.

---

<div class="post-metadata">

**Author:** ![Darpan205](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/darpan205/32/3548_2.png) [@Darpan205](https://discuss.elastic.co/u/Darpan205)\
**Post date:** [May 26, 2015, 4:50am UTC](https://discuss.elastic.co/t/generate-interactive-dashboards-for-relational-data/1146/7 "2015-05-26T04:50:47Z")

</div>

Hey Guys, thank you for your inputs. Will try to denormalize the data and then feed it to ES so that Kibana can easily display it.

---

<div class="post-metadata">

**Author:** ![rkhapre](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/rkhapre/32/48333_2.png) [@rkhapre](https://discuss.elastic.co/u/rkhapre)\
**Post date:** [May 26, 2015, 6:56am UTC](https://discuss.elastic.co/t/generate-interactive-dashboards-for-relational-data/1146/8 "2015-05-26T06:56:49Z")

</div>

I Have done implementation using same use case in Kibana

Use JDBC River, give the sql query that will have join between those two tables and bring in all the columns in ES mapping field, in this way everything will start reflecting in kibana UI and create all your interactive reports

---

<div class="post-metadata">

**Author:** ![Darpan205](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/darpan205/32/3548_2.png) [@Darpan205](https://discuss.elastic.co/u/Darpan205)\
**Post date:** [May 27, 2015, 6:14am UTC](https://discuss.elastic.co/t/generate-interactive-dashboards-for-relational-data/1146/9 "2015-05-27T06:14:27Z")

</div>

Hey @rkhapre, Sorry I guess I didn't write my question in proper way, here I don't have RDBMS tables, my data comes in log files I am parsing them using logstash and assign table field values. So in my case JDBC river won't help.. Right?? Please correct me if I am wrong because I am not much familiar with JDBC river.

---

<div class="post-metadata">

**Author:** ![rkhapre](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/rkhapre/32/48333_2.png) [@rkhapre](https://discuss.elastic.co/u/rkhapre)\
**Post date:** [May 27, 2015, 8:36am UTC](https://discuss.elastic.co/t/generate-interactive-dashboards-for-relational-data/1146/10 "2015-05-27T08:36:59Z")

</div>

as you wrote in your question, there are two tables.  
Yes JDBC river is for RDBMS tables only...

Other way you can do is, load in Hadoop==\>ES==\> Kibana

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 6, 2017, 2:19pm UTC](https://discuss.elastic.co/t/generate-interactive-dashboards-for-relational-data/1146/11 "2017-07-06T14:19:01Z")

</div>


