Tag Archive: mysql

My Weekly Bookmarks for October 30th

Here’s my bookmarked links for October 26th through October 30th:

SQL Server Links

#SQLPASS Links

Tech Links

The Junk Drawer

These bookmarks are automatically imported from my bookmarks at Delicious.com. If you’d like to get up-to-the-minute updates on what I’m bookmarking, you can subscribe to my bookmark RSS feed.

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

Cloud-based database thoughts before #SQLPass

Next week at the PASS Summit, I’m presenting a session called “Yes, I’m Actually Using The Cloud.” I’ll be talking about what’s out there, why I use it, and why you might want to use it too.

Brendan Cournoyer of SearchSQLServer.com interviewed me recently about the topic and asked questions like:

  • For those who are relatively unfamiliar with cloud computing, what is the case for cloud-based databases? Is it all about performance?
  • Aside from questions about security, what are some other reasons why folks might be hesitant to deploy cloud databases?
  • What about other cloud database options? Relational databases in the cloud are rare. From a SQL Server perspective, how does Azure compare to the other options that are available?

You can read my answers in the interview at SearchSQLServer.

Amazon RDS: New Azure Competitor

Today, Amazon announced a new competitor to SQL Azure: Amazon Relational Database Service.  It’s got some compelling advantages:

  • It’s basically MySQL with some added goodies. If you already know and love MySQL (I don’t know it well, so I don’t love it – yet), it’s easy to love RDS.
  • Amazon handles basic management. They do patch management, backups, restores, and export performance statistics to Amazon CloudWatch for free.  To some extent, they’re providing production database administration as part of the cost.
  • It leverages Amazon’s storage for snapshots. You just tell Amazon how many days of history you want to keep, and they handle it for you without you understanding anything about recovery.
  • Coming soon: high availability with replication. You’ll be able to replicate your MySQL databases between Amazon’s different datacenters without a fancypants database administrator.

If I was a MySQL production DBA, you’d hear my eyebrows raising.  I’d be worried about my long-term job prospects.  From here, it’s a race to the bottom.  Suddenly there’s a service out there that provides some of the same functionality that production DBAs provide, except it’s available by the hour.

What’s the Cheapest Way to Solve a Problem?

How Low Can You Go?

How Low Can You Go?

If I was the project manager for an app with a MySQL back end, you’d hear my sigh of relief.  If I could move my app to Amazon RDS, suddenly performance issues have a completely different solution.  I could either pay a MySQL DBA to find the root cause, or I could simply choose a faster/stronger/better Amazon instance size.

A “small” instance is 1 core with 1.7GB of memory.

A “quadruple extra large” instance is 8 cores with 68GB of memory.

The price difference between these two is roughly $3 per hour.

How much do you think a MySQL DBA costs?  It’s gotta be more than that.  Why would you pay a DBA if you can simply ramp up hardware capacity?  Now, of course as DBAs, we know that model doesn’t scale forever.  You can still run into performance problems at the Quadruple Extra Large instance level, but project managers will gamble that their apps will still survive long enough for Amazon to introduce faster instance power.

The Best Kind of Cloud Service

This is my favorite kind of cloud service.  It’s not vendor-specific, so you can build your app with a MySQL back end without committing to using Amazon RDS.  If Amazon pulls the plug on RDS next year, no biggie – you can still run it on any hosted MySQL service.  You can’t do that with Amazon SimpleDB, which is proprietary. Even better, Amazon RDS is full-blown MySQL, not hobbled in any way.

SQL Azure falls into an odd niche, because you can develop for it without worry.  If Microsoft pulls the plug on Azure, you can still use your app with “real” SQL Servers, because Azure is just a crippled SQL Server implementation. (That’s a good thing and a bad thing.)  However, if Azure dies off, you’re stuck with moving to SQL Server, not exactly the cheapest solution around.  Microsoft offers free-for-a-while licensing with BizSpark and WebSpark, so you can at least buy time, but sooner or later you’re going to face licensing costs.

I love announcements like this because I see it as an exciting time to be a solutions provider.  Like I blogged yesterday, DBAs are always consultants, and we need to view ourselves as providing a service.  Amazon RDS, like other tools, is something that can either compete with us or be part of our toolset.  Figure out how to use it as part of your skillset, or else you risk getting displaced by it.

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

Oracle buying Sun

Oracle is buying Sun, the owner of Java, MySQL and Solaris.

Oracle is now the enterprise equivalent of Apple: a single vendor with a start-to-finish closed loop from the hardware to the OS to the applications.

Another way to look at it: they now own a top-to-bottom development stack like Microsoft’s:

  • OS (Solaris, and no, I don’t include their rip-off of Red Hat Linux)
  • Language (Java)
  • Databases (flat files, MySQL – oh, wait, yeah, Oracle too)
  • Lots of business applications
  • Enterprise licensing savvy

I’m no analyst by any means, but it would seem like a pretty interesting investment.  I couldn’t see why IBM would be that interested in Sun, but Oracle, that makes sense.

