William Lehnertz

How we use Canvas Data

Discussion created by William Lehnertz on Jan 5, 2018
Latest reply on Sep 25, 2019 by Robert Carroll

Hi everybody:


I want to take this time to share how we use Canvas Data.


First, we do not have a subscription for Redshift. It costs too much for our little university. So, I opted to use CanvasDataViewer. Thank you, Bill and Andrew, for creating such a wonderful project. However, I had to use SQL 2014. 2016 would not work. The request table was kinda small for my liking. I created some bat files to add 3 additional months to the requests table. HINT: I used the CanvasDataCLI to do this, with some .bat files. Everything works great!


The second step was the most difficult; finding a front end. We don't have Tableau and based on our current usage, the price was too much. This led me to research FOSS. I tried several: Knime, Superset, Knowage, and even tried building my own with Django. Unhappy with those options, I discovered Metabase. So far, I'm really enjoying it. Tableau is more powerful, but also more complicated. Metabase has been easy to use. The one downside is I find myself writing more SQL rather than leveraging their query builder system.  Picture below

It lacks the functionality of doing joins which means you need to write your own SQL most of the time. Hopefully, they improve that! Oh, the one feature I see a lot in the Tableau report is the calculated fields. I had to use SQL to replicate that functionality. Things like getting the word "iPhone" from the user agent. I would prefer to use Regex.


What I do like is the ability to share the dashboards publicly (relative; firewalls and such). I click the share button and a public link is given. No user account creation. I had a Dean recently request a list of LTIs being used for a particular course, over time. I made the SQL, created a dashboard, shared the dashboard, and sent the link. You can do CSVs and PDFs, but the dashboard is dynamic. The dean can click the link 6 months from now and see the updated list. I'd image other software can do this too.  The other software I tried was just complicated and bloated with features not familiar or useful to me. Superset was a close second.


Here's a screenshot of one dashboard I made.


To Recap: Both are self-hosted in our VM cluster.

Backend: CanvasDataViewer (Windows VM)

Frontend: Metabase (Debian VM)


I see a lot of Tableau posts and decided to show another option. I'm not advocated (or selling) Metabase. It's what works for me and may not work for everyone.


Is anyone else using something other than tableau? I would love to hear your experiences.