Recently, I had a few questions on database modeling. One was posted in the SQL Server Central forums, and a customer asked about ERD tooling on the same day. This came shortly after Redgate acquired Vertabelo (now Redgate Data Modeler). This stood out to me as very rarely in the last few years have I found people consulting and updating a diagram while performing database development.
When I started as a developer and needed to update a database, I had to first update a diagram that was stored in ErWin. We had a dedicated computer (back when we went to an office every day) where the software was run and any developer could us this to update the diagram with proposed changes. Back then, we had to get another peer to sign off on changes before making them, and the peer was supposed to go check the diagram for the change before approving it. That’s only if they thought your change made sense and conformed to our standards (naming, design, etc.).
Over the last decade or so, it seems there haven’t been a lot of common tools for building diagrams in the Microsoft space. The SSMS Database Diagrams haven’t been the easiest to use and I rarely see people consult it. I loved ER/Studio, but it and ErWin were very expensive and outside the budget for most groups. There have been a lot of smaller online tools, but I don’t see a lot of consensus for which ones people like. There are DbSchema and SqlDBM, among others. I see various blogs, like this one, that recommend different tools, but the uptake seems to be low in many organizations. I hope Redgate can make data modeling more common with Redgate Data Modeler (coming soon to the Toolbelt).
My question for you is do you still maintain and use database diagrams for development? Or is this a somewhat lost art? Is it not necessary or useful for you? Do you wish your development teams did this to ensure a more cohesive and consistent model?
I used to like having a diagram because it a) forced me to slow down and rethink things a bit as I made updates and b) let me see where there were dependencies. One of the reasons SQL Dependency Tracker exists is that I asked Redgate to extract the dependency tree from SQL Compare to allow me to see it separately. This would allow me to know what other objects might need to be changed if I refactored ObjectA. I found that to be a great “picklist” of things to check during database development.
I don’t know how many people these days perform data modeling, but I do know a lot who don’t spend much time thinking about the changes they make. I fear data modeling has become a bit of a lost art, which saddens me.
Steve Jones
Listen to the podcast at Libsyn, Spotify, or iTunes.
Note, podcasts are only available for a limited time online.



Pingback: Thoughts on Data Modeling – Curated SQL
Steve – from your description of the process/procedures you had to go thru its reads to me like as if you guys have your shift together which explains why I’ve used RedGate software for 20 years with glea!We do not have a digital data model but we do have a DDF (data dictionary file) which I believe provides a lot of the same info. I however would prefer a data modeler but as you said their aren’t a lot of affordable options which HOPEFULLY 🤞, RedGate will fix! That said I do have once concern after reviewing the marketing material on the RedGate site for the data modeler. Is it accurate to say that the data is in the cloud only? I get the perks of cloud based computing but I think its foolish to assume it will always work, always be there when you need it. You should always have a localized copy/backup. The cloud should always be viewed/used as atool and a replacement. Even if every square inch on land on this planet could connect to the internet it would still be foolish to not have some localized backup just in case. It’s not as of we haven’t already seen the cloud go offline for X hours. The cloud to me feels like the human equivalent of the dummy terminal. Instead of the Terminal/Person having the knowledge and working wit it they arejust a dummy terminal that store/.has nothing and is just an intermediary between the end user and the Cloud.Priority of the human race should always beheld higher than the desire for technological advancements. QAs has been repeatedly discussed on line here lately, these robots that Tesla and other companies are building are not that far off from being able to replace humans and we all know that these companies will NOT hesitate to do exactly that to lower costs and paddd their bonuses. That is unless something prevents them from being able to do this.The cloud should always be just another tool and not the replacement system.
LikeLike
Steve – apologies for the mashed up text. When I was creating it the thig was showing paragraphs and the like and not just one huge paragraph.
LikeLike
no worries
LikeLike
Right now it’s only in the clouds as there is no local app to read data.
There is the option to export images and PDFs, so you can have local copies of things.
LikeLiked by 1 person
I will still be keeping an eye on this and if possible give it a test run once they have a build ready. While my preferences is for something that is not cloud only, this is also Red-gate whom I love so I’m going to give it a try and if the price is right, maybe stick with it. I do hope the level of access the app needs is not to wide/broad. Our DB Server is already in the cloud and even tough we have a private server (some client have a shared SQL Server) I can only get DB level access. Anything that requires greater access than what the DBO user is of the DB would have then we wont be able to use it.
LikeLike
Redgate Data Modeler is ready now. You can get a trial and try it out here: https://datamodeler.redgate-platform.com/user-type
LikeLike
oh. I thought what was available to use wasn’t a final release but more like a beta they were letting users test kind of like how SSMS does that. I’ll definitely be checking it out!
LikeLike