I did get one big chuckle out of the press release line that says, “Oracle is as committed as ever to Linux and other open platforms.”  I couldn’t help but think, “Exactly – you were never that committed to Linux other than as a revenue stream for support.”  I’m probably wrong, but I just found it funny.

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

SQL Server and Cloud Links for the Week

SQL Server Links

Find Missing Indexes in Stored Procedures – Michelle Ufford, aka SQLFool on Twitter, shows how to set up a T-SQL script that will regularly monitor your server for any query plans in the cache that are missing indexes, and store that data in a table for later retrieval.  See, the dynamic management views (DMVs) that store this data don’t stick around forever, and it’s important to grab the data if it’s only available briefly.

Querying dm_exec_query_stats and dm_exec_cached_plans – Continuing with the theme from the above article, Elisabeth Redei writes about similar ways to get performance data from SQL Server without running a trace.

Best Practices for SQL Server on a SAN – Jimmy May talks about new resources from the Microsoft SQL Server Customer Advisory Team’s Mike Ruthruff.

SQL Server and Null Values Revisited – Aaron Alton explains when nulls make sense in tables.

MySQL DBA

The Original MySQL DBA

10 Things You Need to Know About MySQL Backups – “Does the backup use LOCK TABLES?”  What?  Are you serious?  There’s such a thing as a backup solution that locks all your tables while it runs?  After reading this list, all I can think of is McGyver – I bet he would have made a great MySQL DBA.  “I gotta back up this server, and all I’ve got is a coat hanger, two socks and a pound of bacon.  Let’s do this.”

T-SQL Challenge from Adam Machanic – Wanna win a full-blown MSDN subscription?  Got mad T-SQL skillz?  Adam’s running a contest that involves using a single T-SQL statement to concatenate multiple strings from AdventureWorks.  I love reading the comments and trying to reverse-engineer what the person is thinking about doing: for example, one of the commenters asked if indexes could be added.

SQL Server Object Ownership – K. Brian Kelley explains how this concept changes from SQL 2000 to 2005/2008 and gives in-depth scripts to walk through it.

When Index Seeks are Actually Index Scans – Gail Shaw explains that when you’re reading an execution plan, an index seek might still be rolling through all of the records in the index.  Don’t just dismiss “index seek” as everything being all good.

Cloud and Virtualization Links

Nothing especially interesting this week.

The Junk Drawer

Paying Down Your Technical Debt – I love this concept: as you’re building stuff, you’re amassing a technical debt with every shortcut you take.  It’s like a looming credit card debt, and sooner or later you have to pay it down or else it’s going to start costing you real money.  Performance costs money, plain and simple.

Fusion-io Solid State Drive Discussion – I mentioned the Fusion-io drive a while back because it looked like a neat technology – solid state storage via an PCI-Express card.  Their CTO David Flynn calls it a SAN in your hand (catchy) but I would note that SANs have a high level of redundancy, like multiple paths to the storage.  The Fusion-io drive is a single PCI-Express card in a single server, which makes it a very singular point of failure: if your box goes down, your data is offline.  That’s nothing like a SAN, where the data can be accessed from multiple servers (think clustering.)  I’m not saying the Fusion-io isn’t cool – it certainly looks cool – but it’s not a SAN in your hand.  Expect to see more of these types of solutions – OCZ just announced one for around $2k.

How FriendFeed uses MySQL to store schema-less data – when you’re desperate for performance, you start thinking farther and farther out of the box.  This is McGyver too, but in a cool way.

Three Kinds of Meetings – Seth Godin explains the three kinds of meetings: information, discussion, or permission.

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

Twitter for DBAs: Take Two

I recently wrote a column touting the merits of Twitter for database administrators.  The very next day, their site starting having database problems.  You can’t make this stuff up.

From Twitter’s official blog:

Q: Is it true that you only have a single master MySQL server running replication to two slaves, and the architecture doesn’t auto-switch to a hot backup when the master goes down?
A: We currently use one database for writes with multiple slaves for read queries. As many know, replication of MySQL is no easy task, so we’ve brought in MySQL experts to help us with that immediately. We’ve also ordered new machines and failover infrastructure to handle emergencies.

Q: Do you really have a grand total of three physical database machines that are POWERING ALL OF TWITTER?
A: We’ve mitigated much of this issue by using memcached, as many sites do, to minimize our reliance on a database. Our new architecture will move our reliance to a simple, elegant filesystem-based approach, rather than a collection of database. Until then, we are adding replication to handle the current growth and stresses, but we don’t plan on ever relying on a massive number of databases in the future.

Q: Is it true that the only way you can keep Twitter alive is to have somebody sit there and watch it constantly, and then manually switch databases over and re-build when one of the slaves fail?
A: There’s a lot of necessary handholding and tweaking of our current system. Nevertheless, we’re growing our operations team to meet ongoing challenges.

Wow.  I’m not going to turn this into a Microsoft SQL Server versus MySQL discussion, because I’ve seen plenty of poor MSSQL implementations too, but this is pretty sobering.

Update 7/2 – Twitter has been down a lot lately.  Sorry about that, folks, but it’s a growing dot-com.  It’s like it’s 1999 all over again.

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