Speaking at SQLSaturday #197 in Omaha on April 5-6

I will be speaking on both Friday and Saturday (April 5-6) at SQLSaturday #197 in Omaha, Nebraska. I will be delivering a full day pre-con on Friday, and then doing Hardware 201 on Saturday. Here is the abstract for my pre-con:

Scaling SQL Server 2012

How can you scale SQL Server 2012? Scaling up is relatively easy (but can be expensive), while scaling out requires significant engineering time and effort. If you suggest hardware upgrades you may be accused of simply “throwing hardware at the problem”, and if you try to scale out, you may be thwarted by a lack of development resources or 3rd party software restrictions. As your database server nears its load capacity, what can you do? This session gives you concrete, practical advice on how to deal with this situation. Starting with your present workload, configuration and hardware, we will explore how to find and alleviate bottlenecks, whether they are workload related, configuration related, or hardware related. Next, we will cover how you can decide whether you should scale up or scale out your data tier. Once that decision is made, you will learn how to scale up properly, with nearly zero down-time. If you decide to scale out, you will learn about practical, production-ready techniques such as vertical partitioning, horizontal partitioning, and data dependent routing. We will also cover how to use middle-tier caching and other application techniques to increase your overall scalability.

You can get a copy of the flyer for both pre-cons here: SQL Saturday #197 Pre-Cons

Here is the session I will present on Saturday:

Hardware 201: Selecting Database Hardware

The foundation of database performance is the underlying server hardware and storage subsystem. Even the best designed and optimized database application can be crippled by an inadequate hardware and storage infrastructure. Recent advances in new processors and chipsets, along with improvements in magnetic and SSD storage have dramatically changed the evaluation and selection process compared to the past. Many database professionals struggle to keep up with new technology and often simply let someone else make their hardware selection and sizing decisions. Don’t let this happen to you! This session covers current and upcoming hardware from both Intel and AMD.

My friend and SQLskills colleague, Joe Sack will also be speaking at SQLSaturday #197.  I hope to see a lot of people at this event!

Posted in PASS, SQLSaturday, Teaching | Tagged | Leave a comment

Scaling SQL Server 2012 in Lisbon, Portugal

I had the opportunity to present a full-day preconference session on Friday, March 15, 2013 for SQLSaturday #188 in Lisbon, Portugal. This was the first time I have spoken at a SQLSaturday outside of the United States, and I really enjoyed it! This never would have happened without the enthusiasm of fellow SQL MVP Niko Neugebauer, who is a good friend and an all-around good guy!

My employer, SQLskills gave away a certificate for a $500.00 discount on a future SQLskills Immersion Event class at the SQLSaturday preconference event. I also gave away a copy of SQL Server Hardware and a copy of Professional SQL Server 2012 Internals and Troubleshooting in a raffle at the end of the event. 

Here is the preconference session I delivered on Friday:

Scaling SQL Server 2012

How can you scale SQL Server 2012? Scaling up is relatively easy (but can be expensive), while scaling out requires significant engineering time and effort. If you suggest hardware upgrades you may be accused of simply “throwing hardware at the problem”, and if you try to scale out, you may be thwarted by a lack of development resources or 3rd party software restrictions. As your database server nears its load capacity, what can you do? This session gives you concrete, practical advice on how to deal with this situation. Starting with your present workload, configuration and hardware, we will explore how to find and alleviate bottlenecks, whether they are workload related, configuration related, or hardware related. Next, we will cover how you can decide whether you should scale up or scale out your data tier. Once that decision is made, you will learn how to scale up properly, with nearly zero down-time. If you decide to scale out, you will learn about practical, production-ready techniques such as vertical partitioning, horizontal partitioning, and data dependent routing. We will also cover how to use middle-tier caching and other application techniques to increase your overall scalability.

Posted in Microsoft, PASS, SQL Server 2012, Teaching, Travel | Tagged | 2 Comments

SQL Server 2012 Diagnostic Information Queries (March 2013)

Here is the March 2013 version of my SQL Server 2012 Diagnostic Information Queries, with some minor tweaks and improvements to several of the existing queries. I have added some new columns to several of the queries, and improved the formatting of the results to make many of the queries easier to read and interpret.

To go with it is an updated, blank 2012 results spreadsheet, where the tabs in the spreadsheet are labeled and in the same order as the queries. The idea is that you can run these queries one by one, click on the top left square of the results grid, and then right-click and select “Copy with Headers” to select and copy the results of the query and then paste them into the matching tab of the results spreadsheet.

One new feature (since February) is that I have modified the initial comment for these queries to make them work better with Mitch Wheat’s SQLDiagCmd program that is a standalone .NET program to run these queries and automatically capture the results in a nice Excel spreadsheet (which saves you the time and trouble of doing it manually). I recently discovered that Mitch also has a WinForms application that is even easier to use.

Many of these queries only work on SQL Server 2012, although some will work on older versions of SQL Server. If you are using an older version of SQL Server, you should use the version of my diagnostic queries for that version of SQL Server.

You should be aware that both Query 52 and Query 56 could take some time to run, depending on the size of your database and the speed of your hardware and storage subsystem.

As always, I welcome any feedback you may have about these queries.

