Category: Editorial

  • Which Versions of SQL Server Do You Have?

    SQL Server v6.5 retail box
    This was my 5th SQL Server version upgrade.

    I have worked with every version of SQL Server since it was first available from Microsoft on OS/2. Each version has improved the features, the stability, and the scalability, and I’ve looked forward to each change. In many of the companies I worked at, we had a fairly homogenous environment, with one or two versions to support. I think some of that was the timing of my employment dates with the version release dates. If I’d stayed longer at a few jobs, I think I might have ended up supporting three versions of SQL Server in a few places.

    That seems to have changed, however with the long delay of SQL Server 2005, and then the very short delays for SQL Server 2008 and 2008 R2. Now it seems many companies have two or three versions at a minimum and might have 4 versions, with SQL Server 2000 servers still available. The last year on Twitter I’ve seen a number of DBAs noting that they are retiring SQL Server 2000 instances at a good clip, with a few people eliminating the version from their environments, but there are plenty of instances still out there.

    This week I wanted to see what percentage of people are still supporting older versions. There seems to be less of a push to upgrade old servers, but we still install the latest version for newer servers. Supporting more versions may mean a higher cost of support for your infrastructure, so I decided to ask this question:

    What’s the oldest version of SQL Server you still support?

    It would be good to know how many versions you are supporting, and if you have older versions (v6.5, v7, v2000), are they used in limited systems, such as keycard systems only. My intention is to try and get an understanding of the shape of the SQL Server community, and the types of work they do each day.

    As SQL Server evolves from a core database engine and includes a wide variety of subsystems and features, I think there is less of a need to upgrade existing instances en masse. Instead targeting those applications that receive large benefits from the changes seems to make more sense. With a very stable engine and very few security problems, I think that companies will use each version longer and require their DBAs to support more versions at any one time. I am sure by the middle of 2010, we will have some DBAs supporting five versions of SQL Server in their companies, going back to SQL Server 2000.


    The Voice of the DBA Podcasts

  • Protecting Data

    Is it really true that we can’t anonymize data? If that’s true, then are we wasting time in looking at any type of obfuscation process or scripting for data that we restore to non-production environments? If that is true, then we then need secure development environments and treat them like production servers as far as security and access controls go.

    It’s somewhat amusing that the reason we can’t likely anonymize data anymore is because we have too much of it. All the different data sets that can be cross referenced, suing public data, make the success rate of anonymizing techniques low. I don’t know how practical it is for someone to actually combine data sets from public sources and using the information to determine the identities of people from other data sets. I do know, however, that there are lots of smart people out there with access to cheap computing resources and lots of spare time on their hands. This might be 21st century vandalism, and we, as data professionals, will be the people that have to deal with it.

    Does this mean that we should not bother to obfuscate or change production data that is copied to development systems? I don’t think that’s the case. In many environments there might not be enough information for someone to identify the original rows. Especially if you protect all of your data systems, ensuring that web logs and other potentially related source of information are not readily available. Even a rogue developer might not be able to unravel the anonymization if you keep separate data sets secure and limit the number of people that could combine them.

    Steve Jones


    The Voice of the DBA Podcasts

  • Give us all the features

    I'd rather by by scale than features

    When you look at the various editions of SQL Server available from Microsoft, there is a strange combination of restrictions at each level. Features, maximum amounts of hardware, database size, and even licensing change from edition to edition. A DBA making the decision on which edition to buy is faced with a choice that is more complex than it needs to be in order to solve a problem. The DBA not only considers the scale of their hardware, but also the mix of features present in that particular edition. It becomes even more complex for third party vendors, who may not be able to request that Enterprise or Data Center editions must be used for their product and must often choose to develop an application with a minimal amount of features.

    I would rather see all features in all editions and change the licensing model to charge by the scale of server I want. Charge me one price for a single socket, 2GB of RAM machine and more for a dual socket, 8GB machine. Let me pay by the scale, or the amount of performance I’m willing to pay for. I don’t know that Microsoft will change, but I think it would be a better way to license their software.

    As data professionals, we get paid to solve problems. We should learn to use the various tools that are available to us. For SQL Server professionals, that means choosing features like partitioning that prepare your system for archiving data. Using Resource Governor appropriately to manage disparate workloads and improve the performance for different groups of clients. Appropriately deploying online indexing operations to prevent downtime for your systems, or impacts to production processes. Better security with TDE isn’t available in Standard Edition, which is something that every company could use. Yet for many DBAs, the many customers that choose to deploy Standard Edition, these features aren’t accessible.

    Streaminsight is one of the features that follows a more logical license. It’s available in Standard Edition, but at a lower processing rate and higher latency. It scales higher if customers find the need to pay for it in Data Center, but customers are free to choose a lower level of performance, with all the same features, in other editions. This isn’t perfect since I think I’d like to see a third level of performance in Enterprise Edition, but it’s a start.

    I don’t think these choices actually convince many customers to purchase Enterprise Edition over Standard Edition. The features missing from Standard Edition aren’t necessarily hurting customers as much as they’re hurting Microsoft and the SQL Server platform. Adding those features in would improve the performance of all applications. They would allowed DBAs to perform better at their jobs, and build more robust systems that would ultimately make SQL Server a better choice for most customers than other RDBMSes. They would, IMHO, improve sales and revenue over time, not reduce them.

    Steve Jones


    The Voice of the DBA Podcasts

  • Password Help

    Ensure you keep shared passwords safe when people leave.

    Today we have an editorial that was originally published on Oct 9, 2006. 

    Yesterday I wrote about compliance tips and one of the things I mentioned was using encryption and passwords for your backups. It’s a good idea that you should use even with disk backups. You never know when someone might get socially-engineered and hand over one of your .bak files to the wrong folks.

    But using encryption isn’t enough; you need strong key management that changes the passwords on a regular basis to prevent data losses from the passwords getting released over time. I’ve worked in a dozen companies and there are many cases where a password has been used for some shared function, some application, some particular feature, whatever. If this password has remained the same for over a year, it’s been almost common knowledge throughout the company what the password is. I’ve seen business people, executives, even secretaries that knew the password to the point where it was useless.

    Shared passwords will be a fact of life in many cases. Administrative teams grow, help desk people may need access, consultants help out and learn them, and others overhear them. It’s going to happen, so you need to mitigate this risk.

    I used to manage a nightclub and we had similar risks with the alcohol. Since turnover was a fact of life, we had a simple policy. When a manager left, for any reason, all alarm codes were changed. On the third occurrence of a manager leaving, we had all locks re-keyed. It was a simple policy to reduce risk.

    The same thing needs to happen with your backups. Use one or even a few passwords to protect the various database backups. But then change those passwords every month or two and escrow or archive the old ones. You may not be able to prevent losses of the backup files, but by ensuring they are protected and the passwords changed regularly, you may just protect the data.

    And your job.