0
votes

Goal

At the moment I use Tableau for generating reports based on the data I store at KnackHQ (online database service, which has a REST API). I now have to manually extract data as Excel (or .csv) from KnackHQ to upload to Tableau. I would like to automate this process.

Investigation

It seems there are several options to try:

  1. Web-connector via ODBC (seems I need to write my own ODBC driver in my case, which can be tricky)
  2. Export CSV (http://databoss.starschema.net/tableau-live-data-connection-to-csv-over-http-rest/)
  3. OData (http://www.odata.org/)
  4. Data Engine API (http://www.tableau.com/new-features/data-engine-api-0)
  5. Any others?

Any ideas what can be the best method of such integration in terms of simplicity?

1
If the REST API of KnackHQ (I don't know it at all) is good, you can integrate with Tableau Data Engine API, to create .tde files. tableau.com/new-features/data-engine-api-0Inox
The most preferred way for me would be no programming at all on Tableau side. As far as I see, the method you suggest requires programming on Tableau side "The API works with C/C++, Java, and Python and can be used from Windows"?igorpavlov
Yes, it does. In that case, you should find a KnackHQ forum, not a Tableau Forum. Your focus is on how to extract data from there, not on how to connect it on Tableau (which is pretty straightforward)Inox
Shall I then go with OData way: program somewhere a bridge (accessible via URL) to transform data from Knack (within its API) to OData format?igorpavlov
As long as Tableau can easily connect to that format. I've never used OData. Make some tests firstInox

1 Answers

3
votes

From Tableau 9.1 (which will be released in 2015 Q3 but beta is already available) has a new feature: Tableau Web Data Connector. This is exactly what you need, since:

  • You can build custom connectors using Tableau WDC Javascript API
  • Create & refresh datasources in Tableau Desktop using these connectors
  • Your administrator can import the connector. From that point Tableau Server can schedule and refresh the extracts based on your Web Service originated data

I would suggest to check out these post on how to write a new connector:

You can also check official Tableau Documentations like how can you manage connectors: Web Data Connectors in Tableau Server

If you want to try out this before it gets released please follow the instructions on the Tableau Community web site here: http://community.tableau.com/message/327560.