Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Visual Editor quickstart guide #6770

Open
wants to merge 44 commits into
base: current
Choose a base branch
from
Open

Visual Editor quickstart guide #6770

wants to merge 44 commits into from

Conversation

matthewshaver
Copy link
Contributor

@matthewshaver matthewshaver commented Jan 14, 2025

What are you changing in this pull request and why?

First edition of the quickstart guide for Visual Editor (beta). This guide makes a couple of assumptions about the reader:

  • They're not a regular dbt developer - somebody else in the org may even have to set up projects for them
  • They may or may not have an analytics background - this guide purposefully takes elementary steps to guide the user through using the features
  • It's for the beta version of the product as it exists on Jan 15th, 2025. Will iterate as changes are made.

Checklist

  • I have reviewed the Content style guide so my content adheres to these guidelines.
  • The topic I'm writing about is for specific dbt version(s) and I have versioned it according to the version a whole page and/or version a block of content guidelines.
  • I have added checklist item(s) to this list for anything anything that needs to happen before this PR is merged, such as "needs technical review" or "change base branch."
  • The content in this PR requires a dbt release note, so I added one to the release notes page.

🚀 Deployment available! Here are the direct links to the updated files:

@matthewshaver matthewshaver requested a review from a team as a code owner January 14, 2025 14:07
Copy link

vercel bot commented Jan 14, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Updated (UTC)
docs-getdbt-com ✅ Ready (Inspect) Visit Preview Feb 21, 2025 11:56pm

@matthewshaver matthewshaver changed the title VE QS Guide [DRAFT] VE QS Guide Jan 14, 2025
@github-actions github-actions bot added content Improvements or additions to content guides Knowledge best suited for Guides Docs team Authored by the Docs team @dbt Labs size: medium This change will take up to a week to address labels Jan 14, 2025
@matthewshaver matthewshaver marked this pull request as draft January 14, 2025 14:07
@matthewshaver matthewshaver changed the title [DRAFT] VE QS Guide Visual Editor quickstart guide Jan 14, 2025
@matthewshaver matthewshaver marked this pull request as ready for review January 14, 2025 21:50
Copy link
Collaborator

@runleonarun runleonarun left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @matthewshaver I reviewed up until "Create a model" Will finish the rest later!

It looks really good and is a helpful intro to VE

- Your account must have the following configured:
- A data warehouse connection
- Integration with a Git provider
- Source models for the Visual Editor must have been run at least once
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can drop the "must" as these are prerequisites and all are musts.

Suggested change
- Source models for the Visual Editor must have been run at least once
- Source models for the Visual Editor have been run at least once

- A data warehouse connection
- Integration with a Git provider
- Source models for the Visual Editor must have been run at least once
- You must have a `developer` license
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- You must have a `developer` license
- You have a `developer` license


:::note

