Tag: data modeling

  • Data Modeling in a New World

    The world is changing in some fundamental ways as we recognize and deal with some of the social changes that are occurring regularly. We have had new countries appear and old ones disappear in my lifetime. Borders are redrawn and political systems change. Many of those are just data changes that we can import from some recognized source into our tables.

    There are other changes that might change the way we model our database schemas. One example is the concept of gender, which has changed from the simple male and female of my youth. I haven’t thought much of this, and many of you might not have as well. No matter what your opinion of gender fluidity is, you should still understand how this might impact software and your database systems.

    I was thinking about this while reading an article on designing forms for gender diversity. While the form is important, equally important is how we handle this in the database. A single character might not be enough, but even if you encode various values, what do you use? I haven’t seen a standard and likely this area of data capture is still evolving.

    I suspect that ISO/IEC 5218 needs to be updated, and until it does, I think many of us that work on schema models ought to think about being flexible and storing data in a list, perhaps in a lookup table of some sort. The UK has recommendations, but they don’t appear to have much granularity for the different ways people identify. New Zealand is slightly better, but this does appear to be a thorny question from the modeling perspective.

    Much of the reason we capture gender for is some marketing purpose. This allows data analysts to better understand behavior as a person’s gender sometimes provides some understanding of other behavior. While adding in new pronouns, titles, and genders can increase complexity, it’s also important from the standpoint of having data that is useful.

    With that in mind, it makes sense to not use hard coded constraints in tables, and ensure we have a flexible data model that handles the data we are likely to receive, including some sort of not applicable or prefer not to say answer. As data modelers, our goals should be to accurately capture and record data, and that means we need to adapt to a changing world.

    Steve Jones

    Listen to the podcast at Libsyn, Stitcher or iTunes.

  • Learning Data Modeling

    Last week I wrote about database design tests in interviews. Many of you noted that you hadn’t been asked to perform any design in tests, and plenty of you noticed that ER diagrams are a rarity. Those experiences match mine and are a little disappointing for our industry. Even for software developers, many of whom don’t build databases, I’d expect that ER diagrams to be helpful and plentiful. Our clients are often developers and report writing businesspeople. Why don’t they demand better documentation?
    If they were to ask for us to produce ER diagrams and documentation, I’d hope most of you could produce one, even using SSMS or some other tool. However, can you design the storage for your business requirements in a way that you would feel comfortable presenting to your peers? Do you think you can build a database that efficiently stores data, performs well, and is easy for application developers to work with? If so, I have a question.
    What resources would you recommend for others to learn about data modeling?
    We have a dearth of database design articles on SQLServerCentral, though we do have a Stairway Series on Database Design. I don’t know how easy it is for most developers, or even database architects, to read and understand. I realize that modeling and designing databases can be complex topics, and it does take some effort to learn to do it well, but I also believe that we need practical, easy to approach articles that lead people through the concepts.
    I’d love to see more articles from real world people that discuss designing sections of databases. How do you handle scheduling systems? Inventory tracking? Customer details? If anyone wants to write articles that might lead a reader along (such as Paul White or Brandie Tarvin did), we’d love to have them submitted at SQLServerCentral.
    Steve Jones

    The Voice of the DBA Podcast

    Listen to the MP3 Audio ( 3.2MB) podcast or subscribe to the feed at iTunes and Libsyn.