Tag Archive for 'beat-vontobel'

MySQL Conference and Expo 2008, Day One

Today is the first day at the conference (aside from the tutorials, which were yesterday). Here’s what I went to:

New Subquery Optimizations in 6.0

By Sergey Petrunia. This was a similar session to one I went to last year. MySQL has a few cases where subqueries are badly optimized, and this session went into the details of how this is being addressed in MySQL 6.0. There are several new optimization techniques for all types of subqueries, such as inside-out subqueries, materialization, and converting to joins. The optimizations apply to scalar subqueries and subqueries in the FROM clause. Performance results are very good, depending on which data you choose to illustrate. The overall point is that the worst-case subquery nastiness should be resolved. I’m speaking of WHERE NOT IN(SELECT…) and friends. It remains to be seen how this shakes out as 6.0 matures, and what edge cases will pop up.

The Lost Art Of the Self Join

This was just great. Among many other things, Beat Vontobel showed how a Su Doku can be solved entirely with declarative queries: a very large self-join query against a table of digits and a table of the board’s initial state. I had been promoting this session because last year’s was so very good. I can’t wait to see what he comes up with for next year. Can he find another creative idea? Time will tell.

He wasn’t able to solve a 9×9 puzzle with MySQL because of the limitation on the number of joins, but PostgreSQL had no trouble doing it.

EXPLAIN Demystified

This was my session, of course. (Slides will be on the O’Reilly conference site, if they aren’t already). It went great, I thought. The room was full and people were standing in the back of the room and in the door. The questions came fast and furious; all really good questions. I think we ended up exploring a lot of the MySQL query execution method, strengths, and weaknesses by the time we were through. And I gave away all the remaining Maatkit t-shirts. Hopefully the people who took them will wear them tomorrow and the conference will be sea of deep, rich red shirts.

Someone did an audio recording of the session, but I don’t recall who it was.

Investigating InnoDB Scalability Limits

This session was given by Peter Zaitsev (disclosure: I now work for Percona, the company he co-founded). Peter and Vadim Tkachenko spent a lot of time over the last weeks and months running a dizzying array of benchmarks on MySQL 5.0.22, 5.0.51, and 5.1.24 (if I recall the versions correctly). They were able to show InnoDB’s scaling patterns for a number of different micro-benchmarks on a variety of configurations. If you didn’t attend, please look up the slides if you care about InnoDB performance. A lot of work went into the benchmarks — a lot of work. The slides should be on the conference website or on our blog, http://www.mysqlperformanceblog.com/.

Replication Tricks and Tips

Lars Thalmann and Mats Kindahl gave this session. At a high level, I’d say it was a run-down of all the different ways you can use MySQL replication. Replication is really a flexible tool, and they covered a large array of the most important ways you can use it to achieve different purposes. Many of the techniques they mentioned are implemented by various tools in Maatkit. A couple of the others are implemented in MySQL Master Master Manager and MySQL Semi Multi-Master tools. Don’t re-code these! You can save weeks of work and get quality code by using the pre-built tools. (I built Maatkit, so I know exactly how tricky it is to get some of these things right.)

BoF Sessions

I dropped in on a few BoF sessions, including the Sphinx one and the PBXT/Blob Streaming one. (Keep an eye on the PrimeBase folks — they are up to great things.) Ronald Bradford protected me from those who wanted to get me drunk. Hint: it’s really easy… I have to say, though, Monty’s black vodka was amazing.

Speaking of Blob Streaming, Paul McCullagh and I were talking earlier in the day about the project’s name, MyBS. This has been smirked about a few times. I think it’s a great name, because after all my initials are BS (I usually insert one of my four middle names in to alleviate this problem, but I digress). The conversation went like this:

Me: I like it. My initials are BS.

Paul: BS actually means British Standard, so it can’t be bad.

Me: Better than American Standard. That’s a toilet.

We also debated the merits of watching the original move The Blob. It’s a classic. It must be good.

Technorati Tags:, , , , , , , , , , , , , , ,

You might also like:

  1. Like it or not, it is the MySQL Conference and Expo
  2. Speed up your MySQL replication slaves
  3. MySQL Conference and Expo 2008, Day Three
  4. Baron Schwartz on a podcast at MySQL Conference and Expo 2008
  5. MySQL Conference and Expo 2008, Day Two

Sessions I want to see at the MySQL Conference

This year’s conference has a great lineup. As usual, with 8 sessions concurrently, it’s impossible to pick which ones I want to see. However, I did learn a few things from last year’s conference, which I think will help me get more out of it this time.

Number one rule: not all sessions are created equal. I can’t say for sure, but I’m pretty sure that when you see “How Product X Will Scale Your Databases” presented by a person from Company X, you can reasonably suspect that Company X is paying for this privilege, and it’s not really a session as much as a product demo. These sessions were not reviewed and voted on by the community (I know, because I was one of the community members who were asked to review and vote on proposals. Maybe I’m being a whistle-blower and won’t get this honor next year as a result…)