The examples in this guide use the [Jaffle Shop](https://github.com/dbt-labs/jaffle-shop) GitHub repo sample project. You can use your own data, but the Jaffle Shop offers a full-featured project useful for testing dbt features. Ask your dbt Cloud administrator about importing it to a project in your environment. They must also execute `dbt run` on the Jaffle Shop project in your `Production` environment before you begin, or you will be unable to reference the source models.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should part of this note be a prereq? Just no sure how you want to phrase them:

  • You have imported the Jaffle Shop project to a project in your environment.
  • Have a dbt Cloud Administrator execute dbt run on the Jaffle Shop project in your Production environment so you can reference the source models.

Copy link
Contributor Author

@matthewshaver matthewshaver Feb 21, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The target audience for this guide is a persona that might not be able to get their dbt admin to run this in production. We don't want them to feel this guide isn't for them if they can't do that. We're using the call out to state up front that the examples use the Jaffle Shop, but they can still follow the learning path with their data if using the Jaffle Shop isn't possible. I fear if we list it as a pre-requisite they may avoid the guide if their admins won't let them run the Jaffle Shop in prod. The pre-requisites state only that whatever data you use must have been run in Prod at least once

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@matthewshaver That makes sense. Can we title the note "prerequisites for using a Jaffle Shop project?"

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great idea! I'll add it

1. Click **Develop** from the main menu. If you do not see the **Develop** option, ensure you have selected a **Project** from the menu.
2. Click **Visual Editor**.

<Lightbox src="/img/docs/dbt-cloud/visual-editor/ve-main-menu.png" width="90%" title="Visual Editor in the main menu."/>
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we cut off the bottom half of this image? It's big for just showing the menu selection.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also "Visual Editor in the main menu" might be more helpful if we say in the Develop menu. Might make more sense for ereaders.


<Lightbox src="/img/docs/dbt-cloud/visual-editor/ve-screen.png" width="90%" title="The Visual Editor canvas. The number of items is defined in this section." />

Click on an icon to expand its section or execute an action depending on its purpose. The options are as follows:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Love how neat the image looks and this section feels helpful!

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you!

Co-authored-by: Leona B. Campbell <[email protected]>
Copy link
Collaborator

@runleonarun runleonarun left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I completed this review without testing VE. Happy to test these steps or maybe @nataliefiann can?


Read more about the [individual operators](/docs/cloud/visual-editor-interface#operators) to understand the basic purpose of each. The dbt model created by the Visual Editor builds off of existing models. In this guide, there will be input (source) models and an output model (what you are building) which will be _your model_.

### Operator tiles
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This "Operator tiles" section feels like it could go after the procedure as a reference. I was beginning to wonder when we'd get to the steps. We could reference it in step 2 of "Create your model from pre-existing models" in a to "learn more about" sentence. This way for those who need more they can look at that section but others can forge ahead quickly.


<Lightbox src="/img/docs/dbt-cloud/visual-editor/operator-tile.png" width="90%" title="An operator tile with configurations filled out." />

1. **The connectors:** Click-and-drag to the connector on another operator to link them.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What do the L and R mean? Presumable left and right, but what's that about?


There's a lot of data there. Dozens of customers are buying hundreds of products. You will sort it so that the customers are listed ascending by their CUSTOMER_ID number, with the most purchased products listed in descending order.

1. Drag the **Order** operator over to the right of the **Aggregation** tile and connec them.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Drag the **Order** operator over to the right of the **Aggregation** tile and connec them.
1. Drag the **Order** operator over to the right of the **Aggregation** tile and connect them.

Now that you've built a model that results in the data you want, it's time to run it and push it to your Git repo. Before you run your model, keep a few items in mind:

- When you run previews (at any stage in the process), it does not affect the state of your warehouse. So, you can test and develop in the Visual Editor without impacting anything outside of the dbt Cloud Development environment.
- When you're ready to use this mode in a downstream tool, you can run it to materialize it in your data warehouse development schema.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- When you're ready to use this mode in a downstream tool, you can run it to materialize it in your data warehouse development schema.
- When you're ready to use this model in a downstream tool, you can run it to materialize it in your data warehouse development schema.


- When you run previews (at any stage in the process), it does not affect the state of your warehouse. So, you can test and develop in the Visual Editor without impacting anything outside of the dbt Cloud Development environment.
- When you're ready to use this mode in a downstream tool, you can run it to materialize it in your data warehouse development schema.
- Once your model is ready for production and ready to be used by others or orchestrated, commit it and open a PR.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Best to be specific in case it's not clear to some.

Suggested change
- Once your model is ready for production and ready to be used by others or orchestrated, commit it and open a PR.
- Once your model is ready for production and ready to be used by others or orchestrated, commit it and open a pull request.


<Lightbox src="/img/docs/dbt-cloud/visual-editor/run-results.png" width="90%" title="The results of a successful run in the 'Runs and previews' pane." />

This will [materialize](/docs/build/materializations) the data as a `view` in your developer schema in the database. Once the model has been merged with your project and `dbt run` is executed in your Staging or Production environments, it will be materialized as a view in their related schemas.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

their related schemas

Who is their? can we just say "related schemas?"

3. Click **Commit**.
4. The **Commit** button will change to **Create a pull request**. You can add more commits, but click the **Create a pull request** button for now. You will then be redirected to your Git provider in a new tab.

The following examples use GitHub as the provider:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The following examples use GitHub as the provider:
The following example uses GitHub as the provider:


The models built in the Visual Editor are a part of your larger dbt project. They are stored in the `visual_editor` folder of your `/models` directory. This is all done automatically; you don't have to configure any paths or directories.

<Lightbox src="/img/docs/dbt-cloud/visual-editor/ve-model-folder.png" width="90%" title="Example of the Visual Editors model path in GitHub." />
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<Lightbox src="/img/docs/dbt-cloud/visual-editor/ve-model-folder.png" width="90%" title="Example of the Visual Editors model path in GitHub." />
<Lightbox src="/img/docs/dbt-cloud/visual-editor/ve-model-folder.png" width="90%" title="Example of the Visual Editor's model path in GitHub." />

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
content Improvements or additions to content Docs team Authored by the Docs team @dbt Labs guides Knowledge best suited for Guides size: large This change will more than a week to address and might require more than one person
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants