Short answer: database modelers create the large and intangible structures that hold the information of an entire organization.
Anyone unfamiliar with the work that database modelers do might think that they make a living by drawing pictures of boxes linked by arrows. Not quite.
There’s a lot more to a database modeler’s job than creating beautiful schematic designs. They are also in charge of implementing those models, transforming them into operational databases, and maintaining the documentation so that developers and others can interpret, understand, and use the data architecture.
It is the responsibility of the database modeler that the databases created from their designs work well – i.e. that the database maintains the information in a correct and consistent way and responds efficiently to the applications that use it. (This is aside from configuration or infrastructure problems, which are the responsibility of database administrators. More on that below.)
But the responsibility doesn’t stop there. To meet an organization’s data requirements, the database modeler must be aware of the latest trends in data strategies and data platforms as well as the best tools for visualizing and analyzing data.
If you’re still reading this, it means that you are not afraid to do all that it takes to be a database modeler. So read on to find out the skills you will have to learn and the secrets you will have to discover to be the best database modeler you can be.
- What Skills Should a Database Modeler Have?
Many database modelers have a degree in computer science or many years of working experience in computer technology. But their skills should differ from those of a programmer or a system administrator.
Programmers and system administrators should have more technical experience, while database modelers should be more adept at the logical and functional side of things. For this reason, the main skills of a database modeler include conceptual design, abstract thinking, and communication skills.
Even if someone doesn’t have strong knowledge of software or IT, they could be a perfect candidate for a data modeling job if they demonstrate a great ability to think abstractly and conceptually.
Communication skills are essential for database modelers, since a good part of their responsibilities involves interpreting and balancing user requirements. Furthermore, they are required to document the final results of their work, and in such a way that the documentation is easy for all users to understand.
The ability to work in a team is another talent that the data modeler must have, especially in today’s Agile work teams. In the Agile development processes, database modelers are active members of the work team, making contributions that improve the final product and getting suggestions from teammates that help the modeler do a better job.
- What Education Does a Database Modeler Need?
Recruiters looking for database modelers commonly ask for a bachelor's degree, preferably in information science, applied mathematics, or computer science. The most demanding recruiters might expect database modelers to have multiple courses in management information systems (MIS) or business administration. It is also usually expected that a database modeler knows about database administration and how to dig into a database and solve data handling problems.
Among all these, there are some particular skill areas that database modelers should have, such as:
- SQL
- Business Intelligence
- Data warehousing
- Data analytics
- Boolean logic
- Computer organization and architecture
- Data representation
- Memory architectures
- Modeling methods and tools
A survey by the British company IT Jobs Watch shows that, over the last 6 months:
- 57% of all published IT jobs citing data modeling also mentioned SQL.
- 44% mentioned Business Intelligence.
- 36% requested data warehousing.
- 35% cited analytics.
- Database Modeling Tools
In the database modeler’s arsenal, one of the main weapons is the ER diagram (ERD or entity-relationship diagram). DB modelers spend a good part of their days working with ERD design tools. For this reason, their success depends largely on the tool they use. Data modeling tools should give them the speed and flexibility to create diagrams (either from scratch or by generating them from existing databases), to modify them, to create or update databases from them, to share them with co-workers, and to export and save them as technical documentation with a standard format.
One of the most important data modeler responsibilities is to ensure that their models work well. Remember, database designers do more than just draw ERDs. Good database models are the blueprints of an entire company’s data structures.
In turn, ERDs address various needs. By visualizing the data model, they serve to communicate its purposes and objectives to technical and non-technical people. And once the various stakeholders approve an ER diagram, it can be automatically transformed into a working database.
A logical ERD (top) and the corresponding auto-generated physical diagram (bottom).
For a model to be effective once it’s been converted to a database, it must meet a number of validation conditions. For example, all the entities in the model need a unique identifier and the attributes that form a relationship between entities must be of the same type. A database modeler should have a tool that assists them with validating models, particularly when the models become so large that it’s not possible to fully understand them at a glance. A complete design platform, such as Vertabelo, provides all a designer needs to create database models, validate them, and generate the database that comprises the final product.
- Data Warehouses, Big Data, and Beyond
Data warehouses and Big Data have changed – or, more precisely, extended – the role of database modeling. Thanks to them, database modeling has become more important than ever because it has gained a more direct impact on business decisions.
Nowadays, every database modeler must be able to work with data structures that support business intelligence. New trends in information management, such as NoSQL databases and data lakes, have revolutionized traditional data architectures – and, consequently, database modeling. Data architects must constantly learn new skills and techniques. And, occasionally, they must break away from the rows-and-columns paradigm of traditional models.
The comfort zone of structured data is not so comfortable anymore. A modern database modeler must know how to handle unstructured data – e.g. formless heaps of web-scraping results or endless streams of sensor data from IoT devices – in order to extract the facts and dimensions that comprise a data warehouse model. Dimensional data becomes a key component in Business Intelligence systems, offering a more effective and adaptable foundation for data analysis than can be achieved with normalized data structures.
- Roles and Responsibilities in Database Management
As a database designer, you are not alone in the task of dealing with databases. There are other roles that together solve all the data management needs of an organization. Those other roles are primarily database administrators (DBAs), database developers, and data analysts. It’s important to know the responsibilities of each one so you can understand the boundaries between them.
A DBA ensures that an organization’s databases work optimally, efficiently meeting applications’ requirements. They get involved when a database design must be brought to the real world and suggest implementation strategies that optimize the use of IT infrastructures, such as storage and communications. It is also the DBA’s responsibility to intervene when a problem in a database – such as slow queries or data corruption – affects the functionality or responsiveness of an application.
The DBA may need the help of the database modeler when a design review is required to improve database performance. They can also provide design optimization tips – which the database modeler may or may not take.
DBAs generally work on production environments, although their help may be required to configure or optimize development or QA databases. However, it is common for DBAs to be so busy with production databases that they have little time to help designers and developers configure their environments. This is why designers and developers should know how to handle some basic DBA tasks, such as making backups or configuring database storage.
In large teams, there may be separate roles for database design and database development – although, in my experience, it is common for the designer to put on a developer’s hat when there’s no designing work to do.
Database developers take physical models and add whatever is needed to achieve optimal interaction between the model and the applications that use it: views, functions, stored procedures, triggers, jobs, indexes, restrictions, and so on. Their main tools are SQL-enabled development environments and database engine frontends.
Finally, analysts and data scientists are advanced users who extract insights from the information contained in an organization’s repositories. Analysts and scientists can design their own data models, as these must meet certain requirements to facilitate analysis. However, their main focus is on the application of mathematical functions to large volumes of information, so it is convenient that they delegate the task of designing the data models to a designer who knows how to optimize a database for analysis purposes.
- Are You Ready for Database Modeling?
By now, you should be aware of who database modelers are and what they do – and what it takes to become one.
If you enjoy building solid data structures and watching them become the pillars of growth for successful organizations, then roll up your sleeves, grab your designing tools and your databases, and get yourself deep into database modeling.