Number two rule: if the description is vague, or if it sounds like regurgitation, I’m skeptical. For example, if the summary starts off by saying “Today’s databases are dealing with more data than ever before. Data is mission-critical to today’s business enterprises” they lost me already. Writing that in a session description betrays thoughtlessness.

There actually are a couple of time slots that I am not really zinged about any of the sessions, and wish that I could see one of the sessions that’s happening while I’m presenting myself instead. But for the most part, there’s more goodness than I can actually take in.

This year the conference website has become Web 2.0ish, in a good way. It lets you browse the schedule, and if you’re logged in, you can “star” the ones you want to see. Then you get a personal calendar of all the ones you’ve starred. Not only that, but when you look at a session, it shows you other sessions that other attendees have also starred. Pretty nice, if you’re trying to figure out which sessions to see.

Here are the sessions I’ve starred, in chronological order. It’s a little too much work for me to link to them all.

  • All Bases Covered: A Hands-on Introduction to High-availability MySQL and DRBD
  • Memcached and MySQL: Everything You Need To Know
  • New Subquery Optimizations in MySQL 6.0
  • The Lost Art of the Self Join
  • EXPLAIN Demystified
  • High Availability Landscape of MySQL
  • Disaster is Inevitable — Are You Prepared?
  • Services Oriented Architecture with PHP and MySQL
  • Database Integrity Protection with MySQL and DRBD
  • Falcon from the Beginning
  • Architecture of Maria: A New Storage Engine with a Transactional Design
  • The MySQL Query Cache
  • Grazr: Lessons Learned Building a Web 2.0 Application Using MySQL
  • Extending MySQL
  • Inside the PBXT Storage Engine
  • Helping InnoDB Scale on Servers with Many CPU Cores and Disks
  • Scaling Heavy Concurrent Writes In Real Time
  • High Availability MySQL with DRBD and Heartbeat: MTV Japan Mobile Services

I might change my mind, but these look like a pretty good start.

Rule three: ask around. You can get the scoop, and it might make you change your mind. For example, would you go see the one about the “Lost Art of the Self Join” if I wasn’t here telling you how much you don’t want to miss that one?

Rule four: go to my sessions *wink*

Technorati Tags:, ,

You might also like:

  1. My presentations at the 2008 MySQL Conference and Expo
  2. How to get your session accepted to MySQL Conference 2008
  3. Summary of beCamp 2008
  4. MySQL Conference and Expo 2008, Day One
  5. MySQL Conference and Expo 2007, Day 1

My presentations at the 2008 MySQL Conference and Expo

MySQL Conference & Expo 2008 I’ll be attending the 2008 MySQL Conference and Expo again this year, and I’m looking forward to hearing some great sessions, meeting new and old friends, and giving sessions myself. As a proposal reviewer, I looked at and voted on 250+ proposals for sessions and tutorials for this conference. There are going to be some great sessions and tutorials.[1]

If you haven’t come to the conference previously, it’s well worth your time and money, in my opinion.

I (Baron Schwartz) am giving two sessions myself, on extremely practical topics. One is the query cache, and the other is EXPLAIN. Both are the subject of many myths and misunderstandings! My goal is to remove all the programmer-speak and show you how they really work. Once you understand that, you can understand the technical terminology. (But it’s very hard to go the other direction).

I haven’t decided yet which sessions I want to attend, but I know this: I’m not going to miss seeing how Beat Vontobel solves a Su Doku puzzle with only self-joins. His session on views last year was just amazing.

Hopefully there’ll be plenty of time to sit down for meals and chats with all the people I correspond with throughout the year, but rarely get to see or talk to!

1And no, I don’t get any kickback for saying nice things about the conference. Even reviewing all those proposals was a volunteer job. And Jay Pipes tricked me into it, the rat! He told me it would be only a few hours. Haha, you can’t review 250 proposals in a few hours… I have to say though, some of them were really rewarding to read. One of them was about holding a cosmic prayer circle or something like that. Without expressing any opinion on my religion/spirituality, I did have to vote NO on that one — sorry, wrong conference.

Technorati Tags:, , , , , , ,

You might also like:

  1. Remember to sign up for MySQL Conference and Expo!
  2. Send your employees to the MySQL Conference
  3. How to get your session accepted to MySQL Conference 2008
  4. Sessions I want to see at the MySQL Conference
  5. MySQL Conference and Expo 2008, Day One

How to get your session accepted to MySQL Conference 2008

I’m on the select board of elite people who were duped into reviewing proposals for the upcoming MySQL Conference and Expo 2008, and I’m here to tell you how to get your proposal accepted. Aside from bribing me with chocolate, that is.

These are my opinions. Believe it or not, I have not been instructed how to evaluate proposals. And by the way, I have no authority to get your session accepted — I only get to say how good I think it is. (Maybe I should re-title this to “how to get me to vote for your session,” but that’s a lame headline).

