{"id":1481,"date":"2009-05-05T23:33:19","date_gmt":"2009-05-06T04:33:19","guid":{"rendered":"http:\/\/www.bytebot.net\/blog\/?p=1481"},"modified":"2009-05-06T00:09:11","modified_gmt":"2009-05-06T05:09:11","slug":"barry-abrahamson-talks-about-wordpresscom-technicals","status":"publish","type":"post","link":"http:\/\/www.bytebot.net\/blog\/archives\/2009\/05\/05\/barry-abrahamson-talks-about-wordpresscom-technicals","title":{"rendered":"Barry Abrahamson, talks about WordPress.com technicals"},"content":{"rendered":"<p>While at the <a href=\"http:\/\/www.mysqlconf.com\/\">MySQL Conference<\/a>, I caught up with <a href=\"http:\/\/barry.wordpress.com\/\">Barry Abrahamson<\/a>, the systems wrangler\/de-facto DBA behind <a href=\"http:\/\/wordpress.com\">WordPress.com<\/a> (and all other <a href=\"http:\/\/automattic.com\/projects\/\">Automattic properties<\/a>). <a href=\"http:\/\/www.youtube.com\/watch?v=Yx_nTlx43GA\">Watch the video<\/a>.<\/p>\n<p><center><br \/>\n<object width=\"560\" height=\"340\"><param name=\"movie\" value=\"http:\/\/www.youtube.com\/v\/Yx_nTlx43GA&#038;hl=en&#038;fs=1\"><\/param><param name=\"allowFullScreen\" value=\"true\"><\/param><param name=\"allowscriptaccess\" value=\"always\"><\/param><\/object><br \/>\n<\/center><\/p>\n<p>You probably already know that WordPress itself is built on top of MySQL. And despite everything you might have heard about our (MySQL\/Sun&#8217;s) new founders, WordPress is <a href=\"http:\/\/ma.tt\/2009\/04\/oracle-and-open-source\/\">MySQL today<\/a>, and for the foreseeable future. Anyway, I digress.<\/p>\n<p>WordPress.com has about 70 million tables, and tens of thousands of blogs. Large amount of tables, serve for easy sharding &#8211; after all, its based on WordPress MU, which creates a table for each blog (read <a href=\"http:\/\/mu.wordpress.org\/faq\/\">does it scale?<\/a>).<\/p>\n<p>WordPress.com has a few terabytes of data in MySQL, with over 350 instances. They&#8217;re all powered by Debian servers, with MySQL.com binaries.<\/p>\n<p>Of interest to lots of folk, is WordPress stats (you get them with your own install, thanks to the Stats plugin). There is about 150GB of data for stats, that enter MySQL every month, and the data is queried multiple times a second. WordPress stats currently are based on a per day basis, but real soon now, you&#8217;ll see <b>hourly stats<\/b>. So you can even switch when your day ends, because chances are, you&#8217;re not based in GMT.<\/p>\n<p>WordPress has about 90%+ reads, so the single master multiple slaves replication methodology works well for them. They&#8217;re moving to solid state drives, which is giving them more capacity to their current SAS solutions, since its all many tables, MyISAM, and it fits their workload model really well. Moving to SSDs is interesting &#8211; if you weren&#8217;t at the MySQL Conference, you should definitely catch the video from Andreas von Bechtolsheim, titled <a href=\"http:\/\/mysqlconf.blip.tv\/file\/2037192\/\">The Solid State Storage Revolution<\/a>. Andy is a co-founder of Sun Microsystems.<\/p>\n<p>Off camera, Barry also told me that they ran HP hardware, and he gave me the tale of how <a href=\"http:\/\/blog.polldaddy.com\/2009\/04\/22\/polldaddy-just-got-a-new-heart\/\">PollDaddy got a new heart<\/a> &#8211; i.e. they moved from .NET\/SQLServer to PHP\/MySQL. <\/p>\n<p>So, here, I can&#8217;t wait for hourly stats to come to WordPress. And I&#8217;m most interested in seeing what comes out from this (via <a href=\"http:\/\/ma.tt\/2009\/04\/oracle-and-open-source\/\">Matt Mullenweg&#8217;s blog post<\/a>):<\/p>\n<blockquote><p>\nThere are some new developments in the WordPress world, namely that I think it would be possible to add support for databases other than MySQL without changing every $wpdb call or breaking any plugins or themes. It won\u2019t be easy, but the coolest stuff seldom is.\n<\/p><\/blockquote>\n<div class=\"sharedaddy sd-sharing-enabled\"><div class=\"robots-nocontent sd-block sd-social sd-social-icon-text sd-sharing\"><h3 class=\"sd-title\">Share this:<\/h3><div class=\"sd-content\"><ul><li class=\"share-email\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"\" class=\"share-email sd-button share-icon\" href=\"mailto:?subject=%5BShared%20Post%5D%20Barry%20Abrahamson%2C%20talks%20about%20Wordpress.com%20technicals&body=http%3A%2F%2Fwww.bytebot.net%2Fblog%2Farchives%2F2009%2F05%2F05%2Fbarry-abrahamson-talks-about-wordpresscom-technicals&share=email\" target=\"_blank\" title=\"Click to email a link to a friend\" data-email-share-error-title=\"Do you have email set up?\" data-email-share-error-text=\"If you&#039;re having problems sharing via email, you might not have email set up for your browser. You may need to create a new email yourself.\" data-email-share-nonce=\"8e770a6207\" data-email-share-track-url=\"http:\/\/www.bytebot.net\/blog\/archives\/2009\/05\/05\/barry-abrahamson-talks-about-wordpresscom-technicals?share=email\"><span>Email<\/span><\/a><\/li><li class=\"share-facebook\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"sharing-facebook-1481\" class=\"share-facebook sd-button share-icon\" href=\"http:\/\/www.bytebot.net\/blog\/archives\/2009\/05\/05\/barry-abrahamson-talks-about-wordpresscom-technicals?share=facebook\" target=\"_blank\" title=\"Click to share on Facebook\" ><span>Facebook<\/span><\/a><\/li><li class=\"share-linkedin\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"sharing-linkedin-1481\" class=\"share-linkedin sd-button share-icon\" href=\"http:\/\/www.bytebot.net\/blog\/archives\/2009\/05\/05\/barry-abrahamson-talks-about-wordpresscom-technicals?share=linkedin\" target=\"_blank\" title=\"Click to share on LinkedIn\" ><span>LinkedIn<\/span><\/a><\/li><li class=\"share-twitter\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"sharing-twitter-1481\" class=\"share-twitter sd-button share-icon\" href=\"http:\/\/www.bytebot.net\/blog\/archives\/2009\/05\/05\/barry-abrahamson-talks-about-wordpresscom-technicals?share=twitter\" target=\"_blank\" title=\"Click to share on Twitter\" ><span>Twitter<\/span><\/a><\/li><li class=\"share-end\"><\/li><\/ul><\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>While at the MySQL Conference, I caught up with Barry Abrahamson, the systems wrangler\/de-facto DBA behind WordPress.com (and all other Automattic properties). Watch the video. You probably already know that WordPress itself is built on top of MySQL. And despite everything you might have heard about our (MySQL\/Sun&#8217;s) new founders, WordPress is MySQL today, and [&hellip;]<\/p>\n<div class=\"sharedaddy sd-sharing-enabled\"><div class=\"robots-nocontent sd-block sd-social sd-social-icon-text sd-sharing\"><h3 class=\"sd-title\">Share this:<\/h3><div class=\"sd-content\"><ul><li class=\"share-email\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"\" class=\"share-email sd-button share-icon\" href=\"mailto:?subject=%5BShared%20Post%5D%20Barry%20Abrahamson%2C%20talks%20about%20Wordpress.com%20technicals&body=http%3A%2F%2Fwww.bytebot.net%2Fblog%2Farchives%2F2009%2F05%2F05%2Fbarry-abrahamson-talks-about-wordpresscom-technicals&share=email\" target=\"_blank\" title=\"Click to email a link to a friend\" data-email-share-error-title=\"Do you have email set up?\" data-email-share-error-text=\"If you&#039;re having problems sharing via email, you might not have email set up for your browser. You may need to create a new email yourself.\" data-email-share-nonce=\"8e770a6207\" data-email-share-track-url=\"http:\/\/www.bytebot.net\/blog\/archives\/2009\/05\/05\/barry-abrahamson-talks-about-wordpresscom-technicals?share=email\"><span>Email<\/span><\/a><\/li><li class=\"share-facebook\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"sharing-facebook-1481\" class=\"share-facebook sd-button share-icon\" href=\"http:\/\/www.bytebot.net\/blog\/archives\/2009\/05\/05\/barry-abrahamson-talks-about-wordpresscom-technicals?share=facebook\" target=\"_blank\" title=\"Click to share on Facebook\" ><span>Facebook<\/span><\/a><\/li><li class=\"share-linkedin\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"sharing-linkedin-1481\" class=\"share-linkedin sd-button share-icon\" href=\"http:\/\/www.bytebot.net\/blog\/archives\/2009\/05\/05\/barry-abrahamson-talks-about-wordpresscom-technicals?share=linkedin\" target=\"_blank\" title=\"Click to share on LinkedIn\" ><span>LinkedIn<\/span><\/a><\/li><li class=\"share-twitter\"><a rel=\"nofollow noopener noreferrer\" data-shared=\"sharing-twitter-1481\" class=\"share-twitter sd-button share-icon\" href=\"http:\/\/www.bytebot.net\/blog\/archives\/2009\/05\/05\/barry-abrahamson-talks-about-wordpresscom-technicals?share=twitter\" target=\"_blank\" title=\"Click to share on Twitter\" ><span>Twitter<\/span><\/a><\/li><li class=\"share-end\"><\/li><\/ul><\/div><\/div><\/div>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true,"jetpack_social_options":[]},"categories":[23],"tags":[183,906,839,271,513,512,212,52,907],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p4vJD-nT","jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":829,"url":"http:\/\/www.bytebot.net\/blog\/archives\/2008\/06\/01\/mod_auth_mysql-patched-to-work-with-phpass","url_meta":{"origin":1481,"position":0},"title":"mod_auth_mysql patched to work with phpass","date":"1\/6\/2008","format":false,"excerpt":"Do you use mod_auth_mysql, the Apache module that allows authentication of users to happen through a MySQL database? If so, the nice folk at Automattic (makers of fine blogging software like Wordpress) have released a patched version that works with phpass. With this, you can now have single sign on\u2026","rel":"","context":"In &quot;MySQL&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":531,"url":"http:\/\/www.bytebot.net\/blog\/archives\/2007\/04\/24\/dotorg-wordpress-eventum-visits","url_meta":{"origin":1481,"position":1},"title":"DotOrg: WordPress, Eventum visits","date":"24\/4\/2007","format":false,"excerpt":"I spoke to Matt and Barry today, and it was great to see them at the DotOrg Pavilion at the MySQL Expo, since the last time we caught up was at WordCamp 2006. Since WordCamp, Wordpress.com is now spanning something like 900,000+ registered users! That number used to be over\u2026","rel":"","context":"In &quot;MySQL&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1257,"url":"http:\/\/www.bytebot.net\/blog\/archives\/2009\/01\/06\/blob-streaming-raj-kissu-in-the-newspapers","url_meta":{"origin":1481,"position":2},"title":"BLOB streaming, Raj Kissu, in the newspapers","date":"6\/1\/2009","format":false,"excerpt":"Raj Kissu is in the papers today. He completed a Google Summer of Code 2008 project with MySQL, hacking on blob streaming for phpMyAdmin. In fact, his project was so good, he has commit access to the phpMyAdmin tree :-) Today, The Star had an article about him (and two\u2026","rel":"","context":"In &quot;MySQL&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":684,"url":"http:\/\/www.bytebot.net\/blog\/archives\/2007\/12\/18\/wordcamp-melbourne-making-money-with-wordpress-bbpress-caching-wordpress-sandbox","url_meta":{"origin":1481,"position":3},"title":"WordCamp Melbourne: making money with WordPress, bbPress, caching, WordPress Sandbox","date":"18\/12\/2007","format":false,"excerpt":"On November 17 2007, I went to the inaugural WordCamp Melbourne. It was a truly interesting event - crowded, filled to the brim, and held at the pretty amazing Watermark Bar, in Docklands. It was a really warm day, and the only complaint would be that Watermark put is in\u2026","rel":"","context":"In &quot;General&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":705,"url":"http:\/\/www.bytebot.net\/blog\/archives\/2008\/01\/28\/mysql-miniconf-starts","url_meta":{"origin":1481,"position":4},"title":"MySQL Miniconf Starts!","date":"28\/1\/2008","format":false,"excerpt":"Arjen and Stewart are on stage, and there's an introduction session going on now. We're now, introducing the ex-MySQLers (Arjen), and MySQLers (Stewart, Giuseppe, me). Trent has just walked in, so that makes all the MySQLers that are around at linux.conf.au.Highlights of some of the attendees:A user from LG, who\u2026","rel":"","context":"In &quot;MySQL&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1336,"url":"http:\/\/www.bytebot.net\/blog\/archives\/2009\/02\/19\/kde-42-brings-the-mysql-server-to-the-desktop","url_meta":{"origin":1481,"position":5},"title":"KDE 4.2 brings the MySQL server to the desktop","date":"19\/2\/2009","format":false,"excerpt":"If you're using Fedora 10, and are a KDE desktop user, you'll notice that your latest KDE 4.2 update, requires having a local MySQL server installed. This is due to Akonadi, part of the KDE PIM packages, that now rely on MySQL as a default server, for storing PIM data.\u2026","rel":"","context":"In &quot;MySQL&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"amp_enabled":true,"_links":{"self":[{"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/posts\/1481"}],"collection":[{"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/comments?post=1481"}],"version-history":[{"count":4,"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/posts\/1481\/revisions"}],"predecessor-version":[{"id":1484,"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/posts\/1481\/revisions\/1484"}],"wp:attachment":[{"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/media?parent=1481"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/categories?post=1481"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/tags?post=1481"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}