Category Archives: PASS Virtualization Syndication

PASS Virtualization Syndication

How I Make Coffee and Servers

I’ve got a disturbing array of coffeemaking gear:

My Coffeemakers

My Coffeemakers

From left to right:

  • Bialetti Moka – stovetop espresso maker.  Great for making powerful hot chocolates in the dead of winter.
  • Burr grinder – the best way to get very consistent grinds.  The grinders with spinning blades just randomly slice and dice your beans, but burr grinders get all of the pieces exactly the same size.  Probably the best $100 I ever spent to improve the quality of my coffee.  I linked to a different one since mine’s discontinued.
  • French press – produces very flavorful coffee, but it’s a complete pain in the rear to clean.  They have to go through the dishwasher after each use.  Since it doesn’t have a built-in heating element, I have to microwave water first, and the resulting coffee isn’t as hot as I’d like.
  • Krups Moka Brew – the easiest way to brew something that tastes like an Americano, which is an American-style coffee made with espresso and hot water.  Pretty easy to clean, produces a lot of coffee at once, and it has a built-in heater.  That’s a pro and a con – it means the coffee can taste burnt after it sits on the hot carafe for a few minutes.
  • AeroPress atop a Microsoft mug – the AeroPress looks like a gimmick when you first see it, but it produces the very best coffee I’ve ever had outside of a cafe.  Nothing else in my arsenal even comes close.  Big props to Adam Machanic (Blog@AdamMachanic) for telling me about this.  Fast brew times, absurdly easy to clean, great coffee – but only one cup at a time.

The AeroPress produces by far – by FAR – the best coffee, but when I get up in the morning, I fire up the Krups Moka Brew and make a pot.  I sacrifice flavor for ease-of-use, because I need more than one cup and I’m trying to get a lot done in a short amount of time.  I need to feed the dog, take her for a walk, check my emails, cook breakfast – okay, well, assemble breakfast, which usually consists of granola and yogurt.  I want to brew enough for me to have a couple of cups, plus Erika needs a couple of cups, plus a cup to-go for work.

Every now and then, in the afternoon, I’ll brew a cup of coffee with the Aeropress and savor every sip.  The rest of the time, though, I just can’t afford to micromanage my coffee one cup at a time to get it absolutely right.

That’s Why I Love Virtualization, Too

Most of the time, I need to get a database server up and running as easily as possible.  I don’t want to completely sacrifice all semblance of security, performance, and manageability, but I don’t have all the time in the world.  I can’t usually fine-tune every hardware setting like SAN multipathing, network card load balancing, failover protection with clustering, and so forth.  I just need a core set of basic hardware up and running to service the company’s needs.

I deploy a virtual server with a few mouse clicks, and presto, we’re off and running.

If I need high availability, disaster recovery, snapshot backups, or any number of common datacenter features, I just tell my virtualization sysadmin, and they’re handled.  Even better, they’re handled exactly the same way across all of the company’s servers, which makes management easier.  Don’t get me wrong, I still double-check what they do – like Ronald Reagan said, “Trust, but verify.”

When I need to wring every last bit of flavor performance out of a SQL Server, then sure, I build a finely crafted physical server for it.  But the rest of the time, I use virtualization by default, because it’s gotten good enough.

I’m kicking things off on my SQLskills blog with a virtualization series.  Visit me there, or subscribe to my SQLskills RSS feed, or subscribe to my SQLskills posts via email.  Enjoy!

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

Website - Twitter - Facebook - More Posts

Register for SQLBits in England – Space Running Out!

If you deal with VMware, Hyper-V, SANs, and SQL Server, come check out my pre-conference session at SQLBits in York, England on Thursday, September 30th.  My all-day session is called, “Virtualization, SAN, and SQL Server: The Perfect Storm.”

This will be a fun, intimate session – it’s limited to 40 people max, and we’ve got a few spots left.  Here’s the abstract:

Virtualization, SAN, and SQL Server: The Perfect Storm

Each of these things alone is tough enough to manage, but when you start to combine them, the forecast calls for rogue waves of bad performance.  Metrics like CPU % and disk queue length just don’t mean anything anymore.  No matter what numbers you hand your virtualization sysadmins, Windows admins, or SAN admins, they all say the same thing: “It’s a SQL Server problem.”

Learn how to fight back as Brent Ozar, Microsoft Certified Master, exposes some surprising truths like:

  • What metrics can prove it’s not a SQL Server problem
  • Why you might not want to separate your data and log files onto different drives
  • How to double-check to make sure the other guys are doing their job
  • The crucial configuration choices that can doom your SQL Server performance from the start