Be different

Reading proposals is like reading resumes: they all look the same in some ways. Think of yourself as one in dozens of proposals, and imagine how they all blur together in my mind (don’t feel bad. Most things are a blur in my mind).

Don’t do a session on the same things everyone else has done. Get a feel for how hard it is to tell sessions apart by scanning through the list from the 2007 conference.

Dare to be different from what you’ve done before, too. If you are well-known for a particular thing, let someone else have a shot at it for a change. Stretch yourself. When I look at your session, and I see you’ve done it before, and I look on YouTube and there you are doing it again, I want to hear someone else say it.

I thought last year’s conference only covered a small fraction of the incredible depth and breadth of this highly technical subject. There were lots of things I would loved to have seen. Rather than name anything I want to see this year, I’ll name one of the best sessions I saw last year: Beat Vontobel’s session about the declarative nature of views, and how a view is to SQL what a predicate is to Prolog. Way different, way cool!

Be specific

It is not a good idea to say “more details after you accept me.” I want to know what you’re talking about, in detail, before I will give you a high mark (we rate each proposal on a number scale). I’m trying to read your proposals from the point of view of a conference attendee. That viewpoint is “I can’t decide what sessions to attend.” Again, look at last year’s conference schedule and see what it was like.

Remember to make the first dozen words or so of your proposal give a compelling reason to keep reading. That’s how conference attendees will figure out which sessions they want to attend. It also makes my job easier as a reviewer.

Be advanced

General sessions are good, but I would also really like people who are stark raving experts in something or other to blow my mind. But don’t be arrogant, and don’t expect your name to carry more weight than how specific you are with your description. Enough said.

Be basic

There are lots of people who haven’t heard introductory topics before, so I’m keen to vote for sessions about basics too; I don’t want this to be an elitist conference that doesn’t help people who haven’t been working with MySQL for a long time. Again, specificity is key; If you tell me specifically what your intro session will cover, I’m going to mark you higher than someone who just says “this session will cover introductory topics on transactions and SQL commands.” Specificity helps me figure out who’s going to do the best job with the sessions I don’t want too many of.

People who are “seasoned veterans” often have a lot less to teach me than newcomers to MySQL. Old-timers get stuck in their ways of thinking. I need to see things through a newcomer’s eyes to really learn things sometimes. So if you’re new to MySQL, please submit a proposal!

Be hoarse

If you’re going to submit a 3-hour session, you should give enough detail in your proposal that I can judge how good it’s going to be. Three hours is a long time, and the stakes are high for you, for the conference, and for the attendees. You should be covering something in great depth. Tell me what. Just as an example, if you say you’re going to walk attendees through building a sample application, tell me what the application is. “Sample application” is not sufficient.

The proposals I’ve seen for 3-hour sessions so far are about the same length and level of detail as the proposals for 45-minute sessions. That’s not enough! It needs to be about 4 times as long and give about 4 times as much detail. In my opinion, 3 hours is too risky to grant someone without knowing that they’ve done their planning and homework. Again, these are only my opinions.

Be credible

Your biography is displayed right below your proposal. I look at it when I rank your proposal. Convince me that you are qualified to give the session you’re proposing (without being arrogant, of course).

Some of the best biographies are the shortest ones. Not to pick favorites, but here’s a good example from last year:

Petr Chardin authored MySQL server log tables. While working for MySQL he also authored MySQL Instance Manager - cross-platform server, which serves for remote configuration and management of database server nodes. Petr lives in Moscow and works for Google.

That is a good bio, but not because Petr used to work for MySQL and now works for Google — it’s good because it gets to the point right away and has zero fluff.

This year the conference is using different organizing software, and you will have the opportunity to edit your bio. Do it — it will make people want to come to your session more. (Last year someone chose my bio for me and I wasn’t able to get it changed — so please don’t use my bio from last year as an example!

Be free!

Did I mention it’s probably cheaper to attend the conference if you’re a speaker? Last year’s conference was free for speakers, I believe. I have no authority over this, so maybe this year it won’t be. I’m sure someone will fill in that missing information. Hint, hint.

Don’t pay attention to me

This is the first time I’ve ever done this, so I don’t know what the heck I’m talking about. Jay Pipes or someone else from MySQL is likely to correct this blog post. Read the comments :)

I look forward to seeing your proposal, receiving chocolate in the mail, and marking your proposal as “Great.” Just kidding! I actually look forward to seeing you at the conference. Remember — you only have a few more weeks to submit! Get crackin’ now so you can plan something great and write up a killer proposal.

Technorati Tags:, , , , , , ,

You might also like:

  1. My presentations at the 2008 MySQL Conference and Expo
  2. Sessions I want to see at the MySQL Conference
  3. Remember to sign up for MySQL Conference and Expo!
  4. Send your employees to the MySQL Conference
  5. MySQL Conference and Expo 2008, Day One