2020 Was Vertabelo Database Modeler’s Year. It’ll Get Even Better in 2021.
2020 is coming to an end. It's been a busy year for us, so let's summarize what we did at Vertabelo. I will also show you how the Vertabelo database modeler will evolve in 2021. This is already a great tool, but it will be even better. See what we plan to do.
I am not exaggerating when I say that we had our hands full in 2020. In addition to constantly improving the Vertabelo database modeler and creating new Vertabelo Academy courses, we have launched completely new platforms for learning SQL and Python. We are really proud of both.
And we’ve got a lot planned for 2021, too. But before we get into that, let's look at the changes made to our data modeler in 2020.
Database Modeler 2020 Enhancements
Like every year, this year we worked hard to improve our tool for database designers and software architects. In addition to the ones listed below, we (as usual) made several hundred smaller changes and bug fixes. All this was to give our users an even better experience.
Logical to Physical Model Transformation
In 2020, we significantly improved the functionality of logical models by enabling users to generate a physical database model from the logical model.
During the generation process, you can choose the target database engine; thus, columns in the physical model will have the appropriate types specific to your database. Tables in the target model can be generated from entities as well as from associations and many-to-many relationships. Primary keys, foreign keys, and alternate keys are created automatically, based on information from the logical model. For database engines that support sequences, there is an option to generate them automatically based on entities with a single primary attribute. Also, other model elements – like subject areas or text notes – are reflected in the generated model.
For logical models with entity inheritance hierarchies, there are three options for generating the physical representation of inheritance hierarchy from the logical one:
- One table per entire hierarchy.
- One table per entity.
- Tables per entity – all attributes.
Every inheritance hierarchy you have in your model can be assigned a different generation strategy, which makes the designing process fully flexible.
More Logical Model Functions
Beside the generation of physical models – which was a crucial enhancement – we also added some functionalities to improve collaboration. Users can now export logical models to PNG or SVG images and PDF files. You can also generate documentation for logical models in a similar way as for physical models. Your team's work just got easier.
Support for Cloud Databases
Cloud databases have become part of the everyday life of software designers. Most traditional relational databases (like PostgreSQL, Oracle or MySQL) are now available in many Clouds. What's more, there are quite a lot of new players in the Cloud database arena. Google BigQuery, Snowflake,and Amazon Redshift grew really fast and are gaining significant positions in the database landscape. At Vertabelo, we constantly monitor the database market and add support for trending databases.
In 2020, we added support for Google’s BigQuery database, which is dedicated mostly to analytical applications and is offered as a Database as a Service model. From a design perspective, this database is extremely simplified. There are no constraints, primary keys, alternate keys, or indexes. In the Vertabelo modeler, you can draw reference lines to enhance the readability of the database model, but nothing will be generated in the SQL script. From the other side, there are a lot of additional table properties specific to Google Big Query like Dataset
name, Partition by
, and Cluster by
. All these are supported by the Vertabelo modeler:
We added support for Amazon Redshift in 2019. This year, we improved it by adding the option to generate migration scripts between different versions of the model.
More Flexible Primary Key Management
If you have a compound primary key, sometimes you need to manage the order of columns in the key. Now you can do this in Vertabelo. We also added the ability for the user to name the primary key constraint.
Changes to Vertabelo API
We added a new method to Vertabelo API that gets all documents (including models). This will make your development process more flexible, especially if you have many models and you generate some extra code from them.
curl -H "Accept: application/json" -u "VERTABELO_API_KEY" https://my.vertabelo.com/drive Enter host password for user: YOUR PASSWORD { "documents": [ { "name": "Ghost Movies", "type": "physical model", "link": "https://my.vertabelo.com/model/itephoo7Ahsoh1faiho6daexiedi3y" }, { "name": "My logical db model", "type": "logical model", "link": "https://my.vertabelo.com/logical/model/iela6eeCh9Nae7tah4iophupeiQuah" }, { "name": "My SQL script", "type": "SQL script", "link": "https://my.vertabelo.com/sql-editor/Thiephaegaifo7ohkiev4thaer2oof" }, ] }
New Learning Platforms for SQL and Python
You’ve probably come across Vertabelo Academy more than once. We have been teaching data science skills (SQL, Python, R, statistics, and data visualization) there for years via our online and interactive courses. We’re trusted by thousands of users; their positive reviews and ratings motivate us to keep working hard. The experience gathered over these years has allowed us to launch two brand new e-learning platforms dedicated exclusively to learning SQL and Python.
At the beginning of 2020, we launched LearnSQL.com, our SQL knowledge and learning center. It quickly became popular and is still growing very fast; more than 10,000 visitors come to the site every day. Our users improve their SQL skills through several dozen interactive courses, gain contemporary SQL knowledge via our high-quality blog articles, and quickly solve everyday SQL issues with the help of our SQL cookbook.
We also helped many companies facilitate their daily business activities by teaching their employees SQL. Here you can read about a project that equipped 10,000+ Uber employees with SQL skills.
Next, we launched LearnPython.com in August 2020. On this site, novice programmers will find everything they need to start a programming career. Now we have twelve interactive Python courses arranged into three learning paths: Python Basics, Data Processing with Python, and Python for Data Science. The good news is that all our Python courses on LearnPython.com will be available for free through March 2021. If you've ever planned to learn Python or wondered if coding is for you, this is your best chance to find out.
We know that all you software engineers, database architects, and tech team leaders are familiar with technologies like SQL and Python. But we also believe that there is always room to improve our skills, especially for advanced modern SQL topics like window functions and recursive queries.
There are also a lot of people who have just started their career in IT or are thinking about it. Finally, there are also those who do not work with databases on a daily basis but want to analyze customer behavior or follow market trends based on collected data. Let's help them to learn in the fastest and easiest way possible using LearnSQL.com and LearnPython.com.
The courses on both platforms are interactive, well thought out, and – apart from the knowledge itself – full of opportunities to practice new skills. We believe that this is the only way to master a new skill. Practice makes perfect.
Vertabelo Modeler 2021 Road Map
Now, let’s see what significant improvement and new features you can expect in 2021.
Managing Large Database Models
While you can currently create and manage large models in Vertabelo, there are a few aspects that have not been covered so far. In 2021, we will focus on these three things:
- Bulk changes in model – In large database models, making changes across the whole model is challenging. Currently, these changes should be done one element at a time or by changing the model’s exported XML using external command line tools. In 2021, we plan to introduce a completely new functionality that facilitates easy bulk changes. It will be a separate module, which should be faster and more efficient.
- Model review – The bigger the model, the harder it is to review through the diagram or navigation tree. Also, reviewing elements together that are in different places is difficult. So, along with the new user interface for bulk changes, we also will add a better interface to review different aspects of the database model in other ways.
- Many diagrams in one model – We have Subject area functionality that can deal with larger models and divide them into smaller, closely-related parts. But for the largest models, this is not enough; we need another level of granularity. This is why we’ll enable users to have many database diagrams in one model.
We're also going to improve performance for drawing and editing really large models (i.e. containing 500+ tables).
Domains and User Defined Data Types
Large organizations or bigger models sometimes need to define data types that are specific to the organization or the particular database. This is currently the most requested feature on our support site. So this year, we plan to introduce Domains as a separate element of database modeling. It will allow users to define user data types, map them to concrete database data types and then choose these types during column creation. Domains will be available on logical and physical data models.
Database Diagram Drawing
We spend a lot of work on our diagram drawing approach, but we know there are still areas for improvement. Here are the aspects of drawing database diagrams that we will be focusing on in 2021:
- Improved positioning, aligning, and sizing for diagram elements, especially in relation to other elements and the grid.
- Auto-layout – Heuristics for auto-positioning elements on a diagram or part of a diagram.
- Graphics formatting will be applied for all selected elements.
New Look & Feel
User experience is a key part of functionality. Vertabelo's current user interface is now several years old. It's still comfortable, but we believe we can provide a more modern design and a much better user experience. Dark and light UI themes will be introduced along with a new look and feel for the tool. We also plan to redesign the properties panel to simplify the editing of some complex elements, such as indexes or key details.
Support for New Database Engines
In 2021, we plan to add support for two of the fastest growing cloud databases: Snowflake, and Azure SQL Database. Azure SQL is based on the prior popularity of Microsoft SQL Server, so it’s a natural step for current SQL Server users. From the other side, Snowflake attracts many people with its completely fresh approach to data warehousing and data applications.
Next, we will work on supporting MariaDB. This database engine is getting more and more popular as a community-developed fork of MySQL.
Excited About Data Modeling in 2021? We Are!
These are just the most important things we worked on in 2020. Every day, we tried to provide our users with the best tools and solutions. And we’re always very happy to share our knowledge. I encourage you to read the Vertabelo blog, where we publish articles on various database topics.
For SQL learners, I recommend the LearnSQL blog and the SQL Cookbook. It is a huge repository of expert articles and pro tips that will be the perfect complement to your SQL knowledge. Together, we learn and get better. Stay tuned for more.
2021, here we come!