By the end of this session, you’ll be able to walk back into your office, gather statistics and configurations, and give your sysadmins and SAN admins the information they need to fix performance problems on their end.

For £450, you get my all-day pre-con session on Thursday plus full days of training on Friday and Saturday too!  Check out the SQLBits agenda, which includes sessions like:

  • Understanding SARGability – Rob Farley is one of the funniest guys you’ll ever meet, and his sessions get rave reviews.  Once you understand SARGability, you’re much more equipped to troubleshoot slow queries.
  • SQLDiag and SQLNexus – these two completely free tools will change the way you do performance tuning.  Microsoft Certified Master Christian Bolton, the lead author of Professional SQL Server 2008 Internals and Troubleshooting, will explain how to use ‘em.  His company, Coeo, is even giving away a free Fusion-IO drive during SQLBits!
  • Introduction to Extended Events – this new tool in SQL Server 2008 doesn’t get much press because it’s a pain in the rear to get started with.  Jonathan Kehayias is the man to show you how because he wrote the free SSMS Extended Events Manager, a tool that’s been featured in SQL Server Magazine.

This event has speakers from around the world including Brad McGehee, Buck Woody, Kevin Kline, Thomas Kejser, and more.  This is the cheapest way to see the best people in one place in Europe, and it’s in a fun, relaxed atmosphere where you can have plenty of discussions with the speakers.  To see what the shorter sessions look like, check out one of my sessions from my last SQLBits:

Register now and choose Full Conference, and you can pick my session as your pre-con.  Register fast – we’re running out of seats!

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

Website - Twitter - Facebook - More Posts

Virtualization and SAN Basics for DBAs Webcast Today

At 11AM Eastern, I’m giving a free webcast on Virtualization and SAN Basics for SQL Server database administrators.  Here’s a few links for attendees:

By the end of the day, the archive will be available here – at the bottom of the page, next to our race car book, there will be a link that says View Recording.  Click it.  Become smarter.

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

Website - Twitter - Facebook - More Posts

Listen Up! I’m on the Virtumania Podcast

Pause that Lady Gaga for a minute and head over to Virtumania.  It’s a casual, hour-long conversation podcast that usually focuses on virtualization and storage.  This week, I’m along for the ride with:

We discussed SQL 2008 R2′s new DAC Pack, why I think you shouldn’t cluster virtual SQL Servers, and why you should virtualize your SQL Server 2000 boxes.  Head on over to listen!

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

Website - Twitter - Facebook - More Posts

Knowing the Relative Value of Databases

All databases are not created equal.

Over the last couple of years, IT management pressured database administrators to cut hardware costs and licensing costs.  We had a few choices:

  • Consolidation – take databases that used to live on separate SQL Server instances and merge them onto one
  • Instance stacking – install multiple SQL Server instances onto less operating systems
  • Virtualization – keep the SQL Server instances separate, but merge their OS’s onto less hosts by turning them into virtual servers

All of these have their pros and cons, as I discussed with Kevin Kline and Ron Talmage on a Quest webcast last year.  (You can watch the recorded webcast for free.)

The bottom line, though, is that all of them end up with multiple databases sharing less physical hardware.  The more databases we have on a server – whether virtual or physical – the more we have to monitor the resource utilization of each database.  SQL Server doesn’t know which databases are more valuable to the business, or if one database is supposed to be more active than other databases.

When Tuning, Look for Greedy Databases

When I start tuning a server with more than a handful of databases, I like running Louis Davidson’s file stats DMV query.  It lists each database file and the basic IO stats like number of reads & writes, size of reads & writes, and IO stalls.  I don’t look for specific thresholds, but rather an imbalance – is one database dominating the IO?

There's Your Problem

There's Your Problem

If I see one database absolutely dwarfing the read/write statistics of other databases, I bring that to the attention of the server manager.  To drive the point home, I copy the query output into Excel and whip up a quick graph.  In the example shown here, one particular database was responsible for 88% of the reads on the server – more than all of the other >80 databases combined.

I’ve changed the database names to protect the innocent, but the one database was a enterprise-wide monitoring program’s repository (and no, it wasn’t a Quest product.)  While that database did have a legit business value, it didn’t justify draining the server’s resources.  In comparison, the Sales and SalesHistory databases (not really their names, but renamed for illustration) only used around 3% each.  Those two databases had a vastly higher business value, and they were suffering due to the monitoring application.

The IT team had done the right thing by consolidating databases down to less servers, and when they needed a home for the new monitoring software repository, they used a shared instance.  At first everything went fine, but over time the repository’s needs dwarfed even the mission-critical sales application.

