Data modeling done in SQL

Chartio categorizes data management sophistication into four main stages: source, lake, warehouse and mart. We believe that as companies grow and as data stacks evolve, companies advance through each of these stages. And regardless of what stage you're in, Chartio is here to support you.

Data Modeling

Modeling is a key factor in advancement. And while we’ve built plenty of modeling features into Chartio, we strongly believe that true modeling should be done on the database and done in SQL - making it more performant and accessible for your teams.

That’s why we partner with and promote dbt, an open-source, SQL-based modeling language, for database-level modeling.

SQL - Create View
bubbles right bubbles right

Tips for modern data modeling

Single Source

Create a single source of truth

As your organization gets larger, and more people need to work with data, quality data modeling becomes increasingly important. When your team is ready to build a data warehouse as a single source of truth, Chartio can help. We offer expert advice and trainings, an authoritative book, and a product that flexibly transitions with you.

Agile Product

Use agile products that adapt with you

With Chartio, you don’t have to worry about having your data set up perfectly from the start. And we don’t require three months of extensive modeling to get started. Instead, we strongly encourage data agility. That’s why we’ve built a flexible product that works with your data no matter what stage you’re at and through any transition.

Model in SQL

Model in SQL

We encourage database-level modeling by creating a schema of clean views on top of your data lake. Open-source libraries like our partners at dbt provide an excellent framework for this, with enormous benefits.

SQL Command

The benefits of modeling in SQL

No lock-in. When you create models with SQL on the database level, your work isn’t locked into one platform forever—so you can change tools, use other products, write cron jobs, and more.

No new languages to learn. If your whole data team already knows SQL, why force them to learn a new language?

No magic layers. When you use SQL to write your models, you can know and trust what it’s going to do. That’s not true with specialty modeling languages like LookML.

Extensible. If you want to build on the power of SQL, dbt offers the added functionality of macros.

Performance control. When you write your models in SQL, you can tweak them to be performant. You’ve got full control.

Easily persistent. With materialized views at the database level, it’s incredibly easy to make persistent datasets with just a query—no extra code, products, or data locations.

Compatibility. We’d love to be the only product you ever use for data, but we realize that may not be the case. When you model with SQL on the database level, you can connect and utilize any other compatible tool.

The benefits of using

dbt logo

We highly recommend using dbt, an open and vibrant project that makes setting and maintaining SQL views a snap. We use it ourselves, and love it—partly because of its many added features.

Learn more
  • Macro functions. With dbt’s templating language extending SQL with macros, you don’t have to keep repeating yourself.

  • Automated Testing. Easily validate your models and ensure data integrity.

  • Version Control. Because dbt is built around Git, your files are part of the repository, so deploying your changes can be as easy as a Git push.

  • Easy incremental loading. Views can easily be made persistent and instructed to update themselves with only the latest incremental changes.

  • Environments. With dbt, you can easily create separate staging and production environments for your models, so you can collaborate on and test your work before it’s fully released.

Modeling within Chartio

Should you prefer to model directly in Chartio, you can. Our Schema editing and custom table functionality allow you to refine or reorganize your results right inside the app.

Scheme illustration

Rename, hide, and reorder columns

Edit columns

Assign relationships for automatic JOINs

Foreign keys

Create custom tables and custom columns

Create table

Visualize your models


Save your work with Data Stores

Making data persistent inside of Chartio is also a snap. If you’ve created a nice summary table or a complicated joining of data from multiple sources, and want to save those results to be used by many different charts, you can do so easily with our Data Stores

Enjoy additional benefits

Agile, quick-and-dirty modeling

Controlled caching with adjustable refresh intervals

Easily store datasets of blended results from multiple sources

Repeat yourself less

Cloud Data Management book

We wrote the book on modern data modeling

We’ve published an entire book on cloud data management, and all the best practices taking people through what we call the 4 stages of data sophistication.

Download for free
  • Modeling isn’t hard. Most people assume a data modeling project takes many months or even years with multiple experts needed. It just isn’t so anymore. As we illustrate, you can get a great source of truth set up in just a month or two.
  • Modeling saves you time, quickly. With an agile approach to modeling, you can see returns right away. Instead of teaching others the nuances of each dataset, you can simply write clarifying queries once and stop having to explain and repeat yourself.
  • Which stage is right for you? Modeling isn’t needed for every stage and for every company. Our book outlines a framework of sophistication and advises on when it might be right for your company to move from one to the other.

Ready for better data management?

Try Chartio for free