Looker Performance Optimization - Episode 5

Google Cloud TechAbout 3 min readJun 8, 2025Watch original
THE SUMMARYAI-generated

Optimizing Looker Performance with Henry: Part 5

Key Concepts:

  • Henry: A tool for analyzing and optimizing LookML code.
  • Explores: User-defined interfaces in Looker for data exploration.
  • Joins: Relationships between different data tables in Looker.
  • Fields: Columns of data available for analysis in Looker.
  • Vacuuming: The process of identifying and removing unused LookML code.
  • LookML: Looker's modeling language.
  • Python Virtual Environment: An isolated environment for running Python code.

1. Analyzing Explores with Henry

  • Command: henry analyze explores --section=sandbox --timeout=600
    • henry analyze explores: Specifies the Henry command to analyze explores.
    • --section=sandbox: Indicates the Looker project section to analyze (in this case, "sandbox").
    • --timeout=600: Sets a timeout of 600 seconds (10 minutes) for the analysis to complete. This is to prevent the process from being killed if it takes longer than expected.
  • Report Output: The report provides insights into each explorer, including:
    • Model Name
    • Explorer Name
    • Hidden Status (whether the explorer is hidden from users)
    • Number of Joins
    • Number of Unused Joins
    • Number of Fields
    • Number of Unused Fields
    • Query Count (number of queries run against the explorer)
  • Example:
    • The products explorer had 124 queries run against it.
    • The order_items explorer has 6 joins, but 5 are unused, and 181 fields, but 177 are unused.
    • The products explorer has 17 columns, but 8 are unused.
  • Value: This data helps identify explorers with high query counts and significant amounts of unused joins and fields, highlighting areas for LookML optimization.

2. Vacuuming Explores with Henry

  • Command: henry vacuum explorers --section=sandbox --timeout=600
    • henry vacuum explorers: Specifies the Henry command to vacuum explores.
    • --section=sandbox: Indicates the Looker project section to vacuum (in this case, "sandbox").
    • --timeout=600: Sets a timeout of 600 seconds (10 minutes) for the vacuuming process.
  • Report Output: The report lists unused fields associated with each explorer.
  • Action: The identified unused fields can be hidden or deleted from the LookML.
  • Benefit: Removing unused fields reduces the size of the LookML model, making it:
    • Smaller
    • Quicker to parse and analyze
    • Easier to use on screen

3. Impact of Optimization

  • The example model had approximately 8,000 unused fields that could be removed.
  • By pruning unused LookML, the Looker instance becomes more responsive and useful.

4. Review of Optimization Process

The optimization process involves the following steps:

  1. Check the Pulse: Identify data sources that are not properly configured. (Covered in previous installments)
  2. Analyze and Vacuum Models: Identify unused explorers and target them for deletion. (Covered in previous installments)
  3. Analyze and Vacuum Explores: Identify unused fields and target them for deletion.

5. Conclusion

The goal is to create a minimal LookML model that supports the actual needs of the system, eliminating unused fields and improving the performance of the Looker instance. By removing unnecessary elements, the system runs faster and provides a more efficient user experience.

AI summaries can miss context or contain errors. Check important details against the original video.

MAKE IT YOURS

Read. Remember. Reuse.

Free tools

Go a little deeper.

Have a question about this video? Load its transcript to open the video chat.