How do I integrate data into Power BI, Tableau, Qlik, Amazon QuickSight or other BI tools

We periodically get variations of the above request.

Currently, the best approach is to use SMART Connect APIs - either to pull the data directly into the BI solution (e.g. by developing a custom connector) or to pull the data into an SQL or other database that can then be more easily directly from the BI solution.

Both of these approaches require engineering/programming resources and so we appreciate most sites don’t have the resources to implement this.

If a group of SMART users was interested in integrating with a specific BI tool, we’d be happy to dive deeper and explore what it would take to develop a shared solution.

Please share thoughts/needs here.

1 Like

This is awesome thanks Jonathan

Definitely interested in seeing how we could integrate the data via API into Tableau

Regards

Hi,
is there an overview of SMART Connect APIs somewhere?
Best

I have been struggling with a simmilar question and it would be interesting to see the solution on integrating smart with other BI visualization tools e.g powerBI.

@jpalmer , why would one first pull data into a database before feeding it to a BI solution? Would one not make an export from SMART and feed that to the visualizer?
Sorry, if I am overlooking something obvious. I am quite new to SMART.

Frank - there are pros and cons to pulling the data into another database. Whether you pull directly into the BI solution or pull into an SQL first depends on your needs.

Pros include:

  • Allows you to integrate with other databases
  • Allows you to optimize queries to run very fast
  • Allows BI uses to access the data using well document and widely used approaches

The main con is you need to periodically sync the data. There are others (e.g. you can end up with a large volume of duplicate stored data).

We are working on an approach to make it easier to go directly and use the API.

In my opinion there three different options of how to access the data by a dashboard:

  1. Direct Access to the underlying PostgreSQL database
  2. Direct Access to the query API of Smart Connect by PowerBI or similar
  3. Introduction of a middle layer to store data extracted by queries

Pros and cons:

Direct Database Access

Pros:

  • full access to the raw data

Cons:

  • can create severe impact on the overall performance of the system. Smart database is not designed for concurrent access. For example running a long query from the dashboard might block or break a sync by another user. There is also the possibility of inconsistency
  • Database design might change with every update resulting in problems for the dashboard
  • Security implications. The dashboard would require nearly full read permissions to the database
  • The data structure is very difficult to understand

Direct Access by PowerBI or similar systems using Query API:

Pros:

  • Consistent data guaranteed by the platform
  • Concurrency is less of an issue but still needs to be kept in mind. Don’t for example execute the same queries every few seconds as this might overload the whole system
  • Query api not likely to change in the future
  • Least amount of work required

Cons:

  • Not all data directly available. Track data requires an additional step to extract
  • Data refresh involves executing of queries again

Introduction of middle layer:

Pros:

  • Better performance by decoupling of query api layer and dashboard layer
  • Possibility of gathering of data from multiple Smart Connect Servers
  • Data can be expanded by other datasources
  • New and changed data can be integrated by incremental update process

Cons:

  • Requires some development and integration work

Oliver et al.

We hope to have an update shortly on our plans to offer SMART dashboards. The tech council are working on requirements and we hope to have something to share in the weeks or months ahead.

On the tech side we’ll also build off Oliver’s evaluation below. I think we can pull track data via the API. We can pull other information via the API also e.g. configuration model.

The other key thing is access to effort calculations, you can’t get these through direct DB access. Maybe we should make these algorithms publicly available so they can be incorporated into solutions making direct access. They are already available in the source code.

More to follow.

Jonathan

image001.jpg