Looker developers and analysts are busy keeping up with the increasing demand to ingest, model, analyze, revise and make additions to the existing infrastructure. With this demand, we rarely take the time to look back at our instance and evaluate what we no longer need and how we can clean it up.

Because of this, we often see Looker instances become bloated with deprecated Dimensions, Measures, Views, Explores, and Models. In addition to the LookML side, Dashboards and Looks become obsolete. First, second and third drafts of content begin stacking up in our personal folders while outdated content clutters up our shared folders.

The impact of this mess can be felt by everyone who interacts with the Looker instance. Developers have trouble diagnosing LookML errors when wading through deprecated Models and Explores. Analysts must sort through old and unused content when working on new additions or entirely new content. Users experience slower refresh times and—in the worst cases—rely on outdated content to make business decisions. Executives don’t trust the data and thus decision-making is stalled and your data program will be seen as a failure.

How to Improve Your Looker Performance

To avoid this situation, we recommend a Looker Health Check. It is one of the best ways to ensure your instance is up-to-date, accurate, and running efficiently. At Data Clymer, we have developed a process to run through a list of Health Check areas to improve performance, remove clutter, and keep your Looker instance running its best.

This article outlines two main areas of improvement and their subcomponents:

Deprecated Objects and Content

  • Unused Dashboards, Looks, and Explores
    • Looker comes with a Dashboard in the Admin section (Content Activity) that can help you understand what Content has not been accessed in the past 30 days. You also have the ability to go into these Looks and see exactly what content has and has not been viewed recently.
  • Additionally, this Dashboard also shows Explores that haven’t been accessed in over 30 days. This is an opportunity to clean up your LookML models and views.
  • This dashboard also reports how many scheduled Jobs you have. Going into this Look you can see what Jobs are scheduled and at what times. We will find identical dashboards scheduled in multiple Jobs to different lists that can be consolidated. Oftentimes there are scheduled Jobs that are obsolete and still sending out old content.
  • After deleting unused content, it is a good time to revisit the Content Validator. This will let you know what content is still on your instance that contains broken objects. This is another chance to delete more unused content or identify areas of LookML that need to be fixed.

Looker Performance

  • PDTs and NDTs are a great way to get your data into analytics ready form. What we see is that these tools build up in an instance and begin to degrade performance. Looker has a great report (Admin/Database/Persisted Derived Tables) that can help you manage your PDTs. Areas to look at include:
    • Could this PDT be a derived table (if it is a quick query)
    • How frequently do we need this PDT refreshed?
    • What are the most expensive PDTs on the database?
    • Are PDTs failing and why?

It is a best practice of ours at Data Clymer to move PDTs into an ETL package like Matillion or dbt to better manage these table manipulations. It is easier to schedule jobs in one place and can significantly improve DB performance by utilizing incremental builds instead of complete refreshes.

  • Content refresh rates are a common user complaint when they have to wait while the queries in a dashboard are refreshed.
    • Does your Dashboard have too many tiles? Looker advises no more than 25 tiles but we find that 10-15 is the best range to tell your story without overwhelming an audience.
    • Does your Dashboard have too many filters available? Are they necessary?
    • Does your Dashboard rely on too many Merged Queries?
    • Can you use one query to feed multiple Tiles? One query that returns multiple KPIs and edited into multiple Tiles is much more efficient than singular queries feeding those same tiles.
    • Can I schedule this dashboard to send out daily so the user gets a copy in their inbox and doesn’t need to run the queries when accessed?

Keeping Looker Happy and Healthy

It can be overwhelming if your Looker instance is over a year old and you haven’t been keeping up on these areas. It will often take a lot of time to identify the problem areas and mediate them. The first time going through these will take the most time, but with regular maintenance this can be a one or two day job performed quarterly.

If you’re not sure where to start or what to do next, consider a Looker Health Check with Data Clymer. We are a trusted Looker Partner and have a tremendous amount of experience performing Health Checks for our customers to problems areas. We can create a roadmap to mitigate your issues and keep your Looker instance healthy and happy.


About the Author

Bob Vermeulen

Bob is a Business Intelligence and Analytics expert. He focuses on helping small and medium size business up and down their BI stack with an emphasis on data modeling and analytics in the Looker environment.