3

I work on an advanced web app that stores user activity in Google Analytics. In the current design, the information is transferred from GA to Tableau. But we need to do more filtering and data management than can be done easily with Tableau.

The obvious solution is Google Analytics BigQuery, but we are not going that route for now.

I'm considering another solution: download the results (using the GA API via Python or PHP) into a database which can then be used as a data source for Tableau. So there would be a middle DBMS in between GA and Tableau to manage the data easily.

Has anybody done this successfully? A relational database (e.g. MySQL) is simple enough, but would a NoSQL DBMS (e.g. MongoDB) be a better fit here to avoid any schema changes in the future?

CharlieH
  • 1,432
  • 2
  • 12
  • 19
  • 2
    Can you clarify what functionality you're looking for that Tableau doesn't offer? Is it a problem with the way that Tableau interprets the CSV data or a problem with how the data is dumped to CSV from Google Analytics? (Or is there something else that I'm missing here?) NoSQL is great for flexibility, but may cause problems when trying to get the data into Tableau. Something relational might be natively supported in Tableau (or you can find a ODBC Driver for the database), but will pose problems if the schema changes. How often do you anticipate the schema changing? – Jerod Johnson Jun 15 '16 at 14:27
  • Higher level data processing, with loops, variables and logical flow, is not possible in Tableau (I don't work in Tableau myself, but this is what I am told). I also noticed potential issues with connecting NoSQL to Tableau. I don't foresee regular changes to a SQL schema. – CharlieH Jun 15 '16 at 18:36
  • 1
    Thanks for the clarification. I'd suggest a relational database. You can likely get the data from Google Analytics and manipulate it (some program) and only need a way to inject the data into a db and read from the db into Tableau. If you're not sure where to start, CData Software (my employer) makes drivers that allow you to work with Google Analytics and raw DB data programmatically. Our [Support Team](http://www.cdata.com/support/submit.aspx) can help you get started. MySQL has [open source drivers](http://www.mysql.com/products/connector/) that do the same thing. – Jerod Johnson Jun 15 '16 at 19:24
  • I'm in a similar situation due to the limitation of Tableau Server that can incrementally refresh GA data source only daily. While I need it to refresh more often. – Giacomo Sep 12 '18 at 13:14

0 Answers0