Posted in Diagnostic Queries, SQL Server 2012 | Tagged , | 3 Comments

Hardware 301 Presentation

I had the opportunity to present the latest version of Hardware 301: Diving Deeper into Database Server Hardware two times in one day yesterday! First was a virtual presentation for the PASS Virtual DBA chapter at 12PM, and then I got to do it again at the Rocky Mountain Oracle User’s Group Training Days 2013 at 4PM.

The RMOUG event was interesting, since I had never been to an Oracle conference before. It felt a little strange, since I did not know anyone (and no one knew me). 

I was also surprised that there was a noticeably higher percentage of women in attendance than you normally see at most technical conferences. Typically, you might see only roughly 1-2% of the attendees at most computer-related conferences being female (which is very unfortunate). Just from my casual observation yesterday, it seemed like the female percentage was at least double or triple that (which is still extremely low).

I am not sure what can really be done to change those numbers, besides continuing to encourage and mentor women who want to work in I.T.  I think there are a lot of societal factors that discourage many young women from pursuing I.T. careers.

Posted in Computer Hardware, Processors, Sandy Bridge, SQL Server 2012 | Tagged | 3 Comments

Speaking at PASS Database Administration Virtual Chapter

I will be speaking at the PASS Database Administration Virtual Chapter on February 13, 2013 at 12PM MST. I will be presenting the latest version of my Hardware 301: Diving Deeper into Database Hardware deck.

The LiveMeeting link is here. If you want a chance to win a $50.00 Amazon gift certificate, you need to register here.

Here is the abstract for the presentation:

Hardware 301: Diving Deeper into Database Hardware

Making the right hardware selection decisions is extremely important for database scalability. Having properly sized and configured hardware can both increase application performance and reduce capital expenses dramatically. Unfortunately, there are so many different choices and options available when it comes to selecting hardware and storage subsystems, it is very easy to make bad choices based on outmoded conventional wisdom. This session will give you a framework for how to pick the right hardware and storage subsystem for your workload type. You will learn how to evaluate and compare key hardware components, such as processors, chipsets, and memory. You will also learn how to evaluate and compare different types of storage subsystems for different database workload types. This session will give you the knowledge you need to make sure you get the best performance and scalability possible from your hardware budget!

I really enjoy talking about SQL Server hardware, so this should be a lot of fun. I hope you are able to take the time to listen to the presentation!

Posted in Computer Hardware, PASS, Processors, Storage Subsystems | Tagged | 1 Comment

SQL Server 2008 R2 Diagnostic Information Queries (Feb 2013)

Here is the February 2013 version of my SQL Server 2008 R2 Diagnostic Information Queries, with some minor tweaks and improvements to several of the existing queries. I have decided to split off this into a separate version just for SQL Server 2008 R2. There are also two new queries that I have added this month. 

To go with it is an updated, blank 2008 R2 results spreadsheet, where the tabs in the spreadsheet are labeled and in the same order as the queries. The idea is that you can run these queries one by one, click on the top left square of the results grid, and then right-click and select “Copy with Headers” to select and copy the results of the query and then paste them into the matching tab of the results spreadsheet.

One new feature in this version is that I have modified the initial comment for these queries to make them work better with Mitch Wheat’s SQLDiagCmd program that is a standalone .NET program to run these queries and automatically capture the results in a nice Excel spreadsheet (which saves you the time and trouble of doing it manually). Mitch also has a version of the program with a UI that is even easier to use…

Many of these queries only work on SQL Server 2008 R2, although some will work on older versions of SQL Server. If you are using an older version of SQL Server, you should use the version of my diagnostic queries for that version of SQL Server.

You should be aware that both Query 47 and Query 51 could take some time to run, depending on the size of your database and the speed of your hardware and storage subsystem.

As always, I welcome any feedback you may have about these queries.

Posted in Diagnostic Queries, SQL Server 2008 R2 | Tagged , | 6 Comments

SQL Server 2012 Diagnostic Information Queries (Feb 2013)

Here is the February 2013 version of my SQL Server 2012 Diagnostic Information Queries, with some minor tweaks and improvements to several of the existing queries. There is also one new query that looks for missing indexes for all databases on the instance.

To go with it is an updated, blank 2012 results spreadsheet, where the tabs in the spreadsheet are labeled and in the same order as the queries. The idea is that you can run these queries one by one, click on the top left square of the results grid, and then right-click and select “Copy with Headers” to select and copy the results of the query and then paste them into the matching tab of the results spreadsheet.

One new feature in this version is that I have modified the initial comment for these queries to make them work better with Mitch Wheat’s SQLDiagCmd program that is a standalone .NET program to run these queries and automatically capture the results in a nice Excel spreadsheet (which saves you the time and trouble of doing it manually).  Now, I need to talk Mitch into making his program into a little WinForms application that is even easier to use…

Many of these queries only work on SQL Server 2012, although some will work on older versions of SQL Server. If you are using an older version of SQL Server, you should use the version of my diagnostic queries for that version of SQL Server.

You should be aware that both Query 52 and Query 56 could take some time to run, depending on the size of your database and the speed of your hardware and storage subsystem.

As always, I welcome any feedback you may have about these queries.

Posted in Diagnostic Queries, SQL Server 2012 | Tagged , | 2 Comments