The problem turned into more than just storage; since the monitoring app was doing a stunning amount of reads, it was pushing memory out of SQL Server’s buffers.  The page life expectancy metric – the length of time data stays in the buffer cache – was averaging under 10 seconds.  For reference, Microsoft recommends this metric be 180 seconds (3 minutes) or higher.  Clearly, we were running into a problem with this database.

So how do we mitigate it?  In my Perfmon & Profiler 101 presentation, I talk about defining “mitigations”, not fixes, because sometimes we can only afford to duct tape the problem.

Option 1: Fix the Database

Ideally, I’d pop the hood on the database, rework the indexing strategy, and help improve the performance of the queries.  However, this was a third-party application with a sealed hood – no query changes here.

We could build a list of recommended changes for the vendor, but you know how those vendors are.  They never listen to anybody, do they?  <sigh>  I know, I know.

Option 2: Move the Database to a Standalone Server

Since the database was a non-mission-critical app, we could build a new SQL Server – preferably a Standard Edition box (as opposed to the pricey Enterprise Edition box it was sharing) with cheap storage.  No matter how much money that we’d throw at the hardware, the application still wouldn’t perform well, so it wouldn’t make sense to buy an expensive box.

We could also move it to a new virtual server and use our hypervisor’s resource throttling to minimize the impact on other servers.  Some hypervisors can set a “max” amount for CPU, memory and storage throughput for a given virtual server.

Option 3: Move the Database to a New Instance

We could install a separate instance of SQL Server onto this existing server and set its max memory to just a couple of gigabytes.  That way, it would only penalize itself for bad performance.  We should also use a separate drive array for this database so that its IO performance wouldn’t take down other databases.

Unfortunately, since this server was on the SAN, this database’s IO would still be traveling over the same Host Bus Adapters (HBAs) that the other databases used to access their data.  Depending on the quantity of IO, this could still present a bottleneck.

Option 4: Throw Money at the Shared Server

We could upgrade the bejeezus out of the memory and storage used by the SQL Server.  This would speed up the monitoring application along with the other applications on the server.  However, since the monitoring app ran 24/7, the other apps would never really see the full benefit of the additional hardware.

Which Option is Right for You?

Making the right choice requires knowing the business value of the resource-intensive database.  If you don’t know what the database is used for, email your management with a copy of your pie chart and let them decide.

In this particular case, the client chose to move the database to its own server.  The results speak for themselves – the server did 93% less reads per second on the data drive, meaning less IO saturation:

Google Chart

And page life expectancy, the length of time data stays in memory after it’s read off the disk, improved almost 100x:

Google Chart

The server was suddenly more responsive, more usable, and the mission-critical applications started flying again.  Mr. Nastydatabase was confined to his own sandbox, hurting no one else but himself until he could learn to play well with others.

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

Website - Twitter - Facebook - More Posts

What do you want to know about virtualization?

The PASS Virtualization Virtual Chapter is working with virtualization vendors to build an FAQ, and we’re going to hand it out at the PASS Summit in November.  We’re also working on a unique Q&A panel event talking about SQL Server & virtualization – more on that shortly.

We’ve put together a one-page (well, one long page) survey asking:

  • Have you virtualized dev, production, DR, large database servers?
  • If you’ve virtualized SQL Server, what’s been the biggest benefit?
  • If you haven’t, what’s the biggest barrier?
  • What information do you need to confidently virtualize SQL Server?
  • What significant problems do virtualization vendors still have to solve?
  • Have you got any databases you’d like to virtualize, but the 3rd-party-vendor won’t support it?
  • What webcast topics would you like to see covered?

You can take the survey here.  We’d really appreciate your help.  Thanks!

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

Website - Twitter - Facebook - More Posts

Laptop Virtualization Best Practices – And a Contest!

Whether you’re using Windows or a Mac, if you’re thinking about using virtualization for the first time on your laptop to test out new operating systems like Windows 7 or Windows 2008 R2, there’s a few things you should know.

Get Another Hard Drive

Drive Bay

Drive Bay

Laptop drives aren’t quick to begin with, and running two operating systems simultaneously doesn’t make life any easier for your pokey drive.

Your laptop probably has a removable CD/DVD drive, and that drive bay slot is designed to hold more than just optical drives.  You can pick up a hard drive caddy that slides into that same slot.  Check your laptop’s hardware manual for the exact part number, and then search Ebay for that part number.  Drive bay caddies are usually available for around $20-$40.

Apple Macbook users can swap out their internal drives with the MCE OptiBay drive adapter too.  This voids the daylights out of your warranty, but it’s not as hard as it looks.  I just went through this process with my own Macbook Pro, and I recommend it highly – I have a review of that coming soon.

