This page walks you through the steps to create a new project and automatically generate a basic model from your database.
There are other options for creating your project files: You can create a blank project and manually create its model, or you can clone an existing public Git repository. See the Creating a new LookML project documentation page for more information on those options.
Before creating your project, click on Develop in the menu bar and verify that you are in Development Mode. Then select Manage LookML Projects from the Develop menu:
Automatically generating a model from your database
From the LookML Projects page, you can generate your model and view project files based on the tables in your database. Here’s how:
- On the LookML Projects page, click the New LookML Project button.
- In the New Project pop-up window, give your project a name.
- For Starting Point, choose Generate Model from Database Schema.
- Select the name of your database connection from the Connection drop-down menu.
Select the option to build views from All Tables or a Single Table:
- All Tables: The LookML generator will create a view file for each table in your database.
- Single Table: The LookML generator will create a view for one table in your database. If you choose this option, use the text field to enter the name of the database table.
If you want to generate files for only one schema in your database, enter the name of the schema in the Schemas text field. You can list multiple schemas, separated by commas.
- If you want to leave table prefixes out of your view file names, enter your database’s prefixes in the Ignore Prefixes text field. This field is case-sensitive. You can list multiple prefixes, separated by commas. For example, if your tables are titled
DBS_users, you could enter
dwh, DBSin the Ignore Prefixes text field and Looker would create view files named
- Click Create Project.
The LookML generator creates a model file, which includes a default datagroup, and view files for each table in the database (unless otherwise specified).
The LookML generator also creates IDE folders for your view and model files. If your database has more than one schema, the LookML generator will also create a folder for schemas.
For BigQuery connections, if you generate a LookML project from your database, Looker will autopopulate field descriptions with the descriptions from your BigQuery column metadata, if any.
The generator will also create an Explore for each database table. To start querying your data, use the Explore menu to select the name of the Explore:
If you want to rename your project after you’ve created it, use the Project settings documentation page (see the Renaming a project section).
You can manually create additional new models for your project as described on the Understanding model and view files documentation page and then configure them for use in production as discussed in the When you need to configure models section below, with further instructions on the Creating a new LookML project documentation page.
Once your model files are generated or manually created, see the Setting up and testing a Git connection documentation page for information on connecting your Looker project to Git so that you can record changes to your LookML files and manage versions of your files.
When you need to configure models
Configuring a model is useful for the following reasons:
- It specifies that a given model name refers to a particular model in a particular project.
- It sets the connections the model is allowed to use.
A model configuration is not needed for admins (or developers with the
manage_models permission) while they are in Development Mode. This lets Looker developers work easily while in Development Mode. However, if a model configuration does exist, any queries will be constrained by that configuration even in Development Mode.
Although a Looker developer specifies the desired connection in the model file, an admin controls what connections are allowed on the LookML Projects page. Thus, a model should only use a connection that the configuration allows because the configuration always wins. If a model specifies using a connection that is not allowed in the model’s configuration, then the connection is not allowed.
The LookML Projects page lets you view all your projects in one place along with their respective models. You use this page to create, view, and configure your projects.
A model needs a configuration when the model is pushed to production for the first time, and during development:
- When a model is pushed to production for the first time, the model must be configured; otherwise, any queries on that model will fail once the model is in Production Mode. When a model is pushed from Development Mode to production for the first time, Looker is often able to configure the model for you automatically. This is possible when the model’s name is unique for the Looker instance. However, if you already have a configured model with the same name in another project, then Looker will not automatically configure the model.
- During development, if you have developers who have not been given the
manage_modelspermission (which is included in the
adminrole), then the model must be configured before those developers can run queries on that model. In this case, you can configure the model before the model exists or even before the project exists. Then, when a Looker developer creates the project and the model, the model’s allowed connections are already configured and the developer can run queries successfully.
For developers without
manage_modelspermission, admins can limit their access to certain connections by limiting the developers to particular model sets and limiting the connections allowed for those models.
For developers who have the
manage_models permission, Looker allows them to run queries on an unconfigured model in Development Mode. Looker does this by searching projects for a model with that name. The first model it finds with that name is used to run the query.