Question

LookML Basics Query

  • 18 April 2017
  • 3 replies
  • 56 views





  1. A LookML data model is stored in one or more “projects”. - What does this mean ? Don’t we have a single data model associated with a project ? What is the need to have multiple model files ?







  2. A project is a collection of LookML files that describe how your database tables are related to each other, and how Looker should interpret those tables.


    When it says collection of LookML files, wouldn’t that be the LookML data model file and view files that contribute a project ?






3 replies

Hi Tig,



Extremely Happy to see the details explained. Thank you so much for that help.

Just updated the illustration to the correct one 🙂

Hi Sudeep!





Doc says: A LookML data model is stored in one or more “projects”.





I see that first line is confusing as it meant data model in the overall, general sense. We’ll get that clarified in docs. Thanks for pointing it out!





A project is a collection of LookML files that describe how your database tables are related to each other, and how Looker should interpret those tables.


When it says collection of LookML files, wouldn’t that be the LookML data model file and view files that contribute a project ?





You are right that a project contains one or more model files and view files. The project also can contain LookML dashboard files as shown below in a diagram from this documentation page.





More recently projects can include documentation files and data files (JSON files). You even can drag these and other files into the project. If the LookML IDE doesn’t recognize the file type extension, it creates an “Other” category and adds the unrecognized file there.





Don’t we have a single data model associated with a project ? What is the need to have multiple model files ?





Many customers have just a single model per project and that works just fine. There are two main reasons for using multiple models in a project:







  • Organizing the explores for your users. For example you could have two models – one with all of the available explores (say 12) and one that just has the 3 explores that most people need (such as orders, customers, and inventory). That way most of your people aren’t overwhelmed trying to figure out which explore to use but your more advanced users have access to all the explores they might need.







  • Managing data access. Users are granted data access on a particular model set. So they can be given access to one model in a project but not another model that is more sensitive or only appropriate to be seen by certain types of users.







Hope that helps and thanks for letting us know that these ideas weren’t clear yet in the docs!



Tig Newman


Documentation Manager

Reply