Pay close attention to the caddy bay specs, and then order a hard drive to match.  Most laptop bay caddies take either a PATA or SATA 2.5″ laptop drive.  Some high-capacity 2.5″ hard drives are a non-standard 12.5mm high instead of 9mm, so make sure you don’t get a drive that’s too thick to fit inside your caddy.  Buy the fastest (not the largest) drive you can afford.  I use the 2.5″ performance test charts at TomsHardware for reference, and the current king-of-the-hill on performance per watt is the Seagate Momentus 5400.6 for around $90.

USB Piggyback Drive

USB Piggyback Drive

If your laptop doesn’t have a drive bay adapter or if you’re not willing to give up that trusty CD/DVD drive, you can also use an external USB hard drive.  Just make sure to get one of the 2.5″ models that doesn’t require external power – the less cables you have to carry, the better.  Then mount it on the back of your laptop display using Velcro tape.  Presto, you can detach it and reattach it whenever you need to pack the laptop into a tight case.

After installation, Windows will see this as just another hard drive that you can partition and format.  When you build virtual machines, store them on this secondary hard drive.  Bonus points for backing up your important files there, too.

Get As Much Memory As Possible

The more memory you have, the better.  I’d consider 4gb the minimum to comfortably run two Windows OS’s simultaneously no matter what virtualization software you’re using.

To find out how much memory your laptop can handle, use the memory configuration tool at Crucial.com.

When It Comes to Virtual CPUs, Less Is More

When building your guest OS’s, always set them up with just one CPU.  Virtualization CPU scheduling has a gotcha: if your virtual OS is set up with two CPUs, then the hypervisor’s scheduler will wait until two cores are available before doing any work in the guest – even if the guest only needs to do one core’s worth of work.  This same concept holds true at the server-level too – don’t set up your ESX guests with 4 CPUs just because you can.

Understand Virtual Networking Modes

The various flavors of hypervisors have three basic network modes for guests:

  • Bridged Networking – aka Home Office Mode. This is the one you’re going to think you want, because each virtual machine gets its own TCP/IP address directly from your home router just like your host machine does.
  • Network Address Translation – aka Starbucks Mode. The hypervisor acts as a little router, and it assigns unique TCP/IP addresses to each guest.  The guests aren’t on the public network directly, but they can access network resources just fine.  This is my favorite because I can switch back and forth between different networks without the guest servers wigging out.  I can suspend them to disk at home, then wake them up at Starbucks and nothing changes.  I highly recommend this mode, especially since it’s easy to switch back and forth between this and…
  • Host-Only Networking – aka Tin Foil Hat Mode. Like Starbucks Mode, each guest gets its own internal TCP/IP address on your laptop’s private network, but there’s no communication with the outside.  This is good for testing software that might have conflicts with other stuff on your network, and it’s also good when you’re on a slow network.  When I’m using my aircard and I don’t have a good signal, I’ll boot up my guests in Host-Only mode so that they don’t try to connect to Microsoft to download updates or anything else that might suck up my precious bandwidth.

Back Up Your Virtual Hard Drives

Installing the Windows guest, configuring it the way you want it, and patching it takes hours.  After you’re done – but before you install any third party software – shut it down and copy the flat files to another directory.

When you want to spin up a new virtual server, just make another copy of those flat files and import them into your hypervisor.  The methods are slightly different depending on what virtualization software you’re using, but all of them are much easier than reinstalling Windows from scratch and patching it.

That’s it for my tips – if you’ve got more to share, feel free to leave ‘em in the comments for other folks to get started easier.

Hard Drives, Get Your Hard Drives Here

Hard Drives, Get Your Hard Drives Here

Oh, And the Contest! Want a Free 120GB 2.5″ USB Drive?

I’m moving to Chicago soon, and I need your help.  I need to clean out my home office, but I hate throwing gadgets away.  Time to give away some of my extra goodies.

Today, since we’re talkin’ USB drives, let’s give those away.  I’ve got two self-powered USB 2.5″ hard drives, both 120 gigs, both exceedingly stylish.  One is a speaker’s gift from the PASS Summit last year, and one is a leather-bound hard drive.  (I have very strange tastes in USB devices.)

To win, just leave a comment here.  Only one comment per person, please.  I’ll draw two comments at random on Saturday Sept 12th at 7AM EST and announce ‘em here.  Good luck!

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

Website - Twitter - Facebook - More Posts

Blogs About Virtualization for DBAs

It’s hard for DBAs to find good virtualization information.

We end up reading brochures and whitepapers trying to figure out the best way to virtualize our database servers.  We don’t have the time to sift through the entire blogosphere to figure out what’s relevant for DBAs.

