<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1767548987184410343</id><updated>2011-12-12T14:13:21.443Z</updated><category term='Milan'/><category term='MySQL Proxy'/><category term='MySQL Enterprise'/><category term='MySQL 5.1'/><category term='Mysql Meetup'/><category term='Italy'/><category term='MySQL'/><category term='Marten Mickos'/><category term='webinar'/><category term='online applications'/><category term='XML'/><category term='MEvent'/><category term='TCO'/><category term='SkySQL'/><category term='FOWA'/><category term='London'/><category term='MySQL UC'/><category term='Drizzle'/><category term='MySQL User Conference'/><category term='webinar performance'/><category term='Reference Architecture'/><category term='MySQL 5.4'/><category term='Meetup'/><category term='Conference'/><category term='tuning'/><category term='Solaris'/><category term='memcached'/><category term='Oracle migration'/><category term='MySQL Build'/><category term='tip of the day'/><category term='replication'/><title type='text'>Ivan's Blog</title><subtitle type='html'>This is my personal blog. It is work related, around MySQL and the Open Source, but you may also find some personal posts.

Every comment and opinion is welcome, inappropriate and offensive remarks are not accepted.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>41</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-7582640649043301411</id><published>2011-12-09T23:05:00.001Z</published><updated>2011-12-09T23:11:36.918Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='SkySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Reference Architecture'/><title type='text'>Still blogging after all these years</title><content type='html'>&lt;!--?xml version="1.0" encoding="UTF-8" standalone="no"?--&gt;&lt;span class="Apple-style-span" style="font-family: Arial;"&gt;Or, better say, I have not blogged for so long…&lt;/span&gt;&lt;br /&gt;&lt;div style="font-family: Arial;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;What happened? Well, it has been a crazy year, probably the busiest year in my whole working life.&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;When you are in your late twenties/early thirties, you can dedicate all your energy to something, &lt;a href="http://www.skysql.com/" target="_blank"&gt;work&lt;/a&gt;, &lt;a href="http://www.imdb.com/" target="_blank"&gt;hobby&lt;/a&gt;, &lt;a href="http://www.nspcc.org.uk/" target="_blank"&gt;charity&lt;/a&gt;, &lt;a href="http://www.kungfuchang.it/" target="_blank"&gt;sport&lt;/a&gt;, study, you name it. You work hard, and every now and then you have time to lie down and recharge your batteries. In one or two days, if you can sleep 9/10 hours per day, all the tiredness you have accumulated goes away. I have felt that feeling, but in your late forties, there is no such thing anymore.&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;When you are forty and you have a family, your priorities change. You try to accommodate work, family and friends. You remove most, if not all, of the time you dedicate to yourself. You have less rest, usually not enough to recharge. The 9/10 hours you used to recharge and be up and running, ready for a new week, they become barely 6/7 hours, if you are lucky… and you feel like your head is in a constant foggy atmosphere that does not allow you to think straight. You do, but you must use more energy and it takes more time simply to get things done.&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;So, this is what happened to me. But I was used to that. Even in the weird days of the post-acquisition, when many people could not really do much business-wise, I felt pretty busy.&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;Nevertheless, I managed to enjoy this fantastic year at &lt;a href="http://www.skysql.com/" target="_blank"&gt;SkySQL&lt;/a&gt;.&amp;nbsp;2011 has superseded 2005 (the year&amp;nbsp;I joined MySQL AB), as the best year of my entire working life. Thanks to SkySQL, thanks to all my great colleagues, to all the partners, users and customers. And thanks to my family and friends, who are supporting me so much.&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;What are the plans for the future? In long term, it is hard to say, but the short term plan seems really exciting, more than ever, better than 2011. I can see so many new opportunities to use MySQL and MySQL-related products and to be involved in very cool projects. MySQL is not the only wild kid in the block anymore: PostgreSQL and the NoSQL armada are rightly claiming their space and users are adopting old and new technologies. This is good news, it repositions our technology right were it should be, leaving&amp;nbsp;PostgreSQL, HBase, Cassandra and others doing what they do better.&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;Our technology - i.e. MySQL and the MySQL Ecosystem - is evolving and improving. There is a growing demand for database systems, there is space for everybody. There is space for new projects and for integrations with the current and new infrastructures.&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;SkySQL will be more and more focused on new solutions and on new architectures. The &lt;a href="http://www.skysql.com/products/reference-architecture" target="_blank"&gt;reference architecture&lt;/a&gt; is key for these new solutions. I will blog more about in in the near future and clarify the reference architecture is and what is not.&amp;nbsp;We will offer legacy systems, we will support the standard, vanilla version of MySQL, the servers that Oracle and Percona can now provide. But we will offer more, much more. There is a whole new set of highly available systems - see my talks at various &lt;a href="http://www.sfmysql.org/" target="_blank"&gt;meetups&lt;/a&gt; in the US this week - there is a new way to integrate MySQL with other databases, and a new way to create huge data warehouses systems and compete head to head with Vertica or Greenplum, not to mention the quite outdated technologies in 11g. There is a huge demand of migration from legacy systems into the cloud, with MySQL.&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;Here is the promise - an End-Of-Year resolution, or an anticipated New Year resolution. I will share more of this experiences and the excitement of applying the open source values and technologies where until now only expensive commercial solutions were allowed. Some of my posts will be generic and will fit in here, in my personal blog. Other posts will be more MySQL specific and will be published in &lt;a href="http://mysql4all.wordpress.com/" target="_blank"&gt;MySQL4all&lt;/a&gt;.&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;The future looks bright, I hope many will enjoy the ride with me.&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;-ivan&lt;/div&gt;&lt;div style="font-family: Arial;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-7582640649043301411?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/7582640649043301411/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=7582640649043301411' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/7582640649043301411'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/7582640649043301411'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2011/12/still-blogging-after-all-these-years.html' title='Still blogging after all these years'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-8663565522254501567</id><published>2011-03-20T22:23:00.000Z</published><updated>2011-03-20T22:23:23.785Z</updated><title type='text'>Finally: MySQL Meetup in London!</title><content type='html'>&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;i&gt;Sponsored by Canonical and SkySQL, MySQL Users are going to meet again&lt;/i&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;The last meetup was nine months ago, in the "old" Sun Briefing Centre, the last event that was hosted in King William Street before Sun/Oracle closed it to concentrate the London offices and meeting rooms in Moorgate.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&amp;nbsp;On Tuesday 22 of March, we will be guests of &lt;a href="http://www.canonical.com/"&gt;Canonical&lt;/a&gt;, in their prestigious headquarters at the 27th floor of the&lt;a href="http://www.millbanktower.co.uk/"&gt; Millbank Tower&lt;/a&gt; in London. My guess is that the breathtaking views of London and the Thames will distract us for a while, but hopefully we will have enough time to go through a pretty packed agenda.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;The preliminary contents, as usual, are subject to change at the very last minute. Everybody can submit a topic, in any format - presentation, white board or simple speech - and we will devote at least 10 minutes to it, or as long as the audience is interested in discussing. Andrew Poodle and Mark Baker will be the chairmen, I am sure they will do a fantastic job.&amp;nbsp;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;For the moment, we have requests around MySQL 5.5, MariaDB and NDB/Cluster. In true MySQL meetup spirit, we will head to the Morphet Arms to continue with more specific discussions and opinions to share.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Here are all the details:&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;This is the registration page: &lt;a href="http://www.facebook.com/event.php?eid=134352579966946&amp;amp;ref=mf"&gt;http://www.facebook.com/event.php?eid=134352579966946&amp;amp;ref=mf&lt;/a&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;When:&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;Tuesday 22 March - 18.30 - 21.30&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;a href="http://maps.google.co.uk/maps?f=q&amp;amp;source=s_q&amp;amp;hl=en&amp;amp;geocode=&amp;amp;q=millbank+tower,+21-24+millbank,+london&amp;amp;aq=&amp;amp;sll=51.575789,-0.155869&amp;amp;sspn=0.327305,0.530777&amp;amp;ie=UTF8&amp;amp;hq=&amp;amp;hnear=Millbank+Tower,+21-24+Millbank,+London,+United+Kingdom&amp;amp;ll=51.491818,-0.125914&amp;amp;spn=0.010581,0.016587&amp;amp;z=16"&gt;Where&lt;/a&gt;:&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;Canonical, 27th Floor, Millbank Tower&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;21 - 24 Millbank&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;  &lt;/span&gt;London, United Kingdom&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Afterwards: &lt;a href="http://maps.google.co.uk/maps?f=q&amp;amp;hl=en&amp;amp;geocode=&amp;amp;q=Morpeth+Arms+SW1P+4RW&amp;amp;ie=UTF8&amp;amp;hq=Morpeth+Arms&amp;amp;hnear=London+SW1P+4RW,+United+Kingdom&amp;amp;ll=51.48932,-0.13278&amp;amp;spn=0.010582,0.024762&amp;amp;z=16"&gt;Morphet Arms&lt;/a&gt; - SW1P 4RW&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-8663565522254501567?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/8663565522254501567/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=8663565522254501567' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/8663565522254501567'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/8663565522254501567'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2011/03/finally-mysql-meetup-in-london.html' title='Finally: MySQL Meetup in London!'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-7871332229272941546</id><published>2010-12-15T21:28:00.000Z</published><updated>2010-12-15T21:28:23.403Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='SkySQL'/><title type='text'>SkySQL Enterprise Products and Services: Welcome to 5.5!</title><content type='html'>&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;A bit early for Christmas, or perhaps slightly delayed for Saint Lucia, &lt;a href="http://www.oracle.com/us/corporate/press/195726"&gt;MySQL 5.5 is finally GA&lt;/a&gt;. A fantastic present from Oracle for the whole MySQL Community, something that many wish unwrap and install as soon as possible.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Tomorrow, Thursday 16 December @ 9AM PT/12PM ET/1800 CET, we will present the first webinar around the offering of products and services from SkySQL. If you are interested, you can register here: &lt;a href="http://www.skysql.com/en/news-and-events/webinars"&gt;http://www.skysql.com/en/news-and-events/webinars&lt;/a&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;We have not blogged much about what SkySQL can offer to the Community and to its customers, so I think this is the occasion to understand how we operate, what is our position with regards to the main forks and distributions of MySQL (including 5.5) and which technologies we use and recommend. I think (and hope) the webinar will clarify these aspects.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;If you cannot attend, don't worry, you can always download the recording later from here: &lt;a href="http://www.skysql.com/en/news-and-events/webinars/on-demand-webinars"&gt;http://www.skysql.com/en/news-and-events/webinars/on-demand-webinars&lt;/a&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;…but you will miss the opportunity to ask some specific questions.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;See you online tomorrow!&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;-ivan&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-7871332229272941546?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/7871332229272941546/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=7871332229272941546' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/7871332229272941546'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/7871332229272941546'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2010/12/skysql-enterprise-products-and-services.html' title='SkySQL Enterprise Products and Services: Welcome to 5.5!'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-8169281339908843999</id><published>2010-11-11T00:23:00.000Z</published><updated>2010-11-11T00:23:39.347Z</updated><title type='text'>Taking off again, up high in the sky...</title><content type='html'>&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;i&gt;After my departure from Oracle, I received lots of emails and messages, people who asked me where I will land. Thanks to everybody for the kind words and the great comments. By the way, more than a landing, I am going to take off… :)&lt;/i&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;On October 29th I joined Ulf Sandberg, Kaj Arno and Mick Carney at SkySQL. I will lead the Field Services team in Europe, i. e. my team will help users and customers in designing and implementing solutions around the MySQL technology. This will be my main role but, as you may expect, in small companies (small compared to large Corporates like IBM or Oracle), you must wear many hats.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;My long term goals have not changed: I want to serve the MySQL Community of users, developers and, of course, the SkySQL customers. I want to provide the best possible advise, the best services and solutions. I will be specifically focused on these aspects:&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;b&gt;Continue to support MySQL as the de facto standard for online applications&lt;/b&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;MySQL is great for online applications, but it is far from being perfect. MySQL 5.5 and MariaDB 5.2 show significant improvements in terms of performance and scalability, more statistics and admin features. We are still a bit behind schedule with real improvements, like the adoption of new storage engines - specifically PBXT and more NoSQL-like engines.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;b&gt;Scout and implement solutions that will make MySQL really suitable for the Enterprise and ubiquitous in new areas&lt;/b&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;In one of my old posts I have explained the difference between &lt;a href="http://mysql4all.wordpress.com/2010/08/26/so-much-work-to-do"&gt;the mindset of an Enteprise-focused IT Manager &lt;/a&gt;versus an IT team devoted to the cause of open source. Part of the work to do is based on evangelisation, but there are some technical aspects to cover as well. MySQL needs some extra features to be "Entperprise-ready". "Enterprise features" are not just sophisticated features, or "all the features you may think of". They are features that are necessary to sustain Enterprise software and tools. The debate around which features are necessary is meaningless, since every Enterprise is different. There is a set of features that is quite mainstream. In particular, we need to improve:&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;- Documents and Multimedia objects handling&lt;br /&gt;- Security&lt;br /&gt;- Analytical functions and large data analysis&lt;br /&gt;- Data sharing and integration&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;These improvements are not necessarily related to deep changes in the server core. Most of the can be implemented as plugins or at a connection level. Security plug-ins, Analytical storage engines, XML functions and connectors are still valid options that can well provide great features without affecting the core of the server.&amp;nbsp;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Also, many tools for the Enterprise would simply facilitate the development and the administration of bespoken code or third party software. Tools like graphical set ups and monitoring for HA environments, replication or data migration, and so on would be incredibly helpful.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;b&gt;Promote and participate in new ideas that can make MySQL even better&lt;/b&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;If we have freedom to think, why not be open minded and think bigger? 1 out of 1,000 ideas may be a great idea! The amount of tools, engines, appliances, services, components and other products - commercial or open source - that have been developed in the last 3-4 years around MySQL is pretty amazing. Projects like Drizzle, storage engines like Infobright and Infinidb, appliances like Kickfire are great examples of these new products. Many others are incubated at the moment and they will bright soon. Some of these products can make MySQL a real success in many areas currently ruled by expensive and legacy solutions.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;b&gt;Make MySQL an affordable and inexpensive alternative to the other databases on the market&lt;/b&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;What is #1 reason to not use MySQL? Put it simply, it might not fit with the required solution. In the Enterprise market, it means that MySQL may not be certified to work with 3rd party products. In other areas it may be that other databases are the mainstream for certain projects. But IT solutions are really changing. Cloud computing is a reality and #1 database is, again, MySQL. SAAS solutions are the fastest growing products in IT and again, MySQL is becoming more and more the favourite database for a combination of robustness, reliability, performance, and obviously cost of ownership. At SkySQL, I believe I will have the opportunity to address these markets and to provide valid solutions for the Cloud and SAAS companies.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;b&gt;Maintain independence and objective views on the solutions available around MySQL&lt;/b&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Despite the suspicion of some users, my ex team and I have always provided an objective view of the possible solutions around MySQL. When we were clearly not in the right place, we simply walked away, saving everybody's time. I want to maintain this level of independence and objectiveness and even more, at SkySQL I have the opportunity to experiment even more technologies and to be 100% agnostic, under any circumstance.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Contrary to what I posted few weeks ago, I will not close this blog. izoratti.blogspot.com is my personal blog and I am going to use it to post comments and ideas. The posts will be mainly related to MySQL, but sometimes I will diverge by sharing my personal experience on other topics. mysql4all.wordpress.com is the place where I will post technical evaluations and suggestions. I will get help from other people as well&amp;nbsp; - the main objective is sharing useful information. I will also continue to work with the MySQL User Groups in UK and Italy, now more than before.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;As usual, my postings will not be very frequent. I will let many other people write great articles and share valuable information on a regular basis. Every now and then, I will pop up on Planet.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;See you soon!&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;-ivan&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-8169281339908843999?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/8169281339908843999/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=8169281339908843999' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/8169281339908843999'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/8169281339908843999'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2010/11/taking-off-again-up-high-in-sky.html' title='Taking off again, up high in the sky...'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-292978297687509443</id><published>2010-10-27T16:00:00.000+01:00</published><updated>2010-10-27T16:00:58.851+01:00</updated><title type='text'>Good night, and good luck</title><content type='html'>&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;&lt;i&gt;“We will not walk in fear of one another. We will not be driven into an age of unreason if we dig deep into our history and remember we are not descended from fearful men.”&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;-- Edward R. Murrow&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;When I thought about the content of this post, it came to my mind one of the movies where George Clooney is actor, director and writer. The movie is &lt;a href="http://www.imdb.com/title/tt0433383/"&gt;&lt;span style="letter-spacing: 0.0px color: #0327a2; text-decoration: underline;"&gt;Good Night and Good Luck&lt;/span&gt;&lt;/a&gt;, a great snapshot of post-war American history and a great way, in my opinion, to analyse how a modern and democratic society has evolved since then.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;On Thursday 30th of September, I resigned from Oracle. I left my role as Sales Engineering Manager in EMEA. I left my team, my colleagues and my friends but, as I said in a goodbye letter, I am taking with me all the friendship and the teaching of the 5 most beautiful years of my working life.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;It would take too long to mention all the great moments I had at MySQL/Sun/Oracle - they are far way too many. And I would not name my colleagues either, it is fair to say that all my colleagues have been fantastic, with no exception. Kaj Arno recently posted a great message in &lt;a href="http://blogs.arno.fi/isit/2010/10/03/thank-you-everyone-behind-mysql-ab/"&gt;&lt;span style="letter-spacing: 0.0px color: #0327a2; text-decoration: underline;"&gt;his blog&lt;/span&gt;&lt;/a&gt; and I cannot agree more with his comments and analysis. MySQL, in all its forms, has been a fantastic place to work. And because it has been so fantastic, and in my opinion it still is, I found it is so difficult to leave. When one has experienced such a great time and passionate work, one hardly wants to move to something different. After many years involved in the sales of closed source products, I realised how exciting it is to work in a open source environment, I breathed this sense of openness and fairness. I embraced the culture and a more relaxed approach with users, customers and colleagues, and I did not want to go back to the days of closed source.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;MySQL AB and the good old days days of the small company that owned MySQL, animated by the enthusiasm of its employees, customers and users, are over. It has been replaced by a far larger organisation, with more power and more resources, by many other company operating in the MySQL ecosystem and by a wider MySQL Community.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;Oracle now has the ability and the resources to bring MySQL into new customers and new environments, in places where MySQL AB could not get in. This ability will serve the MySQL Community and users much better that the capacity of a single, small company. It will make MySQL even more ubiquitous, expanding in different customer-based. I can guess there are some skeptic readers frowning here. Let’s wait and see, time will tell.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;If I am so optimistic about the future of MySQL at Oracle, why did I leave? I think that my personal attitude does not fit with large organisation. I believe that Oracle is a fantastic company to work for, but it is not the right place for me, at least not in the form and in the position I was.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;What's next for me? I am clearing up and closing all my tasks at the moment. My mind was rumbling with ideas, some of them were crazy, some more conservative. Watch this space, it will be soon time for another post.&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;span style="letter-spacing: 0.0px;"&gt;Good night, and good luck.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-292978297687509443?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/292978297687509443/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=292978297687509443' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/292978297687509443'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/292978297687509443'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2010/10/good-night-and-good-luck.html' title='Good night, and good luck'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-9122795169577547160</id><published>2010-09-22T01:05:00.000+01:00</published><updated>2010-09-22T01:05:37.124+01:00</updated><title type='text'>Moving to WordPress</title><content type='html'>&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;This is my last post on Blogger. I decided to move to WordPress and leave, at least for now, this blog.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;I decided to move to WordPress because I found it more suitable for my needs.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;So, from now on, you can read my posts re MySQL on &lt;a href="http://mysql4all.wordpress.com/"&gt;mysql4all.wordpress.com&lt;/a&gt;.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;My personal, non work related blog is &lt;a href="http://izoratti.wordpress.com/"&gt;izoratti.wordpress.com&lt;/a&gt;, but you may be disappointed, there is only a "Hello World!" post and I am planning to leave it like that for some time.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;All the best to Blogger!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-9122795169577547160?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/9122795169577547160/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=9122795169577547160' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/9122795169577547160'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/9122795169577547160'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2010/09/moving-to-wordpress.html' title='Moving to WordPress'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-3338427264477357153</id><published>2010-03-25T13:00:00.000Z</published><updated>2010-03-25T13:00:35.346Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='MySQL User Conference'/><category scheme='http://www.blogger.com/atom/ns#' term='MySQL UC'/><title type='text'>Ready for the User Conference?</title><content type='html'>&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;I cannot recall any significant moment of the conferences in 2002 and 2003 (simply because I was not there) but…&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;In 2005 we had MySQL 5. Peter Zaitsev was still working in the benchmark team for MySQL AB. His presentation on InnoDB performance and tuning was enlighting for many.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;In 2006 we discovered the Pluggable Storage Engine API. Jim Starkey joined MySQL AB and we announced Falcon. [A brighter note,] I have been so lucky to meet Paul McCullagh the day before the Conference. Paul is one of the nicest and most brilliant persons I have ever met.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;2007 was all around 5.1. We announced the roadmap for 6.0 and our online cross engine backup.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;In 2008 we were Sun and for the first time Marten Mickos left his place on stage of the UC to Jonathan Schwartz.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;In 2009 we had the Oracle announcement and the Percona Conference. You may describe the conference in many way, it certainly wasn't boring!&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;And now, 2010. Another User Conference with tremendous content. It's an incredible occasion to learn from the key players at MySQL and in the MySQL ecosystem.&amp;nbsp;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;I will present at the User Conference. For once, I am back to my roots, i.e. Data Warehousing and Business Intelligence. DW projects filled my working life from 1994 until 2005.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Do not expect any elegant fragment of C code that may improve the performance of your DB 100x (or it may crash all your servers). You'll see just real life ideas and solutions on how to use MySQL in Data Warehousing and in a typical (is there one really?) Business Intelligence environment. And perhaps you have already implemented something similar, or something that suits you better, but hey, sharing is the main point here.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;This presentation at the UC is just the beginning of a series. More to come, since this is a hot topic and users are asking more and more from MySQL in this sector. They want to use MySQL in BI in many, many ways. Some are simply looking for a reporting platform - you replicate your data and there you, you execute some reports. Others have more specific needs and they must transform their data into information, in a typical BI style. Some others are Enterprises with large data warehouses and they see MySQL as the perfect data mart engine. These topics and more in my presentation at the UC.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;If you are part of the local London MySQL group and you can't travel to CA, don't worry, we will a series of meetups and they are likely to be recorded and presented in other cities as well.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;In any case, I hope to see you at the UC. Check the message board for some Euro spots!&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-3338427264477357153?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/3338427264477357153/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=3338427264477357153' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/3338427264477357153'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/3338427264477357153'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2010/03/ready-for-user-conference.html' title='Ready for the User Conference?'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-5035018999494195794</id><published>2010-03-20T09:36:00.002Z</published><updated>2010-03-20T09:36:24.371Z</updated><title type='text'>Back to MySQL</title><content type='html'>&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Yes, it's been a while. I did not blog for quite a long time. In April, I posted an article on MySQL on Solaris, and with that article I meant to go back to my regular blogging, i.e. writing an article every week or so. Soon after that article, I took responsibility of the European Presales team for Sun Software, Application Server Platform to be precise. APS included MySQL, the Identity Management software, SOA products, Glassfish and Java. This job was very similar to what I used to do between 1998 and 2002 and I was really excited to work with a large team again.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Now that we are part of Oracle, I am back to my original role MySQL, in the European Presales team, now called Sales Consulting.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;It's really nice to be back. I really missed the excitement and the hands on that characterises the MySQL business. APS was a fantastic place to work and the incredibly talented people I've met are genuinely one of the best team I have ever worked with. But my soul is with databases and even more with OSS. I like the way we go to market, we approach users and customers and we design solutions. I like the debates and the passion behind important topics. In one sentence, I feel like I fit well and I am looking forward to enjoying this new ride with Oracle.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;So, next call, the User Conference. I can't see a better way to start.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Glad to be back!&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-5035018999494195794?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/5035018999494195794/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=5035018999494195794' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/5035018999494195794'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/5035018999494195794'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2010/03/back-to-mysql.html' title='Back to MySQL'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-2502165248705758708</id><published>2010-03-08T17:49:00.000Z</published><updated>2010-03-08T17:49:40.769Z</updated><title type='text'>[Finally] Slides posted for the DW Breakfast in London</title><content type='html'>It took a while, but &lt;a href="http://www.slideshare.net/izoratti/mysql-dw-breakfast"&gt;here they are&lt;/a&gt;. We have posted only the slides from Sun/MySQL, since the other material is copyright by Infobright and Talend.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-2502165248705758708?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/2502165248705758708/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=2502165248705758708' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/2502165248705758708'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/2502165248705758708'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2010/03/finally-slides-posted-for-dw-breakfast.html' title='[Finally] Slides posted for the DW Breakfast in London'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-6200242704946663984</id><published>2010-01-30T11:19:00.000Z</published><updated>2010-01-30T11:19:10.230Z</updated><title type='text'>MySQL Data Warehouse Breakfast</title><content type='html'>&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Do you think that MySQL is only for web applications? Well, think twice. MySQL is a pure relational database and with all the features pumped up in 5.0 and 5.1 it can be a perfect data warehouse machine.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;Not convinced? Well, let me help you. Next week, on Thursday 4th of Feb to be precise, we will host a new breakfast event in London on this subject. Considering the limited space available at the venue, the event is by invitation only, but If you are around London and you are interested, you can drop me an email at ivan@mysql.com with all your details. If there are still seats available, I will be glad to grant you a pass. If you can't participate, don't worry. As usual, we will post slides and comments on the MySQL site.&amp;nbsp;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;During the event we will show you why and how MySQL can be used in a data warehouse project. I will cover this part. I will also show a basic cookbook with tips and tricks on how to set up MySQL in a DW environment.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;The other speakers will be our partners &lt;a href="http://www.infobright.com/"&gt;Infobright&lt;/a&gt; and&amp;nbsp;&lt;a href="http://www.talend.com/"&gt;Talend&lt;/a&gt;.&amp;nbsp;&lt;a href="http://www.infobright.com/"&gt;Infobright&lt;/a&gt;&amp;nbsp;will present its columnar storage engine, based on MySQL, which gives incredible performance and flexibility for data warehouses and data marts. &lt;a href="http://www.talend.com/"&gt;Talend&lt;/a&gt; will present its ETL solutions and it will show live how the products can be integrated.&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;This is not the first MySQL Breakfast that we are hosting in London. In November last year we had a HA Breakfast that generated great interest and attracted a large number of attendees. The slides of that event are available &lt;a href="http://downloads.mysql.com/presentations/2009/MySQL_HA_Breakfast.pdf"&gt;here&lt;/a&gt;.&amp;nbsp;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;I hope to see you at the event!&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px;"&gt;-ivan&lt;/div&gt;&lt;div style="color: #154eae; font: 12.0px Helvetica; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 14.0px;"&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&lt;span class="Apple-style-span" style="color: #154eae;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-6200242704946663984?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/6200242704946663984/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=6200242704946663984' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/6200242704946663984'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/6200242704946663984'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2010/01/mysql-data-warehouse-breakfast.html' title='MySQL Data Warehouse Breakfast'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-4339880697522750942</id><published>2009-08-25T12:11:00.003+01:00</published><updated>2009-08-25T12:19:09.833+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='webinar'/><title type='text'>Here We Go Again - MySQL for Online Application Series 2009</title><content type='html'>Tomorrow @10 am Central European time we will host the first part of a new series of &lt;a href="http://www.mysql.com/news-and-events/web-seminars/online-apps.html"&gt;MySQL for Online Applications&lt;/a&gt; - finally!&lt;br /&gt;&lt;br /&gt;Registrations and details are here: http://www.mysql.com/news-and-events/web-seminars/online-apps.html&lt;br /&gt;&lt;br /&gt;If you are a MySQL and webinar aficionado, you may remember the successful series that we ran in Spring 2007. Two and more years ago it was a great event, with huge participation - it is still available &lt;a href="http://www.mysql.com/news-and-events/on-demand-webinars/"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Now we have renewed the material and we have added more hints and information re HA, performance and tuning, online architectures. There is, as usual, some content for developers, for IT managers, for DBAs and for architects. I hope nobody will be disappointed.&lt;br /&gt;&lt;br /&gt;This time we will run four webinars:&lt;br /&gt;&lt;a href="http://www.mysql.com/news-and-events/web-seminars/display-409.html"&gt;Part 1 - Introduction to Scale Out and Replication Services&lt;/a&gt; (tomorrow, Wed 26th of Aug)&lt;br /&gt;&lt;a href="http://www.mysql.com/news-and-events/web-seminars/display-410.html"&gt;Part 2 - Tuning and Optimising MySQL for Maximum Performance&lt;/a&gt; (Wed 9th of Sep)&lt;br /&gt;&lt;a href="http://www.mysql.com/news-and-events/web-seminars/display-411.html"&gt;Part 3 - Advanced Tecniques for High Traffic Sites&lt;/a&gt; (Thu 17th of Sep)&lt;br /&gt;&lt;a href="http://www.mysql.com/news-and-events/web-seminars/display-412.html"&gt;Part 4 - High Availability Architectures for Online Applications&lt;/a&gt; (Tue 29th of Sep)&lt;br /&gt;&lt;br /&gt;I hope to see you all online tomorrow!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-4339880697522750942?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/4339880697522750942/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=4339880697522750942' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/4339880697522750942'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/4339880697522750942'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2009/08/here-we-go-again-mysql-for-online.html' title='Here We Go Again - MySQL for Online Application Series 2009'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-270931591889906915</id><published>2009-06-25T10:42:00.004+01:00</published><updated>2009-06-25T10:46:37.210+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Mysql Meetup'/><title type='text'>Meetup Group in Dublin, 2009-06-24</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_sTMXJNYHlpg/SkNHOdUNEtI/AAAAAAAAAIc/DEvtQS_XY88/s1600-h/Meetup.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 300px; height: 400px;" src="http://4.bp.blogspot.com/_sTMXJNYHlpg/SkNHOdUNEtI/AAAAAAAAAIc/DEvtQS_XY88/s400/Meetup.jpg" alt="" id="BLOGGER_PHOTO_ID_5351199095959392978" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Well signposted :)&lt;br /&gt;&lt;br /&gt;Thanks to echolibre for providing the content of the beers tables (in the pub schema, of course)!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-270931591889906915?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/270931591889906915/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=270931591889906915' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/270931591889906915'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/270931591889906915'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2009/06/meetup-group-in-dublin-2009-06-24.html' title='Meetup Group in Dublin, 2009-06-24'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_sTMXJNYHlpg/SkNHOdUNEtI/AAAAAAAAAIc/DEvtQS_XY88/s72-c/Meetup.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-7344301171227248520</id><published>2009-06-24T17:49:00.000+01:00</published><updated>2009-06-24T17:51:02.298+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><title type='text'>What future for MySQL customers?</title><content type='html'>Yes, that's right, I mean *customers*. What do I mean with "MySQL Customer"? I would say "users who work for companies that prefer to buy products (tech support, subscriptions to enterprise binaries, short consulting engagements etc.)" instead of going for the familiar DIY approach.&lt;br /&gt;&lt;br /&gt;Two years ago there was one and only MySQL product. There was the pluggable storage engine API, there was InnoDB outside the core development of the product and nothing else. Customers could confidently refer to a single provider, MySQL AB, to buy services and support from the creators of MySQL. Was it good for the customer? I would say yes, because the product was (and still is, of course) open source and there was a strong ecosystem and a wide adoption. But there was not much choice around: apart from relatively few strong but relatively companies, customers were in some way tied only to one provider.&lt;br /&gt;&lt;br /&gt;Last year Sun acquired MySQL AB. I would say that very little changed for current customers, but there were more opportunities to see the product adopted in new sectors. Sun brought a strong credibility for MySQL in the Enterprise. MySQL was then perceived as a serious alternative to more expensive products. I say "then perceived" because MySQL has always been a serious alternative, but not many people outside the standard MySQL comfortable zone were aware or agreed on that. I consider myself lucky because I can visit tens of users every month and I am exposed to all sorts of environments. In this scenario, I soon figured out that the open source world, the web, the social networks, the online solutions is one world; the proprietary world, the enterprise, the legacy systems and the IT departments are another world. These worlds barely communicate, they do not know each other and they rarely share the choices they make. So, back to my point, Sun opened lots of doors (and minds) to the possibility of using MySQL in new projects.&lt;br /&gt;&lt;br /&gt;Only two months ago we had the MySQL User Conference. It was a disruptive event - not in a  negative or positive way, things simply changed very quickly. The announce of an acquisition at the very same time, lots of internal and external projects (Drizzle, just to name IMO the most important one), more stable and new storage engines, improvements and more important, the Percona conference forced many people to think of the future of MySQL. Few days later, the Open Database Alliance generated even more questions.&lt;br /&gt;&lt;br /&gt;The new enterprise customers, the once outside the "comfy zone", seemed confused. They wondered about the future of MySQL, some were optimistic, some pessimistic, very few did not react.&lt;br /&gt;&lt;br /&gt;Today the community around MySQL is more active than ever. I think it's fair to say that now we have a real community, in the sense of having lots of contributions, debates and actions. There are at least 20 great projects and products that are worth to mention; these project may bring significant improvements for MySQL users. People deeply involved in the development of MySQL or in contributions are also moving from one company to another and they are bringing knowledge into new and sometimes bigger teams. In open source, it's a non sense to think that a company can loose knowledge. A company may loose the skills or a talented person, but the knowledge will stay forever and the whole community will benefit from it.&lt;br /&gt;&lt;br /&gt;So, now MySQL customers have more choice. They can use MySQL as is, they can download it from the MySQL web site, install it and use it. Or they can add/integrate/implement modules and products like DRBD, Infobright, xtradb, memcached, innodb 1.1, PBXT, Waffle, or lots of other patches and features available. They can also look at 5.4 or Drizzle, or MariaDB. And more important, customers can now see two significant changes. First, they have more choice to find the best services - consulting, training, support, subscription services, cloud systems, hosting - on the market, still with a cost that is far way lower than the one around commercial products. Second, with such an active community, they have acquired a free life insurance for MySQL and for the technology around it. There's more than any commercial product can bring on the table of a customer, at any time. And again, there is the great value of open source.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-7344301171227248520?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/7344301171227248520/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=7344301171227248520' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/7344301171227248520'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/7344301171227248520'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2009/06/what-future-for-mysql-customers.html' title='What future for MySQL customers?'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-508980551911135553</id><published>2009-05-13T14:44:00.004+01:00</published><updated>2009-05-22T23:19:52.240+01:00</updated><title type='text'>Follow the MySQL Meetup on Twitter tonight!</title><content type='html'>If you can't join us tonight for the Meetup event in London, don't &lt;br /&gt;worry, I am sure you will find lots of info and comments on Twitter.&lt;p&gt;The official tag is #mysqlldn&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-508980551911135553?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/508980551911135553/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=508980551911135553' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/508980551911135553'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/508980551911135553'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2009/05/follow-mysql-meetup-on-twitter-tonight.html' title='Follow the MySQL Meetup on Twitter tonight!'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-989340660894949481</id><published>2009-05-11T06:14:00.000+01:00</published><updated>2009-05-11T06:15:21.219+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Meetup'/><title type='text'>New Meetup Event in London</title><content type='html'>If you live near London or in the South East, mark your calendars! A new meetup event is coming this week.&lt;br /&gt;&lt;br /&gt;We will meet @6pm this Wednesday at:&lt;br /&gt;&lt;br /&gt;The Lamb&lt;br /&gt;94 Lambs Conduit St&lt;br /&gt;Bloombury&lt;br /&gt;WC1N 3LZ London&lt;br /&gt;&lt;br /&gt;From MySQL, there will be Andrew Morgan, Mark Baker and myself.&lt;br /&gt;&lt;br /&gt;As usual, there isn't a strict agenda, the main topic will probably be the outcome of the recent conferences in Santa Clara, the MySQL User Conference and the Percona Conference. We have lots of tech stuff to cover - Mysql 5.4, MySQL Cluster 7, Drizzle and Xtradb, just to mention few.&lt;br /&gt;&lt;br /&gt;I hope to see you there!&lt;br /&gt;&lt;br /&gt;-ivan&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;P.S.&lt;/span&gt; As you know, we cannot comment on the recent Oracle acquisition, so you have these options:&lt;br /&gt;A) don't ask and enjoy the evening&lt;br /&gt;B) buy us few pints and expect non-sense from us :)&lt;br /&gt;C) all of the above&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-989340660894949481?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/989340660894949481/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=989340660894949481' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/989340660894949481'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/989340660894949481'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2009/05/new-meetup-event-in-london.html' title='New Meetup Event in London'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-8495248785705901060</id><published>2009-05-09T08:04:00.012+01:00</published><updated>2009-05-09T08:59:42.003+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='MySQL 5.4'/><category scheme='http://www.blogger.com/atom/ns#' term='MySQL Build'/><category scheme='http://www.blogger.com/atom/ns#' term='Solaris'/><title type='text'>A quick test with MySQL 5.4</title><content type='html'>&lt;span style="font-family:verdana new;"&gt;&lt;br /&gt;&lt;table border="0"&gt;&lt;br /&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;Louis I&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Louis II&lt;/td&gt; &lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Louis III&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Louis IV&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Louis V&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Louis VI&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Louis VII&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Louis VIII&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Louis IX&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Louis X (dit le Hutin)&lt;/td&gt;&lt;td&gt;(the Quarrelsome)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Louis XI&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Louis XII&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Louis XIII&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Louis XIV&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Louis XV&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Louis XVI&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Louis XVII&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Louis XVIII&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;et plus personne plus rien..&lt;/td&gt;&lt;td&gt;and nobody, nothing more…&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;qu'est-ce que c'est que ces gens-là&lt;/td&gt;&lt;td&gt;what’s with those people&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;qui ne sont pas foutus&lt;/td&gt;&lt;td&gt;who can’t even&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;de compter jusqu'à vingt?&lt;/td&gt;&lt;td&gt;count up to twenty?&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Jacques Prevert&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I did a quick test with the last version on the same testbed environment that I used for my previous blog and here is my finding.&lt;br /&gt;MySQL 5.4 worked as I expected with sysbench. Performance up to 32 threads are basically the same of my build, but whilst 64 concurrent threads show a degradation in performance of the standard build and my build, with 5.4 they increase significantly, showing a pretty linear scalability - see table and graph.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new; font-size:85%;"&gt;&lt;br /&gt;&lt;table border="0" cellspacing="12"&gt;&lt;br /&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td align="center"&gt;&lt;b&gt;Threads&lt;/b&gt;&lt;/td&gt;&lt;td align="center"&gt;&lt;b&gt;5.1.33-Std&lt;/b&gt;&lt;/td&gt;&lt;td align="center"&gt;&lt;b&gt;5.1.33-IZ&lt;/b&gt;&lt;/td&gt;&lt;td align="center"&gt;&lt;b&gt;5.4&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="center"&gt;1&lt;/td&gt;&lt;td align="right"&gt;28.63&lt;/td&gt;&lt;td align="right"&gt;31.28&lt;/td&gt;&lt;td align="right"&gt;28.63&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="center"&gt;2&lt;/td&gt;&lt;td align="right"&gt;58.15&lt;/td&gt;&lt;td align="right"&gt;60.21&lt;/td&gt;&lt;td align="right"&gt;58.57&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="center"&gt;4&lt;/td&gt;&lt;td align="right"&gt;93.56&lt;/td&gt;&lt;td align="right"&gt;108.14&lt;/td&gt;&lt;td align="right"&gt;96.57&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="center"&gt;8&lt;/td&gt;&lt;td align="right"&gt;170.46&lt;/td&gt;&lt;td align="right"&gt;179.59&lt;/td&gt;&lt;td align="right"&gt;166.93&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="center"&gt;16&lt;/td&gt;&lt;td align="right"&gt;286.28&lt;/td&gt;&lt;td align="right"&gt;307.78&lt;/td&gt;&lt;td align="right"&gt;271.09&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="center"&gt;32&lt;/td&gt;&lt;td align="right"&gt;352.90&lt;/td&gt;&lt;td align="right"&gt;400.14&lt;/td&gt;&lt;td align="right"&gt;392.68&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="center"&gt;64&lt;/td&gt;&lt;td align="right"&gt;307.62&lt;/td&gt;&lt;td align="right"&gt;366.04&lt;/td&gt;&lt;td align="right"&gt;576.55&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="center"&gt;128&lt;/td&gt;&lt;td align="right"&gt;222.49&lt;/td&gt;&lt;td align="right"&gt;266.61&lt;/td&gt;&lt;td align="right"&gt;247.96&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_sTMXJNYHlpg/SgUxWIdamrI/AAAAAAAAAH8/Z4w_-paco2I/s1600-h/Picture+1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px;" src="http://2.bp.blogspot.com/_sTMXJNYHlpg/SgUxWIdamrI/AAAAAAAAAH8/Z4w_-paco2I/s400/Picture+1.png" alt="" id="BLOGGER_PHOTO_ID_5333723589987965618" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I would not recommend to go for 5.4 yet, but the results are extremely promising.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-8495248785705901060?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/8495248785705901060/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=8495248785705901060' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/8495248785705901060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/8495248785705901060'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2009/05/quick-test-with-mysql-54.html' title='A quick test with MySQL 5.4'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_sTMXJNYHlpg/SgUxWIdamrI/AAAAAAAAAH8/Z4w_-paco2I/s72-c/Picture+1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-2083254170224308530</id><published>2009-04-09T07:26:00.012+01:00</published><updated>2009-04-09T09:05:17.585+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='MySQL Build'/><category scheme='http://www.blogger.com/atom/ns#' term='Solaris'/><title type='text'>Forgive me, I am back... with 20% more performance on Solaris 10...</title><content type='html'>Yes, it's been a long time. Week after week, I had ideas I wanted to share, but no time at all to blog. Priorities are clear: family and work come first, and it's very difficult to keep a balance between the two.&lt;br /&gt;&lt;br /&gt;So I left a lot behind. The major project I worked on last summer, MySQL in a virtualised environment and with multiple instances on larger boxes, was part of the material we presented at the MySQL Customer Conference back in October. The results were pretty good and we showed a good level of scalability for real life applications, well beyond the typical sysbench results you can find by googling a bit here and there. I will blog about it at some point, it's just that it takes a lot of time to reorganise all the material to publish and make it understandable.&lt;br /&gt;&lt;br /&gt;This week the topic is slightly different. We did it again, we dug into the art of building MySQL binaries and we did it on Solaris 10 for SPARC servers.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The build&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Before going any further, a word of caution. My recommendation is always to rely on the certified binaries that our Build team provide, whether they are Community or Enterprise. But if you want to experiment and if you have time to work on extensive testing, then I suggest to have a look at some of the hints you can find on the net. Again, I have to thank my colleagues, Ritu Kamboj and Luojia Chen, for providing invaluable help and support on this matter.&lt;br /&gt;&lt;br /&gt;Back to the real stuff. I built a new version of MySQL Enterprise 5.1.32 for a customer by tweaking some config params a bit and we ended up with a boost in performance between 5% and 20% on sysbench and between 18% and 33% on the application testing.&lt;br /&gt;&lt;br /&gt;I could use a &lt;a href="http://www.sun.com/servers/coolthreads/t2000"&gt;T2000 SPARC server&lt;/a&gt; to build MySQL, running Solaris 10. I used the latest version of SunStudio 12 and I simply changed this:&lt;br /&gt;&lt;br /&gt;In the source code, the file .../storage/innobase/include/univ.i should have line 61 changed as:&lt;br /&gt;&lt;span style="font-family:courier new; font-size:85%;"&gt;&lt;br /&gt;/* MY CHANGE */&lt;br /&gt;/* # if !defined(__GNUC__) */&lt;br /&gt;# if !defined(__GNUC__) &amp;amp;&amp;amp; !defined(__SUNPRO_C)&lt;br /&gt;#  undef  UNIV_MUST_NOT_INLINE                  /* Remove compiler warning */&lt;br /&gt;#  define UNIV_MUST_NOT_INLINE&lt;br /&gt;# endif&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This is the configure command I used:&lt;br /&gt;&lt;span style="font-family:courier new; font-size:85%;"&gt;&lt;br /&gt;./configure&lt;br /&gt;'--prefix=/usr/local/mysql'&lt;br /&gt;'--localstatedir=/usr/local/mysql/data'&lt;br /&gt;'--libexecdir=/usr/local/mysql/bin'&lt;br /&gt;'--with-comment=MySQL Enterprise Server - Advanced Edition (GPL) Built by IZ'&lt;br /&gt;'--with-server-suffix=-enterprise-gpl-advanced'&lt;br /&gt;'--enable-thread-safe-client'&lt;br /&gt;'--enable-local-infile'&lt;br /&gt;'--with-mysqld-libs=-lmtmalloc'&lt;br /&gt;'--with-pic'&lt;br /&gt;'--with-client-ldflags=-static'&lt;br /&gt;'--with-mysqld-ldflags=-static'&lt;br /&gt;'--with-zlib-dir=bundled'&lt;br /&gt;'--with-big-tables'&lt;br /&gt;'--with-ssl'&lt;br /&gt;'--with-readline'&lt;br /&gt;'--with-embedded-server'&lt;br /&gt;'--with-plugins=partition,innobase,archive,blackhole,csv,federated'&lt;br /&gt;'--with-extra-charsets=complex'&lt;br /&gt;'CC=/opt/SUNWspro/bin/cc'&lt;br /&gt;'CXX=/opt/SUNWspro/bin/CC'&lt;br /&gt;'CFLAGS=-Xa -fast -xbuiltin=%all -xO4 -xstrconst -mt -m64 -xunroll=2 -xprefetch=auto -xprefetch_level=3'&lt;br /&gt;'LDFLAGS=-m64'&lt;br /&gt;'CPPFLAGS=-D_FORTEC_'&lt;br /&gt;'CXXFLAGS=-fast -xbuiltin=%all -mt -m64 -xO4 -xunroll=2 -xprefetch=auto -xprefetch_level=3 -noex -fsimple=1 -fns=no'&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Here are some comments:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;CC and CXX refer to your SunStudio 12  compiler, so you should set the right path&lt;/li&gt;&lt;li&gt;Partitioning, InnoDB, Archive, Blackhole, CSV and Federated are available (see '--with-plugins')&lt;/li&gt;&lt;li&gt;Flags -xO4 (optimisation level) and -Xa (only for the C compiler) seem to give a good improvement.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The results&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;We ran two different sets of tests, one generic and one related to the application that the customer is going to implement.&lt;br /&gt;&lt;br /&gt;The first set was based on the popular sysbench. We used InnoDB (since InnoDB is the storage engine that the customer was going to use), measuring read and write performance. The system scaled pretty well up to 64 threads - see table below - reaching 366tps with the new build against 307tps with the original build.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;b&gt;&lt;br /&gt;Threads   IZ  Std IZ vs Std&lt;/b&gt;&lt;br /&gt;1  31.28  28.63   9.26%&lt;br /&gt;2  60.21  58.15   3.54%&lt;br /&gt;4 108.14  93.56  15.58%&lt;br /&gt;8 179.59 170.46   5.36%&lt;br /&gt;16 307.78 286.28   7.51%&lt;br /&gt;32 400.14 352.90  13.39%&lt;br /&gt;64 366.04 307.62  18.99%&lt;br /&gt;128 266.61 222.49  19.83%&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;The final output on sysbench with 64 threads on the new build is here:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;sysbench&lt;br /&gt; --test=oltp&lt;br /&gt; --oltp-table-size=1000000&lt;br /&gt; --mysql-socket=/tmp/mysql.sock&lt;br /&gt; --mysql-user=root&lt;br /&gt; prepare&lt;br /&gt;&lt;br /&gt;sysbench&lt;br /&gt; --num-threads=64&lt;br /&gt; --max-requests=100000&lt;br /&gt; --test=oltp&lt;br /&gt; --oltp-table-size=1000000&lt;br /&gt; --mysql-socket=/tmp/mysql.sock&lt;br /&gt; --mysql-user=root&lt;br /&gt; run&lt;br /&gt;&lt;br /&gt;Number of threads: 64&lt;br /&gt;&lt;br /&gt;OLTP test statistics:&lt;br /&gt;   queries performed:&lt;br /&gt;       read:                            1402170&lt;br /&gt;       write:                           500775&lt;br /&gt;       other:                           200310&lt;br /&gt;       total:                           2103255&lt;br /&gt;   transactions:                        100155 (366.04 per sec.)&lt;br /&gt;   deadlocks:                           0      (0.00 per sec.)&lt;br /&gt;   read/write requests:                 1902945 (6954.84 per sec.)&lt;br /&gt;   other operations:                    200310 (732.09 per sec.)&lt;br /&gt;&lt;br /&gt;Test execution summary:&lt;br /&gt;   total time:                          273.6145s&lt;br /&gt;   total number of events:              100155&lt;br /&gt;   total time taken by event execution: 17481.6191&lt;br /&gt;   per-request statistics:&lt;br /&gt;        min:                                 40.55ms&lt;br /&gt;        avg:                                174.55ms&lt;br /&gt;        max:                               1029.61ms&lt;br /&gt;        approx.  95 percentile:             317.37ms&lt;br /&gt;Threads fairness:&lt;br /&gt;   events (avg/stddev):           1564.9219/21.04&lt;br /&gt;   execution time (avg/stddev):   273.1503/0.04&lt;br /&gt;&lt;/pre&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;In the second test, we used a large InnoDB table, with 200M rows, using approx 80GB of space. We used a relatively large buffer size (4 GB), but we measured the performance with a cold cache. This test first creates a large MyISAM temp table from the main InnoDB table, then it appends more rows on the temp table and it scans it to select and to aggregate data. The initial query is based on key access, but the cardinality is not very high and the filter on the SELECT query gets a result of several million rows.&lt;br /&gt;The table below shows the results of the tests. In this test, the queries were executed in a single thread, in a typical transformation for OLTP data on reporting. As you can see, the large scan on the InnoDB tables has a significant improvement of 27% in the new build, whilst the initial sequential scan on the MyISAM table showed an amazing improvement of 33%. The numbers showed in the table are execution times in seconds.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;b&gt;&lt;br /&gt;      IZ Build Std Build      IZ vs Std&lt;/b&gt;&lt;br /&gt;INS MyISAM TEMP fm InnoDB   4,584.61  5,830.58 27.18%&lt;br /&gt;SEL MAX(Ln)) FROM MyISAM TEMP     898.31  1,194.78 33.00%&lt;br /&gt;2nd INS MyISAM TEMP fm InnoDB   1,343.36  1,590.90 18.43%&lt;br /&gt;SEL Cols and SUM() fm MyISAM TEMP  1,499.29  1,807.32 20.55%&lt;br /&gt;SEL Cols and SUM() fm MyISAM TEMP    884.03  1,105.91 25.10%&lt;br /&gt;SEL Cols and SUM() fm MyISAM TEMP    871.29  1,092.53 25.39%&lt;br /&gt;SEL Cols and SUM() fm MyISAM TEMP  1,516.87  1,817.73 19.83%&lt;br /&gt;SEL Cols and SUM() fm MyISAM TEMP    883.57  1,109.12 25.53%&lt;br /&gt;SEL Cols and SUM() fm MyISAM TEMP    871.01  1,094.52 25.66%&lt;br /&gt;SEL w/WHERE fm MyISAM TEMP   1,406.66  1,637.22 16.39%&lt;br /&gt;SEL w/WHERE fm MyISAM TEMP     890.06  1,114.06 25.17%&lt;br /&gt;&lt;b&gt;&lt;br /&gt;   TOTAL (sec) 15,649.06 19,394.67 23.94%&lt;/b&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;For your reference, here is the MySQL config file, for both tests:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new; font-size:85%;"&gt;&lt;br /&gt;[mysqld]&lt;br /&gt;basedir=/usr/local/mysql&lt;br /&gt;datadir=/usr/local/mysql/data&lt;br /&gt;socket=/tmp/mysql.sock&lt;br /&gt;innodb_locks_unsafe_for_binlog=1&lt;br /&gt;back_log=50&lt;br /&gt;innodb_additional_mem_pool_size=10M&lt;br /&gt;innodb_buffer_pool_size=4G&lt;br /&gt;innodb_flush_method=O_DIRECT&lt;br /&gt;innodb_file_per_table&lt;br /&gt;innodb_file_io_threads=8&lt;br /&gt;innodb_log_buffer_size=6M&lt;br /&gt;innodb_log_file_size=120M&lt;br /&gt;join_buffer_size=8M&lt;br /&gt;key_buffer_size=10M&lt;br /&gt;log_long_format&lt;br /&gt;long_query_time=60&lt;br /&gt;lower_case_table_names=1&lt;br /&gt;max_heap_table_size=16M&lt;br /&gt;query_cache_limit=2M&lt;br /&gt;query_cache_size=64M&lt;br /&gt;read_buffer_size=4M&lt;br /&gt;read_rnd_buffer_size=10M&lt;br /&gt;sort_buffer_size=2M&lt;br /&gt;table_cache=32&lt;br /&gt;thread_cache_size=8&lt;br /&gt;tmp_table_size=16M&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-2083254170224308530?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/2083254170224308530/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=2083254170224308530' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/2083254170224308530'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/2083254170224308530'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2009/04/forgive-me-i-am-back-with-20-more.html' title='Forgive me, I am back... with 20% more performance on Solaris 10...'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-8828997734300176161</id><published>2008-12-09T22:01:00.004Z</published><updated>2008-12-09T22:07:07.389Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='MySQL 5.1'/><title type='text'>101 MySQL Stories - 5.1: Is that So?</title><content type='html'>Rick Deckard is an Engineering Manager at MySQL. Rick is one of the most senior engineers in the company, he led the team during the long delivery of the newest GA version of the server, 5.1.&lt;br /&gt;&lt;br /&gt;Soon after the release of 5.1, the Internet Village experienced shocking hours. A wind of disappointment spread all over the Net, blown by news of serious issues that affected 5.1. Many users were concerned, they feared for their mission critical applications based on 5.1, although they had already been in production for months without a glitch.&lt;br /&gt;&lt;br /&gt;With great disappointment, the Net pointed the finger at Rick, asking for a clarification on these serious issues. "Is that so?" was all he would say.&lt;br /&gt;&lt;br /&gt;After a few days, some wise users spent time reviewing the issues that affected 5.1. They discovered that some issues were not different by the ones that were affecting 5.0, and that version was currently in production. The ones who had already deployed 5.1, did not experience any particular problem. On the contrary, the servers were dealing pretty well with the increasing number of queries of some financial sites.&lt;br /&gt;&lt;br /&gt;Many users also did some math on bug counting. A user discovered that the 29 releases of the most robust and simple version 4.1, was affected by 887 S1 and S2 bugs and 2 of them are still unresolved. For 5.1, they found only 193 S1 and S2 bugs in the first 30 releases, although 10 are still unresolved.&lt;br /&gt;&lt;br /&gt;Wise men in large enterprises brought up the subject in their technical committees. Unanimously, DB Architects and DB Administrators agreed that 10 S1/S2 bugs in the first GA version of a commercial database is a dream that will never come true. Several organisations decided to expand the use MySQL as a result of this due diligence.&lt;br /&gt;&lt;br /&gt;Few weeks later, Rick Deckard was invited to a Meetup group in the Valley; the main topic was "The great new features of 5.1 and the roadmap for the next releases". The meetup was a great success. After the meeting, some users approached Rick and showed him some graphs produced with the new Enterprise Monitor 2.0 and the Query Analyzer, showing a significant improvement in performance and scalability with some new features of 5.1: partitioning, row based replication, extended use of memory for caching.&lt;br /&gt;&lt;br /&gt;With the graphs in his hands, all Rick said was: "Is that so?"&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic;"&gt;This story is fictitous. Any reference to persons and/or MySQL Customers is purely coincidental. But this is not far off from one day in the life of a MySQL Sales Engineer.&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Join me and Ralf Gebhardt in the web seminar "MySQL 5.1", Thursday 11th of December at 10am GMT - &lt;a href="http://www.mysql.com/news-and-events/web-seminars/display-251.html"&gt;http://www.mysql.com/news-and-events/web-seminars/display-251.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Let's find out all you need to know about 5.1!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-8828997734300176161?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/8828997734300176161/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=8828997734300176161' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/8828997734300176161'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/8828997734300176161'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/12/101-mysql-stories-51-is-that-so.html' title='101 MySQL Stories - 5.1: Is that So?'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-7675060726611414506</id><published>2008-10-16T00:18:00.001+01:00</published><updated>2008-10-16T00:19:56.980+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Conference'/><title type='text'>Final Countdown - MySQL European Conferences</title><content type='html'>A MySQL Conference in Europe? Wrong: three MySQL Conferences in Europe!&lt;br /&gt;&lt;br /&gt;Yes, this is the plan for next week - 21st of October in Munich and 23rd in London - and for mid November - 19th of November in Paris.&lt;br /&gt;&lt;br /&gt;Each venue will host a full day of presentations, news and analysis on MySQL. You can have a look at the &lt;a href="http://www.mysql.com/news-and-events/european-conferences/2008/"&gt;official web page&lt;/a&gt; for all the details, agenda and registration.&lt;br /&gt;&lt;br /&gt;The content can satisfy the appetite of a technical audience and of more business-oriented IT managers at the same time. We will have sessions on performance, on scalability solutions and on Proxy, with hands-on the servers, difference parameters and tools. IT managers will probably find interesting a renewed set of HA solutions and some renewed views on the infrastructures used to power the Web.&lt;br /&gt;&lt;br /&gt;Robin Schumacher, Director of Product Management, will present the new roadmap for our products and Miriam Tuerk, CEO of Infobright, will talk about this impressive open source, column-based storage engine, specifically designed for data warehouse and business intelligence applications.&lt;br /&gt;&lt;br /&gt;As a final keynote, we will present a set of benchmarks of how MySQL Server behaves and scales in different environments and with different scaling strategies. It's new material, something that we have never presented before, all unveiled next week.&lt;br /&gt;&lt;br /&gt;Stay tuned!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-7675060726611414506?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/7675060726611414506/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=7675060726611414506' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/7675060726611414506'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/7675060726611414506'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/10/final-countdown-mysql-european.html' title='Final Countdown - MySQL European Conferences'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-4947155613084580045</id><published>2008-10-15T23:41:00.002+01:00</published><updated>2008-10-15T23:52:38.644+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='replication'/><category scheme='http://www.blogger.com/atom/ns#' term='tip of the day'/><title type='text'>Tip of the Day - Queries that you do not want to replicate</title><content type='html'>If you use MySQL Replication, 99% of the times your main concern is to keep the master and the slave fully consistent and in sync. Some applications require exactly the opposite.&lt;br /&gt;&lt;br /&gt;Let's take, for example, some reporting solutions. You may want to run reports against a data mart (ok, I can see some BI experts here jumping off their chairs - please forgive the simplification for the sake of this example), that is a subset of the whole historical data within your data warehouse. So, you may have a master server containing only the last 3 months of your sales and a slave containing three years of sales. Sales managers can happily to see current year/previous year rolling comparisons using the slave server and at the same time they can run faster current month/previous month reports on their master.&lt;br /&gt;&lt;br /&gt;There are many ways to prepare the data mart and the historical DB. The easiest thing to do is to remove the oldest rows from the data mart, but not from the historical DB. If you use partitions (out of the box with 5.1 or with application partitioning in 5.0), for example based on a date column, you can drop a full partition and speed up the whole process. So, it does not matter how you  remove your oldest rows from the data mart (here, the master). What it matters is that you do not want to replicate these commands to your historical DB (here, the slave).&lt;br /&gt;&lt;br /&gt;Here is a simple trick. Let's assume that the schema that contains the data is called &lt;span style="font-style: italic;"&gt;COMPANY_SALES&lt;/span&gt;. All you have to do is to create a new schema called &lt;span style="font-style: italic;"&gt;REPL_ADMIN&lt;/span&gt; (or a name that you may fancy more) and add the &lt;span style="font-family: courier new;"&gt;binlog-ignore-db&lt;/span&gt; parameter in your server config file. The my.cnf on your master will look like:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;[mysqld]&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;...&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;binlog-ignore-db = REPL_ADMIN&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Ok, now the real trick. Every time you want to remove the rows from a sales table, simply "move" to the admin schema using the &lt;span style="font-family: courier new;"&gt;USE&lt;/span&gt; command first. Something like this works pretty well:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;USE REPL_ADMIN&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;DELETE FROM COMPANY_SALES.fact_sales&lt;br /&gt; WHERE sales_date &lt;= DATE_SUB( CURRENT_DATE, INTERVAL 3 MONTH )&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;With the &lt;span style="font-family: courier new;"&gt;DELETE&lt;/span&gt; command, you remove all the rows order than 2 months from the table fact_sales in the schema &lt;span style="font-style: italic;"&gt;COMPANY_SALES&lt;/span&gt;. Since you used &lt;span style="font-family: courier new;"&gt;USE&lt;/span&gt; and you "moved" to the &lt;span style="font-style: italic;"&gt;REPL_ADMIN&lt;/span&gt; schema first, the binary log will not keep track of the &lt;span style="font-family: courier new;"&gt;DELETE&lt;/span&gt;, even if it affects the &lt;span style="font-style: italic;"&gt;COMPANY_SALES&lt;/span&gt; schema.&lt;br /&gt;&lt;br /&gt;Some people refer to this behaviour as a bug. Personally I find it extremely powerful: it gives replication an incredible flexibility and the ability to do what other replication technologies can't do.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-4947155613084580045?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/4947155613084580045/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=4947155613084580045' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/4947155613084580045'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/4947155613084580045'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/10/tip-of-day-queries-that-you-do-not-want.html' title='Tip of the Day - Queries that you do not want to replicate'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-3637948541351464544</id><published>2008-10-11T11:36:00.002+01:00</published><updated>2008-10-11T11:49:29.533+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Solaris'/><category scheme='http://www.blogger.com/atom/ns#' term='tip of the day'/><title type='text'>Tip of the Day: Installing MySQL Coolstack on Solaris</title><content type='html'>Here are few tips if you are going to install the MySQL Coolstack package on Sun Solaris.&lt;br /&gt;&lt;br /&gt;First of all, let me say that, as usual, these tips are based on my personal experience and they may not be applicable to your sw version or environment. For this specific tip, I can't say if it is applicable for all versions of Solaris - 9, 10, OpenSolaris, X86, SPARC etc.&lt;br /&gt;&lt;br /&gt;You can get the Coolstack from here - &lt;a href="http://cooltools.sunsource.net/coolstack"&gt;http://cooltools.sunsource.net/coolstack&lt;/a&gt;. Within Coolstack you will find CSKmysql, a specific 64 bit package prepared by Sun that provides some interesting performance improvements. Coolstack has been built with Sun Studio from the same source used to build the standard versions. Also, CSKmysql provides Dtrace probes - I am sure some will find this feature a great plus. The last available version, 1.3.1, is based on MySQL 5.1.25RC.&lt;br /&gt;&lt;br /&gt;When you install the package, make sure that you first create a symbolic link to your package in &lt;span style="font-style: italic;"&gt;/var/sfw/lib/64&lt;/span&gt;, in order to avoid the message:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;pkgadd: ERROR: no packages were found in &lt;/var/spool/pkg&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The package is installed in &lt;span style="font-style: italic;"&gt;/opt/coolstack/mysql&lt;/span&gt;. Unless it does impact your internal policies or other software, I would recommend to create the symbolic link &lt;span style="font-style: italic;"&gt;/usr/local/mysql&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Once the software has been installed, you need to create the first set of system tables. For some reason, the &lt;span style="font-style: italic;"&gt;mysq_install_db&lt;/span&gt; script (which is usually in the &lt;span style="font-style: italic;"&gt;scripts&lt;/span&gt; dir) is not available in Coolstack. You need to download a community edition from the mysql web site or you may create the tables on another server (Linux or Solaris, it does not matter) and then copy them on the server you are preparing. If you decide for the latter, make sure you apply the right owner (usually &lt;span style="font-style: italic;"&gt;mysql&lt;/span&gt;).&lt;br /&gt;&lt;br /&gt;You are almost there. The last issue you may find is some missing libraries. The easiest thing to do is to export the &lt;span style="font-style: italic;"&gt;LD_LIBRARY_PATH&lt;/span&gt; var:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;LD_LIBRARY_PATH=/usr/sfw/lib/64&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Make sure you set the &lt;span style="font-style: italic;"&gt;LD_LIBRARY_PATH&lt;/span&gt; for both your server and your client.&lt;br /&gt;&lt;br /&gt;Et voila'. The server is (should be) able to start with the usual mysqld_safe command.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-3637948541351464544?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/3637948541351464544/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=3637948541351464544' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/3637948541351464544'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/3637948541351464544'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/10/tip-of-day-installing-mysql-coolstack.html' title='Tip of the Day: Installing MySQL Coolstack on Solaris'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-874154168794706527</id><published>2008-10-04T21:37:00.003+01:00</published><updated>2008-10-04T21:41:20.272+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='FOWA'/><title type='text'>MySQL at the FOWA - Future Of Web Applications - in London, 8-10 Oct</title><content type='html'>I know, it's a very short notice. But if you are in or around London next week, you might want to come and visit us at the FOWA Expo. The venue is the &lt;a href="http://www.excel-london.co.uk/"&gt;London ExCel&lt;/a&gt;; some of you should know it, since it's a quite popular that hosts IT and social events.&lt;br /&gt;&lt;br /&gt;Check the &lt;a href="http://london2008.futureofwebapps.com/"&gt;FOWA Website&lt;/a&gt; - &lt;a href="http://london2008.futureofwebapps.com/"&gt;http://london2008.futureofwebapps.com&lt;/a&gt; - for more details. The schedule is pretty packed with speakers from Amazon, Google, Digg, AOL, SalesForce, BT and many others... and of course from Sun.&lt;br /&gt;&lt;br /&gt;As MySQL, we do not have any speech scheduled, but we have a booth and if you have any question or you want to get in touch with us, you are more than welcome to stop by! This time we promise the booth will be less minimalist - check what we had &lt;a href="http://flickr.com/photos/nez/1482257745/sizes/l/"&gt;last year&lt;/a&gt; :) - but you know us: no frills and lots of hard work at a back-end...&lt;br /&gt;&lt;br /&gt;I hope to see you there!&lt;br /&gt;&lt;br /&gt;/iz&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-874154168794706527?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/874154168794706527/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=874154168794706527' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/874154168794706527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/874154168794706527'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/10/mysql-at-fowa-future-of-web.html' title='MySQL at the FOWA - Future Of Web Applications - in London, 8-10 Oct'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-605783164127441709</id><published>2008-08-09T20:07:00.000+01:00</published><updated>2008-08-09T20:08:54.909+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle migration'/><title type='text'>101 MySQL Stories</title><content type='html'>Hi,&lt;br /&gt;&lt;br /&gt;My name is Larry and I am an Oracle DBA. I work in the City for a large finance corporation - we use Oracle, SQLServer and Sybase. It's a great job, very well paid and plenty of opportunities to learn new stuff.&lt;br /&gt;&lt;br /&gt;My company has been seriously hit by the crisis in the financial sector and the management is now wondering if it's really necessary to pay expensive licenses for every small project that requires a database. It's true that we have a corporate license agreement, but that does not cover all the instances - we need to distinguish between front end, back end, sockets, physical CPUs, cores, threads and lots of other rules I do not remember.&lt;br /&gt;&lt;br /&gt;One of my managers heard about MySQL. He read that MySQL powers the majority of the Web 2.0 world. I thought that MySQL was only a small thing for home use, but maybe it's been improved. I am curious by nature, so I am really excited to discover something new. I am not sure whether a MySQL DBA is paid as much as an Oracle DBA - I'd better Monster a little bit to check - but I am not that greedy and I am sure there are opportunities for MySQL DBAs as well.&lt;br /&gt;&lt;br /&gt;Today I am going to meet Inn-oh, apparently a well known MySQL Sales Engineer who moved from Tokyo to London just recently. We will meet at the Solution Centre in the City - he is certainly going to show me massive servers with large instances of a new version of MySQL.&lt;br /&gt;&lt;br /&gt;I am really excited. I want to know how MySQL can handle such large web sites. I am sure they will use something like Oracle RAC, maybe a large Storage Area Network from Sun, all active servers, all in a single huge rack with lots of spindles. Still, I do not know how they can manage the thousands of connect/disconnect to the DB every second - programmers really make our life difficult!&lt;br /&gt;&lt;br /&gt;I want to know everything about the MySQL Stored Procedure Language. Our company applications heavily rely on PL/SQL; we have hundreds of thousands lines of code. Oracle strongly recommended it for performance reasons, but now I don't know how easy it will be to migrate to another database. Within the database instance we do everything: we send emails, we build web pages, we have even built a full CMS, all in PL/SQL!&lt;br /&gt;&lt;br /&gt;I am now at the Sun Solution Centre, Inn-oh is waiting for me. He asks me if I want a drink, I'd love a cup of tea. We move to the table where there are a couple of kettles and some cups. Inn-oh pours the tea in the cup. The cup is full, but inn-oh keeps pouring. "I am sorry Inn-oh" I say, "but the cup is already full, "you can't put more tea in it!".&lt;br /&gt;&lt;br /&gt;"Like this cup,", Inn-oh replied, "you are full of your own opinions on how to perform scalability and high availability. You've been told that the database server must be the centre of every system, that complex data and business logic must reside in it. You believe that a single, non-splittable element (the SAN) can provide unlimited scalability and reliability. How can I show you how MySQL scales and performs unless you first empty your cup?".&lt;br /&gt;&lt;br /&gt;This story is fictitous. Any reference to persons and/or Oracle or MySQL Customers is purely coincidental. But this is not far off from one day in the life of a MySQL Sales Engineer.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-605783164127441709?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/605783164127441709/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=605783164127441709' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/605783164127441709'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/605783164127441709'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/08/101-mysql-stories.html' title='101 MySQL Stories'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-2623234695328154713</id><published>2008-08-03T08:42:00.001+01:00</published><updated>2008-08-03T08:45:45.507+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Drizzle'/><title type='text'>Drizzle - Here Comes The Rain Again (which might be good for Enterprise users)</title><content type='html'>When I moved to the UK from Italy, now more than eight years ago, people asked me all the time "Why did you leave such a sunny place like Italy to move to England?". Well, first of all, the south east of England is not that bad. There is a decent number of sunny days in a year and the bright sky of a breezy morning is just fantastic. Second, my home town is Milan, in the middle of the Po valley, with foggy winters and humid summers, with temperatures between -15C and +38C over the year. And there is another point: no wind and no much rain, hence pollution. In Milan the pollution is so awful that almost one third of the working days in a year private cars cannot be used within the city, in the attempt of reducing emissions. When I was a child, my mum used to put a PVC cover over the washing line to avoid that clean clothes would get immediately dirty.&lt;br /&gt;&lt;br /&gt;It is a long introduction, but it is probably worth it, because it fits almost perfectly with the new project you may find in the MySQL pot - &lt;a href="https://launchpad.net/drizzle"&gt;Drizzle&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Drizzle is a Community project led by some of my colleagues - Brian Aker, Jay Pipes, Monty Taylor among many others - aiming at building a microkernel-like version of MySQL, without jeopardising the intrinsic nature of the software. In fact, Drizzle is based on the robust code around  MySQL 4.1, the last version developed before MySQL decided to move to the Enterprise market and added lots of new Enterprise-like features like stored procedures, triggers, views etc.&lt;br /&gt;&lt;br /&gt;First of all, nothing is going to change in the current version of MySQL. 5.0, 5.1 and 6.0 are still there and there is no plan at the moment to apply any change to the core or to any of the modules within the server. Drizzle is really a new project, far from being 100% ready for production for everybody (i.e. unless you are ready to jump in and look at possible issues within the code). The community has welcomed the project enthusiastically and, after few days and a warning alert that I keep in my mind at low priority, I am going to join the enthusiasts.&lt;br /&gt;&lt;br /&gt;The first objective of Drizzle is to provide the essential features of a database server used in a typical web environment. Drizzle has been designed (well, it is still in a design phase) with Web 2.0 in mind. The DB must be fast, reliable and not many features are really needed. This is just fantastic, because it may open many possibilities. But Drizzle will be even more interesting when the Enterprise as a whole - meaning any kind of applications with a Web front end - may take advantage from it. The greatest value of Drizzle would be in fact a reorganisation and modularisation of the code. It may be, in some way, like my move from a sunny-but-polluted part of Italy (where stopping traffic helped only a bit), to a breezy land with less sunny days, but with fresh air and stunning landscapes.&lt;br /&gt;&lt;br /&gt;Once (if) Drizzle will be at some point stable in its microkernel structure, then the Community and Sun will start adding features through plugins, not messing up the kernel - whenever possible. You may think about some features available now in 5.X that are not available in Drizzle. Triggers, views and stored procedures, just to name the three most common enterprise features, may all be added outside the kernel and they can be switched on when needed. Think about the infinite possibilities here. With stored procedures, for example, you may have different plugins to choose from the SP language you want to use. Triggers can be used in a object-relational fashion to capture reads and not only writes, when needed. Foreign keys and referential integrity will finally be outside the storage engine as they should be.&lt;br /&gt;&lt;br /&gt;Is Drizzle good for the Community? Definitely! Because it gives anybody more options to integrate new features that are not available at the moment and that are not part of an immediate roadmap at Sun/MySQL.&lt;br /&gt;&lt;br /&gt;Is Drizzle good for the Enterprise? It can be! Some people think it's too difficult to build a modular server with the current core, some others think this is not easy, but possible and preferable. There is an open debate and this is a great start.&lt;br /&gt;&lt;br /&gt;So far, so good. So, what's the warning? Well, we at Sun have a duty with our users and customers - we must deliver reliable, high performance and ease of use versions of our products (not just the server). I really hope that Drizzle will not move the focus of our key contributors, slowing down bug fixing and performance improvements. If Drizzle can remain a parallel project and at some point will be good enough to become the mainstream product (something like the change from Mac OS to Mac OS X for Apple) with all the required plugins for the millions of installations out there, then we will finally provide the best database of the third millennium.&lt;br /&gt;&lt;br /&gt;Go Drizzle!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-2623234695328154713?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/2623234695328154713/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=2623234695328154713' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/2623234695328154713'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/2623234695328154713'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/08/drizzle-here-comes-rain-again-which.html' title='Drizzle - Here Comes The Rain Again (which might be good for Enterprise users)'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-5606323091867979494</id><published>2008-06-13T18:18:00.003+01:00</published><updated>2008-06-13T18:28:15.321+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Italy'/><category scheme='http://www.blogger.com/atom/ns#' term='webinar'/><title type='text'>Italian Webinar - Materiale, Domande e Risposte per il Webinar "Guida alla scalabilita' di MySQL"</title><content type='html'>La registrazione del webinar e le slide sono presenti &lt;a href="http://www-it.mysql.com/news-and-events/on-demand-webinars/display-od-149.html"&gt;qui&lt;/a&gt;.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Di seguito riporto la sezione di domande e risposte:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Ivo:&lt;/span&gt; Tutte le considerazioni sulla scalabilita' fin qui individuate sono valide anche per la versione community di MySQL?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; si&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Alex:&lt;/span&gt; Mysql Proxy per la suddivisione delle richieste lettura scittura è ad oggi stabile ?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; MySQL Proxy e' ancora in fase alfa e non e' consigliato l'utilizzo in produzione.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Massimo:&lt;/span&gt; Qual'e' il metodo migliore per il backup incrementale di un db?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; E' necessario attivara il binary log ed effettuare le operazioni di FLUSH LOG al momento del backup.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Mauro:&lt;/span&gt; Ci possono essere applicativi web che inseriscono dei dati nel DB, e che subito rileggono i dati inseriti. Dato  che la replicazione è asincrona, non si ha la sicurezza che uno slave abbia subito l'aggiornamento. Quale soluzioni si possono trovare per questo?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; La soluzione migliore e' quella di operare le letture che necessitano di una sicurezza del dato letto direttamente dal master. Questa necessita' si ha anche nel momento in cui le letture sono isolate all'interno di una specifica transazione.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Fabio:&lt;/span&gt; Con un traffico di circa 4 milioni di pagine al mese un server slave ben configurato può bastare?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; E' difficile fare valutazioni su queste basi. Dipende molto dalle query effettuate per produrre queste pagine, nonche' le richieste di picco, piu' che un valore totale per mese.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Gianni:&lt;/span&gt; Qual'è l'ordine di grandezza del ritardo nella replicazione asincrona da singolo Master a singolo Slave: secondi, minuti, ore?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; La replicazione puo' essere (o e' auspicabile che sia) istantanea, il tutto dipende dal carico di lavoro dei sistemi. Nel caso di sistemi molto carichi, il throughput richiesto potrebbe essere superiore a quello supportato, nel qual caso si registrano i ritardi citati.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Dan:&lt;/span&gt; Per la replicazione in lettura dovrei installare piu' servers mysql? Dove posso trovare degli approfondimenti?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Si, la replicazione si basa su piu' server MySQL connessi in rete tra loro. Il manuale riferimento pubblicato sul sito fornisce tutti i dettagli del caso.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Francesco:&lt;/span&gt; che database usa Ebay?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Ebay utilizza MySQL per gestire le sessioni online. Nello specifico, si basa sull'utilizzo del MEMORY storage engine.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Gianluca:&lt;/span&gt; Quale è  lultima versione di MySQL ent certificata per Linux Red HAT Advanced Server 5?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Alla data della mia risposta (10 Giugno 2008) e' la 5.0.62&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Stefano:&lt;/span&gt; non si otterrebbe maggiore scalabilità inserendo i dati a bassa persistenza sul master?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Il problema e' quello di garantire che le risorse a disposizione non siano un collo di bottiglia. Se utilizziamo il master per memorizzare dati a bassa persistenza, questo normalmente significa che effettueremo una notevole quantita' di update, quindi genereremo una notevole quantita' di scritture su una risorsa che e' normalmente piu' difficile da scalare. Inoltre, se i dati sono a bassa persistenza, ha poco senso che venganon costantemente replicati, in quanto ci si aspetta che la loro lettura debba essere svolta senza ritardi e la validita' del dato sia molto breve.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Davide:&lt;/span&gt; Installando il Community Server non ho visto nessuna sezione per creare gli slave dipendenti. C'e' un opzione che non ho visto o devo prendere degli addon?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; No, la replicazione e' disponibile nel Community Server. Per impostare la replicazione e' pero' necessario eseguire alcuni comandi di amministrazione, non e' una cosa che avviene a livello di installazione.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Fabio:&lt;/span&gt; Nel caso sharding, se separiamo logicamente le tabelle o addirittura gli schema, e' possibile usare le tabelle federated per fare join? Consigliato performante o e' meglio replicare tra i master le eventuali tabelle utili alle join?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; E' possibile utilizzare delle tabelle FEDERATED, ma generalmente le prestazioni ottenute non sono entusiasmanti. Consiglierei piu' una replicazione, se possibile.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Meo:&lt;/span&gt; MySQL Proxy mi risulta ancora in versione Alpha. Vi sono previsioni per un suo prossimo rilascio come GA? Vi sara' anche una edizione enterprise?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Non sappiamo ancora quando sara' GA. E' importante considerare che i prodotti in alfa possono essere soggetti a sostanziali modifiche. E' probabile che Proxy sara' supportato con MySQL Enterprise.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Marco:&lt;/span&gt; Per utilizzare mysql proxy bisogna scrivere del codice SQL con istruzioni specifiche? ( sul nodo MASTER o SLAVE DOVE effettuare l'operazione ) ?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Questo dipende da come Proxy acquisisce e gestisce la connessione proveniente dal client. La valutazione puo' essere svolta all'interno del Proxy tramite degli script generici preimpostati, come avviene in alcuni esempi che accompagnano proxy.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Aldo:&lt;/span&gt; Avete un sistema backup per il cluster mysql?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Assolutamente. All'interno di MySQL Cluster e' presente un sistema di backup e restore online.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Marcello:&lt;/span&gt; Per una applicazione web con moltissime letture e poche scritture, che stiamo progettando con Cluster di tutte le tabelle e Replicazione delle sole tabelle di lettura, è buona norma che le tabelle del cluster siano innoDB e quelle replicate MyISAM?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Intendo quindi che per "cluster" si intende cluster a livello di sistema operativo. Il cambio di storage engine e' possibile. Va valutato se per l'applicazione specifica porta eventuali benefici. Un'altra possibilita' da valutare e' di velocizzare innodb, ad esempio riducendo il numero di sync su disco oppure adottando una diversa strategia RAID.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Aldo:&lt;/span&gt; Per garantire l'alta affidabilita' di mysql cluster quali sono i processi che mi devo prendere carico io come applicativo di restartare se vanno giu? esempio managemnet node e sqlnode e basta o solo management node?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Se uno dei componenti ha subito un fault, non e' necessario farlo ripartire, e' opportuno investigare qualie problema ha incontrato. Sconsiglierei in ogni caso la ripartenza da applicativo.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Alessandro:&lt;/span&gt; Che grado di stabilità hanno la versione 5.1 e la 6.0 di mysql?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; La versione 5.1 e' prossima ad essere rilasciata GA, quindi la sua stabilita' e' quasi da GA. La versione 6.0 e' ancora in fase alfa, quindi sconsiglio vivamente il suo utilizzo in produzione.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Fabio:&lt;/span&gt; Esistono benchmark che dato un determinato tipo di hardware, mostrano le prestazioni di varie tipologie di soluzioni di scalabilità? es query al secondo ecc.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Ci sono alcuni benchmark presenti sul nostro sito (basta cercare la voce "benchmark"). I siti dei fornitori di HW sono sicuramente piu' forniti sull'argomento.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Alessandro:&lt;/span&gt; Per quanto riguarda gli esami di certificazione di livello dba (non mca) sono obbligatori i corsi in aula?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; No, non c'e' nessun obbligo di partecipazione.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Aldo:&lt;/span&gt; Il backup incrementale c'e' anche per il cluster mysql?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; No, MySQL Cluster supporta solo il backup a livello di intero nodo.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Mauro:&lt;/span&gt; Quali sistemi di heartbeat per la replication esistono?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Si puo' usare un qualsiasi sistema di clustering, come ad esempio Linux Hearbeat, RH Cluster o altri.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Alex:&lt;/span&gt; La replicazione circolare Master/slave con Mysql è attuabile in un ambiente di produzione? Se si con quanti nodi max?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; E' attuabile e non vi e' un numero massimo di nodi. E' pero' necessario valutare quale e' la necessita' che porta all'utilizzo della replicaione circolare. L'implementazione di questa topologia non e' infatti scevra da alcuni aspetti da considerare attentamente.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Aldo:&lt;/span&gt; ma è possibile impostare una ATTESA per la scrittura? Mi spiego meglio posso impostare il ritorno al mio software SOLO DOPO che la write è andata su tutti gli slave?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; No, auesto non e' possibile. Lo slave viene aggiornato in modo asincrono.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Ivo:&lt;/span&gt; Ma la replicazione e gestita completamente da mysql oppure c'e bisogno di qualche applicativo ad hoc da implementare?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Non occorre nessun applicativo, e' sufficiente avere almeno due server MySQL&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Andrea:&lt;/span&gt; Se utilizzo un hardware SAN, posso fare a meno di drbd se voglio realizzare un cluster attivo /passivo?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; DRBD e' un alternativa a un cluster basato su SAN. E' una soluzione nettamente piu' economica che non richiede l'acquisto di hardware specializzato.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Silvia:&lt;/span&gt; Il driver JDBC mysql configurato in "replication mode" che funzionalità di distribuzione del carico fornisce?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Permette di suddividere le letture tra i vari slave in modalita' round robin, random o tramite un QoS. Statisticamente, la modalita' random e' la piu' efficiente.&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-5606323091867979494?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/5606323091867979494/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=5606323091867979494' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/5606323091867979494'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/5606323091867979494'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/06/italian-webinar-materiale-domande-e_13.html' title='Italian Webinar - Materiale, Domande e Risposte per il Webinar &quot;Guida alla scalabilita&apos; di MySQL&quot;'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-686642581757197209</id><published>2008-06-08T12:42:00.006+01:00</published><updated>2008-06-09T07:13:59.216+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='memcached'/><category scheme='http://www.blogger.com/atom/ns#' term='MySQL Enterprise'/><title type='text'>Q&amp;A and Recording of the Memcached Webinar</title><content type='html'>The session has been recorded. The webex file and the webinar are available &lt;a href="http://www.mysql.com/news-and-events/on-demand-webinars/display-od-141.html"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Here is the Q&amp;amp;A session, with more detailed answers.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Tomasz:&lt;/span&gt; You said memcached is integrated with, among others, MySQL. Did you mean integration by e.g. php or direct, automatic integration?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Memcached API are available for many enviroments, such as Php, Perl, C/C++, Rails etc. With MySQL, you can use UDF functions or a storage engine. Both are community projects.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Juan:&lt;/span&gt; memcached: Facts data size up to 1MB? What size, i dont understand!&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; It's the size of an item associated to a key. When you store an element (item) into memcached, the size of the key is max 250 bytes and the item is max 1MByte.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Frederik:&lt;/span&gt; Do memcached save data in RAM or disk?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; It is RAM based, there is no durability&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Niko:&lt;/span&gt; Are all these [client] libraries available for Windows as well ?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Some of those libraries have been ported to Windows&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Robin:&lt;/span&gt; Is it possible to define multiple memcached nodes? If so, what is the hashing strategy?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Yes, it is. Memcached is distributed by design. The distribution is based on the hash key, depending on the number of servers in the cluster. So, for example, in a cluster with two servers, the item with key 1 will go to server A, key 2 will go to server B, key 3 to server A, key 4 to server B and so forth.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Aron:&lt;/span&gt; If i have set data into memcache from db, but after a while the db table changes. How do i trigger to update the memcache? MySQL cache deletes data from cache when a table has changed, how does memcache handle this?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; There are various mechanisms. First of all, memcached is a generic caching mechanism, therefore you can use it to cache data from the DB, but also HTML pages, images, documents etc. There are various mechanisms to trigger an update. One is to apply a trigger to the table in the database and invalidate/update the cache at any change. Other options may be application specific.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Ran:&lt;/span&gt; What are the advantages of using memcached via MySQL, as opposed to directly using the memcached API?  Can you expand on using triggers to automatically put/get data from cache?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Yes, see my previous answer. In general, if your are going to store DB data, it's a good idea to set this kind of trigger.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Jeroen:&lt;/span&gt; How can you store the same item on multiple servers?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; You simply apply two hash keys that will go to different servers. The typical approach is a key on one server and its next value on another server. Be careful to not use the next value key for another item.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Giulio:&lt;/span&gt; Can I setup mysql slave to replicate memcached data?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; This is a very good approach. If you are not specifically worried by the real time update of the cache, you can create triggers on the slave server (and perhaps you can use a BLACKHOLE storage engine to save storage. In this way, the master will not be affected by any delay caused by the triggers.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Matt:&lt;/span&gt; Can memcached be installed as a Debian Package without any configuration needed? i.e. "apt-get install memcached"&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; As far as I know, only the client library can be installed as a Debian package.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Ariel:&lt;/span&gt; What about network latency if I have so many Memcached servers?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; The protocol used to interact with memcached is very lightweight. Naturally, the more you use memcached, the more traffic you will generate. So far, none of the very large installations using memcached have had latency problems.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Eyal:&lt;/span&gt; How do you define the structure of the items you store?&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Simply you don't. Memcached will store a string of bytes and it's up to the application to interpret the content of memcached.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Gregorio:&lt;/span&gt; Do Facebook or any of them use any kind of integration between Mysql + Memcached?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; I am not sure about Facebook, but many web sites do. Fotolog, for example, stores DB data using UDF.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Ariel:&lt;/span&gt; Is memcached good for queries that take less 1s to respond?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; the longer the query takes to respond, the more effective is memcached compared to the execution of the query. If you run several queries that take one second or more, maybe it's a good idea to use memcached.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Marc:&lt;/span&gt; How do you handle the slab sizes if they are growing too much and using full size of memory? Also when items expire the slab size stays the same. that's a common problem in memecached.&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Indeed, this is a know problem. Some optimisation in the use of the storage (memory) has been sacrificed in order to keep the algorithm for storage and eviction pretty simple.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Yariv:&lt;/span&gt; a question about memcached distribution, how does it work, i understood that you implement distribution in the code using module (%) maybe i'm wrong, but how does it work when nodes are added or removed from the 'memcached ' cluster?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; If you add or remove nodes, you end up invalidating the whole cache. Bear in mind that we are talking about a caching mechanism, very fast and simple, therefore with basic capabilities in terms of administration.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Varaprasad:&lt;/span&gt; Can I use memcached with MS SQL Server?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; You can, sure, although I am not aware of any connector or function to integrate MS SQL Server to memcached.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Oren:&lt;/span&gt; Isn't the cache purpose to offload complexity from the db? Why then to use the mysql memcached functions, and not do it through the application, bypassing the db?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; It's not just complexity, it's mainly workload. If you handle a query through memcached instead of engaging the storage engine and the consequent I/O, you still have an advantage. I agree with that if you avoid to involve the DB server completely, it's even better.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Varaprasad:&lt;/span&gt; Is memcached opensource?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Yes, but as you just see on the slide we will support it under the MySQL Enterprise Gold and Platinum subscription.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Pedro:&lt;/span&gt; in the MySQL Cluster is there a limit on the database size?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; With Version 5.0 we are limited to the available RAM of the available data nodes. With 5.1, you can extend the use of the data on disk.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Paolo:&lt;/span&gt; Seems like Memcached can be redundant and HA with little effort, is it right?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Yes, sort of. You need to implement the redundancy yourself and in any case it's not so simple to guarantee that you will have consistent data on all the servers.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Jan:&lt;/span&gt; All memcached nodes can have a different amount of memory reserved for memcached, am I right? Any best practices?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; That is correct. The servers with more memory will have less chance to evict old data. Recommendation is to use the same amount of memory for memcached server of the same type, i.e. when the server are used to store the same type of data.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Andrew:&lt;/span&gt; Is memcached supported as a storage engine or as a standard memcached instance?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; It is supported as a standard memcached instance. The storage engine is still at an early stage.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Matz:&lt;/span&gt; Consistency? How does the cache know when the data has been updated?&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; It doesn't. The DB through a trigger or the application will inform memcached that the cache must be updated.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Ariel:&lt;/span&gt; Is there some library for use Memcached in HA Cluster?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Not directly, as far as I know.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Juan:&lt;/span&gt; How can I backup memcached?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; There isn't a simple way to do that and usually it's no a good idea. Memcached is designed to provide high performance and you do not want to slow down the server for a backup. Even more important, cache is temporary data by definition, data that you may or may not find in the cache, so there is no point to backup a cache.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Julian:&lt;/span&gt; How does memcached scale beyond a single server? The slide said the size was unlimited..&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; You simply need to define a set of servers to use at a client level and the API will distribute the data on these servers.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from John:&lt;/span&gt; Does memcached work with DRBD?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; No, they are different technologies. DRBD replicates file system data, while memcached use RAM to store data.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from João:&lt;/span&gt; Is memcached available in the free mysql version?&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; memcached is available here: http://www.danga.com/memcached . You can use it with our Community Edition, but of course we do not support it with that edition.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Robin:&lt;/span&gt; Are there any reports available yet on the performance gains of using memcached from within mysqld?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Not directly from MySQL, but there are many tests published on the Web.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Agoston:&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt; Can you give an example on how to append timestamp to a memcached key to achieve automatic invalidation?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; The automatic invalidation is handled only with the LRU algorithm, however you can handle invalidation programmatically. For example, you can defined a version id to append to your key (Something like "mykey-0001", "mykey-0002" and so on). Another option is to prepend a timestamp to the item; you will retrieve the item but you will not use it if the timestamp is outdated.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from David:&lt;/span&gt; How frequent the data get updated in memcache once DB record has changed? Is it configurable?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; The update must be explicit, the client or the server through the UDF should update memcached.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Niranjan: &lt;/span&gt;Is there some inherent pooling in memcache if I decide to distribute my cache across different machines ? Or will I have to route requests manually ?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; The requests are directed to the right server using the key, you do not need to route it manually.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Tristan:&lt;/span&gt; At what amount of traffic do you think memcache starts being a good option?&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; It really depends on the requirements than on the traffic. Some applications need real time or near real time performance, some others  may accept longer response time. This requirements, combined with the concurrent users, should give you an idea whether it makes sense or not to use memcached.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-686642581757197209?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/686642581757197209/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=686642581757197209' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/686642581757197209'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/686642581757197209'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/06/q-and-recording-of-memcached-webinar.html' title='Q&amp;A and Recording of the Memcached Webinar'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-4296927136084596443</id><published>2008-05-24T08:38:00.002+01:00</published><updated>2008-05-24T08:48:34.934+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Italy'/><category scheme='http://www.blogger.com/atom/ns#' term='Marten Mickos'/><title type='text'>Italian Event: Marten Mickos in Rome, Friday May 30th</title><content type='html'>Marten Mickos sara' presente a un evento presso l'Universita' La Sapienza di Roma, Venerdi 30 Maggio.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Marten parlera' della sostenibilita' del modello Open Source, del presente e del futuro di MySQL.&lt;/div&gt;&lt;div&gt;L'agenda e il modulo di iscrizione, per chi fosse interessato, e' disponibile &lt;a href="http://it.sun.com/sunnews/events/2008/may/marten/"&gt;qui&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In coda all'intervento di Marten, parleremo di scalabilita' e compareremo l'approccio alle architetture basate su MySQL rispetto a quelle utilizzate con altri database relazionali.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Giuseppe Maxia illustrera' il ruolo della Community nell'eco-sistema di MySQL e spieghera' come e' possibile contribuire al miglioramento dei prodotti e delle soluzioni. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ci sara' anche spazio per un'ampia sezione di domande e risposte... meglio approfittarne!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Spero di vedervi numerosi a Roma!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;-ivan&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-4296927136084596443?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/4296927136084596443/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=4296927136084596443' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/4296927136084596443'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/4296927136084596443'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/05/italian-event-marten-mickos-in-rome.html' title='Italian Event: Marten Mickos in Rome, Friday May 30th'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-7134859020640949888</id><published>2008-05-24T08:34:00.001+01:00</published><updated>2008-05-24T08:36:19.611+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='memcached'/><title type='text'>New webinar on MySQL and memcached</title><content type='html'>Are you ready for the next webinar? This time we will talk about the use of MySQL with memcached. Most of you may already know memcached and how to use it in a typical web environment with high traffic and requirements for high scalability.&lt;br /&gt;&lt;br /&gt;During the webinar we will cover different scenarios and best practices regarding the use of MySQL and memcached together.&lt;br /&gt;&lt;br /&gt;The webinar will be live next week, Wednesday 28th of May @ 9am GMTD (London, Dublin, Lisbon) / 10am CETD (Paris, Madrid, Munich, Rome etc.)&lt;br /&gt;&lt;br /&gt;The registration is available &lt;a href="http://www.mysql.com/news-and-events/web-seminars/display-141.html"&gt;here&lt;/a&gt;.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I hope to see you all online next week!&lt;br /&gt;-ivan&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-7134859020640949888?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/7134859020640949888/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=7134859020640949888' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/7134859020640949888'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/7134859020640949888'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/05/new-webinar-on-mysql-and-memcached.html' title='New webinar on MySQL and memcached'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-5948729364849924567</id><published>2008-05-24T08:25:00.004+01:00</published><updated>2008-05-24T08:33:38.467+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Italy'/><category scheme='http://www.blogger.com/atom/ns#' term='webinar performance'/><title type='text'>Italian Webinar - Materiale, Domande e Risposte per il Webinar "Soluzioni MySQL per l'alta disponibilita'"</title><content type='html'>Le slide e la registrazione del webinar che si e' tenuto il 7 Maggio scorso, sono disponibili &lt;a href="http://www-it.mysql.com/news-and-events/on-demand-webinars/display-od-122.html"&gt;qui&lt;/a&gt;.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Di seguito ho preparato la sessione di domande e risposte.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Andrea: &lt;/span&gt;E' possibile creare un sistema multi-master tramite l'assegnazione di impostazioni auto_increment_offset  diversi?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Si, questo e' il meccanismo piu' tipico. Ogni server master utilizza un diverso offset per creare una PK e quindi inserire nuove righe nella stessa tabella, quindi&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Massimo:&lt;/span&gt; Cosa succede se viene effettuata una lettura su uno slave di alcuni records modificati nel master e non ancora replicati? si puo prevenire questa situazione?&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; La situazione si puo' prevenire, ma la logica da applicare e' abbastanza complessa. Detto questo, se le specifiche richiedono questo tipo di lettura aggiornata in real time, l'utilizzo della replicazione non e' consigliabile. Le soluzioni che posso ipotizzare sono due:&lt;br /&gt;1. L'utilizzo di due connessioni, una per la lettura su server replicati e l'altra per la scrittura e la lettura di dati che devono essere aggiornati in realtime. Quest'ultima connessione viene indirizzata sul master&lt;br /&gt;2. L'utilizzo di una struttura a storage condiviso in configurazione active-active, qualora l'utilizzo di MyISAM abbia senso (active-active e' possibile solo con MyISAM).&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Angelo:&lt;/span&gt; Chi decide a chi demandare eventuali query verso i servers slave?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; La scelta deve essere definita a livello applicativo, utilizzando una logica che e' parte integrante dell'applicazione, uno strato logico di gestione delle connessioni o in alcuni casi un middle layer come ad esempio MySQL Proxy.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Andrea:&lt;/span&gt; Il failback automatico può funzionare solo con due server? o per la circolarità della struttura è possibile definire dinamicamente i server che compongono l'anello?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; La circolarita' puo' essere cambiata, ma l'operazione e' sempre manuale (ovvero non esistono automatismi gia' pronti all'uso).&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Angelo:&lt;/span&gt; Se io ho un database che occupa 8GB, devo avere 8GB di RAM su ENNE nodi che fanno parte di Mysql Cluster?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; No, la formula e' la seguente: somma della memoria disponibile in tutti i nodi diviso il numero di repliche (normalmente 2).&lt;br /&gt;Per esempio: 4 nodi con 8GB disponibili su ciascun nodo = 32GB, diviso 2 (2 copie dei dati) = 16GB di memoria disponibile per i dati e gli indici.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Massimo: &lt;/span&gt;Le connessioni ai diversi SQL node , come possono essere gestite in maniera trasparente all'utente? Devo per forza passare per Mysql Proxy o esistono altre soluzioni che non siano dipendenti da un applicativo?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Non ci sono meccanismi automatici, in quanto un eventuale logica gestita a livello di connessione dovrebbe avere conoscenza del tipo di transazione da eseguire - infatti cio' dovrebbe avvenire tramite Proxy e per tale ragione la soluzione assolutamente piu' sicura e' quella di gestire questa suddivisione a livello applicativo.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Eleonora:&lt;/span&gt; Usando DRBD c'è possibilità di perdita di dati nel caso in cui il master cade prima di replicare i dati sul nodo slave?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; No, questo non puo' avvenire, in quanto la replicazione e' sincrona. Solo cambiando i parametri di configurazione e abbassando il livello di sicurezza della replicazione c'e' il rischio di perdita dei dati - ma ovviamente in una configurazione HA questo e' sconsigliato.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Angelo:&lt;/span&gt; Durante il failover, la connessione e quindi la query eventuale, viene persa?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Si, le connessioni aperte e le conseguenti transazioni aperte vengono interrotte. Le transazioni aperte non vengono scritte su disco, mantenendo cosi' consistente lo stato del DB.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Massimo:&lt;/span&gt; Si può usare il sistema DRDB su macchine virtuali?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; E' possibile, ma occorre essere certi che a livello hardware non siano presenti eventuali Single Point Of Failure.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Stefano:&lt;/span&gt; Nella replica master-master, se cade il master active e successivamente viene riattivato, la risincronizzazione è automatica o richiede operazioni manuali?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; La sincronizzazione e' automatica. L'unica accortezza e' quella di verificare, prima di attivare il meccanismo di risincronizzazione, che tutte le operazioni siano state trasferite dalla macchina "master active" alla macchina "master passive" prima del fault.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Alessandro:&lt;/span&gt; MySql Replication e MySQL Cluster possono essere implementati anche in sistemi windows?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; La replicazione e' disponibile anche su Windows, MySQL Cluster e' disponibile solo su sistemi Solaris, Linux, OS X, FreeBSD e Windriver.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Alberto:&lt;/span&gt; MySQL Proxy non e' considerato un servizio HA?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Non nella sua funzionalita' di base e non ancora, essendo ancora in una fase alfa. Tramite l'implementazione di appositi script, verra' sicuramente utilizzato anche per operazioni di failover automatico.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Marco:&lt;/span&gt; Posso fare la replica con due istanze che risiedono su server con sistemi operativi differenti? Ad esempio Windows e Linux&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Si, questo e' possibile e supportato.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Mauro:&lt;/span&gt; Volevo avere qualche informazione in più sulla gestione del load balancing in ambiente Cluster.&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; La mia risposta si riferisce all'utilizzo di MySQL Cluster, non del cluster a livello di sistema operativo. Le operazioni di load balancing vengono gestite automaticamente e trasparentemente tramite il server MySQL e i data node che fanno parte del Cluster. Il bilanciamento tra il sistema client e il server MySQL deve essere gestito tramite le normali regole di balancing tra server, ovvero con bilanciatori SW, bilanciatori HW o tramite l'utilizzo delle funzionalita' di alcuni connettori, come il connettore JDBC.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Eleonora:&lt;/span&gt; C'è un numero minimo di data node e server node nella configurazione cluster?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Si, il numero minimo e' di due nodi mysql, due data node e un management node, dislocati su un minimo di tre server. Questa configurazione evita qualsiasi Single Point Of Failure. E' possibile e consigliabile duplicare anche il management node, sebbene l'utilizzo di questo componente avvenga solo in fase di startup o di guasto di un altro nodo, per cui non viene considerata "configurazione minima".&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Stefano:&lt;/span&gt; master-master: l'automatic failback + multimaster autoincrement funziona anche sotto windows?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; La replicazione funziona allo stesso modo in Windows come in Linux, Solaris o altri sistemi. Ricordo pero' che se si utilizza la replicazione per l'alta disponibilita' non e' possibile utilizzarla anche per separare le scritture con il meccanismo dell'autoincrement.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Gabriele: &lt;/span&gt;Quando e' meglio utilizzare repliche gestite su mysql e quando e' meglio utilizzare repliche gestite dalle tecnologie di replica dello storage?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; La replicazione di MySQL e' piu' semplice da implementare ed e' multipiattaforma, ma esiste sempre la possibilita', seppure remota, di perdita dei dati. Cio' e' dovuto alla natura asincrona della replicazione. Una replicazione con DRBD e' invece sincrona, pertanto garantisce che i dati presenti su ambedue le repliche siano consistenti.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-5948729364849924567?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/5948729364849924567/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=5948729364849924567' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/5948729364849924567'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/5948729364849924567'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/05/italian-webinar-materiale-domande-e.html' title='Italian Webinar - Materiale, Domande e Risposte per il Webinar &quot;Soluzioni MySQL per l&apos;alta disponibilita&apos;&quot;'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-9166474383035310076</id><published>2008-05-01T06:13:00.009+01:00</published><updated>2008-05-01T19:56:45.268+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='webinar performance'/><title type='text'>Performance and Tuning Webinar 22 April 2008 - New Material</title><content type='html'>The EMEA webinar on Performance and Tuning last week (22 Apr 2008) was a great success! Great attendance, lots of questions and an  amazing job from Henrik Ingo and Erik Granstrom!&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I have posted the recording of the webinar &lt;a href="ftp://ftp.mysql.com/pub/mysql/download/SEs/IZ/080422-PerfTun.wrf.zip"&gt;here&lt;/a&gt; and the slides &lt;a href="http://ivan.zoratti.googlepages.com/080422-PerfTun.pdf"&gt;here&lt;/a&gt; - unfortunately we could not post the material on our &lt;a href="http://www.mysql.com/news-and-events/on-demand-webinars/"&gt;MySQL website&lt;/a&gt;, since it's pretty crowded now with P&amp;amp;T docs.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here is the Q&amp;amp;A session:&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Ketil:&lt;/span&gt; I have a DB that is "read many, write few", and will remain relatively small (less than RAM). How do I tune a InnoDB MySQL-database for optimal query performance? There are 8 hasAndBelongsToMany relations to categories and a few 100 000 objects.&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; First of all, have a look here: http://dev.mysql.com/doc/refman/5.1/en/innodb-tuning.html&lt;br /&gt;You should work with some system params, for example the innodb_buffer_pool_size, to set a specific amount of RAM as buffer for InnoDB.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Alon: &lt;/span&gt;Is the query cache only available in version &gt;=5?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; No, it is available from 4.0.1&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Prakash:&lt;/span&gt; Is it efficient to put numerical criteria in quotes ? (eg cust_id = '675') --- [Oracle queries would be affected by this]&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; If the column you are using is a character columns, then yes, that is the way to use the index. If It's a numeric column, then you should avoid it.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Konstantinos: &lt;/span&gt;Is there a possibility to save a whole table in some kind of cache?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; Yes, you can use the MEMORY storage engine to keep the data in memory. Another option is to use the caching mechanisms provided by the storage engine, the key buffer for MyISAM and the buffer pool for InnoDB. At startup you can use a LOAD INDEX INTO CACHE command for MyISAM or a simple SELECT for InnoDB to cache the data.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Erik:&lt;/span&gt; "queries must be identical" means logically or really literally ? ex.: select a.col from a is equal or not to  select col from a;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; They must be the same, byte by byte&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Laszlo:&lt;/span&gt; Can MySQL Enterprise Monitor advisor help us to determine the cache size/options?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; Yes, it provides recommendations on how big the cache should be, if it's over or under utilised.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Ketil:&lt;/span&gt; Are there any speed (or stability) issues I should be aware of using the .NET connector? And whichh version is the latest stable version? 5.1.5?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; Yes, you may use 5.1.5. Starting from 5.0.X, the connector includes support up to MySQL 5.1 and ADO.Net 2.0 insterfaces and subclasses. 5.1.5 contains new membership/role provider, Compact Framework 2.0, a new stored procedure parser and improvements to GetSchema. Connector/NET 5.1 also includes the Visual Studio Plugin as a standard installable component.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Saravanan: &lt;/span&gt;Does query cache cache sql or data?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; It caches the result (data) of a SELECT query. The exact text of the query is used as key.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Ivan:&lt;/span&gt; Does EXPLAIN work in other databases (apart from MySQL)?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; Yes, EXPLAIN is an ANSI SQL Command&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Alfred:&lt;/span&gt; In ORACLE you can use variables as plpaceholders in the where criteria. Doing so, the cache is hit much more often when only some string in the criteria has changed. is this possible in mysql too?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; it is definitely possible. The use of variables and placeholders will result in a query that can be executed using the query cache, or the storage engine cache or simply retrieving data on disk - it simply depends on the availability of the data in one of the cache.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Jörgen:&lt;/span&gt; In which version was EXPLAIN EXTENDED introduced in MySQL?&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; It's certainly available in 4.1, I do not remember if it was available in 4.0&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Pierrick:&lt;/span&gt; Join type index is bad ? How so ? I thought it was the best join, the fastest.&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; Join type "index" means that the server has to perform a sequential scan on the index tree. Only ALL, which is a full table scan is worse.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Elinor:&lt;/span&gt; what exactly does qcache_lowmem_prunes represent? (e.g. 3937244) and how can you be sure your cache size is right?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; It counts the number of queries that have been removed from the cache to free up memory for caching new queries. See here http://dev.mysql.com/doc/refman/5.0/en/query-cache-status-and-maintenance.html&lt;br /&gt;In other words, a low number is typically good, a high number means you should consider more memory for the cache.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Prakash:&lt;/span&gt; In Oracle we can use hints to influence teh optimiser to take a specific path to obtain the data; Is there a similar facility in MySql ? (eg. use a specific index for a specified table)&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; MySQL has something similar, you can force the optimiser to use or not use an index. See here http://dev.mysql.com/doc/refman/5.0/en/index-hints.html&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Kjeld: &lt;/span&gt;Does the query cache exists in RAM or on Disk?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; The query cache is in RAM, it resides within the data context of the mysqld process.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Renaud: &lt;/span&gt;Is the query cache available by instance or by user ? I mean that if 2 users execute the same query but with not the same rights... when the second user execute the query, it will re-parse the query to check table rights ?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; Yes, the rights for the user are checked before retrieving the data from the query.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Aron:&lt;/span&gt; Is there a fast way of filling a memory table, because if it takes 1 minute to fill, it will lock all reads to it&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; Not really. Typical use case is to fill it on server startup and then it is only read after that.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Markus:&lt;/span&gt; I have always "filesort" in the Extra field when checking my queries with EXPLAIN. I heard this is not the best but I do allways have this when I am using ORDER BY in the query. Is it right?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; it means that the server must execute a sort of the resultset before providing the result to the client. This can be avoided if the ORDER BY of the query is related to an index.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Hendrik:&lt;/span&gt; Is EXPLAIN also available in 4.1?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; Yes, absolutely&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Madhusudan: &lt;/span&gt;I have a ndb cluster with 4 data nodes. All the 4 data nodes sit on disk-less blades (i.e. they have only RAM). Now if I create a table with storage engine as myisam or innodb, then where it will be created?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; It will be created on the SQL node you are connected to. ndb data nodes are completely unaffected, and what's more, other mysql nodes are also unaffected.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Andrea:&lt;/span&gt; I wrote a few stored functions in 5.1 and I noticed that the performance is a much slower than executing calculation directly in the query. Now I noticed that even the cache size commands cannot be used with functions. Any suggestions?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; It's true that you cannot use the query cache for SELECTs with functions. Regarding the performance of your functions, I am not sure the issue is related to the version of the server. We should check which kind of calculation you execute within the function. It's anyway true that if you can execute a formula directly within a SELECT without calling a function it should be faster.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Jörgen:&lt;/span&gt; Is there any performance difference creating a table with a PRIMARY KEY, compared to just creating a UNIQUE INDEX with the same columns as the primary key instead?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; It depends on the storage engine and on the type of index - Btree, clustered, hash etc.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Pierrick:&lt;/span&gt; Where can I find info re the MEMORY Storage Engine?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A: &lt;/span&gt;Check the ref manual, here http://dev.mysql.com/doc/refman/5.0/en/memory-storage-engine.html&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Ketil:&lt;/span&gt; What is the best practice for maintaining a sum/average? Let's say, for a given object, I want to store how many times it has been viewed. Just incrementing with select/update is not "safe", adding each entry to a table and using sum() can be slow.&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; If you just want the sum (or avg) and not at all the individual result, you can do it with one update and no select at all. This is safe. Something like UPDATE tablename SET sumcolumn=sumcolumn+1 WHERE id=...&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Donald:&lt;/span&gt; How does the size of a query influence how many queries per second can be issued? e.g. If I update blobs of 500K what would be the max QPS?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; The bigger the query, the more you have to read and write from/to disk. This will affect the number of queries per second.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Walter:&lt;/span&gt; Is there any performance loss when you create a view from 'large' queries?&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; A view always generates an overhead, but this is often insignificant and there is a great advantage in using views.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Matthijs:&lt;/span&gt; Is it possible to partition a table if the data is already in it? And if so, is it also possible to change the partitioning.  And is it also possible to drop partitioning?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; Yes, all of this is possible using the ALTER TABLE command in 5.1&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Pascal:&lt;/span&gt; So, vertical partitioning is a good idea for example in a users-table, small partition with the encrypted password and id, all user data in another partition?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; Yes, that might work pretty well. If you have a Users table with a user profile, you do not want to have a single table with tens of columns&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Thijs:&lt;/span&gt; From which version of MySQL partitioningis supported?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; It's supported from 5.1&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Ricardo:&lt;/span&gt; What is COALESCE? What could i do with that instruction?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; COALESCE PARTITION reduces the number of partitions when the partitioning mechanism is hash or key.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from John:&lt;/span&gt; What is the column limit for a mysql table?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; If you refer to any datatype in general, it's 4GB for a BLOB&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Shane:&lt;/span&gt; Are all these performance advisors available at all levels of MySQL Enterprise? (e.g. basic)&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; No, performance advisors are available only with the Platinum edition.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Ketil:&lt;/span&gt; Can I replicate an InnoDB to MEMORY, so that I can write with transactional security and foreign keys, and read really fast?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; MEMORY is not a transactional storage engine and an in memory structure, unless it's not redundant and synchronised, is not safe.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Jelle: &lt;/span&gt;Is it possible to get the analysuing tools without buying the enterprise server?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; Unfortunately the performance advisors are part of the MySQL Enterprise subscription.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Rami:&lt;/span&gt; what is the performance impact of the Enterprise Monitor?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; the agent running on the database server needs a very small amount of memory.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Dainius:&lt;/span&gt; is it really better to make more little sqls than one big sql?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; It depends on the query, but in general the optimiser will work better on small queries. Also, a large query will contain a considerable number of joins and this would affect performance.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from J.M.:&lt;/span&gt; What about query strategies?. Join vs. sub-queries...&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; Joins are usually preferable to sub-queries because of the optimisation of subqueries in MySQL. But there may be some situations where subqueries would be another way to break a single query in smaller queries.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from John:&lt;/span&gt; What is the maximum number of columns for a mysql table?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;A:&lt;/span&gt; It depends on the storage engine. InnoDB, for example, cannot contain more than 1,000 columns, MyISAM does not have this limit.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-9166474383035310076?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/9166474383035310076/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=9166474383035310076' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/9166474383035310076'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/9166474383035310076'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/05/performance-and-tuning-webinar-22-april.html' title='Performance and Tuning Webinar 22 April 2008 - New Material'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-7955866043834265659</id><published>2008-04-28T13:35:00.003+01:00</published><updated>2008-04-28T13:45:54.902+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><title type='text'>Sun and MySQL at the Royal Geographic Society</title><content type='html'>Definitely a great event took place last Friday, 25th of April, in London, at the Royal Geographical Society - see &lt;span class="Apple-style-span" style="color: rgb(51, 51, 51); font-family: 'Trebuchet MS'; font-size: 13px; "&gt;http://uk.sun.com/sunnews/events/2008/apr/mysql/&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: rgb(51, 51, 51); font-family: 'Trebuchet MS'; font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;My presentation concerned the commercial offerings of MySQL, covering the server, 3rd party storage engines, the tools and the OEM solutions. If you are interested you can download the slides in PDF format from &lt;a href="http://ivan.zoratti.googlepages.com/080425_MySQLSunLaunch_IZ.pdf"&gt;here&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;-ivan&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-7955866043834265659?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/7955866043834265659/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=7955866043834265659' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/7955866043834265659'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/7955866043834265659'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/04/sun-and-mysql-at-royal-geographic.html' title='Sun and MySQL at the Royal Geographic Society'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-3598370127684902355</id><published>2008-04-27T00:30:00.004+01:00</published><updated>2008-04-27T00:36:55.998+01:00</updated><title type='text'>Q&amp;A and material for the webinar: MySQL Enterprise Performance and Benchmarking</title><content type='html'>This is a shortlist of the questions raised during the webinar MySQL Enterprise Performance and Benchmarking that I presented the 9th of April.&lt;br /&gt;&lt;br /&gt;The slides are available &lt;a href="http://ivan.zoratti.googlepages.com/080409-MySQLPerfBench.PDF"&gt;here&lt;/a&gt;.&lt;br /&gt;The full recording of the webinar is available &lt;a href="http://www.mysql.com/news-and-events/on-demand-webinars/display-od-116.html"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Questions and Answers:&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;Q from Chris:&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt; Are you able to monitor all versions (non-Enterprise and 4.1) with MySQL enterprise monitor ?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Yes, you can, but some advisors will not work with versions prior to 5.0.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;Q from Chris:&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt; If for example I have a couple of Enterprise systems but also some non-enterprise systems (we will be migrating over time) then would we be able to use the monitor (which we will have access to with the enterprise license) to monitor our legacy servers?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Yes, you can certainly do that. You can purchase the subscriptions, but you do not need to install or migrate to the certified binaries.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Zenon:&lt;/span&gt; Where can I find details of Enterpise Subscription costs?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; All the costs and the information are here: https://shop.mysql.com/enterprise/&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Douglas:&lt;/span&gt; if you buy the platinum licence for one server which comes with the performance advisor, will it monitor a servers performance which only has the gold licence?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; You will be able to collect all the information, but the advisors associated to the platinum subscription will not work.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Wojtek:&lt;/span&gt; Can I know the database usage per database user?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Not with the standard advisors. You need need to create your own advisor to present this information.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Ole:&lt;/span&gt; Will we see any improvements to the optimizer in 5.1? Especially in handling subqueries and views?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; With 5.1 we have improvements in the efficiency of the fulltext indexing. You have to wait 6.0 to see even more improvements, for example with subqueries&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Zenon:&lt;/span&gt; Is query cache just for static data?  How does it handle data that has changed between the same query calls?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Query cache is invalidated by any write operation applied to one of the tables that are part of the stored query. It is very efficient if data don't change very often.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Ronny:&lt;/span&gt; Novell ships the Enterprise license of mySQL with NetWare, can I monitor it with a platinum license to get the advisor?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Unfortunately Netware is not one of the supported platforms - there isn't an agent available for Netware.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Rotem:&lt;/span&gt; I really want to use partitions - When will 5.1 become GA? Is it considered safe to use it now before it becomes GA?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; 5.1 is now release candidate, we plan to deliver it GA by the end of Q2 2008. There are still some issues associated to partitioning that may or may not affect you. You should check the list of issues and bugs here: http://bugs.mysql.com&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Eleonora:&lt;/span&gt; Hi, I have a  doubt about the MEMORY storage engine. Is it able to gaurantee no loss of data? What happens if the server dies before writing data to disk?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; the MEMORY storage engine does not write any data to disk, therefore if you shutdown the server of in case of fault of the mysql daemon, the data in the MEMORY tables is lost. You may setup a backup to disk using a scheduled job, but this will not prevent some loss of data.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Q from Michael:&lt;/span&gt; Is it possible to tune parameters for different connections to the same MySQL server?&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;A:&lt;/span&gt; Yes, there are parameters that are session based, therefore they will affect only a specific session.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-3598370127684902355?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/3598370127684902355/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=3598370127684902355' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/3598370127684902355'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/3598370127684902355'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/04/q-and-material-for-webinar-mysql.html' title='Q&amp;A and material for the webinar: MySQL Enterprise Performance and Benchmarking'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-5929833794722975254</id><published>2008-04-18T21:26:00.009+01:00</published><updated>2008-04-18T21:59:59.145+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='XML'/><title type='text'>Which MyXML?</title><content type='html'>Ok. We may all (maybe not really "all") agree that XML in a relational DB is a cool thing. But which kind of approach should we use to store non tabular data in a typical tabular infrastructure?&lt;br /&gt;&lt;br /&gt;Personally I don't like hybrids. The core of a RDBMS is designed to be efficient and with a relatively small footprint. Inflating the core with some features that would probably be helpful to not more than the 30% of the projects (to be optimistic, but this percentage is a good reason to think about XML in a DB), does not justify the extra overhead.&lt;br /&gt;Unfortunately, an XML storage engine. On the contrary, it would make things worse, because we would translate queries twice - Xquery to SQL then to XQuery again (the big fans of MySQL internals will forgive me for this simplification).&lt;br /&gt;&lt;br /&gt;My interest for a XOR (XML Over Relational) approach goes back to several years ago, mainly because in my past life I have designed a couple of products that used XML quite heavily: a CMR system (Customer Managed Relationship - a permission-based CRM engine with multichannel capabilities) for a company called Bluparc and a CRM Solution Suite for Athoa Ltd ( http://www.athoa.com/...). Both environments heavily relied on Java and used MySQL as RDBMS, but not as XML repository. The adoption of two data managers instead of one has always created issues for our customers. Some of our customers used Oracle, but the XML repository was not in the DB. Why? Because (A) the MySQL at that time did not provide any XML feature at all and (B) because despite the widespread marketing message, the Oracle implementation of XOR did not fit the product at all.&lt;br /&gt;&lt;br /&gt;Back to the original topic, there are three basic approaches to XOR (I made up the names, so forgive me if I may somewhat confuse you): XML Shredding, XML Object mapping and XML Indexing&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;XML Shredding&lt;/span&gt;&lt;br /&gt;With XML Shredding every set of XML elements is converted into a table. Depending on the implementation, the columns of the RDBMS table can be associated to XML attibutes or to simple elements. This approach has been adopted by Oracle to implement XML (although the fact of being an object-relational database has helped a bit in defining a specific XML type and in handling complex elements within a set of basic elements).&lt;br /&gt;XML shredding is good for query performance when the XML model is not too complex, ie when a query against the RDBMS is not translated into an endless set of joins with tens of tables. The shredding approach can also facilitate the indexing of the elements and the conversion of XML queries into SQL queries and vice versa. On the other hand, the generation of the SQL queries and the ERD can be very complex.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://ivan.zoratti.googlepages.com/080417-MyXML_1.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px;" src="http://ivan.zoratti.googlepages.com/080417-MyXML_1.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://ivan.zoratti.googlepages.com/080417-MyXML_2.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px;" src="http://ivan.zoratti.googlepages.com/080417-MyXML_2.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;XML Object Mapping&lt;/span&gt;&lt;br /&gt;This is the approach currently adopted by MySQL. Each document or element within a document is stored into a cell of a database column table. The granularity of the element usually depends on the application.&lt;br /&gt;The object mapping approach is very efficient to retrieve deep hierarchies, but on the other hand it provides limited indexing capabilities and document manipulation. For example, in order to retrieve a single element in a XML document that is stored in a large TEXT column, the server has to retrieve and analyse the whole document.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://ivan.zoratti.googlepages.com/080417-MyXML_3.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px;" src="http://ivan.zoratti.googlepages.com/080417-MyXML_3.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;XML Indexing&lt;/span&gt;&lt;br /&gt;This approach is based on a set of predefined tables that are used to index and store the XML basic elements. Complex elements are split into several rows, named and indexed.&lt;br /&gt;This approach is based on a fairly simple ER schema (although some complexity may be added to improve performance and capabilities) and it is used for "general purpose XOR". Being generic, this approach works pretty well for basic XML document (ie with no deep hierarchies). In case of complex documents, the generation of the SQL used to retrieve the document becomes a real bottleneck and increases in complexity pretty quickly.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://ivan.zoratti.googlepages.com/080417-MyXML_4.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px;" src="http://ivan.zoratti.googlepages.com/080417-MyXML_4.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Which Approach?&lt;/span&gt;&lt;br /&gt;Unfortunately, a single approach does not fit all the needs. A good XOR strategy should provide all the approaches and user should decide which one would fit their projects. What's important is that the XML connectors and the XOR layer will make the physical storage and the ER implementation completely transparent to the application.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Is MySQL ready for one of these approaches?&lt;/span&gt;&lt;br /&gt;MySQL can easily implement XML Object Mapping. In fact, object mapping is already available (in its basic form) in 5.1. What we need now is a mapping layer and a connector.&lt;br /&gt;&lt;br /&gt;Anyone? :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-5929833794722975254?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/5929833794722975254/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=5929833794722975254' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/5929833794722975254'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/5929833794722975254'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/04/which-myxml.html' title='Which MyXML?'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-1677670688675700616</id><published>2008-04-18T19:08:00.002+01:00</published><updated>2008-04-18T19:10:01.164+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='tuning'/><category scheme='http://www.blogger.com/atom/ns#' term='webinar performance'/><title type='text'>Webinar: Performance Tuning Best Practice</title><content type='html'>Tue 22 April at 9am UK, 10am Central European time, we will present probably the most popular webinar on MySQL Performance and Tuning.&lt;br /&gt;&lt;br /&gt;We will have some real hands on examples with several tips and tricks - all that we can cover in an hour!&lt;br /&gt;&lt;br /&gt;This is the agenda:&lt;br /&gt;- Performance and Tuning Tools&lt;br /&gt;- Query performance analysis and improvements&lt;br /&gt;- Modelling tips&lt;br /&gt;- Engine specific recommendations&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-1677670688675700616?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/1677670688675700616/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=1677670688675700616' title='10 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/1677670688675700616'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/1677670688675700616'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/04/webinar-performance-tuning-best.html' title='Webinar: Performance Tuning Best Practice'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-7016190300241589727</id><published>2008-03-25T06:33:00.001Z</published><updated>2008-03-25T06:35:00.073Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='webinar'/><category scheme='http://www.blogger.com/atom/ns#' term='online applications'/><title type='text'>Webinar: MySQL for Online Applications</title><content type='html'>Wed 26 March at 2pm GMT/3pm CET we will present a new webinar on MySQL for Online Applications. Details and registration are &lt;a href="http://www.mysql.com/news-and-events/web-seminars/display-116.html"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;MySQL finds its sweet spot in online and web 2.0 application, because of the scalability reliability and the ease of use of the server. In a typical approach, users start with a simple architecture, with one server, then they need to scale in order to support the increasing number of users and the demand for more computer resources.&lt;br /&gt;&lt;br /&gt;During the presentation, we will talk about the common ways to scale-out, how to provide high availability and about the common components of a web 2.0 solution and its interaction with the database.&lt;br /&gt;&lt;br /&gt;The Q&amp;A will be posted on this blog.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-7016190300241589727?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/7016190300241589727/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=7016190300241589727' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/7016190300241589727'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/7016190300241589727'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/03/webinar-mysql-for-online-applications.html' title='Webinar: MySQL for Online Applications'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-8992105664807613140</id><published>2008-03-10T09:12:00.019Z</published><updated>2008-03-25T06:35:37.015Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL Proxy'/><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Meetup'/><title type='text'>Meetup Group and Thoughts on MySQL Proxy</title><content type='html'>In my opinion, the last &lt;a href="http://mysql.meetup.com/138"&gt;MySQL Meetup group in London&lt;/a&gt; was a really good event. We met Marten Mickos, former CEO of MySQL and now Senior Vice President of Sun, David Axmark, founder of MySQL and Simon Phipps, Chief Open Source Officer at Sun.&lt;br /&gt;&lt;br /&gt;The main questions to the guests were pretty expected: is it going to change anything in the licensing, the deployment and the platforms of MySQL? The single answer is a "No, nothing is going to change". No change in the licensing (Simon Phipps has clearly stated it), no changes in the Community and Enterprise editions (at least not in the near future) and no changes in the development for Linux, Windows, Solaris and other OSes. There will be more opportunities, instead, of spreading the database in environments that are not the common target for MySQL at the moment. We are definitely not going to inflate the server with a large set of barely used features: performance, reliability and ease of use are still paramount.&lt;br /&gt;&lt;br /&gt;In the light of this reassuring message, a new project, currently in alpha version, becomes more and more important. &lt;a href="http://dev.mysql.com/downloads/mysql-proxy"&gt;MySQL Proxy&lt;/a&gt;, the Columbus egg created by &lt;a href="http://jan.kneschke.de/"&gt;Jan Knesche&lt;/a&gt;, is quickly becoming a very important component of the scale-out approach of MySQL.&lt;br /&gt;&lt;br /&gt;In short terms, MySQL Proxy is a middle layer that acts as MySQL: it accepts connections and queries from the client and it redirects them to one or more MySQL servers. In the middle, MySQL Proxy can intercept client requests and server responses, such as connetcions, queries and resultsets and it can process them using some &lt;a href="http://www.lua.org/"&gt;LUA&lt;/a&gt; scripting. More details are available &lt;a href="http://dev.mysql.com/doc/refman/5.1/en/mysql-proxy.html"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I have been a big fan of MySQL Proxy since the very beginning. It is simple and powerful at the same time and looks to me like the perfect add on to a MySQL scale-out approach.&lt;br /&gt;You can use Proxy in many situations: to log user requests, to improve complex security rules, for high availability or for load balancing. At the moment, the project is still at an early stage, so you should expect some issue that will be fixed; the Proxy architecture has also been redesigned in its new version 0.6 (we are at version 0.6.1 at the moment).&lt;br /&gt;&lt;br /&gt;MySQL Proxy was the main technical topic for the Meetup group last Wednesday. We have spent about an hour reviewing some technical aspects and picturing some possible uses for it.&lt;br /&gt;&lt;br /&gt;I have created a shortlist of what the Enterprise customers like to see with Proxy. Jan and the engineering team are working at some of these features, but it would be really great to see the contribution from the Community as well.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Flexible authentication and dynamic server connections&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_sTMXJNYHlpg/R9WaXh4cxyI/AAAAAAAAADk/Op3i4ihRYqI/s1600-h/1_Flexible_Authentication.jpg"&gt;&lt;img src="http://2.bp.blogspot.com/_sTMXJNYHlpg/R9WaXh4cxyI/AAAAAAAAADk/Op3i4ihRYqI/s400/1_Flexible_Authentication.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5176213075755058978" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;This is mostly interesting for ISPs and for organisations with a large number of DB users. Let's assume, for example that we need to manage thousands of users; each user has its own schema, located on a specific MySQL server.&lt;br /&gt;Without MySQL Proxy, each user has to refer to a specific server and address in its applications and any sysadm or dbadm change would create disruptions.&lt;br /&gt;With MySQL Proxy, the users may connect to the Proxy (and its address will not change), then Proxy redirects the connection to one of the servers, depending on a shared list with a match of user-server. The great advantage is to keep the complexity and the administration of the server side completely separated from the client side.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Proxy Failover&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_sTMXJNYHlpg/R9WdmR4cx0I/AAAAAAAAAD0/NcnGUlsIAxc/s1600-h/2_Proxy_Failover.png"&gt;&lt;img src="http://1.bp.blogspot.com/_sTMXJNYHlpg/R9WdmR4cx0I/AAAAAAAAAD0/NcnGUlsIAxc/s400/2_Proxy_Failover.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5176216627693012802" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;High Availability is nowadays mandatory for many applications and services. MySQL Proxy can achieve HA in two different ways. The first and simplest way is to connect and relate MySQL Proxy 1:1 with the client (the web/application server, for example), typically co-located on the same box. In this way, if a fault happens on the server, both the client/web server and Proxy are taken off the list of available servers.&lt;br /&gt;The second and more complex approach is to use a fault tolerant layer between two or more Proxies serving multiple clients. This approach is usually necessary for 2-layer client/server applications (i.e. no web based) and when the use of a concentrated Proxy can give more advantages (for example for caching or connection pooling).&lt;br /&gt;This implementation is already possible using a typical active/passive cluster (or using some specific features of the JDBC connector), but the connections will be completely dropped in case of fault of the active Proxy.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;DB Server Failover&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_sTMXJNYHlpg/R9WeLx4cx1I/AAAAAAAAAD8/lcpfJv0wL3o/s1600-h/3_DB_Failover.jpg"&gt;&lt;img src="http://3.bp.blogspot.com/_sTMXJNYHlpg/R9WeLx4cx1I/AAAAAAAAAD8/lcpfJv0wL3o/s400/3_DB_Failover.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5176217271938107218" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;DB Server Failover can be achieved using replication between the master and the salve server, but replication is asynchronous at the moment and any synchronous replication set in this way is likely to have a negative impact on performance.&lt;br /&gt;MySQL Proxy in this particular environment might have the great advantage of performing write operations on all the servers in parallel. Depending on the isolation level, it might be even possible to load balance write operation on the servers.&lt;br /&gt;The main complexity of this approach is related to the implementation of a two phase commit protocol between proxy and the MySQL servers. The XA protocol might be used, but again there may be some performance issues.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Replication Balancing&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_sTMXJNYHlpg/R9WfHB4cx3I/AAAAAAAAAEI/ibS4ikA3G_Q/s1600-h/4_Replication_Balancing.jpg"&gt;&lt;img src="http://4.bp.blogspot.com/_sTMXJNYHlpg/R9WfHB4cx3I/AAAAAAAAAEI/ibS4ikA3G_Q/s400/4_Replication_Balancing.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5176218289845356402" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;There is a R/W splitting script within the MySQL Proxy package, since this is one of the most common requests from users who use MySQL Replication.&lt;br /&gt;The R/W splitting will be certainly improved, but it would be really good to have the same load balancing strategy available for the &lt;a href="http://dev.mysql.com/doc/refman/5.1/en/connector-j-reference-configuration-properties.html"&gt;JDBC Connector&lt;/a&gt;: random or bestResponseTime.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Sharding Balancing&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_sTMXJNYHlpg/R9Wfvh4cx4I/AAAAAAAAAEQ/v_wrlRYbW7o/s1600-h/5_Sharding_Balancing.jpg"&gt;&lt;img src="http://2.bp.blogspot.com/_sTMXJNYHlpg/R9Wfvh4cx4I/AAAAAAAAAEQ/v_wrlRYbW7o/s400/5_Sharding_Balancing.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5176218985630058370" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Although sharding balancing can't be easily applied to all the applications, it is the real differentiator and the most intriguing approach to the scale-out philosophy available for MySQL.&lt;br /&gt;Users might be able to scale-out their database solution not only for read operations but also for write operations, accessing a specific master servers. The approach should be consistent with the use of a specific "sharding key", similar to the partition pruning in the optimizer for MySQL 5.1.&lt;br /&gt;Sharding balancing implies a complex analysis of the client query, but the results of a good sharding approach would be phenomenal. A sharding approach built within the application is still preferable (it would be application specific, but faster), but keeping sharding rules at Proxy level would open many possible implementations.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Proxy Hints&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_sTMXJNYHlpg/R9Wg5B4cx5I/AAAAAAAAAEY/GdP4OP0r22w/s1600-h/6_Proxy_Hints+.jpg"&gt;&lt;img src="http://4.bp.blogspot.com/_sTMXJNYHlpg/R9Wg5B4cx5I/AAAAAAAAAEY/GdP4OP0r22w/s400/6_Proxy_Hints+.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5176220248350443410" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;This feature is complementary to the automatic balancing for shards.&lt;br /&gt;Using hints, MySQL Proxy could bypass the analysis of the whole query and it would pass the query directly to one or more "sharded" servers. For example, the hint would tell proxy to direct the query to the master server X, regardless the content of the query. Even more interesting, another hint would instruct proxy to send the query to each master or slave and in case of a returned resultset, Proxy would consolidate all the rows into a single (distinct or duplicated) collection.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Query Logging and Profiling&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_sTMXJNYHlpg/R9WhLx4cx6I/AAAAAAAAAEg/6CrrAhB8gNE/s1600-h/7_Query_Logging.jpg"&gt;&lt;img src="http://3.bp.blogspot.com/_sTMXJNYHlpg/R9WhLx4cx6I/AAAAAAAAAEg/6CrrAhB8gNE/s400/7_Query_Logging.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5176220570472990626" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Query logging and profiling is one of the most interesting use of MySQL Proxy. The logging part is relatively simple and it can be achieved using simple rules to intercept the query and the resultset. The profiling part is more complex and requires the collection of further information from the server (we need to add more profiling features at the server level).&lt;br /&gt;I am sure users will be happy to have a logging mechanism with Proxy, but the profiling part will be the cherry on the cake.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Query Caching&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_sTMXJNYHlpg/R9Whzx4cx7I/AAAAAAAAAEo/8W6poj0E0d8/s1600-h/8_Query_Caching.jpg"&gt;&lt;img src="http://3.bp.blogspot.com/_sTMXJNYHlpg/R9Whzx4cx7I/AAAAAAAAAEo/8W6poj0E0d8/s400/8_Query_Caching.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5176221257667758002" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Last but not least, Web and Enterprise 2.0 applications would take a great advantage from the integration of MySQL Proxy with a caching mechanism. Again, this is something very dependent on the application and on the infrastructure in place, mainly due to the efficiency of the caching mechanism and to the (in)validation of the cache. Nevertheless, I can see a great advantage in caching certain queries in order to reduce the workload against the DB server.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-8992105664807613140?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/8992105664807613140/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=8992105664807613140' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/8992105664807613140'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/8992105664807613140'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/03/meetup-group-and-thoughts-on-mysql.html' title='Meetup Group and Thoughts on MySQL Proxy'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_sTMXJNYHlpg/R9WaXh4cxyI/AAAAAAAAADk/Op3i4ihRYqI/s72-c/1_Flexible_Authentication.jpg' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-6175377978075040271</id><published>2008-02-27T01:09:00.001Z</published><updated>2008-03-25T06:36:03.920Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='XML'/><title type='text'>Is it time for MyXML?</title><content type='html'>Yes, that's correct, it's not a typo. Who needs XML over RDBMS?&lt;br /&gt;So far, there has been a relatively small group of users who were demanding more XML features within or combined with MySQL. Perhaps it's because XML is not a big deal in the classic LAMP implementation of web-based services, but the more we penetrate the Enterprise market, the more XML is becoming an interesting topic. I am quite sure that we will move from the classic "nice to have" to the typical "commodity feature" in quite a short time, especially if we will improve our presence as the back end DB for J2EE apps and web services.&lt;br /&gt;&lt;br /&gt;Let's be honest, the new nice XML features in 5.1 are still away from a good and proper XML coverage. They are great if we are going to store XML elements within columns of a table, but they are not really helpful if we need to use an XML interface to interact with our DB.&lt;br /&gt;&lt;br /&gt;For what it's worth, although the fat 4 (Oracle, DB/2, SQLServer and Sybase) have more improved XML features, they are all far from being a good, general purpose solution. First of all, the XML features in this RDBMSs are all non-standard. Second, they all provide different approaches to XOR (XML over RDBMS), but none of them can address all the needs for a full and fast XML interaction with the DB.&lt;br /&gt;&lt;br /&gt;This is really an interesting topic that we have just started to approach, and there is much more to come - Stay tuned!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-6175377978075040271?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/6175377978075040271/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=6175377978075040271' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/6175377978075040271'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/6175377978075040271'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/02/is-it-time-for-myxml.html' title='Is it time for MyXML?'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-942929883956294147</id><published>2008-02-27T01:06:00.003Z</published><updated>2008-03-25T06:38:26.672Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL Proxy'/><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Meetup'/><category scheme='http://www.blogger.com/atom/ns#' term='London'/><title type='text'>The London Meetup Group and my wishes for MySQL Proxy</title><content type='html'>There is a big event for the &lt;a href="http://mysql.meetup.com/138/calendar/7369595/"&gt;London Meetup Group&lt;/a&gt; coming up next week. We will all meet on Wednesday 5 March @ 7pm&lt;br /&gt;The location: The Lamb&lt;br /&gt;4 Lambs Conduit St&lt;br /&gt;Bloomsbury&lt;br /&gt;London&lt;br /&gt;WC1N 3LZ&lt;br /&gt;&lt;br /&gt;We will have a very special guest: Marten Mickos, CEO of MySQL (now in his new role, due to the Sun acquisition). Marten will join us and he will be happy to answer to questions, to share opinions and spend some good time with MySQL Brits users in front of a nice drink (no surprise which one will be the best seller :) ).&lt;br /&gt;&lt;br /&gt;From a technical point of you, I have prepared a short presentation on MySQL Proxy, with a basic intro on the project and with some ideas on how to use it and what to expect from a production version. The slides will be uploaded after the venue.&lt;br /&gt;&lt;br /&gt;As usual, I am open to suggestions and topics to cover/discuss during the venue, in group or face to face. Feel free to drop me an email or to post a comment on this blog at your convenience.&lt;br /&gt;&lt;br /&gt;Thanks a lot to Mark Baker who is working hard behind the scenes to organise this event!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-942929883956294147?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/942929883956294147/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=942929883956294147' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/942929883956294147'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/942929883956294147'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/02/london-meetup-group-and-my-wishes-for.html' title='The London Meetup Group and my wishes for MySQL Proxy'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-2589802108098553483</id><published>2008-02-27T00:52:00.007Z</published><updated>2008-03-25T06:37:46.367Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='webinar'/><category scheme='http://www.blogger.com/atom/ns#' term='MySQL Enterprise'/><title type='text'>Webinar - Another webinar on MySQL Enterprise</title><content type='html'>For the MySQL users who are still unfamiliar with the new features of MySQL Enterprise (2007 Fall Edition), I will present a webinar on this topic on Monday 3rd of March @ 3pm CET. The webinar will be in Italian, but the slides are rigourously in English, so if you are interested, just wait approx one week and you will be able to download slides and recording of this event.&lt;br /&gt;&lt;br /&gt;The latest version of MySQL Enterprise is powered with an improved version of the Enterprise Monitor, which has a new set of Replication advisors and new set of cool graphs, to instantly control your servers. There is also a big improvement in the overall scalability of the Enterprise Monitor.&lt;br /&gt;&lt;br /&gt;During the presentation we will discuss these new features and we will see the latest improvements in the Enterprise binaries.&lt;br /&gt;&lt;br /&gt;If you are interested in any specific detail associated to this topic, feel free to comment on this blog or to drop me an email.&lt;br /&gt;&lt;br /&gt;To register to the webinar, follow &lt;a href="http://www.mysql.com/news-and-events/web-seminars/display-106.html"&gt;this link&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;div align=center&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_sTMXJNYHlpg/R8S2YScqSHI/AAAAAAAAACk/OsceyrWall8/s1600-h/Pic.png"&gt;&lt;img src="http://2.bp.blogspot.com/_sTMXJNYHlpg/R8S2YScqSHI/AAAAAAAAACk/OsceyrWall8/s400/Pic.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5171458800513337458" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-2589802108098553483?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/2589802108098553483/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=2589802108098553483' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/2589802108098553483'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/2589802108098553483'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/02/webinar-another-webinar-on-mysql.html' title='Webinar - Another webinar on MySQL Enterprise'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_sTMXJNYHlpg/R8S2YScqSHI/AAAAAAAAACk/OsceyrWall8/s72-c/Pic.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-6783186089871634504</id><published>2008-02-18T23:07:00.010Z</published><updated>2008-03-25T06:37:12.691Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='webinar'/><category scheme='http://www.blogger.com/atom/ns#' term='TCO'/><title type='text'>Webinar - Reduce the TCO with MySQL</title><content type='html'>&lt;div align="justify"&gt;&lt;div align="left"&gt;&lt;div align="left"&gt;I have presented this webinar in Italian on Mon 12th Feb. The main topic was the scale-out strategy with MySQL, based on Replication, MySQL Cluster, in combination with other HA solutions, such as DRBD. This picture shows an example of shard using DRBD and MySQL Replication.&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_sTMXJNYHlpg/R7oQoicqSBI/AAAAAAAAAB4/WkB288IVEos/s1600-h/Picture+2.png"&gt;&lt;img src="http://1.bp.blogspot.com/_sTMXJNYHlpg/R7oQoicqSBI/AAAAAAAAAB4/WkB288IVEos/s400/Picture+2.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5168461810988894226" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The recording (in Italian) and the slides (in English) of the webinar are available &lt;a href="http://www-it.mysql.com/news-and-events/on-demand-webinars/"&gt;here&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;Here is an abstract of the Q&amp;amp;A session (still italian):&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;strong&gt;Q from Giovanni&lt;/strong&gt;: Volendo implementare una soluzione Mysql in un ambiente completamente virtuale (macchine virtuali su piattaforma esx server clusterizzata) è preferibile aumentare semplicemente il numero di mysql server (tante macchine virtuali) oppure usare in solo server&lt;/i&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;strong&gt;A&lt;/strong&gt;: Ci sono varie considerazioni da fare sugli ambienti virtuali rispetto ai server di database. In linea di principio, la virtualizzazione di un DB server non e' un concetto sbagliato, ma aggiunge un ulteriore strato che potrebbe creare difficolta' nella corretta gestione delle risorse del server. Per contro, un ambiente virtualizzato risulta in generale piu' affidabile e piu' semplice da amministrare.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;i&gt;&lt;strong&gt;Q from Paola&lt;/strong&gt;: ci sono guide in Italiano?&lt;/i&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;strong&gt;A&lt;/strong&gt;:Esistono whitepaper e case study in Italiano, scaricabili dal sito, anch'esso in Italiano, ma non ci sono al momento manuali di riferimento in Italiano. La guida per la certificazione MySQL 5 e' oggi anche in Italiano.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;strong&gt;Q from Fulvio&lt;/strong&gt;: E' possibile avere il DB alfa su macchina A come master e beta come slave e sulla macchina B alfa come slave e beta come master?&lt;/i&gt;&lt;br /&gt;&lt;strong&gt;A&lt;/strong&gt;: Si, questa e' una topologia supportata, seppure necessita di alcune attenzioni (in particolare legate al fatto che la replicazione non opera nessuna risoluzione di conflitti).&lt;br /&gt;&lt;br /&gt;&lt;i&gt;&lt;strong&gt;Q from Mario&lt;/strong&gt;: Qualche chiarimento su mysqlproxy?&lt;/i&gt;&lt;strong&gt;A&lt;/strong&gt;: MySQL Proxy e' un nuovo software, oggi in versione beta, che permette di monitorare, amministrare e modificare le connessioni, le chiamate e i risultati inviati/provenienti da/verso server MySQL. Maggiori informazioni sono disponibili &lt;a href=http://dev.mysql.com/doc/refman/5.1/en/mysql-proxy.html&gt;qui&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-6783186089871634504?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/6783186089871634504/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=6783186089871634504' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/6783186089871634504'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/6783186089871634504'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/02/webinar-reduce-tco-with-mysql.html' title='Webinar - Reduce the TCO with MySQL'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_sTMXJNYHlpg/R7oQoicqSBI/AAAAAAAAAB4/WkB288IVEos/s72-c/Picture+2.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1767548987184410343.post-5796383837500010458</id><published>2008-02-04T09:47:00.001Z</published><updated>2008-03-25T06:36:29.129Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='MEvent'/><category scheme='http://www.blogger.com/atom/ns#' term='Italy'/><category scheme='http://www.blogger.com/atom/ns#' term='Milan'/><title type='text'>MySQL at the MEvents in Milan - Tue 29 Jan 2008</title><content type='html'>Good location and very good presentations from our partners Magirus and Red Hat, in Milan last week.&lt;br /&gt;&lt;br /&gt;&lt;div align="justify"&gt;Giuseppe Paterno', Senior Solution Architect at Red Hat (here is  &lt;a href="http://www.gpaterno.com/"&gt;Giuseppe's web site&lt;/a&gt;, in Italian) has delivered a great presentation on the new features of RH 5.1. I think that the new virtualization features, now included in 5.1, will attract the interest of many Red Hat and MySQL users. There has been a long debate whether DB servers should stay away from virtualization or they should get the big advantage of the availability and the flexibility that a virtualised environment can provide. I think that para-virtualization may be a good compromise between a thick virtualized layer and a non-virtualized environment: it's more predictable, less intrusive and it can provide all the flexibility required for a DB server. More information on virtualization and on the new features of RHEL Advance Platform can be found &lt;a href="http://www.redhat.com/rhel/server/advanced"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Luca Gargaglione, the Country Sales Manager for MySQL in Italy, has commented the acquisition with the audience and we have gathered a very positive feedback.&lt;br /&gt;&lt;br /&gt;&lt;div align="justify"&gt;The technical presentation was tightly connected to various case studies. Enterprise Unlimited (an all-you-can-it subscription at the price of a single CPU of Oracle Enterprise: € 32,000) is still going on in 2008 and more enterprises are taking advantage from is really an interesting offer. In addition to that, we have anticipated part of the roadmap of MySQL Enterprise, that make this product even more enterprise-ready.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;We have had lots of questions on the storage engine architecture and a growing interest in &lt;a href="http://www.infobright.com/"&gt;Infobright Brighthouse&lt;/a&gt;, a column-based storage engine aimed at providing a specialised storage for data warehousing.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_sTMXJNYHlpg/R7AbMycqSAI/AAAAAAAAABw/_zQ-e-xkYDQ/s1600-h/080129-BrighthouseArch.001.jpg"&gt;&lt;img src="http://4.bp.blogspot.com/_sTMXJNYHlpg/R7AbMycqSAI/AAAAAAAAABw/_zQ-e-xkYDQ/s400/080129-BrighthouseArch.001.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5165658679108323330" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="justify"&gt;One of the attendees made an interesting comment during the Q&amp;amp;A session: he suggested to increase the efforts in explaining the value of the open source for the Enterprise and in clarifying the boundaries of a certified version of the software. The main concern is that the public usually listen to two main messages: open source software can be analysed and modified by the user and open source companies certify and support this software. Users should be reassured that they are able to do both, but if they need to modify the software and still need certification and support, they need to talk to the software providers.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="left"&gt;The slides in PDF format are available on the &lt;a href="ftp://ftp.mysql.com/pub/mysql/download/SEs/IZ/BlogDocs/izoratti/080129-MEvents.zip"&gt;FTP server&lt;/a&gt; and on a slow &lt;a href="http://www.athoa.com/Ivan/BlogDocs/izoratti/080129-MEvents.zip"&gt;HTTP server&lt;/a&gt;.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="left"&gt;I've almost forgot: at the end of the event, the beer tasting session was really good :) !&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1767548987184410343-5796383837500010458?l=izoratti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://izoratti.blogspot.com/feeds/5796383837500010458/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1767548987184410343&amp;postID=5796383837500010458' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/5796383837500010458'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1767548987184410343/posts/default/5796383837500010458'/><link rel='alternate' type='text/html' href='http://izoratti.blogspot.com/2008/02/mysql-at-mevents-in-milan-tue-29-jan.html' title='MySQL at the MEvents in Milan - Tue 29 Jan 2008'/><author><name>Ivan</name><uri>http://www.blogger.com/profile/04013184952866618726</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='21' height='32' src='http://1.bp.blogspot.com/_sTMXJNYHlpg/TNs4YTxWElI/AAAAAAAAALI/aVUqgEsGvA0/S220/IMG_0228_1.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_sTMXJNYHlpg/R7AbMycqSAI/AAAAAAAAABw/_zQ-e-xkYDQ/s72-c/080129-BrighthouseArch.001.jpg' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
