1. What is Looker?
Answer: Looker is a cloud-based business intelligence and data analytics platform that helps users explore, visualize, and share data insights. It connects directly to databases and uses a modeling language called LookML.
2. What are the key features of Looker?
Real-time data exploration
Custom dashboards
Embedded analytics
LookML data modeling
Integration with Google Cloud, BigQuery, Snowflake, and more
3. What is LookML?
Answer: LookML is Looker’s proprietary modeling language, similar to YAML, used to define dimensions, measures, views, explores, and relationships in the data model.
4. What is a ‘Look’ in Looker?
Answer: A Look is a saved query in Looker that displays data in a chosen visualization format.
5. What is a ‘Dashboard’?
Answer: A dashboard is a collection of visual tiles or Looks that provide insights in one view. It can include charts, tables, filters, and embedded content.
6. What is the difference between Look and Explore?
Explore: An interface to build ad-hoc queries.
Look: A saved version of an Explore query.
7. What databases does Looker support?
Answer: Looker supports databases like BigQuery, Snowflake, Redshift, MySQL, PostgreSQL, Oracle, etc., via direct SQL connections.
8. Is Looker cloud-only?
Answer: Yes, Looker is a cloud-based BI tool, typically accessed via a browser.
9. What is a dimension in Looker?
Answer: A dimension is a descriptive field, like a name, category, or date, that is used to group or filter data.
10. What is a measure in Looker?
Answer: A measure is a quantitative field like sum, count, or average used in aggregations.
11. Explain the structure of a LookML project.
Answer: A LookML project includes:
Model files – define explores and connections
View files – define dimensions and measures
Manifest file – for configurations
Dashboard files – for version-controlled dashboards
12. What is an Explore in Looker?
Answer: Explore is a SQL view presented in the Looker UI that allows users to drag and drop dimensions and measures to generate queries.
13. What are joins in Looker?
Answer: Joins in Looker are defined in model files using LookML and support inner, left_outer, full_outer, etc. They connect views for querying related data.
join: customers {
type: left_outer
sql_on: ${orders.customer_id} = ${customers.id} ;;
}
14. What are persistent derived tables (PDTs)?
Answer: PDTs are materialized tables in the database, used to optimize performance by storing the results of complex queries.
15. How do you implement row-level security in Looker?
Answer: By using access filters in LookML or user attributes to restrict data visibility based on roles or conditions.
16. What is development mode in Looker?
Answer: A safe mode for developers to test LookML changes before deploying them to production.
17. How can you version control Looker projects?
Answer: Looker supports Git integration for version control of LookML projects.
18. What is Liquid templating in Looker?
Answer: Liquid is a templating language that allows dynamic behavior in LookML, such as conditional fields, filters, and user personalization.
sql: {% if user_attribute('region') == 'US' %} ${TABLE}.country = 'USA' {% endif %} ;;
19. What is a LookML parameter?
Answer: Parameters in LookML define field types, formatting, SQL logic, and filters in models and views.
20. How can you reuse code in Looker projects?
Answer: By using includes, extends, and refinements in LookML to share dimensions, views, and dashboards.
21. How does Looker generate SQL behind the scenes?
Answer: Looker converts the user’s selection of fields and filters into an optimized SQL query based on LookML definitions and sends it directly to the database.
22. How can you optimize Looker performance?
Use PDTs for complex queries
Limit result sets
Use indexes in the database
Avoid unnecessary joins
Use persistent caching and filtering
23. What is a derived table in Looker?
Answer: A derived table is a subquery written in SQL within a LookML view that creates a temporary or persistent result set.
derived_table: {
sql:
SELECT id, COUNT(*) AS order_count
FROM orders
GROUP BY 1 ;;
}
24. Explain Looker’s caching mechanism.
Answer: Looker caches SQL query results for improved performance. Caching can be bypassed manually or set to refresh at defined intervals.
25. What is the purpose of user attributes?
Answer: User attributes are variables assigned to users (e.g., region, role) and used in filters, parameters, or row-level security.
26. Can you embed Looker dashboards in web applications?
Answer: Yes, Looker supports embedded analytics using iframes or JavaScript APIs, often with SSO for secure access.
27. How do you create custom filters in dashboards?
Answer: Use filter tiles and bind them to fields or Looks using field names or control names.
28. What is a ref block in LookML?
Answer: ref:
is used to refer to fields in other views.
dimension: user_email {
sql: ${users.email} ;;
}
29. How do you troubleshoot a broken explore or Look?
Answer:
Check for SQL errors in the logs
Validate LookML syntax
Ensure all joins and dimensions are defined correctly
Use development mode for testing
30. What’s the difference between dimension group and regular dimension?
Answer:
Dimension group is used to group time-based fields (date, week, month).
Dimension represents a single field.
31. You’re tasked to build a sales dashboard with KPIs, trends, and filters. What steps would you follow?
Answer: Define business metrics → create views and explores → build Looks for KPIs → assemble dashboard → apply filters → schedule delivery.
32. How would you handle a client request for user-specific dashboards?
Answer: Use user attributes and access filters to control visibility and personalization.
33. You see a dashboard loading slowly. What’s your approach?
Check query complexity
Reduce unnecessary joins or fields
Use PDTs or aggregation tables
Optimize SQL logic
34. How would you track usage of dashboards or queries?
Answer: Use System Activity dashboards or query the i__looker
internal model for usage metrics.
35. Write a SQL query to get top 5 products by sales.
SELECT product_name, SUM(sales_amount) AS total_sales
FROM orders
GROUP BY product_name
ORDER BY total_sales DESC
LIMIT 5;
36. How do you filter data for the last 30 days in LookML?
dimension: last_30_days {
type: yesno
sql: ${TABLE}.order_date >= DATE_SUB(CURRENT_DATE(), INTERVAL 30 DAY) ;;
}
Looker is more than just a visualization tool—it’s a complete data platform for modern BI. Whether you’re preparing for your first BI role or an advanced Looker developer position, these Looker interview questions cover the theory, hands-on syntax, and real-world scenarios that hiring managers look for.
To strengthen your preparation:
Enroll in our Looker Certification Course
Practice LookML modeling in a sandbox
Work on projects with Google BigQuery or Snowflake
eLearnCourses is a trusted destination for high-quality, industry-relevant online IT training. We are committed to empowering learners and professionals with the practical skills and knowledge they need to succeed in the digital era.
Training Delivered In Cities/Countries: Hyderabad, Bangalore, Mumbai, Delhi, Chennai, Pune, Texas, California, New Jersey, Virginia, London, Dubai (UAE), Toronto, Melbourne, Sydney, Singapore, and many more.
Powered by eLearnCourses. All rights reserved.