pass_logoAt the Virtualization Virtual Chapter of the Professional Association for SQL Server (PASS), we’re working to change that, and we’ve got some fantastic people helping.  These are some of the top bloggers in the virtualization world today:

These guys blog about virtualization in general, and their material can get pretty technical. I love reading about how Cisco’s new blade system works, for example, but I know most of you don’t have the time to sift through that much information.  That’s why I contacted these guys and asked if they’d be willing to syndicate their beginner-level virtualization stuff and their DBA-related posts in one place.

Starting today, you can get the latest DBA-focused virtualization news, tips and tricks in whatever way works best for you:

One more thing – I know this first group of bloggers (including me and Jorge Segarra) is pretty VMware-focused, but I couldn’t find any Hyper-V blogs outside of the official Microsoft one!  If you know of one, or if you’ve got a favorite virtualization blog, let me know.  We’re open to syndicating any high-quality virtualization blog that will help the DBA community.

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

Website - Twitter - Facebook - More Posts

Virtualization Isn’t The Answer To Sprawl

Denis Gobo (BlogTwitter) wrote an article yesterday about SQL Server sprawl – the problem of database servers popping up from under desks, datacenter corners, and developer cubicles.  Part of the problem stems from SQL Server 2005 and earlier not requiring a license key, so they didn’t need a keygen hack or fake serial number.  Simply pop in the SQL Server CD, and next thing you know, there’s a new mission-critical part of the infrastructure.

SQL Server 2008 helps to slow down sprawl by requiring an installation key.  There’s still a free 180-day evaluation version of SQL Server that anyone can download, and it comes with built-in temporary registration numbers.  That doesn’t stop SQL Server sprawl altogether, but rather turns the problem into SQL Server time bombs.

Virtualization might seem like a solution because we can take these rogue instances out from under desks and put them in the datacenter.  Systems management software companies (Quest included) provide Physical-To-Virtual (P2V) converters that will make the process easier, and I’ve blogged about how to kill the dinosaurs with P2Vs.

When your company becomes really successful with virtualization, however, it turns out that virtualization makes the problem even worse!  Virtualization empowers sysadmins to quickly roll out new virtual machines based on templates.  In a matter of minutes, you can have a completely new Windows machine ready – perfect for use as a development server, testbed server, or proof-of-concept server.  Heck – it’s even easier than slapping SQL Server on a leftover machine under your desktop!

And that right there sums up the problem.

Suddenly it’s even easier to provision all-new servers.  Be careful with that licensing….

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

Website - Twitter - Facebook - More Posts

Meet the #SQLPass Hypervisors

I got an awesome group of responses for the initial PASS Virtualization Virtual Chapter.  I wish I could have taken everybody, but you know what happens when you have a committee with too many people: nothing gets done.  (Come to think of it, nothing gets done on committees period…)

Meet the Hypervisors, also known as the founding members:

Here’s what we’re working on first:

Work with Blythe Morrow to set up our web site. PASS uses DotNetNuke to host their site, and we’ll get our own subdomain with our own look & feel.  We get to pick what we want on the site and how it works.  Blythe’s got ideas on how to help, and she’s got experience from working with the other virtual chapters.  We need to work with her to figure out what we can put on there.

Build a schedule for meetings. We need to pick dates for monthly chapter-wide meetings.  These are not status meetings with just us, but chapter-wide meetings where someone talks about a virtualization/SQL topic and lots of people fall asleep listening.  We’ll need to recruit speakers.  I’ll speak at the first one to talk about what we’re doing, and that’ll buy us some time.

Figure out how to record & web-enable LiveMeetings. The PASS virtual chapters use LiveMeeting to hold their meetings, and I want to start recording ours and putting the archives up on the web site.  I want them to be playable through the web browser like I do with my SQLServerPedia tutorials and I want users to be able to comment on the videos & ask questions.  I also want sharks with friggin’ laser beams on their heads.

Build a policy for working with virtualization vendors. The virtualization market is rough-and-tumble right now.  There’s a lot of nasty subliminal marketing going on with vendors slinging mud at each other.  I want to make sure we don’t get dirty, but at the same time, I want to us to be the gatekeepers for the SQL community.  We can help each vendor get training material out to DBAs on the right way to configure virtualization for performance.  Before we let them get to first base, though, we need a list of what we’re willing to do and what we’re not gonna do.

I’ve really appreciated the work Andy Warren‘s put into keeping PASS transparent by blogging status updates, and I’ll do my best to keep up that same level of transparency with us too.

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

Website - Twitter - Facebook - More Posts