<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>PlanetMysql.ru - информация о СУБД MySQL &#187; Drizzle</title>
	<atom:link href="http://planetmysql.ru/category/drizzle/feed/" rel="self" type="application/rss+xml" />
	<link>http://planetmysql.ru</link>
	<description>Блог о самой популярной СУБД MySQL</description>
	<lastBuildDate>Thu, 24 May 2012 17:22:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Taxonomy of database tools</title>
		<link>http://hackmysql.com/2012/05/11/taxonomy-of-database-tools/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=taxonomy-of-database-tools</link>
		<comments>http://hackmysql.com/2012/05/11/taxonomy-of-database-tools/#comments</comments>
		<pubDate>Fri, 11 May 2012 22:30:38 +0000</pubDate>
		<dc:creator>Daniel Nichter</dc:creator>
				<category><![CDATA[Drizzle]]></category>
		<category><![CDATA[MySQL 5.6]]></category>
		<category><![CDATA[pt-table-checksum]]></category>
		<category><![CDATA[Random]]></category>
		<category><![CDATA[taxonomy]]></category>
		<category><![CDATA[tools]]></category>

		<guid isPermaLink="false">http://hackmysql.com/?p=287</guid>
		<description><![CDATA[Taxonomy of Database Tools
In the MySQL ecosphere there is an ecosystem of tools.  Like real-world ecosystems, the &#8220;creatures&#8221; in the MySQL tools ecosystem can be classified and organized by a taxonomy.  There are already multiple taxonomies of software bugs (e.g. A Taxonomy of Bugs), but as far as I know this is the first Taxonomy of Database Tools.  A taxonomy of database tools serves useful purposes, as discussed in the previously linked page.  For me, the most useful purpose is the high-level ecosystem view which I use to compare MySQL tools to Drizzle tools.  In so doing, one sees clearly how the MySQL tools ecosystem is thriving whereas the Drizzle tools ecosystem is just budding, so to speak.  For other people, I imagine two overarching interests in a taxonomy of database tools.
First, by laying out the ecosphere in a simple, organized, and comprehensible fashion, a taxonomy of database tools can permit a user (DBA, sysadmin, etc.) to see how well they are &#8220;tooled&#8221;.  For example, when I gave a presentation on pt-table-checksum at PLMCE 2012, I was surprised to learn how many people never used a tool to verify replication data integrity.  I did not bother to ask why, but I suspect it is because they were not aware that such tools existed.  By looking at this taxonomy of database tools, some users might discover a new type of tool of which there are already many examples.
Second, a taxonomy of database tools is interesting for developers because it reveals where a database server has missing capabilities that users compensate for with tools.  Point in case: pt-table-checksum is used to verifying replication data integrity because until MySQL 5.6 this capability did not exist in the database server.  It is debatable whether all types of tools could be implemented natively in a database server; in theory, they probably could.  This debate becomes a practical concern for modularly-designed database servers like Drizzle because in my humble opinion it is far easier to write plugins and thus tools-as-plugins for Drizzle than for MySQL.
This Taxonomy of Database Tools is still a work in progress.  A lot of the descriptions need to be expanded, traits refined, and more examples added.  If you do not agree with its organization, you can suggest a change, or develop your own taxonomy.  In any case, I will continue to refine this Taxonomy of Database Tools to see where it leads and what it reveals.]]></description>
			<content:encoded><![CDATA[<div><a href="http://hackmysql.com/wp-content/uploads/2012/05/taxonomy-of-database-tools.png" ><br />
<img class="size-medium wp-image-319 " title="Taxonomy of Database Tools" src="http://hackmysql.com/wp-content/uploads/2012/05/taxonomy-of-database-tools-300x108.png" alt="" width="300" height="108" /></a><p>Taxonomy of Database Tools</p></div>
<p>In the MySQL ecosphere there is an ecosystem of tools.  Like real-world ecosystems, the &#8220;creatures&#8221; in the MySQL tools ecosystem can be classified and organized by a taxonomy.  There are already multiple taxonomies of software bugs (e.g. <a title="A Taxonomy of Bugs" href="https://www.cs.drexel.edu/~jhk39/teaching/cs576su06/L8.pdf">A Taxonomy of Bugs</a>), but as far as I know this is the first <a title="Taxonomy of Database Tools" href="http://hackmysql.com/taxonomy-of-database-tools/">Taxonomy of Database Tools</a>.  A taxonomy of database tools serves useful purposes, as discussed in the previously linked page.  For me, the most useful purpose is the high-level ecosystem view which I use to compare MySQL tools to <a title="Drizzle" href="http://www.drizzle.org/">Drizzle</a> tools.  In so doing, one sees clearly how the MySQL tools ecosystem is thriving whereas the Drizzle tools ecosystem is just budding, so to speak.  For other people, I imagine two overarching interests in a taxonomy of database tools.</p>
<p>First, by laying out the ecosphere in a simple, organized, and comprehensible fashion, a taxonomy of database tools can permit a user (DBA, sysadmin, etc.) to see how well they are &#8220;tooled&#8221;.  For example, when I gave a presentation on <a title="pt-table-checksum" href="http://www.percona.com/doc/percona-toolkit/pt-table-checksum.html">pt-table-checksum</a> at PLMCE 2012, I was surprised to learn how many people never used a tool to verify replication data integrity.  I did not bother to ask why, but I suspect it is because they were not aware that such tools existed.  By looking at this taxonomy of database tools, some users might discover a new type of tool of which there are already many examples.</p>
<p>Second, a taxonomy of database tools is interesting for developers because it reveals where a database server has missing capabilities that users compensate for with tools.  Point in case: <a title="pt-table-checksum" href="http://www.percona.com/doc/percona-toolkit/pt-table-checksum.html">pt-table-checksum</a> is used to verifying replication data integrity because until <a href="http://dev.mysql.com/tech-resources/articles/whats-new-in-mysql-5.6.html#replication">MySQL 5.6</a> this capability did not exist in the database server.  It is debatable whether all types of tools could be implemented natively in a database server; in theory, they probably could.  This debate becomes a practical concern for modularly-designed database servers like <a title="Drizzle" href="http://www.drizzle.org/">Drizzle</a> because in my humble opinion it is far easier to write plugins and thus tools-as-plugins for Drizzle than for MySQL.</p>
<p>This <a title="Taxonomy of Database Tools" href="http://hackmysql.com/taxonomy-of-database-tools/">Taxonomy of Database Tools</a> is still a work in progress.  A lot of the descriptions need to be expanded, traits refined, and more examples added.  If you do not agree with its organization, you can suggest a change, or develop your own taxonomy.  In any case, I will continue to refine this <a title="Taxonomy of Database Tools" href="http://hackmysql.com/taxonomy-of-database-tools/">Taxonomy of Database Tools</a> to see where it leads and what it reveals.</p><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33287&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33287&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/05/12/taxonomy-of-database-tools/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Designing a HTTP JSON database api</title>
		<link>http://openlife.cc/blogs/2012/april/designing-http-json-database-api?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=designing-a-http-json-database-api</link>
		<comments>http://openlife.cc/blogs/2012/april/designing-http-json-database-api#comments</comments>
		<pubDate>Mon, 23 Apr 2012 20:25:06 +0000</pubDate>
		<dc:creator>Henrik Ingo</dc:creator>
				<category><![CDATA[Drizzle]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[NoSQL]]></category>

		<guid isPermaLink="false">http://planetmysql.ru/?guid=0255e6af0774fa63986d81981c5668ae</guid>
		<description><![CDATA[A few weeks ago I blogged about the HTTP JSON api in Drizzle. (See also a small demo app using it.) In this post I want to elaborate a little on the design decisions taken. (One reason to do this is to provide a foundation for future work, especially in the form of a GSoC project.)
Looking around: MongoDB, CouchDB, Metabase
read more]]></description>
			<content:encoded><![CDATA[<p>A few weeks ago <a href="http://openlife.cc/blogs/2012/march/drizzle-json-http-interface-now-key-value-support">I blogged about the HTTP JSON api in Drizzle</a>. (<a href="http://openlife.cc/blogs/2012/march/simple-gui-edit-json-records-drizzle">See also a small demo app using it</a>.) In this post I want to elaborate a little on the design decisions taken. (One reason to do this is to provide a foundation for future work, especially in the form of a GSoC project.)</p>
<h2>Looking around: MongoDB, CouchDB, Metabase</h2>
<p><a href="http://openlife.cc/blogs/2012/april/designing-http-json-database-api" >read more</a></p><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33022&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33022&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/04/24/designing-a-http-json-database-api/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Notes from MySQL Conference 2012 &#8212; Part 2, the hard part</title>
		<link>http://openlife.cc/blogs/2012/april/notes-mysql-conference-2012-part-2-hard-part?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=notes-from-mysql-conference-2012-part-2-the-hard-part</link>
		<comments>http://openlife.cc/blogs/2012/april/notes-mysql-conference-2012-part-2-hard-part#comments</comments>
		<pubDate>Sun, 22 Apr 2012 21:08:52 +0000</pubDate>
		<dc:creator>Henrik Ingo</dc:creator>
				<category><![CDATA[Drizzle]]></category>
		<category><![CDATA[MariaDB]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[percona]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://planetmysql.ru/?guid=068f32591922c285471ff8c73ba79a2e</guid>
		<description><![CDATA[This is the second and final part of my notes from the MySQL conference. In this part I'll focus on the technical substance of talks I saw, and didn't see.
More than ever before I was a contributor rather than attendee at this conference. Looking back, this resulted in seeing less talks than I would have wanted to, since I was speaking or preparing to speak myself. Sometimes it was worse than speaking, for instance I spent half a day picking up pewter goblets from an egnravings shop... (congratulations to all the winners again :-) Luckily, I can make up for some of that by going back and browse their slides. This is especially important whenever 2 good talks are scheduled in the same slot, or in the same slot when I was to speak. So I have categorized topics here along various axes, but also along the "things I did see" versus "things I missed" axis.
My own talks
Tutorial: Evaluating MySQL High Availability alternatives
Using and Benchmarking Galera in Different Architectures
read more]]></description>
			<content:encoded><![CDATA[<p><em>This is the second and final part of my notes from the MySQL conference. In this part I'll focus on the technical substance of talks I saw, and didn't see.</em></p>
<p>More than ever before I was a contributor rather than attendee at this conference. Looking back, this resulted in seeing less talks than I would have wanted to, since I was speaking or preparing to speak myself. Sometimes it was worse than speaking, for instance I spent half a day picking up pewter goblets from an egnravings shop... (congratulations to all the winners again :-) Luckily, I can make up for some of that by going back and browse their slides. This is especially important whenever 2 good talks are scheduled in the same slot, or in the same slot when I was to speak. So I have categorized topics here along various axes, but also along the "things I did see" versus "things I missed" axis.</p>
<h2>My own talks</h2>
<p><a href="https://www.box.com/s/8809f9f1eb68c25be51c">Tutorial: Evaluating MySQL High Availability alternatives</a><br />
<a href="https://www.box.com/s/4397321c68ec809b147d">Using and Benchmarking Galera in Different Architectures</a></p>
<p><a href="http://openlife.cc/blogs/2012/april/notes-mysql-conference-2012-part-2-hard-part" >read more</a></p><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33012&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33012&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/04/23/notes-from-mysql-conference-2012-part-2-the-hard-part/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Notes from MySQL Conference 2012 &#8212; Part 1, the soft part</title>
		<link>http://openlife.cc/blogs/2012/april/notes-mysql-conference-2012-part-1-soft-part?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=notes-from-mysql-conference-2012-part-1-the-soft-part</link>
		<comments>http://openlife.cc/blogs/2012/april/notes-mysql-conference-2012-part-1-soft-part#comments</comments>
		<pubDate>Sun, 22 Apr 2012 16:49:22 +0000</pubDate>
		<dc:creator>Henrik Ingo</dc:creator>
				<category><![CDATA[community]]></category>
		<category><![CDATA[Drizzle]]></category>
		<category><![CDATA[MariaDB]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[percona]]></category>

		<guid isPermaLink="false">http://planetmysql.ru/?guid=d3beeb4c9e8860ea0fb0944ac0d6e9c5</guid>
		<description><![CDATA[I have finally recovered from my trip to Santa Clara enough that I can scribble down some notes from this year's MySQL Conference. Writing a travel report is part of the deal where my employer covers the travel expense, so even if many people have written about the conference, I need to do it too. And judging from the many posts for instance from Pythian's direction, Nokia is perhaps not the only company with such a policy?
Baron's keynote
There has usually always been something that can be called a "soft keynote". Pirate Party founder Rick Falckvinge speaking at a database conference is a memorable example (I still keep in touch with him, having met him at the Hyatt Santa Clara). This year there was one less day, and therefore less keynotes. The soft keynote was therefore taken care of by Baron using some time out of Peter's opening keynote. Baron's talk was an ode to the conference itself, underscoring the meaning of the conference beyond just learning about technology. Sharing his own journey from a numb ASP.NET coder ("a good day at the office was when I changed a table based layout to pure CSS ...but nobody else seemed to care.") to his role today, he challenged people to network, make new friends and new revolutionary ideas. To me, it was a great opening keynote (and quite obviously would have made less sense on the last day of the conference). The talk, including Peter's part, is available on Percona.TV.
read more]]></description>
			<content:encoded><![CDATA[<p><em>I have finally recovered from my trip to Santa Clara enough that I can scribble down some notes from this year's MySQL Conference. Writing a travel report is part of the deal where my employer covers the travel expense, so even if many people have written about the conference, I need to do it too. And judging from the many posts for instance from Pythian's direction, Nokia is perhaps not the only company with such a policy?</em></p>
<h2>Baron's keynote</h2>
<p>There has usually always been something that can be called a "soft keynote". Pirate Party founder Rick Falckvinge speaking at a database conference is a memorable example (I still keep in touch with him, having met him at the Hyatt Santa Clara). This year there was one less day, and therefore less keynotes. The soft keynote was therefore taken care of by Baron using some time out of Peter's opening keynote. Baron's talk was an ode to the conference itself, underscoring the meaning of the conference beyond just learning about technology. Sharing his own journey from a numb ASP.NET coder ("a good day at the office was when I changed a table based layout to pure CSS ...but nobody else seemed to care.") to his role today, he challenged people to network, make new friends and new revolutionary ideas. To me, it was a great opening keynote (and quite obviously would have made less sense on the last day of the conference). The talk, including Peter's part, is available on <a href="http://www.percona.tv/percona-live/mysql-conference-expo-2012/plmce-2012-keynote-the-mysql-evolution">Percona.TV</a>.</p>
<p><a href="http://openlife.cc/blogs/2012/april/notes-mysql-conference-2012-part-1-soft-part" >read more</a></p><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33011&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=33011&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/04/22/notes-from-mysql-conference-2012-part-1-the-soft-part/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Disproving the CAP Theorem</title>
		<link>http://scale-out-blog.blogspot.com/2012/04/disproving-cap-theorem.html?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=disproving-the-cap-theorem</link>
		<comments>http://scale-out-blog.blogspot.com/2012/04/disproving-cap-theorem.html#comments</comments>
		<pubDate>Sun, 01 Apr 2012 11:48:00 +0000</pubDate>
		<dc:creator>Robert Hodges</dc:creator>
				<category><![CDATA[Drizzle]]></category>
		<category><![CDATA[IT Industry]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[NoSQL]]></category>
		<category><![CDATA[PostgreSQL]]></category>

		<guid isPermaLink="false">http://planetmysql.ru/?guid=29b90cfa80d5ae3c570e7bf12d8e7994</guid>
		<description><![CDATA[Since the famous conjecture by Eric Brewer and proof by Nancy Lynch et al., CAP has given the world countless learned discussions about&#160;distributed systems and many a well-funded start-up. &#160;Yet who truly&#160;understands what CAP means? &#160;Even a cursory survey of the blogosphere&#160;shows profound disagreement about the meaning of terms like CP, AP,&#160;and CA in real systems. &#160;Those who disagree on CAP include some&#160;of the most illustrious personages of the database community. We can therefore state with some confidence that CAP is confusing.&#160;Yet this observation itself raises deeper questions. &#160;Is CAP merely&#160;confusing? &#160;Or is it the case that as with other initially accepted but now doubtful ideas like the Copernican model, evolution, and continental drift,&#160;that CAP is actually not correct? &#160;Thoughtful readers will agree&#160;this question has not received anywhere near the level of scientific&#160;scrutiny it deserves.Fortunately for science private citizens like me have been&#160;forging ahead without regard to the opinions of so-called experts&#160;or even common sense. &#160;My work on CAP relies on two trusted analytic&#160;tools of database engineers over the legal drinking age: formal&#160;logic and beer. &#160;Given the nature of the problem we should obviously&#160;use a minimum of the former and a maximum of the latter. &#160;We have&#160;established that CAP is confusing. &#160;To understand why we must now&#160;deepen our confusion and study its habits carefully. &#160;Other&#160;investigators have used this approach with great success. Let us begin by translating the terms of CAP into the propositional&#160;calculus. &#160;The terms C (consistency), A (availability) and P (partition tolerance) can be used to state the famous "two out of three"&#160;of CAP using logical implication as shown below.(1) A and P =&#62; not C(2) P and C =&#62; not A(3) C and A =&#62; not PSo far so good. &#160;We can now dispense briefly with logic and turn&#160;to confusion. &#160;It seems there is difficulty distinguishing the&#160;difference between CA and CP systems, i.e., that they are therefore equivalent.&#160;This is a key insight, which we can express formally as follows:(4) C and A &#60;=&#62; C and Pwhich further reduces to(5) A &#60;=&#62; PIn short our confusion has led us directly to the invaluable result&#160;that A and P, hence availability and partition tolerance, are exactly&#160;equivalent! &#160;I am sure you share my excitement at the direction&#160;this work is taking. &#160;We can now through a trivial substitution of&#160;A for P in equation 2 above reveal the following:(6) A and C =&#62; not A(7) C =&#62; (A =&#62; not A)We have just shown that consistency implies that any system that is available is also unavailable simultaneously. &#160;This is an obvious contradiction, which means the vast logical edifice on which CAP relies&#160;crumbles like a soggy nacho. &#160;Considering the amount of beer consumed at the average database&#160;conference it is surprising nobody thought of this&#160;before.At this point we can now raise the conversation up a level from&#160;looking for spare change under the table and comment on the greater&#160;meaning of our results in the real world. &#160;Which is the following:&#160;Given the way most of us programmers write software it's a wonder&#160;CAP is an issue at all. Honestly, I can't even get calendar&#160;programs to send invitations to each other across time zones. &#160;I&#160;plan to bring the combustible analytic capabilities of logic and&#160;beer to bear on the mystery of time at a later date. &#160;For now we&#160;can just speculate it is due to a mistaken design based on CAP.]]></description>
			<content:encoded><![CDATA[Since the famous conjecture by Eric Brewer and proof by Nancy Lynch et al., <a href="http://en.wikipedia.org/wiki/CAP_theorem">CAP</a> has given the world countless learned discussions about&nbsp;distributed systems and many a well-funded start-up. &nbsp;Yet who truly&nbsp;understands what CAP means? &nbsp;Even a cursory survey of the blogosphere&nbsp;shows <a href="http://www.stucharlton.com/blog/archives/2010/10/confused-cap-arguments.html">profound disagreement about the meaning of terms like CP, AP,&nbsp;and CA in real systems</a>. &nbsp;Those who disagree on CAP include some&nbsp;of the most illustrious personages of the database community. <br /><br />We can therefore state with some confidence that CAP is confusing.&nbsp;Yet this observation itself raises deeper questions. &nbsp;Is CAP merely&nbsp;confusing? &nbsp;Or is it the case that as with other initially accepted but now doubtful ideas like the Copernican model, evolution, and continental drift,&nbsp;that CAP is actually <u>not correct</u>? &nbsp;Thoughtful readers will agree&nbsp;this question has not received anywhere near the level of scientific&nbsp;scrutiny it deserves.<br /><br />Fortunately for science private citizens like me have been&nbsp;forging ahead without regard to the opinions of so-called experts&nbsp;or even common sense. &nbsp;My work on CAP relies on two trusted analytic&nbsp;tools of database engineers over the legal drinking age: formal&nbsp;logic and beer. &nbsp;Given the nature of the problem we should obviously&nbsp;use a minimum of the former and a maximum of the latter. &nbsp;We have&nbsp;established that CAP is confusing. &nbsp;To understand why we must now&nbsp;deepen our confusion and study its habits carefully. &nbsp;Other&nbsp;investigators have <a href="http://upload.wikimedia.org/wikipedia/en/7/7c/Fear_and_Loathing_in_Las_Vegas.jpg">used this approach with great success</a>. <br /><br />Let us begin by translating the terms of CAP into the propositional&nbsp;calculus. &nbsp;The terms C (consistency), A (availability) and P (partition tolerance) can be used to state the famous "two out of three"&nbsp;of CAP using logical implication as shown below.<br /><br />(1) A and P =&gt; not C<br />(2) P and C =&gt; not A<br />(3) C and A =&gt; not P<br /><br />So far so good. &nbsp;We can now dispense briefly with logic and turn&nbsp;to confusion. &nbsp;It seems there is difficulty <a href="http://dbmsmusings.blogspot.com/2010/04/problems-with-cap-and-yahoos-little.html">distinguishing the&nbsp;difference between CA and CP systems</a>, i.e., that they are therefore equivalent.&nbsp;This is a key insight, which we can express formally as follows:<br /><br />(4) C and A &lt;=&gt; C and P<br /><br />which further reduces to<br /><br />(5) A &lt;=&gt; P<br /><br />In short our confusion has led us directly to the invaluable result&nbsp;that A and P, hence availability and partition tolerance, are exactly&nbsp;equivalent! &nbsp;I am sure you share my excitement at the direction&nbsp;this work is taking. &nbsp;We can now through a trivial substitution of&nbsp;A for P in equation 2 above reveal the following:<br /><br />(6) A and C =&gt; not A<br />(7) C =&gt; (A =&gt; not A)<br /><br />We have just shown that consistency implies that any system that is available is also unavailable simultaneously. &nbsp;This is an obvious contradiction, which means the vast logical edifice on which CAP relies&nbsp;crumbles like a soggy nacho. &nbsp;Considering the amount of beer consumed at the average database&nbsp;conference it is surprising nobody thought of this&nbsp;before.<br /><br />At this point we can now raise the conversation up a level from&nbsp;looking for spare change under the table and comment on the greater&nbsp;meaning of our results in the real world. &nbsp;Which is the following:&nbsp;Given the way most of us programmers write software it's a wonder&nbsp;CAP is an issue at all. Honestly, I can't even get calendar&nbsp;programs to send invitations to each other across time zones. &nbsp;I&nbsp;plan to bring the combustible analytic capabilities of logic and&nbsp;beer to bear on the mystery of time at a later date. &nbsp;For now we&nbsp;can just speculate it is due to a mistaken design based on CAP.<div><img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/768233104244702633-5451116418644268796?l=scale-out-blog.blogspot.com" alt="" /></div><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32667&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32667&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/04/01/disproving-the-cap-theorem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Drizzle Differences from MySQL</title>
		<link>http://www.rustyrazorblade.com/2012/03/drizzle-differences-from-mysql/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=drizzle-differences-from-mysql</link>
		<comments>http://www.rustyrazorblade.com/2012/03/drizzle-differences-from-mysql/#comments</comments>
		<pubDate>Fri, 30 Mar 2012 17:16:44 +0000</pubDate>
		<dc:creator>Jonathan Haddad</dc:creator>
				<category><![CDATA[Drizzle]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://www.rustyrazorblade.com/?p=1651</guid>
		<description><![CDATA[I decided to take a look at Drizzle today and was encouraged by what I saw.  Here&#8217;s my favorite part:
There is no UNSIGNED (as per the standard). * There are no spatial data types GEOMETRY, POINT, LINESTRING &#038; POLYGON (go use Postgres). * No YEAR field type. * There are no FULLTEXT indexes for the MyISAM storage engine (the only engine FULLTEXT was supported in). Look at either Lucene, Sphinx, or Solr. * No “dual” table. * The “LOCAL” keyword in “LOAD DATA LOCAL INFILE” is not supported
GO USE POSTGRES.  Awesome.
List of differences from MySQL.]]></description>
			<content:encoded><![CDATA[<p>I decided to take a look at Drizzle today and was encouraged by what I saw.  Here&#8217;s my favorite part:</p>
<blockquote><p>There is no UNSIGNED (as per the standard). * There are no spatial data types GEOMETRY, POINT, LINESTRING &#038; POLYGON (go use Postgres). * No YEAR field type. * There are no FULLTEXT indexes for the MyISAM storage engine (the only engine FULLTEXT was supported in). Look at either Lucene, Sphinx, or Solr. * No “dual” table. * The “LOCAL” keyword in “LOAD DATA LOCAL INFILE” is not supported</p></blockquote>
<p>GO USE POSTGRES.  Awesome.</p>
<p><a href="http://docs.drizzle.org/mysql_differences.html" title="Drizzle differences">List of differences from MySQL.</a></p><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32652&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32652&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/03/30/drizzle-differences-from-mysql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Simple GUI to edit JSON records in Drizzle</title>
		<link>http://openlife.cc/blogs/2012/march/simple-gui-edit-json-records-drizzle?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=simple-gui-to-edit-json-records-in-drizzle</link>
		<comments>http://openlife.cc/blogs/2012/march/simple-gui-edit-json-records-drizzle#comments</comments>
		<pubDate>Thu, 29 Mar 2012 10:47:09 +0000</pubDate>
		<dc:creator>Henrik Ingo</dc:creator>
				<category><![CDATA[Drizzle]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[NoSQL]]></category>

		<guid isPermaLink="false">http://planetmysql.ru/?guid=cb2d59da85d0b48dd84f9b4ddd282674</guid>
		<description><![CDATA[So yesterday I introduced the newly committed HTTP JSON key-value interface in Drizzle. The next step of course is to create some simple application that would use this to store data, this serves both as an example use case as well as for myself to get the feeling for whether this makes sense as a programming paradigm.
Personally, I have been a fan of the schemaless key-value approach ever since I graduated university and started doing projects with dozens of tables and hundreds of columns in total. Especially in small projects I always found the array structures in languages like PHP and Perl and Python to be very flexible to develop with. As I was developing and realized I need a new variable or new data field somewhere, it was straightforward to just toss a new key-value into the array and continue with writing code. No need to go back and edit some class definition. If I ever needed to find out what is available in some struct, I could always do dump_var($obj) to find out. Even large projects like Drupal get along with this model very well.
read more]]></description>
			<content:encoded><![CDATA[<p>So yesterday I introduced the <a href="http://openlife.cc/blogs/2012/march/drizzle-json-http-interface-now-key-value-support">newly committed HTTP JSON key-value interface in Drizzle</a>. The next step of course is to create some simple application that would use this to store data, this serves both as an example use case as well as for myself to get the feeling for whether this makes sense as a programming paradigm.</p>
<p>Personally, I have been a fan of the schemaless key-value approach ever since I graduated university and started doing projects with dozens of tables and hundreds of columns in total. Especially in small projects I always found the array structures in languages like PHP and Perl and Python to be very flexible to develop with. As I was developing and realized I need a new variable or new data field somewhere, it was straightforward to just toss a new key-value into the array and continue with writing code. No need to go back and edit some class definition. If I ever needed to find out what is available in some struct, I could always do dump_var($obj) to find out. Even large projects like Drupal get along with this model very well.</p>
<p><a href="http://openlife.cc/blogs/2012/march/simple-gui-edit-json-records-drizzle" >read more</a></p><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32627&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32627&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/03/29/simple-gui-to-edit-json-records-in-drizzle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sessions I want to see at the MySQL User Conference</title>
		<link>http://openlife.cc/blogs/2012/march/sessions-i-want-see-mysql-user-conference?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=sessions-i-want-to-see-at-the-mysql-user-conference</link>
		<comments>http://openlife.cc/blogs/2012/march/sessions-i-want-see-mysql-user-conference#comments</comments>
		<pubDate>Tue, 20 Mar 2012 12:32:56 +0000</pubDate>
		<dc:creator>Henrik Ingo</dc:creator>
				<category><![CDATA[Drizzle]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[percona]]></category>
		<category><![CDATA[SkySQL]]></category>

		<guid isPermaLink="false">http://planetmysql.ru/?guid=aaa8a51336940019e9819386522e51d5</guid>
		<description><![CDATA[Oh boy, I'm starting to feel the stress of having to prepare a little bit of this and a little bit of that for the upcoming MySQL User Conference (Santa Clara, April 10 to 13). But I wanted to also jump on this meme and list a few sessions I definitively want to attend:
I'm speaking, so I suppose I need to attend:

How to evaluate which MySQL High Availability solution best suits you. This 3 hour tutorial I'm co-presenting with Ben Mildren, a former Nokia collague who now works with Pythian.
read more]]></description>
			<content:encoded><![CDATA[<p>Oh boy, I'm starting to feel the stress of having to prepare a little bit of this and a little bit of that for the upcoming <a href="http://www.percona.com/live/mysql-conference-2012/">MySQL User Conference</a> (Santa Clara, April 10 to 13). But I wanted to also jump on this meme and list a few sessions I definitively want to attend:</p>
<p>I'm speaking, so I suppose I need to attend:</p>
<ul>
<li><a href="http://www.percona.com/live/mysql-conference-2012/sessions/how-evaluate-which-mysql-high-availability-solution-best-suits-you">How to evaluate which MySQL High Availability solution best suits you</a>. This 3 hour tutorial I'm co-presenting with Ben Mildren, a former Nokia collague who now works with Pythian.</li>
</ul><p><a href="http://openlife.cc/blogs/2012/march/sessions-i-want-see-mysql-user-conference" >read more</a></p><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32393&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32393&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/03/20/sessions-i-want-to-see-at-the-mysql-user-conference/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SkySQL is Coming to a City Near You!</title>
		<link>http://www.skysql.com/blogs/kathoneil27/skysql-coming-city-near-you?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=skysql-is-coming-to-a-city-near-you</link>
		<comments>http://www.skysql.com/blogs/kathoneil27/skysql-coming-city-near-you#comments</comments>
		<pubDate>Mon, 19 Mar 2012 14:29:41 +0000</pubDate>
		<dc:creator>SkySQL</dc:creator>
				<category><![CDATA[big data]]></category>
		<category><![CDATA[Drizzle]]></category>
		<category><![CDATA[MariaDB]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[SkySQL]]></category>
		<category><![CDATA[sphinx]]></category>

		<guid isPermaLink="false">http://planetmysql.ru/?guid=938cff2f8d937de4b9e41eb9258fdc08</guid>
		<description><![CDATA[Now that the snow is melting and spring is in the air, the SkySQL Team is hitting the road and making the rounds of key industry events, trade shows, and meetups around the globe. &#160;Come meet the team, pick-up a few tips and tricks for using the MySQL database, network with your peers, and learn more about SkySQL&#8217;s products and services. &#160;Here are some the events we&#8217;ll be at this spring:

	BIG Data, A New Horizon for Data Analysis
	March 20 - 21, 2012
	Cit&#233; Internationale Univeritaire de Paris, Paris, France
	POSSCON 2012
	March 28-29, 2012
	Columbia Metropolitan Convention Center, Columbia, South Carolina
	Houston PHP Users Group Meeting
	April 5, 2012
	BrandExtract, Houston TX
	Percona Live: &#160;MySQL Conference &#38; Expo 2012
	April 10-April, 2012
	Hyatt Regency Santa Clara, Santa Clara, CA
	SkySQL &#38; MariaDB: &#160;Solutions Day for the MySQL Database
	April 13, 2012
	Hyatt Regency Santa Clara, Santa Clara, CA
	Drizzle Day 2012
	April 13, 2012
	Hyatt Regency Santa Clara, Santa Clara, CA
	Sphinx Search Day 2012
	April 13, 2012
	Hyatt Regency Santa Clara, Santa Clara, CA
	For more detailed information on these events, visit http://www.skysql.com/news-and-events/events.
	We hope to see you when we&#8217;re in a city near you!]]></description>
			<content:encoded><![CDATA[<p><b><span>Now that the snow is melting and spring is in the air, the SkySQL Team is hitting the road and making the rounds of key industry events, trade shows, and meetups around the globe. &nbsp;Come meet the team, pick-up a few tips and tricks for using the MySQL database, network with your peers, and learn more about SkySQL&rsquo;s products and services. &nbsp;Here are some the events we&rsquo;ll be at this spring:</span></b></p>
<p>
	<span><a href="http://www.skysql.com/news-and-events/events/big-data-new-horizon-data-analysis"><span>BIG Data, A New Horizon for Data Analysis</span></a><br />
	<span>March 20 - 21, 2012</span><br />
	<span>Cit&eacute; Internationale Univeritaire de Paris, Paris, France</span></span></p>
<p>	<a href="http://www.skysql.com/news-and-events/events/posscon-2012"><span>POSSCON 2012</span></a><br />
	<span>March 28-29, 2012</span><br />
	<span>Columbia Metropolitan Convention Center, Columbia, South Carolina</span></p>
<p>	<a href="http://www.skysql.com/news-and-events/events/houston-php-users-group-meeting"><span>Houston PHP Users Group Meeting</span></a><br />
	<span>April 5, 2012</span><br />
	<span>BrandExtract, Houston TX</span></p>
<p>	<a href="http://www.skysql.com/news-and-events/events/percona-live-mysql-conference-expo-2012"><span>Percona Live: &nbsp;MySQL Conference &amp; Expo 2012</span></a><br />
	<span>April 10-April, 2012</span><br />
	<span>Hyatt Regency Santa Clara, Santa Clara, CA</span></p>
<p>	<a href="http://www.skysql.com/mysql-solutions-day"><span>SkySQL &amp; MariaDB: &nbsp;Solutions Day for the MySQL Database</span></a><br />
	<span>April 13, 2012</span><br />
	<span>Hyatt Regency Santa Clara, Santa Clara, CA</span></p>
<p>	<a href="http://www.skysql.com/news-and-events/events/drizzle-day-2012"><span>Drizzle Day 2012</span></a><br />
	<span>April 13, 2012</span><br />
	<span>Hyatt Regency Santa Clara, Santa Clara, CA</span></p>
<p>	<a href="http://www.skysql.com/news-and-events/events/sphinx-search-day-2012"><span>Sphinx Search Day 2012</span></a><br />
	<span>April 13, 2012</span><br />
	<span>Hyatt Regency Santa Clara, Santa Clara, CA</span></p>
<p>	<span>For more detailed information on these events, visit </span><a href="http://www.skysql.com/news-and-events/events"><span>http://www.skysql.com/news-and-events/events</span></a><span>.</span></p>
<p>	<span>We hope to see you when we&rsquo;re in a city near you!</span></p><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32378&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32378&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/03/19/skysql-is-coming-to-a-city-near-you/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IPv6 in Drizzle, soon in MySQL?</title>
		<link>http://openlife.cc/blogs/2012/march/ipv6-mysql?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ipv6-in-drizzle-soon-in-mysql</link>
		<comments>http://openlife.cc/blogs/2012/march/ipv6-mysql#comments</comments>
		<pubDate>Sun, 18 Mar 2012 22:35:48 +0000</pubDate>
		<dc:creator>Henrik Ingo</dc:creator>
				<category><![CDATA[Drizzle]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://planetmysql.ru/?guid=05e0097f803dd9f48c4fe820534ee4f9</guid>
		<description><![CDATA[Earlier today I posted a Drizzle white paper we've been working on: Drizzle and IPv6.
read more]]></description>
			<content:encoded><![CDATA[<p>Earlier today I posted a Drizzle white paper we've been working on: <a href="http://www.drizzle.org/content/drizzle-and-ipv6">Drizzle and IPv6</a>.</p>
<p><a href="http://openlife.cc/blogs/2012/march/ipv6-mysql" >read more</a></p><br/>PlanetMySQL Voting:
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32364&vote=1&apivote=1">Vote UP</a> /
	 <a href="http://planet.mysql.com/entry/vote/?entry_id=32364&vote=-1&apivote=1">Vote DOWN</a>]]></content:encoded>
			<wfw:commentRss>http://planetmysql.ru/2012/03/19/ipv6-in-drizzle-soon-in-mysql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

